[INFO] fetching crate bml_grapher 0.1.5...
[INFO] testing bml_grapher-0.1.5 against master#c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38 for pr-146098-7
[INFO] extracting crate bml_grapher 0.1.5 into /workspace/builds/worker-0-tc1/source
[INFO] started tweaking crates.io crate bml_grapher 0.1.5
[INFO] removed 0 missing examples
[INFO] finished tweaking crates.io crate bml_grapher 0.1.5
[INFO] tweaked toml for crates.io crate bml_grapher 0.1.5 written to /workspace/builds/worker-0-tc1/source/Cargo.toml
[INFO] validating manifest of crates.io crate bml_grapher 0.1.5 on toolchain c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate crates.io crate bml_grapher 0.1.5 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" "+c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38" "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.5
[INFO] [stderr]   Downloaded xcursor v0.3.5
[INFO] [stderr]   Downloaded wayland-cursor v0.29.5
[INFO] [stderr]   Downloaded wayland-commons v0.29.5
[INFO] [stderr]   Downloaded version-compare v0.1.1
[INFO] [stderr]   Downloaded hex_color v3.0.0
[INFO] [stderr]   Downloaded libloading v0.8.4
[INFO] [stderr]   Downloaded minifb v0.27.0
[INFO] [stderr]   Downloaded wayland-client v0.29.5
[INFO] [stderr]   Downloaded wayland-protocols v0.29.5
[INFO] [stderr]   Downloaded sdl2 v0.35.2
[INFO] [stderr]   Downloaded sdl2-sys v0.35.2
[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:4848fb76d95f26979359cc7e45710b1dbc8f3acb7aeedee7c460d7702230f228" "/opt/rustwide/cargo-home/bin/cargo" "+c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] 9d98faadfd041b6c152d6f4bc22e39cf8d150cc0c26455d9b15d78a5009886fb
[INFO] running `Command { std: "docker" "start" "-a" "9d98faadfd041b6c152d6f4bc22e39cf8d150cc0c26455d9b15d78a5009886fb", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "9d98faadfd041b6c152d6f4bc22e39cf8d150cc0c26455d9b15d78a5009886fb", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "9d98faadfd041b6c152d6f4bc22e39cf8d150cc0c26455d9b15d78a5009886fb", kill_on_drop: false }`
[INFO] [stdout] 9d98faadfd041b6c152d6f4bc22e39cf8d150cc0c26455d9b15d78a5009886fb
[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:4848fb76d95f26979359cc7e45710b1dbc8f3acb7aeedee7c460d7702230f228" "/opt/rustwide/cargo-home/bin/cargo" "+c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38" "build" "--frozen" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 5077058e222ff7064a6b2a67cc745fe7f577296b6e14f53cbcdfbb41c939f2ed
[INFO] running `Command { std: "docker" "start" "-a" "5077058e222ff7064a6b2a67cc745fe7f577296b6e14f53cbcdfbb41c939f2ed", kill_on_drop: false }`
[INFO] [stderr]    Compiling libc v0.2.155
[INFO] [stderr]    Compiling xml-rs v0.8.20
[INFO] [stderr]    Compiling libloading v0.8.4
[INFO] [stderr]    Compiling wayland-sys v0.29.5
[INFO] [stderr]    Compiling memoffset v0.6.5
[INFO] [stderr]    Compiling downcast-rs v1.2.1
[INFO] [stderr]    Compiling rustix v0.38.34
[INFO] [stderr]    Compiling scoped-tls v1.0.1
[INFO] [stderr]    Compiling dlib v0.5.2
[INFO] [stderr]    Compiling x11-dl v2.21.0
[INFO] [stderr]    Compiling bitflags v2.6.0
[INFO] [stderr]    Compiling linux-raw-sys v0.4.14
[INFO] [stderr]    Compiling cc v1.1.5
[INFO] [stderr]    Compiling xcursor v0.3.5
[INFO] [stderr]    Compiling fastrand v2.1.0
[INFO] [stderr]    Compiling raw-window-handle v0.6.2
[INFO] [stderr]    Compiling hex_color v3.0.0
[INFO] [stderr]    Compiling wayland-scanner v0.29.5
[INFO] [stderr]    Compiling minifb v0.27.0
[INFO] [stderr]    Compiling wayland-client v0.29.5
[INFO] [stderr]    Compiling wayland-protocols v0.29.5
[INFO] [stderr]    Compiling nix v0.24.3
[INFO] [stderr]    Compiling tempfile v3.10.1
[INFO] [stderr]    Compiling wayland-commons v0.29.5
[INFO] [stderr]    Compiling wayland-cursor v0.29.5
[INFO] [stderr]    Compiling bml_grapher v0.1.5 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unused import: `invLerp`
[INFO] [stdout]  --> src/lib.rs:9:12
[INFO] [stdout]   |
[INFO] [stdout] 9 | use math::{invLerp, lerp, Vec2D};
[INFO] [stdout]   |            ^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `w` and `h` are never read
[INFO] [stdout]   --> src/lib.rs:19:5
[INFO] [stdout]    |
[INFO] [stdout] 17 | pub struct SnorfWindow {
[INFO] [stdout]    |            ----------- fields in this struct
[INFO] [stdout] 18 |     window: Window,
[INFO] [stdout] 19 |     w : usize, // window width
[INFO] [stdout]    |     ^
[INFO] [stdout] 20 |     h : usize, // window height
[INFO] [stdout]    |     ^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> src/lib.rs:233:9
[INFO] [stdout]     |
[INFO] [stdout] 233 |         self.draw_line(sw, se, color);
[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)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 233 |         let _ = self.draw_line(sw, se, color);
[INFO] [stdout]     |         +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> src/lib.rs:234:9
[INFO] [stdout]     |
[INFO] [stdout] 234 |         self.draw_line(se, ne, color);
[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] 234 |         let _ = self.draw_line(se, ne, color);
[INFO] [stdout]     |         +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> src/lib.rs:235:9
[INFO] [stdout]     |
[INFO] [stdout] 235 |         self.draw_line(ne, nw, color);
[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] 235 |         let _ = self.draw_line(ne, nw, color);
[INFO] [stdout]     |         +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> src/lib.rs:236:9
[INFO] [stdout]     |
[INFO] [stdout] 236 |         self.draw_line(nw, sw, color);
[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] 236 |         let _ = self.draw_line(nw, sw, color);
[INFO] [stdout]     |         +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> src/lib.rs:298:21
[INFO] [stdout]     |
[INFO] [stdout] 298 |                     self.ctx.draw_line(&text_pos, &Vec2D::new(w-offset, text_pos.y), Hex::from_word("grey"));
[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] 298 |                     let _ = self.ctx.draw_line(&text_pos, &Vec2D::new(w-offset, text_pos.y), Hex::from_word("grey"));
[INFO] [stdout]     |                     +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> src/lib.rs:307:13
[INFO] [stdout]     |
[INFO] [stdout] 307 |             self.ctx.draw_line(&Vec2D::new(offset,offset), &end_point, 0x000000);
[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] 307 |             let _ = self.ctx.draw_line(&Vec2D::new(offset,offset), &end_point, 0x000000);
[INFO] [stdout]     |             +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> src/lib.rs:319:21
[INFO] [stdout]     |
[INFO] [stdout] 319 |                     self.ctx.draw_line(&text_pos, &Vec2D::new(text_pos.x, h-offset), Hex::from_word("grey"));
[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] 319 |                     let _ = self.ctx.draw_line(&text_pos, &Vec2D::new(text_pos.x, h-offset), Hex::from_word("grey"));
[INFO] [stdout]     |                     +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> src/lib.rs:326:13
[INFO] [stdout]     |
[INFO] [stdout] 326 |             self.ctx.draw_line(&Vec2D::new(offset,offset), &Vec2D::new(w-offset, offset), 0x000000);
[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] 326 |             let _ = self.ctx.draw_line(&Vec2D::new(offset,offset), &Vec2D::new(w-offset, offset), 0x000000);
[INFO] [stdout]     |             +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> src/lib.rs:400:25
[INFO] [stdout]     |
[INFO] [stdout] 400 | ...   self.ctx.draw_line(&Vec2D::new(pp.x as usize, pp.y as usize), &Vec2D::new(point.x as usize, point.y as usize), color);
[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] 400 |                         let _ = self.ctx.draw_line(&Vec2D::new(pp.x as usize, pp.y as usize), &Vec2D::new(point.x as usize, point.y as usize), color);
[INFO] [stdout]     |                         +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `invLerp` should have a snake case name
[INFO] [stdout]    --> src/math.rs:104:8
[INFO] [stdout]     |
[INFO] [stdout] 104 | pub fn invLerp(a: f32, b: f32, c: f32) -> f32 {
[INFO] [stdout]     |        ^^^^^^^ help: convert the identifier to snake case: `inv_lerp`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(non_snake_case)]` (part of `#[warn(nonstandard_style)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 50.22s
[INFO] running `Command { std: "docker" "inspect" "5077058e222ff7064a6b2a67cc745fe7f577296b6e14f53cbcdfbb41c939f2ed", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "5077058e222ff7064a6b2a67cc745fe7f577296b6e14f53cbcdfbb41c939f2ed", kill_on_drop: false }`
[INFO] [stdout] 5077058e222ff7064a6b2a67cc745fe7f577296b6e14f53cbcdfbb41c939f2ed
[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:4848fb76d95f26979359cc7e45710b1dbc8f3acb7aeedee7c460d7702230f228" "/opt/rustwide/cargo-home/bin/cargo" "+c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] c55c9f83d9e3ba9cbff7759ac723036f976be35c4a254287d40e87563c033fac
[INFO] running `Command { std: "docker" "start" "-a" "c55c9f83d9e3ba9cbff7759ac723036f976be35c4a254287d40e87563c033fac", kill_on_drop: false }`
[INFO] [stderr]    Compiling getrandom v0.3.3
[INFO] [stdout] warning: unused import: `invLerp`
[INFO] [stdout]  --> src/lib.rs:9:12
[INFO] [stdout]   |
[INFO] [stdout] 9 | use math::{invLerp, lerp, Vec2D};
[INFO] [stdout]   |            ^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `w` and `h` are never read
[INFO] [stdout]   --> src/lib.rs:19:5
[INFO] [stdout]    |
[INFO] [stdout] 17 | pub struct SnorfWindow {
[INFO] [stdout]    |            ----------- fields in this struct
[INFO] [stdout] 18 |     window: Window,
[INFO] [stdout] 19 |     w : usize, // window width
[INFO] [stdout]    |     ^
[INFO] [stdout] 20 |     h : usize, // window height
[INFO] [stdout]    |     ^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> src/lib.rs:233:9
[INFO] [stdout]     |
[INFO] [stdout] 233 |         self.draw_line(sw, se, color);
[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)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 233 |         let _ = self.draw_line(sw, se, color);
[INFO] [stdout]     |         +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> src/lib.rs:234:9
[INFO] [stdout]     |
[INFO] [stdout] 234 |         self.draw_line(se, ne, color);
[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] 234 |         let _ = self.draw_line(se, ne, color);
[INFO] [stdout]     |         +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> src/lib.rs:235:9
[INFO] [stdout]     |
[INFO] [stdout] 235 |         self.draw_line(ne, nw, color);
[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] 235 |         let _ = self.draw_line(ne, nw, color);
[INFO] [stdout]     |         +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> src/lib.rs:236:9
[INFO] [stdout]     |
[INFO] [stdout] 236 |         self.draw_line(nw, sw, color);
[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] 236 |         let _ = self.draw_line(nw, sw, color);
[INFO] [stdout]     |         +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> src/lib.rs:298:21
[INFO] [stdout]     |
[INFO] [stdout] 298 |                     self.ctx.draw_line(&text_pos, &Vec2D::new(w-offset, text_pos.y), Hex::from_word("grey"));
[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] 298 |                     let _ = self.ctx.draw_line(&text_pos, &Vec2D::new(w-offset, text_pos.y), Hex::from_word("grey"));
[INFO] [stdout]     |                     +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> src/lib.rs:307:13
[INFO] [stdout]     |
[INFO] [stdout] 307 |             self.ctx.draw_line(&Vec2D::new(offset,offset), &end_point, 0x000000);
[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] 307 |             let _ = self.ctx.draw_line(&Vec2D::new(offset,offset), &end_point, 0x000000);
[INFO] [stdout]     |             +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> src/lib.rs:319:21
[INFO] [stdout]     |
[INFO] [stdout] 319 |                     self.ctx.draw_line(&text_pos, &Vec2D::new(text_pos.x, h-offset), Hex::from_word("grey"));
[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] 319 |                     let _ = self.ctx.draw_line(&text_pos, &Vec2D::new(text_pos.x, h-offset), Hex::from_word("grey"));
[INFO] [stdout]     |                     +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> src/lib.rs:326:13
[INFO] [stdout]     |
[INFO] [stdout] 326 |             self.ctx.draw_line(&Vec2D::new(offset,offset), &Vec2D::new(w-offset, offset), 0x000000);
[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] 326 |             let _ = self.ctx.draw_line(&Vec2D::new(offset,offset), &Vec2D::new(w-offset, offset), 0x000000);
[INFO] [stdout]     |             +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> src/lib.rs:400:25
[INFO] [stdout]     |
[INFO] [stdout] 400 | ...   self.ctx.draw_line(&Vec2D::new(pp.x as usize, pp.y as usize), &Vec2D::new(point.x as usize, point.y as usize), color);
[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] 400 |                         let _ = self.ctx.draw_line(&Vec2D::new(pp.x as usize, pp.y as usize), &Vec2D::new(point.x as usize, point.y as usize), color);
[INFO] [stdout]     |                         +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `invLerp` should have a snake case name
[INFO] [stdout]    --> src/math.rs:104:8
[INFO] [stdout]     |
[INFO] [stdout] 104 | pub fn invLerp(a: f32, b: f32, c: f32) -> f32 {
[INFO] [stdout]     |        ^^^^^^^ help: convert the identifier to snake case: `inv_lerp`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(non_snake_case)]` (part of `#[warn(nonstandard_style)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]    Compiling rand_core v0.9.3
[INFO] [stderr]    Compiling rand_chacha v0.9.0
[INFO] [stderr]    Compiling rand v0.9.2
[INFO] [stderr]    Compiling bml_grapher v0.1.5 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unused imports: `Ctx` and `Rgba`
[INFO] [stdout]  --> examples/simulated_annealing.rs:5:32
[INFO] [stdout]   |
[INFO] [stdout] 5 | use bml_grapher::{math::Vec2D, Ctx, GraphCtx, GraphSettings, Rgba, SnorfWindow};
[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: `invLerp`
[INFO] [stdout]  --> src/lib.rs:9:12
[INFO] [stdout]   |
[INFO] [stdout] 9 | use math::{invLerp, lerp, Vec2D};
[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 variable: `offset`
[INFO] [stdout]   --> examples/simulated_annealing.rs:53:83
[INFO] [stdout]    |
[INFO] [stdout] 53 | ...ndow, ctx: &mut GraphCtx, offset:usize, border_offsets: [f32;4],start_node: Node, f: F) -> Node  {
[INFO] [stdout]    |                              ^^^^^^ help: if this is intentional, prefix it with an underscore: `_offset`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `border_offsets`
[INFO] [stdout]   --> examples/simulated_annealing.rs:53:97
[INFO] [stdout]    |
[INFO] [stdout] 53 | ...tx, offset:usize, border_offsets: [f32;4],start_node: Node, f: F) -> Node  {
[INFO] [stdout]    |                      ^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_border_offsets`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `border_offsets`
[INFO] [stdout]    --> examples/simulated_annealing.rs:163:9
[INFO] [stdout]     |
[INFO] [stdout] 163 |     let border_offsets = [min_xnum,max_xnum,min_ynum,max_ynum];
[INFO] [stdout]     |         ^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_border_offsets`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `BLACK` is never used
[INFO] [stdout]   --> examples/simulated_annealing.rs:10:7
[INFO] [stdout]    |
[INFO] [stdout] 10 | const BLACK:u32 = 0x000000;
[INFO] [stdout]    |       ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `GREY` is never used
[INFO] [stdout]   --> examples/simulated_annealing.rs:13:7
[INFO] [stdout]    |
[INFO] [stdout] 13 | const GREY: u32 = 0xf5f5f5;  // 0xc2c2c2
[INFO] [stdout]    |       ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `YELLOW` is never used
[INFO] [stdout]   --> examples/simulated_annealing.rs:15:7
[INFO] [stdout]    |
[INFO] [stdout] 15 | const YELLOW:u32 = 0xf9f034;
[INFO] [stdout]    |       ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `GREEN` is never used
[INFO] [stdout]   --> examples/simulated_annealing.rs:16:7
[INFO] [stdout]    |
[INFO] [stdout] 16 | const GREEN:u32 =0x1be81b;
[INFO] [stdout]    |       ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `get_best_child` is never used
[INFO] [stdout]   --> examples/simulated_annealing.rs:37:8
[INFO] [stdout]    |
[INFO] [stdout] 25 | impl Node {
[INFO] [stdout]    | --------- associated function in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 37 |     fn get_best_child<F: Fn(f32) -> f32>(children: &Vec<Node>, f: &F) -> Node {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `hill_climbing` is never used
[INFO] [stdout]   --> examples/simulated_annealing.rs:53:4
[INFO] [stdout]    |
[INFO] [stdout] 53 | fn hill_climbing<F: Fn(f32) -> f32>(window: &mut SnorfWindow, ctx: &mut GraphCtx, offset:usize, border_offsets: [f32;4],start_node: ...
[INFO] [stdout]    |    ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `w` and `h` are never read
[INFO] [stdout]   --> src/lib.rs:19:5
[INFO] [stdout]    |
[INFO] [stdout] 17 | pub struct SnorfWindow {
[INFO] [stdout]    |            ----------- fields in this struct
[INFO] [stdout] 18 |     window: Window,
[INFO] [stdout] 19 |     w : usize, // window width
[INFO] [stdout]    |     ^
[INFO] [stdout] 20 |     h : usize, // window height
[INFO] [stdout]    |     ^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> src/lib.rs:233:9
[INFO] [stdout]     |
[INFO] [stdout] 233 |         self.draw_line(sw, se, color);
[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)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 233 |         let _ = self.draw_line(sw, se, color);
[INFO] [stdout]     |         +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> src/lib.rs:234:9
[INFO] [stdout]     |
[INFO] [stdout] 234 |         self.draw_line(se, ne, color);
[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] 234 |         let _ = self.draw_line(se, ne, color);
[INFO] [stdout]     |         +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> src/lib.rs:235:9
[INFO] [stdout]     |
[INFO] [stdout] 235 |         self.draw_line(ne, nw, color);
[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] 235 |         let _ = self.draw_line(ne, nw, color);
[INFO] [stdout]     |         +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> src/lib.rs:236:9
[INFO] [stdout]     |
[INFO] [stdout] 236 |         self.draw_line(nw, sw, color);
[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] 236 |         let _ = self.draw_line(nw, sw, color);
[INFO] [stdout]     |         +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> src/lib.rs:298:21
[INFO] [stdout]     |
[INFO] [stdout] 298 |                     self.ctx.draw_line(&text_pos, &Vec2D::new(w-offset, text_pos.y), Hex::from_word("grey"));
[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] 298 |                     let _ = self.ctx.draw_line(&text_pos, &Vec2D::new(w-offset, text_pos.y), Hex::from_word("grey"));
[INFO] [stdout]     |                     +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> src/lib.rs:307:13
[INFO] [stdout]     |
[INFO] [stdout] 307 |             self.ctx.draw_line(&Vec2D::new(offset,offset), &end_point, 0x000000);
[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] 307 |             let _ = self.ctx.draw_line(&Vec2D::new(offset,offset), &end_point, 0x000000);
[INFO] [stdout]     |             +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> src/lib.rs:319:21
[INFO] [stdout]     |
[INFO] [stdout] 319 |                     self.ctx.draw_line(&text_pos, &Vec2D::new(text_pos.x, h-offset), Hex::from_word("grey"));
[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] 319 |                     let _ = self.ctx.draw_line(&text_pos, &Vec2D::new(text_pos.x, h-offset), Hex::from_word("grey"));
[INFO] [stdout]     |                     +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> src/lib.rs:326:13
[INFO] [stdout]     |
[INFO] [stdout] 326 |             self.ctx.draw_line(&Vec2D::new(offset,offset), &Vec2D::new(w-offset, offset), 0x000000);
[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] 326 |             let _ = self.ctx.draw_line(&Vec2D::new(offset,offset), &Vec2D::new(w-offset, offset), 0x000000);
[INFO] [stdout]     |             +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> src/lib.rs:400:25
[INFO] [stdout]     |
[INFO] [stdout] 400 | ...   self.ctx.draw_line(&Vec2D::new(pp.x as usize, pp.y as usize), &Vec2D::new(point.x as usize, point.y as usize), color);
[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] 400 |                         let _ = self.ctx.draw_line(&Vec2D::new(pp.x as usize, pp.y as usize), &Vec2D::new(point.x as usize, point.y as usize), color);
[INFO] [stdout]     |                         +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `invLerp` should have a snake case name
[INFO] [stdout]    --> src/math.rs:104:8
[INFO] [stdout]     |
[INFO] [stdout] 104 | pub fn invLerp(a: f32, b: f32, c: f32) -> f32 {
[INFO] [stdout]     |        ^^^^^^^ help: convert the identifier to snake case: `inv_lerp`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(non_snake_case)]` (part of `#[warn(nonstandard_style)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 3.45s
[INFO] running `Command { std: "docker" "inspect" "c55c9f83d9e3ba9cbff7759ac723036f976be35c4a254287d40e87563c033fac", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "c55c9f83d9e3ba9cbff7759ac723036f976be35c4a254287d40e87563c033fac", kill_on_drop: false }`
[INFO] [stdout] c55c9f83d9e3ba9cbff7759ac723036f976be35c4a254287d40e87563c033fac
[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:4848fb76d95f26979359cc7e45710b1dbc8f3acb7aeedee7c460d7702230f228" "/opt/rustwide/cargo-home/bin/cargo" "+c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38" "test" "--frozen", kill_on_drop: false }`
[INFO] [stdout] ae57a5f15fc6d73a2551eae231fc0b49b464442eeadd7a8d74dd4d1938b0551a
[INFO] running `Command { std: "docker" "start" "-a" "ae57a5f15fc6d73a2551eae231fc0b49b464442eeadd7a8d74dd4d1938b0551a", kill_on_drop: false }`
[INFO] [stderr] warning: unused import: `invLerp`
[INFO] [stderr]  --> src/lib.rs:9:12
[INFO] [stderr]   |
[INFO] [stderr] 9 | use math::{invLerp, lerp, Vec2D};
[INFO] [stderr]   |            ^^^^^^^
[INFO] [stderr]   |
[INFO] [stderr]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: fields `w` and `h` are never read
[INFO] [stderr]   --> src/lib.rs:19:5
[INFO] [stderr]    |
[INFO] [stderr] 17 | pub struct SnorfWindow {
[INFO] [stderr]    |            ----------- fields in this struct
[INFO] [stderr] 18 |     window: Window,
[INFO] [stderr] 19 |     w : usize, // window width
[INFO] [stderr]    |     ^
[INFO] [stderr] 20 |     h : usize, // window height
[INFO] [stderr]    |     ^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unused `Result` that must be used
[INFO] [stderr]    --> src/lib.rs:233:9
[INFO] [stderr]     |
[INFO] [stderr] 233 |         self.draw_line(sw, se, color);
[INFO] [stderr]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stderr]     = note: `#[warn(unused_must_use)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] help: use `let _ = ...` to ignore the resulting value
[INFO] [stderr]     |
[INFO] [stderr] 233 |         let _ = self.draw_line(sw, se, color);
[INFO] [stderr]     |         +++++++
[INFO] [stderr] 
[INFO] [stderr] warning: unused `Result` that must be used
[INFO] [stderr]    --> src/lib.rs:234:9
[INFO] [stderr]     |
[INFO] [stderr] 234 |         self.draw_line(se, ne, color);
[INFO] [stderr]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stderr] help: use `let _ = ...` to ignore the resulting value
[INFO] [stderr]     |
[INFO] [stderr] 234 |         let _ = self.draw_line(se, ne, color);
[INFO] [stderr]     |         +++++++
[INFO] [stderr] 
[INFO] [stderr] warning: unused `Result` that must be used
[INFO] [stderr]    --> src/lib.rs:235:9
[INFO] [stderr]     |
[INFO] [stderr] 235 |         self.draw_line(ne, nw, color);
[INFO] [stderr]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stderr] help: use `let _ = ...` to ignore the resulting value
[INFO] [stderr]     |
[INFO] [stderr] 235 |         let _ = self.draw_line(ne, nw, color);
[INFO] [stderr]     |         +++++++
[INFO] [stderr] 
[INFO] [stderr] warning: unused `Result` that must be used
[INFO] [stderr]    --> src/lib.rs:236:9
[INFO] [stderr]     |
[INFO] [stderr] 236 |         self.draw_line(nw, sw, color);
[INFO] [stderr]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stderr] help: use `let _ = ...` to ignore the resulting value
[INFO] [stderr]     |
[INFO] [stderr] 236 |         let _ = self.draw_line(nw, sw, color);
[INFO] [stderr]     |         +++++++
[INFO] [stderr] 
[INFO] [stderr] warning: unused `Result` that must be used
[INFO] [stderr]    --> src/lib.rs:298:21
[INFO] [stderr]     |
[INFO] [stderr] 298 |                     self.ctx.draw_line(&text_pos, &Vec2D::new(w-offset, text_pos.y), Hex::from_word("grey"));
[INFO] [stderr]     |                     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stderr] help: use `let _ = ...` to ignore the resulting value
[INFO] [stderr]     |
[INFO] [stderr] 298 |                     let _ = self.ctx.draw_line(&text_pos, &Vec2D::new(w-offset, text_pos.y), Hex::from_word("grey"));
[INFO] [stderr]     |                     +++++++
[INFO] [stderr] 
[INFO] [stderr] warning: unused `Result` that must be used
[INFO] [stderr]    --> src/lib.rs:307:13
[INFO] [stderr]     |
[INFO] [stderr] 307 |             self.ctx.draw_line(&Vec2D::new(offset,offset), &end_point, 0x000000);
[INFO] [stderr]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stderr] help: use `let _ = ...` to ignore the resulting value
[INFO] [stderr]     |
[INFO] [stderr] 307 |             let _ = self.ctx.draw_line(&Vec2D::new(offset,offset), &end_point, 0x000000);
[INFO] [stderr]     |             +++++++
[INFO] [stderr] 
[INFO] [stderr] warning: unused `Result` that must be used
[INFO] [stderr]    --> src/lib.rs:319:21
[INFO] [stderr]     |
[INFO] [stderr] 319 |                     self.ctx.draw_line(&text_pos, &Vec2D::new(text_pos.x, h-offset), Hex::from_word("grey"));
[INFO] [stderr]     |                     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stderr] help: use `let _ = ...` to ignore the resulting value
[INFO] [stderr]     |
[INFO] [stderr] 319 |                     let _ = self.ctx.draw_line(&text_pos, &Vec2D::new(text_pos.x, h-offset), Hex::from_word("grey"));
[INFO] [stderr]     |                     +++++++
[INFO] [stderr] 
[INFO] [stderr] warning: unused `Result` that must be used
[INFO] [stderr]    --> src/lib.rs:326:13
[INFO] [stderr]     |
[INFO] [stderr] 326 |             self.ctx.draw_line(&Vec2D::new(offset,offset), &Vec2D::new(w-offset, offset), 0x000000);
[INFO] [stderr]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stderr] help: use `let _ = ...` to ignore the resulting value
[INFO] [stderr]     |
[INFO] [stderr] 326 |             let _ = self.ctx.draw_line(&Vec2D::new(offset,offset), &Vec2D::new(w-offset, offset), 0x000000);
[INFO] [stderr]     |             +++++++
[INFO] [stderr] 
[INFO] [stderr] warning: unused `Result` that must be used
[INFO] [stderr]    --> src/lib.rs:400:25
[INFO] [stderr]     |
[INFO] [stderr] 400 | ...   self.ctx.draw_line(&Vec2D::new(pp.x as usize, pp.y as usize), &Vec2D::new(point.x as usize, point.y as usize), color);
[INFO] [stderr]     |       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stderr] help: use `let _ = ...` to ignore the resulting value
[INFO] [stderr]     |
[INFO] [stderr] 400 |                         let _ = self.ctx.draw_line(&Vec2D::new(pp.x as usize, pp.y as usize), &Vec2D::new(point.x as usize, point.y as usize), color);
[INFO] [stderr]     |                         +++++++
[INFO] [stderr] 
[INFO] [stderr] warning: function `invLerp` should have a snake case name
[INFO] [stderr]    --> src/math.rs:104:8
[INFO] [stderr]     |
[INFO] [stderr] 104 | pub fn invLerp(a: f32, b: f32, c: f32) -> f32 {
[INFO] [stderr]     |        ^^^^^^^ help: convert the identifier to snake case: `inv_lerp`
[INFO] [stderr]     |
[INFO] [stderr]     = note: `#[warn(non_snake_case)]` (part of `#[warn(nonstandard_style)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: `bml_grapher` (lib) generated 12 warnings (run `cargo fix --lib -p bml_grapher` to apply 1 suggestion)
[INFO] [stderr] warning: `bml_grapher` (lib test) generated 12 warnings (12 duplicates)
[INFO] [stderr] warning: unused imports: `Ctx` and `Rgba`
[INFO] [stderr]  --> examples/simulated_annealing.rs:5:32
[INFO] [stderr]   |
[INFO] [stderr] 5 | use bml_grapher::{math::Vec2D, Ctx, GraphCtx, GraphSettings, Rgba, SnorfWindow};
[INFO] [stderr]   |                                ^^^                           ^^^^
[INFO] [stderr]   |
[INFO] [stderr]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `offset`
[INFO] [stderr]   --> examples/simulated_annealing.rs:53:83
[INFO] [stderr]    |
[INFO] [stderr] 53 | ...ndow, ctx: &mut GraphCtx, offset:usize, border_offsets: [f32;4],start_node: Node, f: F) -> Node  {
[INFO] [stderr]    |                              ^^^^^^ help: if this is intentional, prefix it with an underscore: `_offset`
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `border_offsets`
[INFO] [stderr]   --> examples/simulated_annealing.rs:53:97
[INFO] [stderr]    |
[INFO] [stderr] 53 | ...tx, offset:usize, border_offsets: [f32;4],start_node: Node, f: F) -> Node  {
[INFO] [stderr]    |                      ^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_border_offsets`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `border_offsets`
[INFO] [stderr]    --> examples/simulated_annealing.rs:163:9
[INFO] [stderr]     |
[INFO] [stderr] 163 |     let border_offsets = [min_xnum,max_xnum,min_ynum,max_ynum];
[INFO] [stderr]     |         ^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_border_offsets`
[INFO] [stderr] 
[INFO] [stderr] warning: constant `BLACK` is never used
[INFO] [stderr]   --> examples/simulated_annealing.rs:10:7
[INFO] [stderr]    |
[INFO] [stderr] 10 | const BLACK:u32 = 0x000000;
[INFO] [stderr]    |       ^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: constant `GREY` is never used
[INFO] [stderr]   --> examples/simulated_annealing.rs:13:7
[INFO] [stderr]    |
[INFO] [stderr] 13 | const GREY: u32 = 0xf5f5f5;  // 0xc2c2c2
[INFO] [stderr]    |       ^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: constant `YELLOW` is never used
[INFO] [stderr]   --> examples/simulated_annealing.rs:15:7
[INFO] [stderr]    |
[INFO] [stderr] 15 | const YELLOW:u32 = 0xf9f034;
[INFO] [stderr]    |       ^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: constant `GREEN` is never used
[INFO] [stderr]   --> examples/simulated_annealing.rs:16:7
[INFO] [stderr]    |
[INFO] [stderr] 16 | const GREEN:u32 =0x1be81b;
[INFO] [stderr]    |       ^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: associated function `get_best_child` is never used
[INFO] [stderr]   --> examples/simulated_annealing.rs:37:8
[INFO] [stderr]    |
[INFO] [stderr] 25 | impl Node {
[INFO] [stderr]    | --------- associated function in this implementation
[INFO] [stderr] ...
[INFO] [stderr] 37 |     fn get_best_child<F: Fn(f32) -> f32>(children: &Vec<Node>, f: &F) -> Node {
[INFO] [stderr]    |        ^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `hill_climbing` is never used
[INFO] [stderr]   --> examples/simulated_annealing.rs:53:4
[INFO] [stderr]    |
[INFO] [stderr] 53 | fn hill_climbing<F: Fn(f32) -> f32>(window: &mut SnorfWindow, ctx: &mut GraphCtx, offset:usize, border_offsets: [f32;4],start_node: ...
[INFO] [stderr]    |    ^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: `bml_grapher` (example "simulated_annealing") generated 10 warnings (run `cargo fix --example "simulated_annealing" -p bml_grapher` to apply 4 suggestions)
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 0.17s
[INFO] [stderr]      Running unittests src/lib.rs (/opt/rustwide/target/debug/deps/bml_grapher-0aa90ab2deb5c425)
[INFO] [stdout] 
[INFO] [stdout] running 0 tests
[INFO] [stdout] 
[INFO] [stderr]    Doc-tests bml_grapher
[INFO] [stdout] test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] running 1 test
[INFO] [stdout] test src/lib.rs - SnorfWindow::new (line 29) ... FAILED
[INFO] [stdout] 
[INFO] [stdout] failures:
[INFO] [stdout] 
[INFO] [stdout] ---- src/lib.rs - SnorfWindow::new (line 29) stdout ----
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `SnorfWindow`
[INFO] [stdout]   --> src/lib.rs:30:19
[INFO] [stdout]    |
[INFO] [stdout] 30 | let mut window =  SnorfWindow::new("Grapher", 480,540, None);
[INFO] [stdout]    |                   ^^^^^^^^^^^ use of undeclared type `SnorfWindow`
[INFO] [stdout]    |
[INFO] [stdout] help: consider importing this struct
[INFO] [stdout]    |
[INFO] [stdout] 29 + use bml_grapher::SnorfWindow;
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] error: aborting due to 1 previous error
[INFO] [stdout] 
[INFO] [stdout] For more information about this error, try `rustc --explain E0433`.
[INFO] [stdout] Couldn't compile the test.
[INFO] [stdout] 
[INFO] [stdout] failures:
[INFO] [stdout]     src/lib.rs - SnorfWindow::new (line 29)
[INFO] [stdout] 
[INFO] [stdout] test result: FAILED. 0 passed; 1 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.17s
[INFO] [stdout] 
[INFO] [stderr] error: doctest failed, to rerun pass `--doc`
[INFO] running `Command { std: "docker" "inspect" "ae57a5f15fc6d73a2551eae231fc0b49b464442eeadd7a8d74dd4d1938b0551a", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "ae57a5f15fc6d73a2551eae231fc0b49b464442eeadd7a8d74dd4d1938b0551a", kill_on_drop: false }`
[INFO] [stdout] ae57a5f15fc6d73a2551eae231fc0b49b464442eeadd7a8d74dd4d1938b0551a
