[INFO] cloning repository https://github.com/dixe/rust-sdf-tool [INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/dixe/rust-sdf-tool" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fdixe%2Frust-sdf-tool", kill_on_drop: false }` [INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fdixe%2Frust-sdf-tool'... [INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }` [INFO] [stdout] 729034f68abf67f56de7e57a2d8ee8d22deeb4ea [INFO] building dixe/rust-sdf-tool against master#f5209000832c9d3bc29c91f4daef4ca9f28dc797+target=wasm32-wasip1 for pr-149868 [INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fdixe%2Frust-sdf-tool" "/workspace/builds/worker-4-tc1/source", kill_on_drop: false }` [INFO] [stderr] Cloning into '/workspace/builds/worker-4-tc1/source'... [INFO] [stderr] done. [INFO] started tweaking git repo https://github.com/dixe/rust-sdf-tool [INFO] finished tweaking git repo https://github.com/dixe/rust-sdf-tool [INFO] tweaked toml for git repo https://github.com/dixe/rust-sdf-tool written to /workspace/builds/worker-4-tc1/source/Cargo.toml [INFO] validating manifest of git repo https://github.com/dixe/rust-sdf-tool on toolchain f5209000832c9d3bc29c91f4daef4ca9f28dc797 [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+f5209000832c9d3bc29c91f4daef4ca9f28dc797" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] crate git repo https://github.com/dixe/rust-sdf-tool 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" "+f5209000832c9d3bc29c91f4daef4ca9f28dc797" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] [stderr] Downloading crates ... [INFO] [stderr] Downloaded cmake v0.1.48 [INFO] [stderr] Downloaded miniz_oxide v0.5.4 [INFO] [stderr] Downloaded bytemuck v1.12.1 [INFO] [stderr] Downloaded png v0.17.6 [INFO] [stderr] Downloaded exr v1.5.1 [INFO] [stderr] Downloaded freetype-rs v0.31.0 [INFO] [stderr] Downloaded image v0.24.3 [INFO] [stderr] Downloaded jpeg-decoder v0.2.6 [INFO] [stderr] Downloaded tiff v0.7.3 [INFO] [stderr] Downloaded freetype-sys v0.16.0 [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:845e597a41426bbf2703be69acdb67d10b6de511142d05cba7bbe119c898b2c7" "/opt/rustwide/cargo-home/bin/cargo" "+f5209000832c9d3bc29c91f4daef4ca9f28dc797" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] 15c68a58b1b7e402a9f3697494baaaa3935dae7d2d5502fb08ae1b4acf8ffa2e [INFO] running `Command { std: "docker" "start" "-a" "15c68a58b1b7e402a9f3697494baaaa3935dae7d2d5502fb08ae1b4acf8ffa2e", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "15c68a58b1b7e402a9f3697494baaaa3935dae7d2d5502fb08ae1b4acf8ffa2e", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "15c68a58b1b7e402a9f3697494baaaa3935dae7d2d5502fb08ae1b4acf8ffa2e", kill_on_drop: false }` [INFO] [stdout] 15c68a58b1b7e402a9f3697494baaaa3935dae7d2d5502fb08ae1b4acf8ffa2e [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:845e597a41426bbf2703be69acdb67d10b6de511142d05cba7bbe119c898b2c7" "/opt/rustwide/cargo-home/bin/cargo" "+f5209000832c9d3bc29c91f4daef4ca9f28dc797" "build" "--frozen" "--message-format=json" "--target" "wasm32-wasip1", kill_on_drop: false }` [INFO] [stdout] 3d93565c8fa39d398b2889129b408fce407ceed65ecfa68b6a6be0b8dffe9e90 [INFO] running `Command { std: "docker" "start" "-a" "3d93565c8fa39d398b2889129b408fce407ceed65ecfa68b6a6be0b8dffe9e90", kill_on_drop: false }` [INFO] [stderr] Compiling libc v0.2.133 [INFO] [stderr] Compiling once_cell v1.15.0 [INFO] [stderr] Compiling proc-macro2 v1.0.43 [INFO] [stderr] Compiling unicode-ident v1.0.4 [INFO] [stderr] Compiling quote v1.0.21 [INFO] [stderr] Compiling syn v1.0.100 [INFO] [stderr] Compiling adler v1.0.2 [INFO] [stderr] Compiling futures-core v0.3.24 [INFO] [stderr] Compiling cmake v0.1.48 [INFO] [stderr] Compiling num-traits v0.2.15 [INFO] [stderr] Compiling num-integer v0.1.45 [INFO] [stderr] Compiling getrandom v0.2.7 [INFO] [stderr] Compiling either v1.8.0 [INFO] [stderr] Compiling spin v0.9.4 [INFO] [stderr] Compiling num-rational v0.4.1 [INFO] [stderr] Compiling futures-sink v0.3.24 [INFO] [stderr] Compiling weezl v0.1.7 [INFO] [stderr] Compiling smallvec v1.9.0 [INFO] [stderr] Compiling miniz_oxide v0.5.4 [INFO] [stderr] Compiling bit_field v0.10.1 [INFO] [stderr] Compiling nanorand v0.7.0 [INFO] [stderr] Compiling half v1.8.2 [INFO] [stderr] Compiling scoped_threadpool v0.1.9 [INFO] [stderr] Compiling bytemuck v1.12.1 [INFO] [stderr] Compiling crossbeam-utils v0.8.11 [INFO] [stderr] Compiling num_cpus v1.13.1 [INFO] [stderr] Compiling crossbeam-epoch v0.9.10 [INFO] [stderr] Compiling crossbeam-channel v0.5.6 [INFO] [stderr] Compiling freetype-sys v0.16.0 [INFO] [stderr] Compiling gif v0.11.4 [INFO] [stderr] Compiling threadpool v1.8.1 [INFO] [stderr] Compiling flate2 v1.0.24 [INFO] [stderr] Compiling crossbeam-deque v0.8.2 [INFO] [stderr] Compiling png v0.17.6 [INFO] [stderr] Compiling rayon-core v1.9.3 [INFO] [stderr] Compiling rayon v1.5.3 [INFO] [stderr] Compiling jpeg-decoder v0.2.6 [INFO] [stderr] Compiling pin-project-internal v1.0.12 [INFO] [stderr] Compiling tiff v0.7.3 [INFO] [stderr] Compiling pin-project v1.0.12 [INFO] [stderr] Compiling flume v0.10.14 [INFO] [stderr] Compiling freetype-rs v0.31.0 [INFO] [stderr] Compiling exr v1.5.1 [INFO] [stderr] Compiling image v0.24.3 [INFO] [stderr] Compiling rust-sdf-tool v0.1.0 (/opt/rustwide/workdir) [INFO] [stdout] warning: unused import: `std::fmt::Write` [INFO] [stdout] --> src/main.rs:1:5 [INFO] [stdout] | [INFO] [stdout] 1 | use std::fmt::Write; [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: `std::io::Cursor` [INFO] [stdout] --> src/main.rs:2:5 [INFO] [stdout] | [INFO] [stdout] 2 | use std::io::Cursor; [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::io::prelude::*` [INFO] [stdout] --> src/fntfont.rs:2:5 [INFO] [stdout] | [INFO] [stdout] 2 | use std::io::prelude::*; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `image::imageops` [INFO] [stdout] --> src/fntfont.rs:4:5 [INFO] [stdout] | [INFO] [stdout] 4 | use image::imageops; [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/fntfont.rs:19:13 [INFO] [stdout] | [INFO] [stdout] 19 | let mut out_img = p.image.clone(); [INFO] [stdout] | ----^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/fntfont.rs:40:9 [INFO] [stdout] | [INFO] [stdout] 40 | let mut page_id = 0; [INFO] [stdout] | ----^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `h` [INFO] [stdout] --> src/fntfont.rs:52:13 [INFO] [stdout] | [INFO] [stdout] 52 | let h = img.height(); [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_h` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/fntfont.rs:172:9 [INFO] [stdout] | [INFO] [stdout] 172 | let mut res = format!("kernings count={}\n", kernings.len()); [INFO] [stdout] | ----^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `k` [INFO] [stdout] --> src/fntfont.rs:174:9 [INFO] [stdout] | [INFO] [stdout] 174 | for k in kernings { [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_k` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `args` [INFO] [stdout] --> src/main.rs:22:9 [INFO] [stdout] | [INFO] [stdout] 22 | let args = std::env::args(); [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_args` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `lineheight` [INFO] [stdout] --> src/main.rs:52:9 [INFO] [stdout] | [INFO] [stdout] 52 | let lineheight = face.height() >> 6; [INFO] [stdout] | ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_lineheight` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/main.rs:60:9 [INFO] [stdout] | [INFO] [stdout] 60 | let mut s = "".to_string(); [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:112:9 [INFO] [stdout] | [INFO] [stdout] 112 | let mut max_d = 0.0; [INFO] [stdout] | ----^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `s` [INFO] [stdout] --> src/main.rs:60:9 [INFO] [stdout] | [INFO] [stdout] 60 | let mut s = "".to_string(); [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_s` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `spread` [INFO] [stdout] --> src/main.rs:68:9 [INFO] [stdout] | [INFO] [stdout] 68 | let spread = gen_info.spread; [INFO] [stdout] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_spread` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `g` [INFO] [stdout] --> src/main.rs:73:9 [INFO] [stdout] | [INFO] [stdout] 73 | let g = glyph.get_glyph().unwrap(); [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_g` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `max_d` [INFO] [stdout] --> src/main.rs:112:9 [INFO] [stdout] | [INFO] [stdout] 112 | let mut max_d = 0.0; [INFO] [stdout] | ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_max_d` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/main.rs:226:9 [INFO] [stdout] | [INFO] [stdout] 226 | let mut res = scaled / 2.0 + 0.5; [INFO] [stdout] | ----^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `g` [INFO] [stdout] --> src/main.rs:253:9 [INFO] [stdout] | [INFO] [stdout] 253 | let g = glyph.get_glyph().unwrap(); [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_g` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `rows` [INFO] [stdout] --> src/main.rs:257:9 [INFO] [stdout] | [INFO] [stdout] 257 | let rows = bitmap.rows(); [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_rows` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `width` [INFO] [stdout] --> src/main.rs:258:9 [INFO] [stdout] | [INFO] [stdout] 258 | let width = bitmap.width(); [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_width` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `buffer` [INFO] [stdout] --> src/main.rs:259:9 [INFO] [stdout] | [INFO] [stdout] 259 | let buffer = bitmap.buffer(); [INFO] [stdout] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_buffer` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `left` [INFO] [stdout] --> src/main.rs:270:9 [INFO] [stdout] | [INFO] [stdout] 270 | let left = g_metrics.horiAdvance >> 6; [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_left` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `g_width` [INFO] [stdout] --> src/main.rs:271:9 [INFO] [stdout] | [INFO] [stdout] 271 | let g_width = g_metrics.width >> 6; [INFO] [stdout] | ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_g_width` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `advance_y` [INFO] [stdout] --> src/main.rs:276:9 [INFO] [stdout] | [INFO] [stdout] 276 | let advance_y = glyph.advance().y >> 6; [INFO] [stdout] | ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_advance_y` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `px_value` is never used [INFO] [stdout] --> src/main.rs:155:4 [INFO] [stdout] | [INFO] [stdout] 155 | fn px_value(buffer: &[u8], buf_w: i32, buf_h: i32, padding: i32, sdf_x: i32, sdf_y: i32, spread: i32) -> f64 { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `create_raster_img_with_baseline` is never used [INFO] [stdout] --> src/main.rs:235:4 [INFO] [stdout] | [INFO] [stdout] 235 | fn create_raster_img_with_baseline(chr: char, face: &freetype::Face, font_size: u32) -> RgbaImage { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `advance_y`, `padding_x`, and `padding_y` are never read [INFO] [stdout] --> src/main.rs:322:5 [INFO] [stdout] | [INFO] [stdout] 317 | pub struct CharInfo { [INFO] [stdout] | -------- fields in this struct [INFO] [stdout] ... [INFO] [stdout] 322 | advance_y: i32, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] 323 | padding_x: i32, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] 324 | padding_y: i32, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `CharInfo` has derived impls for the traits `Debug` and `Clone`, but these are intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `FontInfo` is never constructed [INFO] [stdout] --> src/fntfont.rs:182:12 [INFO] [stdout] | [INFO] [stdout] 182 | pub struct FontInfo { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `first`, `second`, and `amount` are never read [INFO] [stdout] --> src/fntfont.rs:232:5 [INFO] [stdout] | [INFO] [stdout] 231 | pub struct KerningInfo { [INFO] [stdout] | ----------- fields in this struct [INFO] [stdout] 232 | first: i32, [INFO] [stdout] | ^^^^^ [INFO] [stdout] 233 | second: i32, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] 234 | amount: i32, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/fntfont.rs:21:9 [INFO] [stdout] | [INFO] [stdout] 21 | out_img.save(p.file.clone()); [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] 21 | let _ = out_img.save(p.file.clone()); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/fntfont.rs:34:5 [INFO] [stdout] | [INFO] [stdout] 34 | file.flush(); [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] 34 | let _ = file.flush(); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: structure field `stretchH` should have a snake case name [INFO] [stdout] --> src/fntfont.rs:190:5 [INFO] [stdout] | [INFO] [stdout] 190 | stretchH: i32, [INFO] [stdout] | ^^^^^^^^ help: convert the identifier to snake case: `stretch_h` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(non_snake_case)]` (part of `#[warn(nonstandard_style)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: structure field `scaleW` should have a snake case name [INFO] [stdout] --> src/fntfont.rs:198:5 [INFO] [stdout] | [INFO] [stdout] 198 | scaleW: i32, [INFO] [stdout] | ^^^^^^ help: convert the identifier to snake case: `scale_w` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: structure field `scaleH` should have a snake case name [INFO] [stdout] --> src/fntfont.rs:199:5 [INFO] [stdout] | [INFO] [stdout] 199 | scaleH: i32, [INFO] [stdout] | ^^^^^^ help: convert the identifier to snake case: `scale_h` [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished `dev` profile [unoptimized + debuginfo] target(s) in 36.09s [INFO] running `Command { std: "docker" "inspect" "3d93565c8fa39d398b2889129b408fce407ceed65ecfa68b6a6be0b8dffe9e90", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "3d93565c8fa39d398b2889129b408fce407ceed65ecfa68b6a6be0b8dffe9e90", kill_on_drop: false }` [INFO] [stdout] 3d93565c8fa39d398b2889129b408fce407ceed65ecfa68b6a6be0b8dffe9e90 [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:845e597a41426bbf2703be69acdb67d10b6de511142d05cba7bbe119c898b2c7" "/opt/rustwide/cargo-home/bin/cargo" "+f5209000832c9d3bc29c91f4daef4ca9f28dc797" "test" "--frozen" "--no-run" "--message-format=json" "--target" "wasm32-wasip1", kill_on_drop: false }` [INFO] [stdout] 058ce2316989b089c3734c8f48b5fcd168074419237a18ce57f1bfae1c75ca6b [INFO] running `Command { std: "docker" "start" "-a" "058ce2316989b089c3734c8f48b5fcd168074419237a18ce57f1bfae1c75ca6b", kill_on_drop: false }` [INFO] [stderr] Compiling rust-sdf-tool v0.1.0 (/opt/rustwide/workdir) [INFO] [stdout] warning: unused import: `std::fmt::Write` [INFO] [stdout] --> src/main.rs:1:5 [INFO] [stdout] | [INFO] [stdout] 1 | use std::fmt::Write; [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: `std::io::Cursor` [INFO] [stdout] --> src/main.rs:2:5 [INFO] [stdout] | [INFO] [stdout] 2 | use std::io::Cursor; [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::io::prelude::*` [INFO] [stdout] --> src/fntfont.rs:2:5 [INFO] [stdout] | [INFO] [stdout] 2 | use std::io::prelude::*; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `image::imageops` [INFO] [stdout] --> src/fntfont.rs:4:5 [INFO] [stdout] | [INFO] [stdout] 4 | use image::imageops; [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/fntfont.rs:19:13 [INFO] [stdout] | [INFO] [stdout] 19 | let mut out_img = p.image.clone(); [INFO] [stdout] | ----^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/fntfont.rs:40:9 [INFO] [stdout] | [INFO] [stdout] 40 | let mut page_id = 0; [INFO] [stdout] | ----^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `h` [INFO] [stdout] --> src/fntfont.rs:52:13 [INFO] [stdout] | [INFO] [stdout] 52 | let h = img.height(); [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_h` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/fntfont.rs:172:9 [INFO] [stdout] | [INFO] [stdout] 172 | let mut res = format!("kernings count={}\n", kernings.len()); [INFO] [stdout] | ----^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `k` [INFO] [stdout] --> src/fntfont.rs:174:9 [INFO] [stdout] | [INFO] [stdout] 174 | for k in kernings { [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_k` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `args` [INFO] [stdout] --> src/main.rs:22:9 [INFO] [stdout] | [INFO] [stdout] 22 | let args = std::env::args(); [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_args` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `lineheight` [INFO] [stdout] --> src/main.rs:52:9 [INFO] [stdout] | [INFO] [stdout] 52 | let lineheight = face.height() >> 6; [INFO] [stdout] | ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_lineheight` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/main.rs:60:9 [INFO] [stdout] | [INFO] [stdout] 60 | let mut s = "".to_string(); [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:112:9 [INFO] [stdout] | [INFO] [stdout] 112 | let mut max_d = 0.0; [INFO] [stdout] | ----^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `s` [INFO] [stdout] --> src/main.rs:60:9 [INFO] [stdout] | [INFO] [stdout] 60 | let mut s = "".to_string(); [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_s` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `spread` [INFO] [stdout] --> src/main.rs:68:9 [INFO] [stdout] | [INFO] [stdout] 68 | let spread = gen_info.spread; [INFO] [stdout] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_spread` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `g` [INFO] [stdout] --> src/main.rs:73:9 [INFO] [stdout] | [INFO] [stdout] 73 | let g = glyph.get_glyph().unwrap(); [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_g` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `max_d` [INFO] [stdout] --> src/main.rs:112:9 [INFO] [stdout] | [INFO] [stdout] 112 | let mut max_d = 0.0; [INFO] [stdout] | ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_max_d` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/main.rs:226:9 [INFO] [stdout] | [INFO] [stdout] 226 | let mut res = scaled / 2.0 + 0.5; [INFO] [stdout] | ----^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `g` [INFO] [stdout] --> src/main.rs:253:9 [INFO] [stdout] | [INFO] [stdout] 253 | let g = glyph.get_glyph().unwrap(); [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_g` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `rows` [INFO] [stdout] --> src/main.rs:257:9 [INFO] [stdout] | [INFO] [stdout] 257 | let rows = bitmap.rows(); [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_rows` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `width` [INFO] [stdout] --> src/main.rs:258:9 [INFO] [stdout] | [INFO] [stdout] 258 | let width = bitmap.width(); [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_width` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `buffer` [INFO] [stdout] --> src/main.rs:259:9 [INFO] [stdout] | [INFO] [stdout] 259 | let buffer = bitmap.buffer(); [INFO] [stdout] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_buffer` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `left` [INFO] [stdout] --> src/main.rs:270:9 [INFO] [stdout] | [INFO] [stdout] 270 | let left = g_metrics.horiAdvance >> 6; [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_left` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `g_width` [INFO] [stdout] --> src/main.rs:271:9 [INFO] [stdout] | [INFO] [stdout] 271 | let g_width = g_metrics.width >> 6; [INFO] [stdout] | ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_g_width` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `advance_y` [INFO] [stdout] --> src/main.rs:276:9 [INFO] [stdout] | [INFO] [stdout] 276 | let advance_y = glyph.advance().y >> 6; [INFO] [stdout] | ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_advance_y` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `create_raster_img_with_baseline` is never used [INFO] [stdout] --> src/main.rs:235:4 [INFO] [stdout] | [INFO] [stdout] 235 | fn create_raster_img_with_baseline(chr: char, face: &freetype::Face, font_size: u32) -> RgbaImage { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `advance_y`, `padding_x`, and `padding_y` are never read [INFO] [stdout] --> src/main.rs:322:5 [INFO] [stdout] | [INFO] [stdout] 317 | pub struct CharInfo { [INFO] [stdout] | -------- fields in this struct [INFO] [stdout] ... [INFO] [stdout] 322 | advance_y: i32, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] 323 | padding_x: i32, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] 324 | padding_y: i32, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `CharInfo` has derived impls for the traits `Debug` and `Clone`, but these are intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `FontInfo` is never constructed [INFO] [stdout] --> src/fntfont.rs:182:12 [INFO] [stdout] | [INFO] [stdout] 182 | pub struct FontInfo { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `first`, `second`, and `amount` are never read [INFO] [stdout] --> src/fntfont.rs:232:5 [INFO] [stdout] | [INFO] [stdout] 231 | pub struct KerningInfo { [INFO] [stdout] | ----------- fields in this struct [INFO] [stdout] 232 | first: i32, [INFO] [stdout] | ^^^^^ [INFO] [stdout] 233 | second: i32, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] 234 | amount: i32, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/fntfont.rs:21:9 [INFO] [stdout] | [INFO] [stdout] 21 | out_img.save(p.file.clone()); [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] 21 | let _ = out_img.save(p.file.clone()); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/fntfont.rs:34:5 [INFO] [stdout] | [INFO] [stdout] 34 | file.flush(); [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] 34 | let _ = file.flush(); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: structure field `stretchH` should have a snake case name [INFO] [stdout] --> src/fntfont.rs:190:5 [INFO] [stdout] | [INFO] [stdout] 190 | stretchH: i32, [INFO] [stdout] | ^^^^^^^^ help: convert the identifier to snake case: `stretch_h` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(non_snake_case)]` (part of `#[warn(nonstandard_style)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: structure field `scaleW` should have a snake case name [INFO] [stdout] --> src/fntfont.rs:198:5 [INFO] [stdout] | [INFO] [stdout] 198 | scaleW: i32, [INFO] [stdout] | ^^^^^^ help: convert the identifier to snake case: `scale_w` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: structure field `scaleH` should have a snake case name [INFO] [stdout] --> src/fntfont.rs:199:5 [INFO] [stdout] | [INFO] [stdout] 199 | scaleH: i32, [INFO] [stdout] | ^^^^^^ help: convert the identifier to snake case: `scale_h` [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished `test` profile [unoptimized + debuginfo] target(s) in 0.90s [INFO] running `Command { std: "docker" "inspect" "058ce2316989b089c3734c8f48b5fcd168074419237a18ce57f1bfae1c75ca6b", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "058ce2316989b089c3734c8f48b5fcd168074419237a18ce57f1bfae1c75ca6b", kill_on_drop: false }` [INFO] [stdout] 058ce2316989b089c3734c8f48b5fcd168074419237a18ce57f1bfae1c75ca6b