[INFO] cloning repository https://github.com/laralex/Sk-FFT-Water-simulation
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/laralex/Sk-FFT-Water-simulation" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Flaralex%2FSk-FFT-Water-simulation", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Flaralex%2FSk-FFT-Water-simulation'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] e964242cbdcd2506e4f60bd3752285fa311dd152
[INFO] checking laralex/Sk-FFT-Water-simulation against master#bca37a20bd376ce3fd138e7cdee7fe704e0f8814 for pr-139493-3
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Flaralex%2FSk-FFT-Water-simulation" "/workspace/builds/worker-1-tc1/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-1-tc1/source'...
[INFO] [stderr] done.
[INFO] started tweaking git repo https://github.com/laralex/Sk-FFT-Water-simulation
[INFO] finished tweaking git repo https://github.com/laralex/Sk-FFT-Water-simulation
[INFO] tweaked toml for git repo https://github.com/laralex/Sk-FFT-Water-simulation written to /workspace/builds/worker-1-tc1/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/laralex/Sk-FFT-Water-simulation on toolchain bca37a20bd376ce3fd138e7cdee7fe704e0f8814
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+bca37a20bd376ce3fd138e7cdee7fe704e0f8814" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate git repo https://github.com/laralex/Sk-FFT-Water-simulation 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" "+bca37a20bd376ce3fd138e7cdee7fe704e0f8814" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Updating crates.io index
[INFO] [stderr]  Downloading crates ...
[INFO] [stderr]   Downloaded wayland-sys v0.29.1
[INFO] [stderr]   Downloaded wayland-commons v0.29.1
[INFO] [stderr]   Downloaded wayland-cursor v0.29.1
[INFO] [stderr]   Downloaded ndk-glue v0.5.0
[INFO] [stderr]   Downloaded imgui-glium-renderer v0.8.0
[INFO] [stderr]   Downloaded simplelog v0.1.0
[INFO] [stderr]   Downloaded chlorine v1.0.10
[INFO] [stderr]   Downloaded wayland-scanner v0.29.1
[INFO] [stderr]   Downloaded smithay-client-toolkit v0.15.2
[INFO] [stderr]   Downloaded term v0.4.6
[INFO] [stderr]   Downloaded rand_distr v0.4.2
[INFO] [stderr]   Downloaded backtrace v0.3.63
[INFO] [stderr]   Downloaded calloop v0.9.1
[INFO] [stderr]   Downloaded wayland-client v0.29.1
[INFO] [stderr]   Downloaded imgui v0.8.0
[INFO] [stderr]   Downloaded wayland-protocols v0.29.1
[INFO] [stderr]   Downloaded imgui-winit-support v0.8.0
[INFO] [stderr]   Downloaded nix v0.22.0
[INFO] [stderr]   Downloaded winit v0.26.0
[INFO] [stderr]   Downloaded imgui-sys v0.8.0
[INFO] [stderr]   Downloaded glium v0.30.2
[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:aa71247004a7fa38d13ec170f48f06cdedf5bc50b2a8645e56ed7e992e6fa513" "/opt/rustwide/cargo-home/bin/cargo" "+bca37a20bd376ce3fd138e7cdee7fe704e0f8814" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] 9308415dee5f7c62a0dd603859f20d00c8e8002a2f5dc13b5da4c0c2daff874a
[INFO] running `Command { std: "docker" "start" "-a" "9308415dee5f7c62a0dd603859f20d00c8e8002a2f5dc13b5da4c0c2daff874a", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "9308415dee5f7c62a0dd603859f20d00c8e8002a2f5dc13b5da4c0c2daff874a", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "9308415dee5f7c62a0dd603859f20d00c8e8002a2f5dc13b5da4c0c2daff874a", kill_on_drop: false }`
[INFO] [stdout] 9308415dee5f7c62a0dd603859f20d00c8e8002a2f5dc13b5da4c0c2daff874a
[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=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" "+bca37a20bd376ce3fd138e7cdee7fe704e0f8814" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] eab35de7e9302cceeb5e3942f5340ea04d3e2aef885ba73ecc2477ad335290fc
[INFO] running `Command { std: "docker" "start" "-a" "eab35de7e9302cceeb5e3942f5340ea04d3e2aef885ba73ecc2477ad335290fc", kill_on_drop: false }`
[INFO] [stderr]    Compiling libc v0.2.108
[INFO] [stderr]     Checking libloading v0.7.2
[INFO] [stderr]     Checking scopeguard v1.1.0
[INFO] [stderr]    Compiling memchr v2.4.1
[INFO] [stderr]    Compiling wayland-sys v0.28.6
[INFO] [stderr]    Compiling nom v7.1.0
[INFO] [stderr]    Compiling x11-dl v2.19.1
[INFO] [stderr]    Compiling gl_generator v0.14.0
[INFO] [stderr]     Checking instant v0.1.12
[INFO] [stderr]    Compiling crossbeam-queue v0.3.2
[INFO] [stderr]    Compiling wayland-scanner v0.28.6
[INFO] [stderr]    Compiling wayland-scanner v0.29.1
[INFO] [stderr]    Compiling wayland-sys v0.29.1
[INFO] [stderr]     Checking raw-window-handle v0.4.2
[INFO] [stderr]    Compiling num-traits v0.2.14
[INFO] [stderr]    Compiling imgui-sys v0.8.0
[INFO] [stderr]     Checking crossbeam-epoch v0.9.5
[INFO] [stderr]     Checking lock_api v0.4.5
[INFO] [stderr]    Compiling backtrace v0.3.63
[INFO] [stderr]    Compiling crc32fast v1.3.0
[INFO] [stderr]     Checking dlib v0.5.0
[INFO] [stderr]     Checking chlorine v1.0.10
[INFO] [stderr]    Compiling smithay-client-toolkit v0.15.2
[INFO] [stderr]    Compiling winit v0.26.0
[INFO] [stderr]     Checking takeable-option v0.5.0
[INFO] [stderr]     Checking log v0.3.9
[INFO] [stderr]     Checking term v0.4.6
[INFO] [stderr]     Checking bytemuck v1.7.2
[INFO] [stderr]     Checking crossbeam-deque v0.8.1
[INFO] [stderr]     Checking glam v0.20.1
[INFO] [stderr]     Checking object v0.27.1
[INFO] [stderr]     Checking crossbeam v0.8.1
[INFO] [stderr]     Checking png v0.16.8
[INFO] [stderr]    Compiling glutin_glx_sys v0.1.7
[INFO] [stderr]    Compiling glutin_egl_sys v0.1.5
[INFO] [stderr]    Compiling glium v0.30.2
[INFO] [stderr]    Compiling gl v0.14.0
[INFO] [stderr]     Checking num-integer v0.1.44
[INFO] [stderr]    Compiling wayland-client v0.28.6
[INFO] [stderr]    Compiling wayland-protocols v0.28.6
[INFO] [stderr]    Compiling wayland-client v0.29.1
[INFO] [stderr]    Compiling wayland-protocols v0.29.1
[INFO] [stderr]     Checking nix v0.20.0
[INFO] [stderr]     Checking dirs-sys v0.3.6
[INFO] [stderr]     Checking parking_lot_core v0.8.5
[INFO] [stderr]     Checking nix v0.22.0
[INFO] [stderr]     Checking nix v0.18.0
[INFO] [stderr]     Checking memmap2 v0.1.0
[INFO] [stderr]     Checking mio v0.7.14
[INFO] [stderr]     Checking dirs v3.0.2
[INFO] [stderr]     Checking xdg v2.4.0
[INFO] [stderr]     Checking parking_lot v0.11.2
[INFO] [stderr]     Checking num_cpus v1.13.0
[INFO] [stderr]     Checking raw-window-handle v0.3.4
[INFO] [stderr]     Checking mio-misc v1.2.1
[INFO] [stderr]     Checking andrew v0.3.1
[INFO] [stderr]     Checking rayon-core v1.9.1
[INFO] [stderr]     Checking getrandom v0.2.3
[INFO] [stderr]     Checking shared_library v0.1.9
[INFO] [stderr]     Checking rand_core v0.6.3
[INFO] [stderr]     Checking osmesa-sys v0.1.2
[INFO] [stderr]     Checking memmap2 v0.3.1
[INFO] [stderr]     Checking rayon v1.5.1
[INFO] [stderr]     Checking rand_chacha v0.3.1
[INFO] [stderr]     Checking num-iter v0.1.42
[INFO] [stderr]     Checking num-rational v0.3.2
[INFO] [stderr]     Checking rand v0.8.4
[INFO] [stderr]     Checking time v0.1.43
[INFO] [stderr]     Checking xcursor v0.3.4
[INFO] [stderr]     Checking mio v0.8.0
[INFO] [stderr]     Checking simplelog v0.1.0
[INFO] [stderr]     Checking rand_distr v0.4.2
[INFO] [stderr]     Checking calloop v0.6.5
[INFO] [stderr]     Checking wayland-commons v0.29.1
[INFO] [stderr]     Checking calloop v0.9.1
[INFO] [stderr]     Checking jpeg-decoder v0.1.22
[INFO] [stderr]     Checking tiff v0.6.1
[INFO] [stderr]     Checking wayland-commons v0.28.6
[INFO] [stderr]     Checking image v0.23.14
[INFO] [stderr]     Checking wayland-cursor v0.29.1
[INFO] [stderr]     Checking wayland-cursor v0.28.6
[INFO] [stderr]     Checking wayland-egl v0.28.6
[INFO] [stderr]     Checking imgui v0.8.0
[INFO] [stderr]     Checking smithay-client-toolkit v0.12.3
[INFO] [stderr]     Checking winit v0.25.0
[INFO] [stderr]     Checking glutin v0.27.0
[INFO] [stderr]     Checking imgui-winit-support v0.8.0
[INFO] [stderr]     Checking imgui-glium-renderer v0.8.0
[INFO] [stderr]     Checking fft-water v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unused import: `crate::height_field::HeightField`
[INFO] [stdout]   --> src/main.rs:10:5
[INFO] [stdout]    |
[INFO] [stdout] 10 | use crate::height_field::HeightField;
[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: `make_compute_shader`
[INFO] [stdout]   --> src/shader.rs:50:16
[INFO] [stdout]    |
[INFO] [stdout] 50 | pub(crate) use make_compute_shader;
[INFO] [stdout]    |                ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `SamplerBehavior`
[INFO] [stdout]  --> src/render.rs:2:32
[INFO] [stdout]   |
[INFO] [stdout] 2 | use glium::uniforms::{Sampler, SamplerBehavior};
[INFO] [stdout]   |                                ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::sync::Arc`
[INFO] [stdout]  --> src/mesh_grid.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::sync::Arc;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `glium::backend::Facade`
[INFO] [stdout]  --> src/window.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | use glium::backend::Facade;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `gl`
[INFO] [stdout]   --> src/window.rs:13:5
[INFO] [stdout]    |
[INFO] [stdout] 13 | use gl;
[INFO] [stdout]    |     ^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `gl::types::*`
[INFO] [stdout]    --> src/window.rs:139:8
[INFO] [stdout]     |
[INFO] [stdout] 139 |    use gl::types::*;
[INFO] [stdout]     |        ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `RawImage2d` and `Texture2dDataSource`
[INFO] [stdout]  --> src/height_field.rs:6:22
[INFO] [stdout]   |
[INFO] [stdout] 6 | use glium::texture::{RawImage2d, Texture2dDataSource};
[INFO] [stdout]   |                      ^^^^^^^^^^  ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `uniforms`
[INFO] [stdout]  --> src/height_field.rs:7:33
[INFO] [stdout]   |
[INFO] [stdout] 7 | use glium::{Display, Texture2d, uniforms, };
[INFO] [stdout]   |                                 ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Sampler`
[INFO] [stdout]  --> src/height_field.rs:8:23
[INFO] [stdout]   |
[INFO] [stdout] 8 | use glium::uniforms::{Sampler};
[INFO] [stdout]   |                       ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::height_field::HeightField`
[INFO] [stdout]   --> src/main.rs:10:5
[INFO] [stdout]    |
[INFO] [stdout] 10 | use crate::height_field::HeightField;
[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: `make_compute_shader`
[INFO] [stdout]   --> src/shader.rs:50:16
[INFO] [stdout]    |
[INFO] [stdout] 50 | pub(crate) use make_compute_shader;
[INFO] [stdout]    |                ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `SamplerBehavior`
[INFO] [stdout]  --> src/render.rs:2:32
[INFO] [stdout]   |
[INFO] [stdout] 2 | use glium::uniforms::{Sampler, SamplerBehavior};
[INFO] [stdout]   |                                ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::sync::Arc`
[INFO] [stdout]  --> src/mesh_grid.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::sync::Arc;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `glium::backend::Facade`
[INFO] [stdout]  --> src/window.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | use glium::backend::Facade;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `gl`
[INFO] [stdout]   --> src/window.rs:13:5
[INFO] [stdout]    |
[INFO] [stdout] 13 | use gl;
[INFO] [stdout]    |     ^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `gl::types::*`
[INFO] [stdout]    --> src/window.rs:139:8
[INFO] [stdout]     |
[INFO] [stdout] 139 |    use gl::types::*;
[INFO] [stdout]     |        ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `RawImage2d` and `Texture2dDataSource`
[INFO] [stdout]  --> src/height_field.rs:6:22
[INFO] [stdout]   |
[INFO] [stdout] 6 | use glium::texture::{RawImage2d, Texture2dDataSource};
[INFO] [stdout]   |                      ^^^^^^^^^^  ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `uniforms`
[INFO] [stdout]  --> src/height_field.rs:7:33
[INFO] [stdout]   |
[INFO] [stdout] 7 | use glium::{Display, Texture2d, uniforms, };
[INFO] [stdout]   |                                 ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Sampler`
[INFO] [stdout]  --> src/height_field.rs:8:23
[INFO] [stdout]   |
[INFO] [stdout] 8 | use glium::uniforms::{Sampler};
[INFO] [stdout]   |                       ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `camera`
[INFO] [stdout]    --> src/render.rs:153:41
[INFO] [stdout]     |
[INFO] [stdout] 153 |    fn draw_to(&self, frame: &mut Frame, camera: &Camera) {
[INFO] [stdout]     |                                         ^^^^^^ help: if this is intentional, prefix it with an underscore: `_camera`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/window.rs:54:11
[INFO] [stdout]    |
[INFO] [stdout] 54 |           mut display,
[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: unnecessary `unsafe` block
[INFO] [stdout]    --> src/window.rs:140:4
[INFO] [stdout]     |
[INFO] [stdout] 140 |    unsafe {
[INFO] [stdout]     |    ^^^^^^ unnecessary `unsafe` block
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_unsafe)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `lattice_size`
[INFO] [stdout]   --> src/wave.rs:27:59
[INFO] [stdout]    |
[INFO] [stdout] 27 | pub fn wavevector_from_coords((row, col): (usize, usize), lattice_size: usize, physical_size: f32) -> glam::Vec2 {
[INFO] [stdout]    |                                                           ^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_lattice_size`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/height_field.rs:256:17
[INFO] [stdout]     |
[INFO] [stdout] 256 |             let mut twiddle = crate::complex::complex_exp(coef * (k as f32));
[INFO] [stdout]     |                 ----^^^^^^^
[INFO] [stdout]     |                 |
[INFO] [stdout]     |                 help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/main.rs:29:8
[INFO] [stdout]    |
[INFO] [stdout] 29 |    let mut window = window::Window::new(
[INFO] [stdout]    |        ----^^^^^^
[INFO] [stdout]    |        |
[INFO] [stdout]    |        help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/main.rs:60:8
[INFO] [stdout]    |
[INFO] [stdout] 60 |    let mut camera_orient_sensitivity = consts::CAMERA_DEFAULT_ORIENT_SENSITIVITY;
[INFO] [stdout]    |        ----^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |        |
[INFO] [stdout]    |        help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `free_slot_x` is never read
[INFO] [stdout]    --> src/main.rs:227:13
[INFO] [stdout]     |
[INFO] [stdout] 227 |             free_slot_x += 1;
[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: value assigned to `free_slot_x` is never read
[INFO] [stdout]    --> src/main.rs:252:13
[INFO] [stdout]     |
[INFO] [stdout] 252 |             free_slot_x += 1;
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = help: maybe it is overwritten before being read?
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `free_slot_x` is never read
[INFO] [stdout]    --> src/main.rs:270:13
[INFO] [stdout]     |
[INFO] [stdout] 270 |             free_slot_x += 1;
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = help: maybe it is overwritten before being read?
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `water_center`
[INFO] [stdout]   --> src/main.rs:40:8
[INFO] [stdout]    |
[INFO] [stdout] 40 |    let water_center = glam::vec3a(center_x, center_x, 0.0);
[INFO] [stdout]    |        ^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_water_center`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `with_orthographic`, `view`, `projection`, `x_axis`, `y_axis`, and `z_axis` are never used
[INFO] [stdout]   --> src/camera.rs:52:11
[INFO] [stdout]    |
[INFO] [stdout] 15 | impl Camera {
[INFO] [stdout]    | ----------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 52 |    pub fn with_orthographic(&mut self, bounds: glam::Vec3) -> &mut Self {
[INFO] [stdout]    |           ^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 61 |    pub fn view(&self) -> &glam::Affine3A {
[INFO] [stdout]    |           ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 65 |    pub fn projection(&self) -> &glam::Mat4 {
[INFO] [stdout]    |           ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 81 |    pub fn x_axis(&self) -> glam::Vec3A {
[INFO] [stdout]    |           ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 85 |    pub fn y_axis(&self) -> glam::Vec3A {
[INFO] [stdout]    |           ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 89 |    pub fn z_axis(&self) -> glam::Vec3A {
[INFO] [stdout]    |           ^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `font_size` is never read
[INFO] [stdout]   --> src/window.rs:20:8
[INFO] [stdout]    |
[INFO] [stdout] 14 | pub struct Window {
[INFO] [stdout]    |            ------ field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 20 |    pub font_size: f32,
[INFO] [stdout]    |        ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `velocity` is never used
[INFO] [stdout]   --> src/wave.rs:23:11
[INFO] [stdout]    |
[INFO] [stdout] 10 | impl Wind {
[INFO] [stdout]    | --------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 23 |    pub fn velocity(&self) -> f32 { self.velocity }
[INFO] [stdout]    |           ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `dispersion_frequency` is never used
[INFO] [stdout]   --> src/wave.rs:34:8
[INFO] [stdout]    |
[INFO] [stdout] 34 | pub fn dispersion_frequency(wavevector_magnitude: f32) -> f32 {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `dispersion_frequency_shallow` is never used
[INFO] [stdout]   --> src/wave.rs:39:8
[INFO] [stdout]    |
[INFO] [stdout] 39 | pub fn dispersion_frequency_shallow(wavevector_magnitude: f32, water_depth: f32) -> f32 {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `discrete_dispersion_frequency` is never used
[INFO] [stdout]   --> src/wave.rs:47:8
[INFO] [stdout]    |
[INFO] [stdout] 47 | pub fn discrete_dispersion_frequency(dispersion_freq: f32, base_frequency: f32) -> f32 {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `make_noise_map` is never used
[INFO] [stdout]    --> src/height_field.rs:324:7
[INFO] [stdout]     |
[INFO] [stdout]  55 | impl HeightField {
[INFO] [stdout]     | ---------------- associated function in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 324 |    fn make_noise_map(display: &Display, size: usize) -> TextureResult<Texture2d> {
[INFO] [stdout]     |       ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/camera.rs:69:27
[INFO] [stdout]    |
[INFO] [stdout] 69 |    pub fn view_projection(&self) -> Ref<glam::Mat4> {
[INFO] [stdout]    |                           ^^^^^     ^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]    |                           |
[INFO] [stdout]    |                           the lifetime is elided here
[INFO] [stdout]    |
[INFO] [stdout]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout]    = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]    |
[INFO] [stdout] 69 |    pub fn view_projection(&self) -> Ref<'_, glam::Mat4> {
[INFO] [stdout]    |                                         +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `camera`
[INFO] [stdout]    --> src/render.rs:153:41
[INFO] [stdout]     |
[INFO] [stdout] 153 |    fn draw_to(&self, frame: &mut Frame, camera: &Camera) {
[INFO] [stdout]     |                                         ^^^^^^ help: if this is intentional, prefix it with an underscore: `_camera`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/window.rs:54:11
[INFO] [stdout]    |
[INFO] [stdout] 54 |           mut display,
[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: unnecessary `unsafe` block
[INFO] [stdout]    --> src/window.rs:140:4
[INFO] [stdout]     |
[INFO] [stdout] 140 |    unsafe {
[INFO] [stdout]     |    ^^^^^^ unnecessary `unsafe` block
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_unsafe)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `lattice_size`
[INFO] [stdout]   --> src/wave.rs:27:59
[INFO] [stdout]    |
[INFO] [stdout] 27 | pub fn wavevector_from_coords((row, col): (usize, usize), lattice_size: usize, physical_size: f32) -> glam::Vec2 {
[INFO] [stdout]    |                                                           ^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_lattice_size`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/height_field.rs:256:17
[INFO] [stdout]     |
[INFO] [stdout] 256 |             let mut twiddle = crate::complex::complex_exp(coef * (k as f32));
[INFO] [stdout]     |                 ----^^^^^^^
[INFO] [stdout]     |                 |
[INFO] [stdout]     |                 help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/main.rs:29:8
[INFO] [stdout]    |
[INFO] [stdout] 29 |    let mut window = window::Window::new(
[INFO] [stdout]    |        ----^^^^^^
[INFO] [stdout]    |        |
[INFO] [stdout]    |        help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/main.rs:60:8
[INFO] [stdout]    |
[INFO] [stdout] 60 |    let mut camera_orient_sensitivity = consts::CAMERA_DEFAULT_ORIENT_SENSITIVITY;
[INFO] [stdout]    |        ----^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |        |
[INFO] [stdout]    |        help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `free_slot_x` is never read
[INFO] [stdout]    --> src/main.rs:227:13
[INFO] [stdout]     |
[INFO] [stdout] 227 |             free_slot_x += 1;
[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: value assigned to `free_slot_x` is never read
[INFO] [stdout]    --> src/main.rs:252:13
[INFO] [stdout]     |
[INFO] [stdout] 252 |             free_slot_x += 1;
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = help: maybe it is overwritten before being read?
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `free_slot_x` is never read
[INFO] [stdout]    --> src/main.rs:270:13
[INFO] [stdout]     |
[INFO] [stdout] 270 |             free_slot_x += 1;
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = help: maybe it is overwritten before being read?
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `water_center`
[INFO] [stdout]   --> src/main.rs:40:8
[INFO] [stdout]    |
[INFO] [stdout] 40 |    let water_center = glam::vec3a(center_x, center_x, 0.0);
[INFO] [stdout]    |        ^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_water_center`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `with_orthographic`, `view`, `projection`, `x_axis`, `y_axis`, and `z_axis` are never used
[INFO] [stdout]   --> src/camera.rs:52:11
[INFO] [stdout]    |
[INFO] [stdout] 15 | impl Camera {
[INFO] [stdout]    | ----------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 52 |    pub fn with_orthographic(&mut self, bounds: glam::Vec3) -> &mut Self {
[INFO] [stdout]    |           ^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 61 |    pub fn view(&self) -> &glam::Affine3A {
[INFO] [stdout]    |           ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 65 |    pub fn projection(&self) -> &glam::Mat4 {
[INFO] [stdout]    |           ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 81 |    pub fn x_axis(&self) -> glam::Vec3A {
[INFO] [stdout]    |           ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 85 |    pub fn y_axis(&self) -> glam::Vec3A {
[INFO] [stdout]    |           ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 89 |    pub fn z_axis(&self) -> glam::Vec3A {
[INFO] [stdout]    |           ^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `font_size` is never read
[INFO] [stdout]   --> src/window.rs:20:8
[INFO] [stdout]    |
[INFO] [stdout] 14 | pub struct Window {
[INFO] [stdout]    |            ------ field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 20 |    pub font_size: f32,
[INFO] [stdout]    |        ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `velocity` is never used
[INFO] [stdout]   --> src/wave.rs:23:11
[INFO] [stdout]    |
[INFO] [stdout] 10 | impl Wind {
[INFO] [stdout]    | --------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 23 |    pub fn velocity(&self) -> f32 { self.velocity }
[INFO] [stdout]    |           ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `dispersion_frequency` is never used
[INFO] [stdout]   --> src/wave.rs:34:8
[INFO] [stdout]    |
[INFO] [stdout] 34 | pub fn dispersion_frequency(wavevector_magnitude: f32) -> f32 {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `dispersion_frequency_shallow` is never used
[INFO] [stdout]   --> src/wave.rs:39:8
[INFO] [stdout]    |
[INFO] [stdout] 39 | pub fn dispersion_frequency_shallow(wavevector_magnitude: f32, water_depth: f32) -> f32 {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `discrete_dispersion_frequency` is never used
[INFO] [stdout]   --> src/wave.rs:47:8
[INFO] [stdout]    |
[INFO] [stdout] 47 | pub fn discrete_dispersion_frequency(dispersion_freq: f32, base_frequency: f32) -> f32 {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `make_noise_map` is never used
[INFO] [stdout]    --> src/height_field.rs:324:7
[INFO] [stdout]     |
[INFO] [stdout]  55 | impl HeightField {
[INFO] [stdout]     | ---------------- associated function in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 324 |    fn make_noise_map(display: &Display, size: usize) -> TextureResult<Texture2d> {
[INFO] [stdout]     |       ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/camera.rs:69:27
[INFO] [stdout]    |
[INFO] [stdout] 69 |    pub fn view_projection(&self) -> Ref<glam::Mat4> {
[INFO] [stdout]    |                           ^^^^^     ^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]    |                           |
[INFO] [stdout]    |                           the lifetime is elided here
[INFO] [stdout]    |
[INFO] [stdout]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout]    = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]    |
[INFO] [stdout] 69 |    pub fn view_projection(&self) -> Ref<'_, glam::Mat4> {
[INFO] [stdout]    |                                         +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 1m 01s
[INFO] running `Command { std: "docker" "inspect" "eab35de7e9302cceeb5e3942f5340ea04d3e2aef885ba73ecc2477ad335290fc", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "eab35de7e9302cceeb5e3942f5340ea04d3e2aef885ba73ecc2477ad335290fc", kill_on_drop: false }`
[INFO] [stdout] eab35de7e9302cceeb5e3942f5340ea04d3e2aef885ba73ecc2477ad335290fc
