[INFO] cloning repository https://github.com/derezzedex/first_gfx_game [INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/derezzedex/first_gfx_game" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fderezzedex%2Ffirst_gfx_game", kill_on_drop: false }` [INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fderezzedex%2Ffirst_gfx_game'... [INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }` [INFO] [stdout] dee297b60dba69d8163f7363fa855f76e260764e [INFO] checking derezzedex/first_gfx_game against master#d2eadb7a94ef8c9deb5137695df33cd1fc5aee92 for pr-137268 [INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fderezzedex%2Ffirst_gfx_game" "/workspace/builds/worker-4-tc1/source", kill_on_drop: false }` [INFO] [stderr] Cloning into '/workspace/builds/worker-4-tc1/source'... [INFO] [stderr] done. [INFO] validating manifest of git repo https://github.com/derezzedex/first_gfx_game on toolchain d2eadb7a94ef8c9deb5137695df33cd1fc5aee92 [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+d2eadb7a94ef8c9deb5137695df33cd1fc5aee92" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] started tweaking git repo https://github.com/derezzedex/first_gfx_game [INFO] finished tweaking git repo https://github.com/derezzedex/first_gfx_game [INFO] tweaked toml for git repo https://github.com/derezzedex/first_gfx_game written to /workspace/builds/worker-4-tc1/source/Cargo.toml [INFO] crate git repo https://github.com/derezzedex/first_gfx_game 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" "+d2eadb7a94ef8c9deb5137695df33cd1fc5aee92" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] [stderr] warning: no edition set: defaulting to the 2015 edition while the latest is 2024 [INFO] [stderr] Downloading crates ... [INFO] [stderr] Downloaded gfx v0.16.2 [INFO] [stderr] Downloaded log v0.4.0 [INFO] [stderr] Downloaded gleam v0.4.17 [INFO] [stderr] Downloaded gfx_window_glutin v0.16.0 [INFO] [stderr] Downloaded x11-dl v2.17.2 [INFO] [stderr] Downloaded khronos_api v2.0.0 [INFO] [stderr] Downloaded fuchsia-zircon-sys v0.3.2 [INFO] [stderr] Downloaded cgmath v0.15.0 [INFO] [stderr] Downloaded fuchsia-zircon v0.3.2 [INFO] [stderr] Downloaded rand v0.3.19 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-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:b0b074c097205a61b89e8ad263052f976b2b332c4dc5f02aef1fe52501660d6e" "/opt/rustwide/cargo-home/bin/cargo" "+d2eadb7a94ef8c9deb5137695df33cd1fc5aee92" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] 4fca96e160c8265a9a1b1fd7d8bcf4449350c4d3f48869001c897d99ba2a6dc3 [INFO] running `Command { std: "docker" "start" "-a" "4fca96e160c8265a9a1b1fd7d8bcf4449350c4d3f48869001c897d99ba2a6dc3", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "4fca96e160c8265a9a1b1fd7d8bcf4449350c4d3f48869001c897d99ba2a6dc3", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "4fca96e160c8265a9a1b1fd7d8bcf4449350c4d3f48869001c897d99ba2a6dc3", kill_on_drop: false }` [INFO] [stdout] 4fca96e160c8265a9a1b1fd7d8bcf4449350c4d3f48869001c897d99ba2a6dc3 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-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:b0b074c097205a61b89e8ad263052f976b2b332c4dc5f02aef1fe52501660d6e" "/opt/rustwide/cargo-home/bin/cargo" "+d2eadb7a94ef8c9deb5137695df33cd1fc5aee92" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] bf2bdeb2f9e7c10af2768629ee5a23ce067640dd3895c9ac515dee068e579d2b [INFO] running `Command { std: "docker" "start" "-a" "bf2bdeb2f9e7c10af2768629ee5a23ce067640dd3895c9ac515dee068e579d2b", kill_on_drop: false }` [INFO] [stderr] warning: no edition set: defaulting to the 2015 edition while the latest is 2024 [INFO] [stderr] Compiling siphasher v0.2.2 [INFO] [stderr] Compiling libc v0.2.34 [INFO] [stderr] Compiling dtoa v0.4.2 [INFO] [stderr] Compiling itoa v0.3.4 [INFO] [stderr] Compiling num-traits v0.1.41 [INFO] [stderr] Compiling serde v0.9.15 [INFO] [stderr] Compiling cfg-if v0.1.2 [INFO] [stderr] Compiling bitflags v0.7.0 [INFO] [stderr] Checking lazy_static v0.2.11 [INFO] [stderr] Compiling winapi-build v0.1.1 [INFO] [stderr] Compiling bitflags v1.0.1 [INFO] [stderr] Checking winapi v0.2.8 [INFO] [stderr] Checking lazy_static v1.0.0 [INFO] [stderr] Compiling khronos_api v2.0.0 [INFO] [stderr] Compiling bitflags v0.9.1 [INFO] [stderr] Compiling log v0.4.0 [INFO] [stderr] Compiling quote v0.3.15 [INFO] [stderr] Compiling xml-rs v0.7.0 [INFO] [stderr] Compiling phf_shared v0.7.21 [INFO] [stderr] Compiling xml-rs v0.3.6 [INFO] [stderr] Compiling kernel32-sys v0.2.2 [INFO] [stderr] Compiling pkg-config v0.3.9 [INFO] [stderr] Compiling unicode-xid v0.0.4 [INFO] [stderr] Compiling either v1.4.0 [INFO] [stderr] Compiling log v0.3.9 [INFO] [stderr] Compiling xml-rs v0.6.1 [INFO] [stderr] Compiling khronos_api v1.0.1 [INFO] [stderr] Compiling phf v0.7.21 [INFO] [stderr] Compiling itertools v0.5.10 [INFO] [stderr] Compiling syn v0.10.8 [INFO] [stderr] Checking bitflags v0.8.2 [INFO] [stderr] Checking rand v0.3.19 [INFO] [stderr] Checking shared_library v0.1.8 [INFO] [stderr] Checking draw_state v0.7.1 [INFO] [stderr] Checking fs2 v0.2.5 [INFO] [stderr] Checking byteorder v1.2.1 [INFO] [stderr] Checking approx v0.1.1 [INFO] [stderr] Checking memmap v0.4.0 [INFO] [stderr] Checking osmesa-sys v0.1.2 [INFO] [stderr] Checking time v0.1.38 [INFO] [stderr] Compiling x11-dl v2.17.2 [INFO] [stderr] Compiling wayland-scanner v0.8.7 [INFO] [stderr] Compiling gl_generator v0.7.0 [INFO] [stderr] Compiling gl_generator v0.5.5 [INFO] [stderr] Checking tempfile v2.2.0 [INFO] [stderr] Checking cgmath v0.15.0 [INFO] [stderr] Compiling phf_generator v0.7.21 [INFO] [stderr] Compiling phf_codegen v0.7.21 [INFO] [stderr] Compiling target_build_utils v0.3.1 [INFO] [stderr] Compiling wayland-client v0.8.7 [INFO] [stderr] Compiling glutin v0.8.1 [INFO] [stderr] Compiling gfx_gl v0.4.0 [INFO] [stderr] Compiling derivative v1.0.0 [INFO] [stderr] Compiling serde_json v0.9.10 [INFO] [stderr] Checking gfx_core v0.7.2 [INFO] [stderr] Checking gfx_device_gl v0.14.6 [INFO] [stderr] Checking gfx v0.16.2 [INFO] [stderr] Compiling libloading v0.3.4 [INFO] [stderr] Checking dlib v0.3.1 [INFO] [stderr] Checking wayland-sys v0.8.7 [INFO] [stderr] Checking wayland-window v0.5.0 [INFO] [stderr] Checking wayland-kbd v0.8.0 [INFO] [stderr] Checking winit v0.6.4 [INFO] [stderr] Checking gfx_window_glutin v0.16.0 [INFO] [stderr] Checking first_gfx_game v0.1.0 (/opt/rustwide/workdir) [INFO] [stdout] warning: unused import: `std::time::Duration` [INFO] [stdout] --> src/main.rs:15:5 [INFO] [stdout] | [INFO] [stdout] 15 | use std::time::Duration; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::thread::sleep` [INFO] [stdout] --> src/main.rs:16:5 [INFO] [stdout] | [INFO] [stdout] 16 | use std::thread::sleep; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around assigned value [INFO] [stdout] --> src/main.rs:329:12 [INFO] [stdout] | [INFO] [stdout] 329 | let pv = (proj * view(cameraPos, cameraPos + cameraFront)); [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_parens)]` on by default [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 329 - let pv = (proj * view(cameraPos, cameraPos + cameraFront)); [INFO] [stdout] 329 + let pv = proj * view(cameraPos, cameraPos + cameraFront); [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::time::Duration` [INFO] [stdout] --> src/main.rs:15:5 [INFO] [stdout] | [INFO] [stdout] 15 | use std::time::Duration; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::thread::sleep` [INFO] [stdout] --> src/main.rs:16:5 [INFO] [stdout] | [INFO] [stdout] 16 | use std::thread::sleep; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around assigned value [INFO] [stdout] --> src/main.rs:329:12 [INFO] [stdout] | [INFO] [stdout] 329 | let pv = (proj * view(cameraPos, cameraPos + cameraFront)); [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_parens)]` on by default [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 329 - let pv = (proj * view(cameraPos, cameraPos + cameraFront)); [INFO] [stdout] 329 + let pv = proj * view(cameraPos, cameraPos + cameraFront); [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `pressed` [INFO] [stdout] --> src/main.rs:212:6 [INFO] [stdout] | [INFO] [stdout] 212 | let pressed = glutin::ElementState::Pressed; [INFO] [stdout] | ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_pressed` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `released` [INFO] [stdout] --> src/main.rs:213:6 [INFO] [stdout] | [INFO] [stdout] 213 | let released = glutin::ElementState::Released; [INFO] [stdout] | ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_released` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: value assigned to `dT` is never read [INFO] [stdout] --> src/main.rs:226:10 [INFO] [stdout] | [INFO] [stdout] 226 | let mut dT = 0.0f32; [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: unused variable: `firstMouse` [INFO] [stdout] --> src/main.rs:230:10 [INFO] [stdout] | [INFO] [stdout] 230 | let mut firstMouse = true; [INFO] [stdout] | ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_firstMouse` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `do_test` [INFO] [stdout] --> src/main.rs:231:10 [INFO] [stdout] | [INFO] [stdout] 231 | let mut do_test = false; [INFO] [stdout] | ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_do_test` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `frames` [INFO] [stdout] --> src/main.rs:244:10 [INFO] [stdout] | [INFO] [stdout] 244 | let mut frames = 0u32; [INFO] [stdout] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_frames` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `pressed` [INFO] [stdout] --> src/main.rs:260:22 [INFO] [stdout] | [INFO] [stdout] 260 | KeyboardInput(_, pressed, Some(glutin::VirtualKeyCode::W), _) => {rec = true;cameraPos+=(camera_speed)*cameraFront;}, [INFO] [stdout] | ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_pressed` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `pressed` [INFO] [stdout] --> src/main.rs:261:22 [INFO] [stdout] | [INFO] [stdout] 261 | KeyboardInput(_, pressed, Some(glutin::VirtualKeyCode::S), _) => {rec = true;cameraPos-=(camera_speed)*cameraFront;}, [INFO] [stdout] | ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_pressed` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `pressed` [INFO] [stdout] --> src/main.rs:262:22 [INFO] [stdout] | [INFO] [stdout] 262 | KeyboardInput(_, pressed, Some(glutin::VirtualKeyCode::A), _) => {rec = true;cameraPos-=normalize(cameraFront.cross(Vector3::new(0.0f... [INFO] [stdout] | ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_pressed` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `pressed` [INFO] [stdout] --> src/main.rs:263:22 [INFO] [stdout] | [INFO] [stdout] 263 | KeyboardInput(_, pressed, Some(glutin::VirtualKeyCode::D), _) => {rec = true;cameraPos+=normalize(cameraFront.cross(Vector3::new(0.0f... [INFO] [stdout] | ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_pressed` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/main.rs:162:6 [INFO] [stdout] | [INFO] [stdout] 162 | let mut game_title = "FGG Test"; [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: variable does not need to be mutable [INFO] [stdout] --> src/main.rs:170:52 [INFO] [stdout] | [INFO] [stdout] 170 | let (window, mut device, mut factory, main_color, mut main_depth) = gfx_glutin::init::(builder, &events_loop); [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:190:6 [INFO] [stdout] | [INFO] [stdout] 190 | let mut rasterizer = gfx::state::Rasterizer::new_fill().with_cull_back(); [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:210:6 [INFO] [stdout] | [INFO] [stdout] 210 | let mut model_position = Matrix4::from_translation(Vector3::new(0.0f32, 0.0, 0.0)); [INFO] [stdout] | ----^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `pressed` [INFO] [stdout] --> src/main.rs:212:6 [INFO] [stdout] | [INFO] [stdout] 212 | let pressed = glutin::ElementState::Pressed; [INFO] [stdout] | ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_pressed` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/main.rs:228:6 [INFO] [stdout] | [INFO] [stdout] 228 | let mut currentFrame = time::PreciseTime::now(); [INFO] [stdout] | ----^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `released` [INFO] [stdout] --> src/main.rs:213:6 [INFO] [stdout] | [INFO] [stdout] 213 | let released = glutin::ElementState::Released; [INFO] [stdout] | ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_released` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/main.rs:230:6 [INFO] [stdout] | [INFO] [stdout] 230 | let mut firstMouse = true; [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:231:6 [INFO] [stdout] | [INFO] [stdout] 231 | let mut do_test = false; [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:244:6 [INFO] [stdout] | [INFO] [stdout] 244 | let mut frames = 0u32; [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:247:7 [INFO] [stdout] | [INFO] [stdout] 247 | let mut currentFrame = currentFrame.to(time::PreciseTime::now()); [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:253:7 [INFO] [stdout] | [INFO] [stdout] 253 | let mut new_game_title = game_title.to_owned()+" | dt: "+ &dT.to_string(); [INFO] [stdout] | ----^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: value assigned to `dT` is never read [INFO] [stdout] --> src/main.rs:226:10 [INFO] [stdout] | [INFO] [stdout] 226 | let mut dT = 0.0f32; [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: unused variable: `firstMouse` [INFO] [stdout] --> src/main.rs:230:10 [INFO] [stdout] | [INFO] [stdout] 230 | let mut firstMouse = true; [INFO] [stdout] | ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_firstMouse` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `do_test` [INFO] [stdout] --> src/main.rs:231:10 [INFO] [stdout] | [INFO] [stdout] 231 | let mut do_test = false; [INFO] [stdout] | ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_do_test` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `frames` [INFO] [stdout] --> src/main.rs:244:10 [INFO] [stdout] | [INFO] [stdout] 244 | let mut frames = 0u32; [INFO] [stdout] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_frames` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `pressed` [INFO] [stdout] --> src/main.rs:260:22 [INFO] [stdout] | [INFO] [stdout] 260 | KeyboardInput(_, pressed, Some(glutin::VirtualKeyCode::W), _) => {rec = true;cameraPos+=(camera_speed)*cameraFront;}, [INFO] [stdout] | ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_pressed` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `pressed` [INFO] [stdout] --> src/main.rs:261:22 [INFO] [stdout] | [INFO] [stdout] 261 | KeyboardInput(_, pressed, Some(glutin::VirtualKeyCode::S), _) => {rec = true;cameraPos-=(camera_speed)*cameraFront;}, [INFO] [stdout] | ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_pressed` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `pressed` [INFO] [stdout] --> src/main.rs:262:22 [INFO] [stdout] | [INFO] [stdout] 262 | KeyboardInput(_, pressed, Some(glutin::VirtualKeyCode::A), _) => {rec = true;cameraPos-=normalize(cameraFront.cross(Vector3::new(0.0f... [INFO] [stdout] | ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_pressed` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `pressed` [INFO] [stdout] --> src/main.rs:263:22 [INFO] [stdout] | [INFO] [stdout] 263 | KeyboardInput(_, pressed, Some(glutin::VirtualKeyCode::D), _) => {rec = true;cameraPos+=normalize(cameraFront.cross(Vector3::new(0.0f... [INFO] [stdout] | ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_pressed` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `deal_with_mouse` is never used [INFO] [stdout] --> src/main.rs:71:4 [INFO] [stdout] | [INFO] [stdout] 71 | fn deal_with_mouse(py: (f32, f32), last: (f32, f32), x: i32, y: i32, fmouse: bool) -> (Vector3, bool, f32, f32){ [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `lX` should have a snake case name [INFO] [stdout] --> src/main.rs:72:7 [INFO] [stdout] | [INFO] [stdout] 72 | let (lX, lY) = last; [INFO] [stdout] | ^^ help: convert the identifier to snake case: `l_x` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(non_snake_case)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `lY` should have a snake case name [INFO] [stdout] --> src/main.rs:72:11 [INFO] [stdout] | [INFO] [stdout] 72 | let (lX, lY) = last; [INFO] [stdout] | ^^ help: convert the identifier to snake case: `l_y` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `lastX` should have a snake case name [INFO] [stdout] --> src/main.rs:73:10 [INFO] [stdout] | [INFO] [stdout] 73 | let mut lastX = lX as f32; [INFO] [stdout] | ^^^^^ help: convert the identifier to snake case: `last_x` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `lastY` should have a snake case name [INFO] [stdout] --> src/main.rs:74:10 [INFO] [stdout] | [INFO] [stdout] 74 | let mut lastY = lY as f32; [INFO] [stdout] | ^^^^^ help: convert the identifier to snake case: `last_y` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `cameraPos` should have a snake case name [INFO] [stdout] --> src/main.rs:207:10 [INFO] [stdout] | [INFO] [stdout] 207 | let mut cameraPos = Vector3::new(0.0f32, 0.0, 3.0); [INFO] [stdout] | ^^^^^^^^^ help: convert the identifier to snake case: `camera_pos` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `cameraFront` should have a snake case name [INFO] [stdout] --> src/main.rs:208:10 [INFO] [stdout] | [INFO] [stdout] 208 | let mut cameraFront = Vector3::new(0.0f32, 0.0, -1.0); [INFO] [stdout] | ^^^^^^^^^^^ help: convert the identifier to snake case: `camera_front` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `dT` should have a snake case name [INFO] [stdout] --> src/main.rs:226:10 [INFO] [stdout] | [INFO] [stdout] 226 | let mut dT = 0.0f32; [INFO] [stdout] | ^^ help: convert the identifier to snake case: `d_t` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `lastFrame` should have a snake case name [INFO] [stdout] --> src/main.rs:227:10 [INFO] [stdout] | [INFO] [stdout] 227 | let mut lastFrame = time::Duration::milliseconds(0); [INFO] [stdout] | ^^^^^^^^^ help: convert the identifier to snake case: `last_frame` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `currentFrame` should have a snake case name [INFO] [stdout] --> src/main.rs:228:10 [INFO] [stdout] | [INFO] [stdout] 228 | let mut currentFrame = time::PreciseTime::now(); [INFO] [stdout] | ^^^^^^^^^^^^ help: convert the identifier to snake case: `current_frame` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `firstMouse` should have a snake case name [INFO] [stdout] --> src/main.rs:230:10 [INFO] [stdout] | [INFO] [stdout] 230 | let mut firstMouse = true; [INFO] [stdout] | ^^^^^^^^^^ help: convert the identifier to snake case: `first_mouse` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `lastX` should have a snake case name [INFO] [stdout] --> src/main.rs:236:10 [INFO] [stdout] | [INFO] [stdout] 236 | let mut lastX = 400.0f32; [INFO] [stdout] | ^^^^^ help: convert the identifier to snake case: `last_x` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `lastY` should have a snake case name [INFO] [stdout] --> src/main.rs:237:10 [INFO] [stdout] | [INFO] [stdout] 237 | let mut lastY = 300.0f32; [INFO] [stdout] | ^^^^^ help: convert the identifier to snake case: `last_y` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/main.rs:162:6 [INFO] [stdout] | [INFO] [stdout] 162 | let mut game_title = "FGG Test"; [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: variable does not need to be mutable [INFO] [stdout] --> src/main.rs:170:52 [INFO] [stdout] | [INFO] [stdout] 170 | let (window, mut device, mut factory, main_color, mut main_depth) = gfx_glutin::init::(builder, &events_loop); [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:190:6 [INFO] [stdout] | [INFO] [stdout] 190 | let mut rasterizer = gfx::state::Rasterizer::new_fill().with_cull_back(); [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:210:6 [INFO] [stdout] | [INFO] [stdout] 210 | let mut model_position = Matrix4::from_translation(Vector3::new(0.0f32, 0.0, 0.0)); [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:228:6 [INFO] [stdout] | [INFO] [stdout] 228 | let mut currentFrame = time::PreciseTime::now(); [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:230:6 [INFO] [stdout] | [INFO] [stdout] 230 | let mut firstMouse = true; [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:231:6 [INFO] [stdout] | [INFO] [stdout] 231 | let mut do_test = false; [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:244:6 [INFO] [stdout] | [INFO] [stdout] 244 | let mut frames = 0u32; [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:247:7 [INFO] [stdout] | [INFO] [stdout] 247 | let mut currentFrame = currentFrame.to(time::PreciseTime::now()); [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:253:7 [INFO] [stdout] | [INFO] [stdout] 253 | let mut new_game_title = game_title.to_owned()+" | dt: "+ &dT.to_string(); [INFO] [stdout] | ----^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `deal_with_mouse` is never used [INFO] [stdout] --> src/main.rs:71:4 [INFO] [stdout] | [INFO] [stdout] 71 | fn deal_with_mouse(py: (f32, f32), last: (f32, f32), x: i32, y: i32, fmouse: bool) -> (Vector3, bool, f32, f32){ [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `lX` should have a snake case name [INFO] [stdout] --> src/main.rs:72:7 [INFO] [stdout] | [INFO] [stdout] 72 | let (lX, lY) = last; [INFO] [stdout] | ^^ help: convert the identifier to snake case: `l_x` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(non_snake_case)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `lY` should have a snake case name [INFO] [stdout] --> src/main.rs:72:11 [INFO] [stdout] | [INFO] [stdout] 72 | let (lX, lY) = last; [INFO] [stdout] | ^^ help: convert the identifier to snake case: `l_y` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `lastX` should have a snake case name [INFO] [stdout] --> src/main.rs:73:10 [INFO] [stdout] | [INFO] [stdout] 73 | let mut lastX = lX as f32; [INFO] [stdout] | ^^^^^ help: convert the identifier to snake case: `last_x` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `lastY` should have a snake case name [INFO] [stdout] --> src/main.rs:74:10 [INFO] [stdout] | [INFO] [stdout] 74 | let mut lastY = lY as f32; [INFO] [stdout] | ^^^^^ help: convert the identifier to snake case: `last_y` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `cameraPos` should have a snake case name [INFO] [stdout] --> src/main.rs:207:10 [INFO] [stdout] | [INFO] [stdout] 207 | let mut cameraPos = Vector3::new(0.0f32, 0.0, 3.0); [INFO] [stdout] | ^^^^^^^^^ help: convert the identifier to snake case: `camera_pos` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `cameraFront` should have a snake case name [INFO] [stdout] --> src/main.rs:208:10 [INFO] [stdout] | [INFO] [stdout] 208 | let mut cameraFront = Vector3::new(0.0f32, 0.0, -1.0); [INFO] [stdout] | ^^^^^^^^^^^ help: convert the identifier to snake case: `camera_front` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `dT` should have a snake case name [INFO] [stdout] --> src/main.rs:226:10 [INFO] [stdout] | [INFO] [stdout] 226 | let mut dT = 0.0f32; [INFO] [stdout] | ^^ help: convert the identifier to snake case: `d_t` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `lastFrame` should have a snake case name [INFO] [stdout] --> src/main.rs:227:10 [INFO] [stdout] | [INFO] [stdout] 227 | let mut lastFrame = time::Duration::milliseconds(0); [INFO] [stdout] | ^^^^^^^^^ help: convert the identifier to snake case: `last_frame` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `currentFrame` should have a snake case name [INFO] [stdout] --> src/main.rs:228:10 [INFO] [stdout] | [INFO] [stdout] 228 | let mut currentFrame = time::PreciseTime::now(); [INFO] [stdout] | ^^^^^^^^^^^^ help: convert the identifier to snake case: `current_frame` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `firstMouse` should have a snake case name [INFO] [stdout] --> src/main.rs:230:10 [INFO] [stdout] | [INFO] [stdout] 230 | let mut firstMouse = true; [INFO] [stdout] | ^^^^^^^^^^ help: convert the identifier to snake case: `first_mouse` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `lastX` should have a snake case name [INFO] [stdout] --> src/main.rs:236:10 [INFO] [stdout] | [INFO] [stdout] 236 | let mut lastX = 400.0f32; [INFO] [stdout] | ^^^^^ help: convert the identifier to snake case: `last_x` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `lastY` should have a snake case name [INFO] [stdout] --> src/main.rs:237:10 [INFO] [stdout] | [INFO] [stdout] 237 | let mut lastY = 300.0f32; [INFO] [stdout] | ^^^^^ help: convert the identifier to snake case: `last_y` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/main.rs:240:2 [INFO] [stdout] | [INFO] [stdout] 240 | window.set_cursor_state(glutin::CursorState::Grab); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] = note: `#[warn(unused_must_use)]` on by default [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 240 | let _ = window.set_cursor_state(glutin::CursorState::Grab); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `currentFrame` should have a snake case name [INFO] [stdout] --> src/main.rs:247:11 [INFO] [stdout] | [INFO] [stdout] 247 | let mut currentFrame = currentFrame.to(time::PreciseTime::now()); [INFO] [stdout] | ^^^^^^^^^^^^ help: convert the identifier to snake case: `current_frame` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/main.rs:240:2 [INFO] [stdout] | [INFO] [stdout] 240 | window.set_cursor_state(glutin::CursorState::Grab); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] = note: `#[warn(unused_must_use)]` on by default [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 240 | let _ = window.set_cursor_state(glutin::CursorState::Grab); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `duration_dT` should have a snake case name [INFO] [stdout] --> src/main.rs:248:7 [INFO] [stdout] | [INFO] [stdout] 248 | let duration_dT = currentFrame - lastFrame; [INFO] [stdout] | ^^^^^^^^^^^ help: convert the identifier to snake case: `duration_d_t` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `currentFrame` should have a snake case name [INFO] [stdout] --> src/main.rs:247:11 [INFO] [stdout] | [INFO] [stdout] 247 | let mut currentFrame = currentFrame.to(time::PreciseTime::now()); [INFO] [stdout] | ^^^^^^^^^^^^ help: convert the identifier to snake case: `current_frame` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `duration_dT` should have a snake case name [INFO] [stdout] --> src/main.rs:248:7 [INFO] [stdout] | [INFO] [stdout] 248 | let duration_dT = currentFrame - lastFrame; [INFO] [stdout] | ^^^^^^^^^^^ help: convert the identifier to snake case: `duration_d_t` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/main.rs:280:6 [INFO] [stdout] | [INFO] [stdout] 280 | window.set_cursor_position(hw, hh); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 280 | let _ = window.set_cursor_position(hw, hh); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/main.rs:280:6 [INFO] [stdout] | [INFO] [stdout] 280 | window.set_cursor_position(hw, hh); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 280 | let _ = window.set_cursor_position(hw, hh); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished `dev` profile [unoptimized + debuginfo] target(s) in 18.45s [INFO] [stderr] warning: the following packages contain code that will be rejected by a future version of Rust: bitflags v0.7.0, bitflags v0.8.2, syn v0.10.8 [INFO] [stderr] note: to see what the problems were, use the option `--future-incompat-report`, or run `cargo report future-incompatibilities --id 1` [INFO] running `Command { std: "docker" "inspect" "bf2bdeb2f9e7c10af2768629ee5a23ce067640dd3895c9ac515dee068e579d2b", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "bf2bdeb2f9e7c10af2768629ee5a23ce067640dd3895c9ac515dee068e579d2b", kill_on_drop: false }` [INFO] [stdout] bf2bdeb2f9e7c10af2768629ee5a23ce067640dd3895c9ac515dee068e579d2b