[INFO] cloning repository https://github.com/rilpires/web_sandbox [INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/rilpires/web_sandbox" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Frilpires%2Fweb_sandbox", kill_on_drop: false }` [INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Frilpires%2Fweb_sandbox'... [INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }` [INFO] [stdout] 940b427ab572faab7ce161ff8ead95ecd0227069 [INFO] checking rilpires/web_sandbox against master#1f12b9b0fdbe735968ac002792a720f0ba4faca6 for crater-rollup-uwu [INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Frilpires%2Fweb_sandbox" "/workspace/builds/worker-0-tc1/source", kill_on_drop: false }` [INFO] [stderr] Cloning into '/workspace/builds/worker-0-tc1/source'... [INFO] [stderr] done. [INFO] validating manifest of git repo https://github.com/rilpires/web_sandbox on toolchain 1f12b9b0fdbe735968ac002792a720f0ba4faca6 [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+1f12b9b0fdbe735968ac002792a720f0ba4faca6" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] started tweaking git repo https://github.com/rilpires/web_sandbox [INFO] finished tweaking git repo https://github.com/rilpires/web_sandbox [INFO] tweaked toml for git repo https://github.com/rilpires/web_sandbox written to /workspace/builds/worker-0-tc1/source/Cargo.toml [INFO] crate git repo https://github.com/rilpires/web_sandbox 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" "+1f12b9b0fdbe735968ac002792a720f0ba4faca6" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] [stderr] Downloading crates ... [INFO] [stderr] Downloaded serde-wasm-bindgen v0.6.3 [INFO] [stderr] Downloaded gloo-worker v0.5.0 [INFO] [stderr] Downloaded implicit-clone v0.4.8 [INFO] [stderr] Downloaded gloo v0.11.0 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-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:923055f121b5182466d55868a8b05e67af8ba4a3a3f6bad814e953ca3cd3ac2a" "/opt/rustwide/cargo-home/bin/cargo" "+1f12b9b0fdbe735968ac002792a720f0ba4faca6" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] ec92eaedc0112fdc1556597c1921dd946f921094797d95a1e741a56313b4e753 [INFO] running `Command { std: "docker" "start" "-a" "ec92eaedc0112fdc1556597c1921dd946f921094797d95a1e741a56313b4e753", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "ec92eaedc0112fdc1556597c1921dd946f921094797d95a1e741a56313b4e753", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "ec92eaedc0112fdc1556597c1921dd946f921094797d95a1e741a56313b4e753", kill_on_drop: false }` [INFO] [stdout] ec92eaedc0112fdc1556597c1921dd946f921094797d95a1e741a56313b4e753 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-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:923055f121b5182466d55868a8b05e67af8ba4a3a3f6bad814e953ca3cd3ac2a" "/opt/rustwide/cargo-home/bin/cargo" "+1f12b9b0fdbe735968ac002792a720f0ba4faca6" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] 7bc79b5b2989bb202c58358b08c734ad6a26cde37786b234d077182f41812e65 [INFO] running `Command { std: "docker" "start" "-a" "7bc79b5b2989bb202c58358b08c734ad6a26cde37786b234d077182f41812e65", kill_on_drop: false }` [INFO] [stderr] Compiling wasm-bindgen-shared v0.2.91 [INFO] [stderr] Compiling log v0.4.20 [INFO] [stderr] Compiling bumpalo v3.14.0 [INFO] [stderr] Compiling wasm-bindgen v0.2.91 [INFO] [stderr] Compiling serde v1.0.196 [INFO] [stderr] Compiling serde_json v1.0.113 [INFO] [stderr] Compiling syn v2.0.48 [INFO] [stderr] Compiling hashbrown v0.14.3 [INFO] [stderr] Compiling toml_datetime v0.6.5 [INFO] [stderr] Compiling winnow v0.5.40 [INFO] [stderr] Checking percent-encoding v2.3.1 [INFO] [stderr] Checking http v0.2.11 [INFO] [stderr] Compiling syn v1.0.109 [INFO] [stderr] Checking form_urlencoded v1.2.1 [INFO] [stderr] Compiling proc-macro-error-attr v1.0.4 [INFO] [stderr] Checking tokio v1.36.0 [INFO] [stderr] Checking indexmap v2.2.3 [INFO] [stderr] Compiling proc-macro-error v1.0.4 [INFO] [stderr] Compiling toml_edit v0.19.15 [INFO] [stderr] Checking tokio-stream v0.1.14 [INFO] [stderr] Compiling proc-macro-crate v1.3.1 [INFO] [stderr] Compiling wasm-bindgen-backend v0.2.91 [INFO] [stderr] Compiling prettyplease v0.2.16 [INFO] [stderr] Compiling serde_derive v1.0.196 [INFO] [stderr] Compiling thiserror-impl v1.0.57 [INFO] [stderr] Compiling futures-macro v0.3.30 [INFO] [stderr] Compiling pin-project-internal v1.1.4 [INFO] [stderr] Compiling gloo-worker-macros v0.1.0 [INFO] [stderr] Compiling implicit-clone-derive v0.1.1 [INFO] [stderr] Compiling tracing-attributes v0.1.27 [INFO] [stderr] Checking implicit-clone v0.4.8 [INFO] [stderr] Compiling wasm-bindgen-macro-support v0.2.91 [INFO] [stderr] Compiling yew-macro v0.21.0 (https://github.com/yewstack/yew/#f6b23f08) [INFO] [stderr] Checking futures-util v0.3.30 [INFO] [stderr] Checking thiserror v1.0.57 [INFO] [stderr] Checking pin-project v1.1.4 [INFO] [stderr] Compiling wasm-bindgen-macro v0.2.91 [INFO] [stderr] Checking tracing v0.1.40 [INFO] [stderr] Checking js-sys v0.3.68 [INFO] [stderr] Checking console_error_panic_hook v0.1.7 [INFO] [stderr] Checking futures v0.3.30 [INFO] [stderr] Checking pinned v0.1.0 [INFO] [stderr] Checking prokio v0.1.0 [INFO] [stderr] Checking web-sys v0.3.68 [INFO] [stderr] Checking wasm-bindgen-futures v0.4.41 [INFO] [stderr] Checking gloo-timers v0.3.0 [INFO] [stderr] Checking bincode v1.3.3 [INFO] [stderr] Checking serde-wasm-bindgen v0.6.3 [INFO] [stderr] Checking serde_urlencoded v0.7.1 [INFO] [stderr] Checking gloo-utils v0.2.0 [INFO] [stderr] Checking gloo-events v0.2.0 [INFO] [stderr] Checking gloo-render v0.2.0 [INFO] [stderr] Checking gloo-dialogs v0.2.0 [INFO] [stderr] Checking gloo-storage v0.3.0 [INFO] [stderr] Checking gloo-console v0.3.0 [INFO] [stderr] Checking gloo-net v0.4.0 [INFO] [stderr] Checking gloo-worker v0.4.0 [INFO] [stderr] Checking gloo-net v0.5.0 [INFO] [stderr] Checking gloo-worker v0.5.0 [INFO] [stderr] Checking gloo-file v0.3.0 [INFO] [stderr] Checking gloo-history v0.2.2 [INFO] [stderr] Checking gloo v0.11.0 [INFO] [stderr] Checking gloo v0.10.0 [INFO] [stderr] Checking yew v0.21.0 (https://github.com/yewstack/yew/#f6b23f08) [INFO] [stderr] Checking web_sandbox v0.1.0 (/opt/rustwide/workdir) [INFO] [stdout] warning: unused imports: `max` and `min` [INFO] [stdout] --> src/main.rs:3:16 [INFO] [stdout] | [INFO] [stdout] 3 | use std::cmp::{max, min}; [INFO] [stdout] | ^^^ ^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `gloo::console::log` [INFO] [stdout] --> src/main.rs:5:5 [INFO] [stdout] | [INFO] [stdout] 5 | use gloo::console::log; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `process::Output` [INFO] [stdout] --> src/datatype.rs:1:65 [INFO] [stdout] | [INFO] [stdout] 1 | use std::{cmp::{max, min}, fmt::Display, ops::{Mul, MulAssign}, process::Output}; [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around `for` iterator expression [INFO] [stdout] --> src/datatype.rs:77:28 [INFO] [stdout] | [INFO] [stdout] 77 | for sanitized_x in (max(0,x-1)..=min(x+1,self.width as i32-1)) { [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_parens)]` on by default [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 77 - for sanitized_x in (max(0,x-1)..=min(x+1,self.width as i32-1)) { [INFO] [stdout] 77 + for sanitized_x in max(0,x-1)..=min(x+1,self.width as i32-1) { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around `for` iterator expression [INFO] [stdout] --> src/datatype.rs:78:32 [INFO] [stdout] | [INFO] [stdout] 78 | for sanitized_y in (max(0,y-1)..=min(y+1,self.height as i32-1)) { [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 78 - for sanitized_y in (max(0,y-1)..=min(y+1,self.height as i32-1)) { [INFO] [stdout] 78 + for sanitized_y in max(0,y-1)..=min(y+1,self.height as i32-1) { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `Cell` and `RefCell` [INFO] [stdout] --> src/world_grid.rs:2:17 [INFO] [stdout] | [INFO] [stdout] 2 | use std::cell::{Cell, RefCell}; [INFO] [stdout] | ^^^^ ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `Div` [INFO] [stdout] --> src/world_grid.rs:4:16 [INFO] [stdout] | [INFO] [stdout] 4 | use std::ops::{Div, RangeInclusive}; [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `gloo::console::log` [INFO] [stdout] --> src/world_grid.rs:11:5 [INFO] [stdout] | [INFO] [stdout] 11 | use gloo::console::log; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around `for` iterator expression [INFO] [stdout] --> src/world_grid.rs:122:23 [INFO] [stdout] | [INFO] [stdout] 122 | for room_x in (0..self.grid_rooms_hotness.width()) { [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 122 - for room_x in (0..self.grid_rooms_hotness.width()) { [INFO] [stdout] 122 + for room_x in 0..self.grid_rooms_hotness.width() { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `max` and `min` [INFO] [stdout] --> src/main.rs:3:16 [INFO] [stdout] | [INFO] [stdout] 3 | use std::cmp::{max, min}; [INFO] [stdout] | ^^^ ^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around `for` iterator expression [INFO] [stdout] --> src/world_grid.rs:123:27 [INFO] [stdout] | [INFO] [stdout] 123 | for room_y in (0..self.grid_rooms_hotness.height()) { [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 123 - for room_y in (0..self.grid_rooms_hotness.height()) { [INFO] [stdout] 123 + for room_y in 0..self.grid_rooms_hotness.height() { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `gloo::console::log` [INFO] [stdout] --> src/main.rs:5:5 [INFO] [stdout] | [INFO] [stdout] 5 | use gloo::console::log; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around `if` condition [INFO] [stdout] --> src/world_grid.rs:124:20 [INFO] [stdout] | [INFO] [stdout] 124 | if (*self.grid_rooms_hotness.get(room_x, room_y) <= 0 ) { [INFO] [stdout] | ^ ^^ [INFO] [stdout] | [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 124 - if (*self.grid_rooms_hotness.get(room_x, room_y) <= 0 ) { [INFO] [stdout] 124 + if *self.grid_rooms_hotness.get(room_x, room_y) <= 0 { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around `for` iterator expression [INFO] [stdout] --> src/world_grid.rs:192:39 [INFO] [stdout] | [INFO] [stdout] 192 | ... for dy in (min_dy..=max_dy) { [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 192 - for dy in (min_dy..=max_dy) { [INFO] [stdout] 192 + for dy in min_dy..=max_dy { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `process::Output` [INFO] [stdout] --> src/datatype.rs:1:65 [INFO] [stdout] | [INFO] [stdout] 1 | use std::{cmp::{max, min}, fmt::Display, ops::{Mul, MulAssign}, process::Output}; [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around `if` condition [INFO] [stdout] --> src/world_grid.rs:202:40 [INFO] [stdout] | [INFO] [stdout] 202 | ... if (dy>1) { [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 202 - if (dy>1) { [INFO] [stdout] 202 + if dy>1 { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around `for` iterator expression [INFO] [stdout] --> src/datatype.rs:77:28 [INFO] [stdout] | [INFO] [stdout] 77 | for sanitized_x in (max(0,x-1)..=min(x+1,self.width as i32-1)) { [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_parens)]` on by default [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 77 - for sanitized_x in (max(0,x-1)..=min(x+1,self.width as i32-1)) { [INFO] [stdout] 77 + for sanitized_x in max(0,x-1)..=min(x+1,self.width as i32-1) { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around `if` condition [INFO] [stdout] --> src/world_grid.rs:252:32 [INFO] [stdout] | [INFO] [stdout] 252 | ... if (fall_left && fall_right) { [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 252 - if (fall_left && fall_right) { [INFO] [stdout] 252 + if fall_left && fall_right { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around `for` iterator expression [INFO] [stdout] --> src/datatype.rs:78:32 [INFO] [stdout] | [INFO] [stdout] 78 | for sanitized_y in (max(0,y-1)..=min(y+1,self.height as i32-1)) { [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 78 - for sanitized_y in (max(0,y-1)..=min(y+1,self.height as i32-1)) { [INFO] [stdout] 78 + for sanitized_y in max(0,y-1)..=min(y+1,self.height as i32-1) { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `Cell` and `RefCell` [INFO] [stdout] --> src/world_grid.rs:2:17 [INFO] [stdout] | [INFO] [stdout] 2 | use std::cell::{Cell, RefCell}; [INFO] [stdout] | ^^^^ ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around `if` condition [INFO] [stdout] --> src/main.rs:228:20 [INFO] [stdout] | [INFO] [stdout] 228 | if (self.emitting) { [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 228 - if (self.emitting) { [INFO] [stdout] 228 + if self.emitting { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `Div` [INFO] [stdout] --> src/world_grid.rs:4:16 [INFO] [stdout] | [INFO] [stdout] 4 | use std::ops::{Div, RangeInclusive}; [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `gloo::console::log` [INFO] [stdout] --> src/world_grid.rs:11:5 [INFO] [stdout] | [INFO] [stdout] 11 | use gloo::console::log; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around `for` iterator expression [INFO] [stdout] --> src/world_grid.rs:122:23 [INFO] [stdout] | [INFO] [stdout] 122 | for room_x in (0..self.grid_rooms_hotness.width()) { [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 122 - for room_x in (0..self.grid_rooms_hotness.width()) { [INFO] [stdout] 122 + for room_x in 0..self.grid_rooms_hotness.width() { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around `for` iterator expression [INFO] [stdout] --> src/world_grid.rs:123:27 [INFO] [stdout] | [INFO] [stdout] 123 | for room_y in (0..self.grid_rooms_hotness.height()) { [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 123 - for room_y in (0..self.grid_rooms_hotness.height()) { [INFO] [stdout] 123 + for room_y in 0..self.grid_rooms_hotness.height() { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around `if` condition [INFO] [stdout] --> src/world_grid.rs:124:20 [INFO] [stdout] | [INFO] [stdout] 124 | if (*self.grid_rooms_hotness.get(room_x, room_y) <= 0 ) { [INFO] [stdout] | ^ ^^ [INFO] [stdout] | [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 124 - if (*self.grid_rooms_hotness.get(room_x, room_y) <= 0 ) { [INFO] [stdout] 124 + if *self.grid_rooms_hotness.get(room_x, room_y) <= 0 { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around `for` iterator expression [INFO] [stdout] --> src/world_grid.rs:192:39 [INFO] [stdout] | [INFO] [stdout] 192 | ... for dy in (min_dy..=max_dy) { [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 192 - for dy in (min_dy..=max_dy) { [INFO] [stdout] 192 + for dy in min_dy..=max_dy { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around `if` condition [INFO] [stdout] --> src/world_grid.rs:202:40 [INFO] [stdout] | [INFO] [stdout] 202 | ... if (dy>1) { [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 202 - if (dy>1) { [INFO] [stdout] 202 + if dy>1 { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around `if` condition [INFO] [stdout] --> src/world_grid.rs:252:32 [INFO] [stdout] | [INFO] [stdout] 252 | ... if (fall_left && fall_right) { [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 252 - if (fall_left && fall_right) { [INFO] [stdout] 252 + if fall_left && fall_right { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around `if` condition [INFO] [stdout] --> src/main.rs:228:20 [INFO] [stdout] | [INFO] [stdout] 228 | if (self.emitting) { [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 228 - if (self.emitting) { [INFO] [stdout] 228 + if self.emitting { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/world_grid.rs:225:37 [INFO] [stdout] | [INFO] [stdout] 225 | ... let mut fall_right = [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/world_grid.rs:228:37 [INFO] [stdout] | [INFO] [stdout] 228 | ... let mut fall_left = [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/world_grid.rs:225:37 [INFO] [stdout] | [INFO] [stdout] 225 | ... let mut fall_right = [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/world_grid.rs:228:37 [INFO] [stdout] | [INFO] [stdout] 228 | ... let mut fall_left = [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:90:13 [INFO] [stdout] | [INFO] [stdout] 90 | let mut canvas = self.canvas.cast::().unwrap(); [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:90:13 [INFO] [stdout] | [INFO] [stdout] 90 | let mut canvas = self.canvas.cast::().unwrap(); [INFO] [stdout] | ----^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `bg_color` and `world_bitmap` are never read [INFO] [stdout] --> src/main.rs:21:5 [INFO] [stdout] | [INFO] [stdout] 17 | struct SandboxCanvas { [INFO] [stdout] | ------------- fields in this struct [INFO] [stdout] ... [INFO] [stdout] 21 | bg_color: (u8,u8,u8), [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 25 | world_bitmap: Option, [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `draw_bitmap` is never used [INFO] [stdout] --> src/main.rs:57:8 [INFO] [stdout] | [INFO] [stdout] 56 | trait DrawableSurface { [INFO] [stdout] | --------------- method in this trait [INFO] [stdout] 57 | fn draw_bitmap(&self, x: f64, y: f64, bitmap: &ImageBitmap); [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `scale` and `convert` are never used [INFO] [stdout] --> src/datatype.rs:14:12 [INFO] [stdout] | [INFO] [stdout] 11 | impl Vector2 where T: Mul + MulAssign + Copy + Display { [INFO] [stdout] | ------------------------------------------------------------ methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 14 | pub fn scale(&mut self, s: T2) -> &mut Self [INFO] [stdout] | ^^^^^ [INFO] [stdout] ... [INFO] [stdout] 24 | pub fn convert(&self) -> Vector2 [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `get_mut` and `swap` are never used [INFO] [stdout] --> src/datatype.rs:63:12 [INFO] [stdout] | [INFO] [stdout] 48 | / impl GridMap [INFO] [stdout] 49 | | where T: Clone [INFO] [stdout] | |______________- methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 63 | pub fn get_mut(&mut self, x:usize, y:usize) -> &mut T { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 72 | pub fn swap(&mut self, x1:usize, y1:usize, x2:usize, y2:usize) { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `Block` is never constructed [INFO] [stdout] --> src/world_grid.rs:34:5 [INFO] [stdout] | [INFO] [stdout] 31 | pub enum CellType { [INFO] [stdout] | -------- variant in this enum [INFO] [stdout] ... [INFO] [stdout] 34 | Block(ParticleData), [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `CellType` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `pointsize` should have an upper case name [INFO] [stdout] --> src/main.rs:14:7 [INFO] [stdout] | [INFO] [stdout] 14 | const pointsize : usize = 4; [INFO] [stdout] | ^^^^^^^^^ help: convert the identifier to upper case: `POINTSIZE` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(non_upper_case_globals)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `bg_color` and `world_bitmap` are never read [INFO] [stdout] --> src/main.rs:21:5 [INFO] [stdout] | [INFO] [stdout] 17 | struct SandboxCanvas { [INFO] [stdout] | ------------- fields in this struct [INFO] [stdout] ... [INFO] [stdout] 21 | bg_color: (u8,u8,u8), [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 25 | world_bitmap: Option, [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `draw_bitmap` is never used [INFO] [stdout] --> src/main.rs:57:8 [INFO] [stdout] | [INFO] [stdout] 56 | trait DrawableSurface { [INFO] [stdout] | --------------- method in this trait [INFO] [stdout] 57 | fn draw_bitmap(&self, x: f64, y: f64, bitmap: &ImageBitmap); [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `scale` and `convert` are never used [INFO] [stdout] --> src/datatype.rs:14:12 [INFO] [stdout] | [INFO] [stdout] 11 | impl Vector2 where T: Mul + MulAssign + Copy + Display { [INFO] [stdout] | ------------------------------------------------------------ methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 14 | pub fn scale(&mut self, s: T2) -> &mut Self [INFO] [stdout] | ^^^^^ [INFO] [stdout] ... [INFO] [stdout] 24 | pub fn convert(&self) -> Vector2 [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `get_mut` and `swap` are never used [INFO] [stdout] --> src/datatype.rs:63:12 [INFO] [stdout] | [INFO] [stdout] 48 | / impl GridMap [INFO] [stdout] 49 | | where T: Clone [INFO] [stdout] | |______________- methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 63 | pub fn get_mut(&mut self, x:usize, y:usize) -> &mut T { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 72 | pub fn swap(&mut self, x1:usize, y1:usize, x2:usize, y2:usize) { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `Block` is never constructed [INFO] [stdout] --> src/world_grid.rs:34:5 [INFO] [stdout] | [INFO] [stdout] 31 | pub enum CellType { [INFO] [stdout] | -------- variant in this enum [INFO] [stdout] ... [INFO] [stdout] 34 | Block(ParticleData), [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `CellType` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `pointsize` should have an upper case name [INFO] [stdout] --> src/main.rs:14:7 [INFO] [stdout] | [INFO] [stdout] 14 | const pointsize : usize = 4; [INFO] [stdout] | ^^^^^^^^^ help: convert the identifier to upper case: `POINTSIZE` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(non_upper_case_globals)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/main.rs:165:9 [INFO] [stdout] | [INFO] [stdout] 165 | / window().unwrap().add_event_listener_with_callback( [INFO] [stdout] 166 | | "resize", [INFO] [stdout] 167 | | resize_closure.as_ref().unchecked_ref() [INFO] [stdout] 168 | | ); [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] 165 | let _ = window().unwrap().add_event_listener_with_callback( [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: comparison is useless due to type limits [INFO] [stdout] --> src/world_grid.rs:96:16 [INFO] [stdout] | [INFO] [stdout] 96 | if x>=0 && y >= 0 && (x < self.width()) && (y < self.height()) { [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_comparisons)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: comparison is useless due to type limits [INFO] [stdout] --> src/world_grid.rs:96:24 [INFO] [stdout] | [INFO] [stdout] 96 | if x>=0 && y >= 0 && (x < self.width()) && (y < self.height()) { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/main.rs:165:9 [INFO] [stdout] | [INFO] [stdout] 165 | / window().unwrap().add_event_listener_with_callback( [INFO] [stdout] 166 | | "resize", [INFO] [stdout] 167 | | resize_closure.as_ref().unchecked_ref() [INFO] [stdout] 168 | | ); [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] 165 | let _ = window().unwrap().add_event_listener_with_callback( [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: comparison is useless due to type limits [INFO] [stdout] --> src/world_grid.rs:96:16 [INFO] [stdout] | [INFO] [stdout] 96 | if x>=0 && y >= 0 && (x < self.width()) && (y < self.height()) { [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_comparisons)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: comparison is useless due to type limits [INFO] [stdout] --> src/world_grid.rs:96:24 [INFO] [stdout] | [INFO] [stdout] 96 | if x>=0 && y >= 0 && (x < self.width()) && (y < self.height()) { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 27 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 27 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished `dev` profile [unoptimized + debuginfo] target(s) in 13.61s [INFO] running `Command { std: "docker" "inspect" "7bc79b5b2989bb202c58358b08c734ad6a26cde37786b234d077182f41812e65", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "7bc79b5b2989bb202c58358b08c734ad6a26cde37786b234d077182f41812e65", kill_on_drop: false }` [INFO] [stdout] 7bc79b5b2989bb202c58358b08c734ad6a26cde37786b234d077182f41812e65