[INFO] fetching crate shoalart 0.0.100...
[INFO] testing shoalart-0.0.100 against beta-2026-04-21 for beta-1.96-2
[INFO] extracting crate shoalart 0.0.100 into /workspace/builds/worker-7-tc2/source
[INFO] started tweaking crates.io crate shoalart 0.0.100
[INFO] finished tweaking crates.io crate shoalart 0.0.100
[INFO] tweaked toml for crates.io crate shoalart 0.0.100 written to /workspace/builds/worker-7-tc2/source/Cargo.toml
[INFO] validating manifest of crates.io crate shoalart 0.0.100 on toolchain beta-2026-04-21
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+beta-2026-04-21" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate crates.io crate shoalart 0.0.100 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" "+beta-2026-04-21" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc2/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:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+beta-2026-04-21" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] c770fc93da13cb7557e1cf50c824abc2cd52bedda4505015e1cae7aab8fc07b6
[INFO] running `Command { std: "docker" "start" "-a" "c770fc93da13cb7557e1cf50c824abc2cd52bedda4505015e1cae7aab8fc07b6", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "c770fc93da13cb7557e1cf50c824abc2cd52bedda4505015e1cae7aab8fc07b6", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "c770fc93da13cb7557e1cf50c824abc2cd52bedda4505015e1cae7aab8fc07b6", kill_on_drop: false }`
[INFO] [stdout] c770fc93da13cb7557e1cf50c824abc2cd52bedda4505015e1cae7aab8fc07b6
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc2/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=warn" "-e" "RUSTDOCFLAGS=--cap-lints=warn" "-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:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+beta-2026-04-21" "build" "--frozen" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 7f00a3e60c9b335873a2a906f01a5dd756a97c48795ae2812500e3021d63908b
[INFO] running `Command { std: "docker" "start" "-a" "7f00a3e60c9b335873a2a906f01a5dd756a97c48795ae2812500e3021d63908b", kill_on_drop: false }`
[INFO] [stderr]    Compiling autocfg v1.0.1
[INFO] [stderr]    Compiling cfg-if v1.0.0
[INFO] [stderr]    Compiling libc v0.2.112
[INFO] [stderr]    Compiling lazy_static v1.4.0
[INFO] [stderr]    Compiling scopeguard v1.1.0
[INFO] [stderr]    Compiling crossbeam-utils v0.8.5
[INFO] [stderr]    Compiling version_check v0.9.3
[INFO] [stderr]    Compiling crossbeam-epoch v0.9.5
[INFO] [stderr]    Compiling proc-macro2 v1.0.34
[INFO] [stderr]    Compiling rayon-core v1.9.1
[INFO] [stderr]    Compiling unicode-xid v0.2.2
[INFO] [stderr]    Compiling bitflags v1.3.2
[INFO] [stderr]    Compiling crc32fast v1.3.0
[INFO] [stderr]    Compiling syn v1.0.82
[INFO] [stderr]    Compiling adler32 v1.2.0
[INFO] [stderr]    Compiling either v1.6.1
[INFO] [stderr]    Compiling proc-macro-error-attr v1.0.4
[INFO] [stderr]    Compiling proc-macro-error v1.0.4
[INFO] [stderr]    Compiling crossbeam-channel v0.5.1
[INFO] [stderr]    Compiling num-traits v0.2.14
[INFO] [stderr]    Compiling num-integer v0.1.44
[INFO] [stderr]    Compiling memoffset v0.6.5
[INFO] [stderr]    Compiling rayon v1.5.1
[INFO] [stderr]    Compiling miniz_oxide v0.4.4
[INFO] [stderr]    Compiling quote v1.0.10
[INFO] [stderr]    Compiling num_cpus v1.13.0
[INFO] [stderr]    Compiling num-iter v0.1.42
[INFO] [stderr]    Compiling num-rational v0.3.2
[INFO] [stderr]    Compiling log v0.4.14
[INFO] [stderr]    Compiling byteorder v1.4.3
[INFO] [stderr]    Compiling adler v1.0.2
[INFO] [stderr]    Compiling parking_lot_core v0.8.5
[INFO] [stderr]    Compiling weezl v0.1.5
[INFO] [stderr]    Compiling crossbeam-deque v0.8.1
[INFO] [stderr]    Compiling signal-hook v0.3.12
[INFO] [stderr]    Compiling deflate v0.8.6
[INFO] [stderr]    Compiling signal-hook-registry v1.4.0
[INFO] [stderr]    Compiling miniz_oxide v0.3.7
[INFO] [stderr]    Compiling instant v0.1.12
[INFO] [stderr]    Compiling unicode-segmentation v1.8.0
[INFO] [stderr]    Compiling color_quant v1.1.0
[INFO] [stderr]    Compiling strength_reduce v0.2.3
[INFO] [stderr]    Compiling smallvec v1.7.0
[INFO] [stderr]    Compiling unicode-width v0.1.9
[INFO] [stderr]    Compiling textwrap v0.11.0
[INFO] [stderr]    Compiling transpose v0.2.1
[INFO] [stderr]    Compiling gif v0.11.3
[INFO] [stderr]    Compiling heck v0.3.3
[INFO] [stderr]    Compiling png v0.16.8
[INFO] [stderr]    Compiling jpeg-decoder v0.1.22
[INFO] [stderr]    Compiling primal-check v0.3.1
[INFO] [stderr]    Compiling tiff v0.6.1
[INFO] [stderr]    Compiling mio v0.7.14
[INFO] [stderr]    Compiling num-complex v0.3.1
[INFO] [stderr]    Compiling atty v0.2.14
[INFO] [stderr]    Compiling ahash v0.7.6
[INFO] [stderr]    Compiling lock_api v0.4.5
[INFO] [stderr]    Compiling bytemuck v1.7.3
[INFO] [stderr]    Compiling strsim v0.8.0
[INFO] [stderr]    Compiling scrap v0.5.0
[INFO] [stderr]    Compiling vec_map v0.8.2
[INFO] [stderr]    Compiling static_assertions v1.1.0
[INFO] [stderr]    Compiling ansi_term v0.12.1
[INFO] [stderr]    Compiling ttf-parser v0.6.2
[INFO] [stderr]    Compiling scoped_threadpool v0.1.9
[INFO] [stderr]    Compiling twox-hash v1.6.1
[INFO] [stderr]    Compiling image v0.23.14
[INFO] [stderr]    Compiling clap v2.34.0
[INFO] [stderr]    Compiling rustfft v5.1.1
[INFO] [stderr]    Compiling parking_lot v0.11.2
[INFO] [stderr]    Compiling signal-hook-mio v0.2.1
[INFO] [stderr]    Compiling structopt-derive v0.4.18
[INFO] [stderr]    Compiling owned_ttf_parser v0.6.0
[INFO] [stderr]    Compiling getrandom v0.2.3
[INFO] [stderr]    Compiling once_cell v1.9.0
[INFO] [stderr]    Compiling cfg-if v0.1.10
[INFO] [stderr]    Compiling block v0.1.6
[INFO] [stderr]    Compiling winapi v0.2.8
[INFO] [stderr]    Compiling ab_glyph_rasterizer v0.1.5
[INFO] [stderr]    Compiling rusttype v0.9.2
[INFO] [stderr]    Compiling crossterm v0.22.1
[INFO] [stderr]    Compiling lz4_flex v0.9.2
[INFO] [stderr]    Compiling structopt v0.3.25
[INFO] [stderr]    Compiling edge-detection v0.2.5
[INFO] [stderr]    Compiling rustdct v0.6.0
[INFO] [stderr]    Compiling shoalart v0.0.100 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unused imports: `ClearType` and `Clear`
[INFO] [stdout]  --> src/routine/art.rs:7:44
[INFO] [stdout]   |
[INFO] [stdout] 7 |         disable_raw_mode, enable_raw_mode, Clear, ClearType, EnterAlternateScreen,
[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: `image_dir`
[INFO] [stdout]   --> src/routine/imageset.rs:32:9
[INFO] [stdout]    |
[INFO] [stdout] 32 |         image_dir,
[INFO] [stdout]    |         ^^^^^^^^^ help: try ignoring the field: `image_dir: _`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `output_file`
[INFO] [stdout]   --> src/routine/imageset.rs:33:9
[INFO] [stdout]    |
[INFO] [stdout] 33 |         output_file,
[INFO] [stdout]    |         ^^^^^^^^^^^ help: try ignoring the field: `output_file: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `crop`
[INFO] [stdout]   --> src/routine/imageset.rs:34:9
[INFO] [stdout]    |
[INFO] [stdout] 34 |         crop,
[INFO] [stdout]    |         ^^^^ help: try ignoring the field: `crop: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `resize`
[INFO] [stdout]   --> src/routine/imageset.rs:35:9
[INFO] [stdout]    |
[INFO] [stdout] 35 |         resize,
[INFO] [stdout]    |         ^^^^^^ help: try ignoring the field: `resize: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `gray`
[INFO] [stdout]   --> src/routine/imageset.rs:36:9
[INFO] [stdout]    |
[INFO] [stdout] 36 |         gray,
[INFO] [stdout]    |         ^^^^ help: try ignoring the field: `gray: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `dump`
[INFO] [stdout]   --> src/routine/imageset.rs:37:9
[INFO] [stdout]    |
[INFO] [stdout] 37 |         dump,
[INFO] [stdout]    |         ^^^^ help: try ignoring the field: `dump: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `image_dir_or_file`
[INFO] [stdout]   --> src/routine/photon.rs:43:9
[INFO] [stdout]    |
[INFO] [stdout] 43 |         image_dir_or_file,
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^ help: try ignoring the field: `image_dir_or_file: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `output_dir_or_file`
[INFO] [stdout]   --> src/routine/photon.rs:44:9
[INFO] [stdout]    |
[INFO] [stdout] 44 |         output_dir_or_file,
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^ help: try ignoring the field: `output_dir_or_file: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `imageset`
[INFO] [stdout]   --> src/routine/photon.rs:45:9
[INFO] [stdout]    |
[INFO] [stdout] 45 |         imageset,
[INFO] [stdout]    |         ^^^^^^^^ help: try ignoring the field: `imageset: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `imageset_dir`
[INFO] [stdout]   --> src/routine/photon.rs:46:9
[INFO] [stdout]    |
[INFO] [stdout] 46 |         imageset_dir,
[INFO] [stdout]    |         ^^^^^^^^^^^^ help: try ignoring the field: `imageset_dir: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `crop`
[INFO] [stdout]   --> src/routine/photon.rs:47:9
[INFO] [stdout]    |
[INFO] [stdout] 47 |         crop,
[INFO] [stdout]    |         ^^^^ help: try ignoring the field: `crop: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `resize`
[INFO] [stdout]   --> src/routine/photon.rs:48:9
[INFO] [stdout]    |
[INFO] [stdout] 48 |         resize,
[INFO] [stdout]    |         ^^^^^^ help: try ignoring the field: `resize: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `enlarge`
[INFO] [stdout]   --> src/routine/photon.rs:49:9
[INFO] [stdout]    |
[INFO] [stdout] 49 |         enlarge,
[INFO] [stdout]    |         ^^^^^^^ help: try ignoring the field: `enlarge: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `negate`
[INFO] [stdout]   --> src/routine/photon.rs:50:9
[INFO] [stdout]    |
[INFO] [stdout] 50 |         negate,
[INFO] [stdout]    |         ^^^^^^ help: try ignoring the field: `negate: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `image_dir`, `output_file`, `crop`, `resize`, `gray`, and `dump` are never read
[INFO] [stdout]   --> src/routine/imageset.rs:7:5
[INFO] [stdout]    |
[INFO] [stdout]  5 | pub struct Param {
[INFO] [stdout]    |            ----- fields in this struct
[INFO] [stdout]  6 |     #[structopt(parse(from_os_str))]
[INFO] [stdout]  7 |     image_dir: PathBuf,
[INFO] [stdout]    |     ^^^^^^^^^
[INFO] [stdout]  8 |     #[structopt(default_value = "Shoalart-Imageset.bin", parse(from_os_str))]
[INFO] [stdout]  9 |     output_file: PathBuf,
[INFO] [stdout]    |     ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 15 |     crop: Option<(u32, u32, u32, u32)>,
[INFO] [stdout]    |     ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 20 |     resize: Option<(u32, u32)>,
[INFO] [stdout]    |     ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 24 |     gray: bool,
[INFO] [stdout]    |     ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 27 |     dump: bool,
[INFO] [stdout]    |     ^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `Param` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `main` is never used
[INFO] [stdout]   --> src/routine/imageset.rs:30:8
[INFO] [stdout]    |
[INFO] [stdout] 30 | pub fn main(
[INFO] [stdout]    |        ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple fields are never read
[INFO] [stdout]   --> src/routine/photon.rs:7:5
[INFO] [stdout]    |
[INFO] [stdout]  5 | pub struct Param {
[INFO] [stdout]    |            ----- fields in this struct
[INFO] [stdout]  6 |     #[structopt(parse(from_os_str))]
[INFO] [stdout]  7 |     image_dir_or_file: PathBuf,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^
[INFO] [stdout]  8 |     #[structopt(parse(from_os_str))]
[INFO] [stdout]  9 |     output_dir_or_file: PathBuf,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 13 |     imageset: PathBuf,
[INFO] [stdout]    |     ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 18 |     imageset_dir: PathBuf,
[INFO] [stdout]    |     ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 24 |     crop: Option<(u32, u32, u32, u32)>,
[INFO] [stdout]    |     ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 29 |     resize: Option<(u32, u32)>,
[INFO] [stdout]    |     ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 34 |     enlarge: (u32, u32),
[INFO] [stdout]    |     ^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 38 |     negate: bool,
[INFO] [stdout]    |     ^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `Param` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `main` is never used
[INFO] [stdout]   --> src/routine/photon.rs:41:8
[INFO] [stdout]    |
[INFO] [stdout] 41 | pub fn main(
[INFO] [stdout]    |        ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: the type `[u8; 15]` does not permit being left uninitialized
[INFO] [stdout]    --> src/util.rs:100:46
[INFO] [stdout]     |
[INFO] [stdout] 100 | macro_rules! unsafe_init { () => {{ unsafe { std::mem::MaybeUninit::uninit().assume_init() } }}; }
[INFO] [stdout]     |                                              ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                                              |
[INFO] [stdout]     |                                              this code causes undefined behavior when executed
[INFO] [stdout]     |                                              help: use `MaybeUninit<T>` instead, and only call `assume_init` after initialization is done
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/routine/art.rs:128:41
[INFO] [stdout]     |
[INFO] [stdout] 128 |     let mut buf: [u8; ART_HEADER_LEN] = unsafe_init!();
[INFO] [stdout]     |                                         -------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: integers must be initialized
[INFO] [stdout]     = note: `#[warn(invalid_value)]` on by default
[INFO] [stdout]     = note: this warning originates in the macro `unsafe_init` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: the type `[[f32; 8]; 8]` does not permit being left uninitialized
[INFO] [stdout]    --> src/util.rs:100:46
[INFO] [stdout]     |
[INFO] [stdout] 100 | macro_rules! unsafe_init { () => {{ unsafe { std::mem::MaybeUninit::uninit().assume_init() } }}; }
[INFO] [stdout]     |                                              ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                                              |
[INFO] [stdout]     |                                              this code causes undefined behavior when executed
[INFO] [stdout]     |                                              help: use `MaybeUninit<T>` instead, and only call `assume_init` after initialization is done
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/routine/art.rs:197:36
[INFO] [stdout]     |
[INFO] [stdout] 197 |     let mut block: [[f32; 8]; 8] = unsafe_init!();
[INFO] [stdout]     |                                    -------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: floats must be initialized
[INFO] [stdout]     = note: this warning originates in the macro `unsafe_init` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: the type `[u8; 45]` does not permit being left uninitialized
[INFO] [stdout]    --> src/util.rs:100:46
[INFO] [stdout]     |
[INFO] [stdout] 100 | macro_rules! unsafe_init { () => {{ unsafe { std::mem::MaybeUninit::uninit().assume_init() } }}; }
[INFO] [stdout]     |                                              ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                                              |
[INFO] [stdout]     |                                              this code causes undefined behavior when executed
[INFO] [stdout]     |                                              help: use `MaybeUninit<T>` instead, and only call `assume_init` after initialization is done
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/routine/charset.rs:78:39
[INFO] [stdout]     |
[INFO] [stdout]  78 |     let mut buf: [u8; CST_ITEM_LEN] = unsafe_init!();
[INFO] [stdout]     |                                       -------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: integers must be initialized
[INFO] [stdout]     = note: this warning originates in the macro `unsafe_init` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: the type `[[f32; 8]; 8]` does not permit being left uninitialized
[INFO] [stdout]    --> src/util.rs:100:46
[INFO] [stdout]     |
[INFO] [stdout] 100 | macro_rules! unsafe_init { () => {{ unsafe { std::mem::MaybeUninit::uninit().assume_init() } }}; }
[INFO] [stdout]     |                                              ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                                              |
[INFO] [stdout]     |                                              this code causes undefined behavior when executed
[INFO] [stdout]     |                                              help: use `MaybeUninit<T>` instead, and only call `assume_init` after initialization is done
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/routine/charset.rs:169:36
[INFO] [stdout]     |
[INFO] [stdout] 169 |     let mut block: [[f32; 8]; 8] = unsafe_init!();
[INFO] [stdout]     |                                    -------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: floats must be initialized
[INFO] [stdout]     = note: this warning originates in the macro `unsafe_init` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [optimized + debuginfo] target(s) in 2m 41s
[INFO] [stderr] warning: the following packages contain code that will be rejected by a future version of Rust: block v0.1.6
[INFO] [stderr] note: to see what the problems were, use the option `--future-incompat-report`, or run `cargo report future-incompatibilities --id 3`
[INFO] running `Command { std: "docker" "inspect" "7f00a3e60c9b335873a2a906f01a5dd756a97c48795ae2812500e3021d63908b", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "7f00a3e60c9b335873a2a906f01a5dd756a97c48795ae2812500e3021d63908b", kill_on_drop: false }`
[INFO] [stdout] 7f00a3e60c9b335873a2a906f01a5dd756a97c48795ae2812500e3021d63908b
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc2/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=warn" "-e" "RUSTDOCFLAGS=--cap-lints=warn" "-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:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+beta-2026-04-21" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 62686fce6f49cb92f121ffe96d7517c8e93d25942be9e03619b34c968e72bfbe
[INFO] running `Command { std: "docker" "start" "-a" "62686fce6f49cb92f121ffe96d7517c8e93d25942be9e03619b34c968e72bfbe", kill_on_drop: false }`
[INFO] [stderr]    Compiling shoalart v0.0.100 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unused imports: `ClearType` and `Clear`
[INFO] [stdout]  --> src/routine/art.rs:7:44
[INFO] [stdout]   |
[INFO] [stdout] 7 |         disable_raw_mode, enable_raw_mode, Clear, ClearType, EnterAlternateScreen,
[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: `image_dir`
[INFO] [stdout]   --> src/routine/imageset.rs:32:9
[INFO] [stdout]    |
[INFO] [stdout] 32 |         image_dir,
[INFO] [stdout]    |         ^^^^^^^^^ help: try ignoring the field: `image_dir: _`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `output_file`
[INFO] [stdout]   --> src/routine/imageset.rs:33:9
[INFO] [stdout]    |
[INFO] [stdout] 33 |         output_file,
[INFO] [stdout]    |         ^^^^^^^^^^^ help: try ignoring the field: `output_file: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `crop`
[INFO] [stdout]   --> src/routine/imageset.rs:34:9
[INFO] [stdout]    |
[INFO] [stdout] 34 |         crop,
[INFO] [stdout]    |         ^^^^ help: try ignoring the field: `crop: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `resize`
[INFO] [stdout]   --> src/routine/imageset.rs:35:9
[INFO] [stdout]    |
[INFO] [stdout] 35 |         resize,
[INFO] [stdout]    |         ^^^^^^ help: try ignoring the field: `resize: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `gray`
[INFO] [stdout]   --> src/routine/imageset.rs:36:9
[INFO] [stdout]    |
[INFO] [stdout] 36 |         gray,
[INFO] [stdout]    |         ^^^^ help: try ignoring the field: `gray: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `dump`
[INFO] [stdout]   --> src/routine/imageset.rs:37:9
[INFO] [stdout]    |
[INFO] [stdout] 37 |         dump,
[INFO] [stdout]    |         ^^^^ help: try ignoring the field: `dump: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `image_dir_or_file`
[INFO] [stdout]   --> src/routine/photon.rs:43:9
[INFO] [stdout]    |
[INFO] [stdout] 43 |         image_dir_or_file,
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^ help: try ignoring the field: `image_dir_or_file: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `output_dir_or_file`
[INFO] [stdout]   --> src/routine/photon.rs:44:9
[INFO] [stdout]    |
[INFO] [stdout] 44 |         output_dir_or_file,
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^ help: try ignoring the field: `output_dir_or_file: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `imageset`
[INFO] [stdout]   --> src/routine/photon.rs:45:9
[INFO] [stdout]    |
[INFO] [stdout] 45 |         imageset,
[INFO] [stdout]    |         ^^^^^^^^ help: try ignoring the field: `imageset: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `imageset_dir`
[INFO] [stdout]   --> src/routine/photon.rs:46:9
[INFO] [stdout]    |
[INFO] [stdout] 46 |         imageset_dir,
[INFO] [stdout]    |         ^^^^^^^^^^^^ help: try ignoring the field: `imageset_dir: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `crop`
[INFO] [stdout]   --> src/routine/photon.rs:47:9
[INFO] [stdout]    |
[INFO] [stdout] 47 |         crop,
[INFO] [stdout]    |         ^^^^ help: try ignoring the field: `crop: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `resize`
[INFO] [stdout]   --> src/routine/photon.rs:48:9
[INFO] [stdout]    |
[INFO] [stdout] 48 |         resize,
[INFO] [stdout]    |         ^^^^^^ help: try ignoring the field: `resize: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `enlarge`
[INFO] [stdout]   --> src/routine/photon.rs:49:9
[INFO] [stdout]    |
[INFO] [stdout] 49 |         enlarge,
[INFO] [stdout]    |         ^^^^^^^ help: try ignoring the field: `enlarge: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `negate`
[INFO] [stdout]   --> src/routine/photon.rs:50:9
[INFO] [stdout]    |
[INFO] [stdout] 50 |         negate,
[INFO] [stdout]    |         ^^^^^^ help: try ignoring the field: `negate: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `image_dir`, `output_file`, `crop`, `resize`, `gray`, and `dump` are never read
[INFO] [stdout]   --> src/routine/imageset.rs:7:5
[INFO] [stdout]    |
[INFO] [stdout]  5 | pub struct Param {
[INFO] [stdout]    |            ----- fields in this struct
[INFO] [stdout]  6 |     #[structopt(parse(from_os_str))]
[INFO] [stdout]  7 |     image_dir: PathBuf,
[INFO] [stdout]    |     ^^^^^^^^^
[INFO] [stdout]  8 |     #[structopt(default_value = "Shoalart-Imageset.bin", parse(from_os_str))]
[INFO] [stdout]  9 |     output_file: PathBuf,
[INFO] [stdout]    |     ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 15 |     crop: Option<(u32, u32, u32, u32)>,
[INFO] [stdout]    |     ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 20 |     resize: Option<(u32, u32)>,
[INFO] [stdout]    |     ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 24 |     gray: bool,
[INFO] [stdout]    |     ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 27 |     dump: bool,
[INFO] [stdout]    |     ^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `Param` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `main` is never used
[INFO] [stdout]   --> src/routine/imageset.rs:30:8
[INFO] [stdout]    |
[INFO] [stdout] 30 | pub fn main(
[INFO] [stdout]    |        ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple fields are never read
[INFO] [stdout]   --> src/routine/photon.rs:7:5
[INFO] [stdout]    |
[INFO] [stdout]  5 | pub struct Param {
[INFO] [stdout]    |            ----- fields in this struct
[INFO] [stdout]  6 |     #[structopt(parse(from_os_str))]
[INFO] [stdout]  7 |     image_dir_or_file: PathBuf,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^
[INFO] [stdout]  8 |     #[structopt(parse(from_os_str))]
[INFO] [stdout]  9 |     output_dir_or_file: PathBuf,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 13 |     imageset: PathBuf,
[INFO] [stdout]    |     ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 18 |     imageset_dir: PathBuf,
[INFO] [stdout]    |     ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 24 |     crop: Option<(u32, u32, u32, u32)>,
[INFO] [stdout]    |     ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 29 |     resize: Option<(u32, u32)>,
[INFO] [stdout]    |     ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 34 |     enlarge: (u32, u32),
[INFO] [stdout]    |     ^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 38 |     negate: bool,
[INFO] [stdout]    |     ^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `Param` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `main` is never used
[INFO] [stdout]   --> src/routine/photon.rs:41:8
[INFO] [stdout]    |
[INFO] [stdout] 41 | pub fn main(
[INFO] [stdout]    |        ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: the type `[u8; 15]` does not permit being left uninitialized
[INFO] [stdout]    --> src/util.rs:100:46
[INFO] [stdout]     |
[INFO] [stdout] 100 | macro_rules! unsafe_init { () => {{ unsafe { std::mem::MaybeUninit::uninit().assume_init() } }}; }
[INFO] [stdout]     |                                              ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                                              |
[INFO] [stdout]     |                                              this code causes undefined behavior when executed
[INFO] [stdout]     |                                              help: use `MaybeUninit<T>` instead, and only call `assume_init` after initialization is done
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/routine/art.rs:128:41
[INFO] [stdout]     |
[INFO] [stdout] 128 |     let mut buf: [u8; ART_HEADER_LEN] = unsafe_init!();
[INFO] [stdout]     |                                         -------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: integers must be initialized
[INFO] [stdout]     = note: `#[warn(invalid_value)]` on by default
[INFO] [stdout]     = note: this warning originates in the macro `unsafe_init` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: the type `[[f32; 8]; 8]` does not permit being left uninitialized
[INFO] [stdout]    --> src/util.rs:100:46
[INFO] [stdout]     |
[INFO] [stdout] 100 | macro_rules! unsafe_init { () => {{ unsafe { std::mem::MaybeUninit::uninit().assume_init() } }}; }
[INFO] [stdout]     |                                              ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                                              |
[INFO] [stdout]     |                                              this code causes undefined behavior when executed
[INFO] [stdout]     |                                              help: use `MaybeUninit<T>` instead, and only call `assume_init` after initialization is done
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/routine/art.rs:197:36
[INFO] [stdout]     |
[INFO] [stdout] 197 |     let mut block: [[f32; 8]; 8] = unsafe_init!();
[INFO] [stdout]     |                                    -------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: floats must be initialized
[INFO] [stdout]     = note: this warning originates in the macro `unsafe_init` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: the type `[u8; 45]` does not permit being left uninitialized
[INFO] [stdout]    --> src/util.rs:100:46
[INFO] [stdout]     |
[INFO] [stdout] 100 | macro_rules! unsafe_init { () => {{ unsafe { std::mem::MaybeUninit::uninit().assume_init() } }}; }
[INFO] [stdout]     |                                              ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                                              |
[INFO] [stdout]     |                                              this code causes undefined behavior when executed
[INFO] [stdout]     |                                              help: use `MaybeUninit<T>` instead, and only call `assume_init` after initialization is done
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/routine/charset.rs:78:39
[INFO] [stdout]     |
[INFO] [stdout]  78 |     let mut buf: [u8; CST_ITEM_LEN] = unsafe_init!();
[INFO] [stdout]     |                                       -------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: integers must be initialized
[INFO] [stdout]     = note: this warning originates in the macro `unsafe_init` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: the type `[[f32; 8]; 8]` does not permit being left uninitialized
[INFO] [stdout]    --> src/util.rs:100:46
[INFO] [stdout]     |
[INFO] [stdout] 100 | macro_rules! unsafe_init { () => {{ unsafe { std::mem::MaybeUninit::uninit().assume_init() } }}; }
[INFO] [stdout]     |                                              ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                                              |
[INFO] [stdout]     |                                              this code causes undefined behavior when executed
[INFO] [stdout]     |                                              help: use `MaybeUninit<T>` instead, and only call `assume_init` after initialization is done
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/routine/charset.rs:169:36
[INFO] [stdout]     |
[INFO] [stdout] 169 |     let mut block: [[f32; 8]; 8] = unsafe_init!();
[INFO] [stdout]     |                                    -------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: floats must be initialized
[INFO] [stdout]     = note: this warning originates in the macro `unsafe_init` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `test` profile [optimized + debuginfo] target(s) in 1.82s
[INFO] [stderr] warning: the following packages contain code that will be rejected by a future version of Rust: block v0.1.6
[INFO] [stderr] note: to see what the problems were, use the option `--future-incompat-report`, or run `cargo report future-incompatibilities --id 3`
[INFO] running `Command { std: "docker" "inspect" "62686fce6f49cb92f121ffe96d7517c8e93d25942be9e03619b34c968e72bfbe", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "62686fce6f49cb92f121ffe96d7517c8e93d25942be9e03619b34c968e72bfbe", kill_on_drop: false }`
[INFO] [stdout] 62686fce6f49cb92f121ffe96d7517c8e93d25942be9e03619b34c968e72bfbe
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc2/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=warn" "-e" "RUSTDOCFLAGS=--cap-lints=warn" "-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:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+beta-2026-04-21" "test" "--frozen", kill_on_drop: false }`
[INFO] [stdout] e37bae4b3df618825833cdf6cc5b6bfb22af6b8e802917b6b3163709261e220c
[INFO] running `Command { std: "docker" "start" "-a" "e37bae4b3df618825833cdf6cc5b6bfb22af6b8e802917b6b3163709261e220c", kill_on_drop: false }`
[INFO] [stderr] warning: unused imports: `ClearType` and `Clear`
[INFO] [stderr]  --> src/routine/art.rs:7:44
[INFO] [stderr]   |
[INFO] [stderr] 7 |         disable_raw_mode, enable_raw_mode, Clear, ClearType, EnterAlternateScreen,
[INFO] [stderr]   |                                            ^^^^^  ^^^^^^^^^
[INFO] [stderr]   |
[INFO] [stderr]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `image_dir`
[INFO] [stderr]   --> src/routine/imageset.rs:32:9
[INFO] [stderr]    |
[INFO] [stderr] 32 |         image_dir,
[INFO] [stderr]    |         ^^^^^^^^^ help: try ignoring the field: `image_dir: _`
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `output_file`
[INFO] [stderr]   --> src/routine/imageset.rs:33:9
[INFO] [stderr]    |
[INFO] [stderr] 33 |         output_file,
[INFO] [stderr]    |         ^^^^^^^^^^^ help: try ignoring the field: `output_file: _`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `crop`
[INFO] [stderr]   --> src/routine/imageset.rs:34:9
[INFO] [stderr]    |
[INFO] [stderr] 34 |         crop,
[INFO] [stderr]    |         ^^^^ help: try ignoring the field: `crop: _`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `resize`
[INFO] [stderr]   --> src/routine/imageset.rs:35:9
[INFO] [stderr]    |
[INFO] [stderr] 35 |         resize,
[INFO] [stderr]    |         ^^^^^^ help: try ignoring the field: `resize: _`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `gray`
[INFO] [stderr]   --> src/routine/imageset.rs:36:9
[INFO] [stderr]    |
[INFO] [stderr] 36 |         gray,
[INFO] [stderr]    |         ^^^^ help: try ignoring the field: `gray: _`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `dump`
[INFO] [stderr]   --> src/routine/imageset.rs:37:9
[INFO] [stderr]    |
[INFO] [stderr] 37 |         dump,
[INFO] [stderr]    |         ^^^^ help: try ignoring the field: `dump: _`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `image_dir_or_file`
[INFO] [stderr]   --> src/routine/photon.rs:43:9
[INFO] [stderr]    |
[INFO] [stderr] 43 |         image_dir_or_file,
[INFO] [stderr]    |         ^^^^^^^^^^^^^^^^^ help: try ignoring the field: `image_dir_or_file: _`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `output_dir_or_file`
[INFO] [stderr]   --> src/routine/photon.rs:44:9
[INFO] [stderr]    |
[INFO] [stderr] 44 |         output_dir_or_file,
[INFO] [stderr]    |         ^^^^^^^^^^^^^^^^^^ help: try ignoring the field: `output_dir_or_file: _`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `imageset`
[INFO] [stderr]   --> src/routine/photon.rs:45:9
[INFO] [stderr]    |
[INFO] [stderr] 45 |         imageset,
[INFO] [stderr]    |         ^^^^^^^^ help: try ignoring the field: `imageset: _`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `imageset_dir`
[INFO] [stderr]   --> src/routine/photon.rs:46:9
[INFO] [stderr]    |
[INFO] [stderr] 46 |         imageset_dir,
[INFO] [stderr]    |         ^^^^^^^^^^^^ help: try ignoring the field: `imageset_dir: _`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `crop`
[INFO] [stderr]   --> src/routine/photon.rs:47:9
[INFO] [stderr]    |
[INFO] [stderr] 47 |         crop,
[INFO] [stderr]    |         ^^^^ help: try ignoring the field: `crop: _`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `resize`
[INFO] [stderr]   --> src/routine/photon.rs:48:9
[INFO] [stderr]    |
[INFO] [stderr] 48 |         resize,
[INFO] [stderr]    |         ^^^^^^ help: try ignoring the field: `resize: _`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `enlarge`
[INFO] [stderr]   --> src/routine/photon.rs:49:9
[INFO] [stderr]    |
[INFO] [stderr] 49 |         enlarge,
[INFO] [stderr]    |         ^^^^^^^ help: try ignoring the field: `enlarge: _`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `negate`
[INFO] [stderr]   --> src/routine/photon.rs:50:9
[INFO] [stderr]    |
[INFO] [stderr] 50 |         negate,
[INFO] [stderr]    |         ^^^^^^ help: try ignoring the field: `negate: _`
[INFO] [stderr] 
[INFO] [stderr] warning: fields `image_dir`, `output_file`, `crop`, `resize`, `gray`, and `dump` are never read
[INFO] [stderr]   --> src/routine/imageset.rs:7:5
[INFO] [stderr]    |
[INFO] [stderr]  5 | pub struct Param {
[INFO] [stderr]    |            ----- fields in this struct
[INFO] [stderr]  6 |     #[structopt(parse(from_os_str))]
[INFO] [stderr]  7 |     image_dir: PathBuf,
[INFO] [stderr]    |     ^^^^^^^^^
[INFO] [stderr]  8 |     #[structopt(default_value = "Shoalart-Imageset.bin", parse(from_os_str))]
[INFO] [stderr]  9 |     output_file: PathBuf,
[INFO] [stderr]    |     ^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 15 |     crop: Option<(u32, u32, u32, u32)>,
[INFO] [stderr]    |     ^^^^
[INFO] [stderr] ...
[INFO] [stderr] 20 |     resize: Option<(u32, u32)>,
[INFO] [stderr]    |     ^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 24 |     gray: bool,
[INFO] [stderr]    |     ^^^^
[INFO] [stderr] ...
[INFO] [stderr] 27 |     dump: bool,
[INFO] [stderr]    |     ^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `Param` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stderr]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: function `main` is never used
[INFO] [stderr]   --> src/routine/imageset.rs:30:8
[INFO] [stderr]    |
[INFO] [stderr] 30 | pub fn main(
[INFO] [stderr]    |        ^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: multiple fields are never read
[INFO] [stderr]   --> src/routine/photon.rs:7:5
[INFO] [stderr]    |
[INFO] [stderr]  5 | pub struct Param {
[INFO] [stderr]    |            ----- fields in this struct
[INFO] [stderr]  6 |     #[structopt(parse(from_os_str))]
[INFO] [stderr]  7 |     image_dir_or_file: PathBuf,
[INFO] [stderr]    |     ^^^^^^^^^^^^^^^^^
[INFO] [stderr]  8 |     #[structopt(parse(from_os_str))]
[INFO] [stderr]  9 |     output_dir_or_file: PathBuf,
[INFO] [stderr]    |     ^^^^^^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 13 |     imageset: PathBuf,
[INFO] [stderr]    |     ^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 18 |     imageset_dir: PathBuf,
[INFO] [stderr]    |     ^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 24 |     crop: Option<(u32, u32, u32, u32)>,
[INFO] [stderr]    |     ^^^^
[INFO] [stderr] ...
[INFO] [stderr] 29 |     resize: Option<(u32, u32)>,
[INFO] [stderr]    |     ^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 34 |     enlarge: (u32, u32),
[INFO] [stderr]    |     ^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 38 |     negate: bool,
[INFO] [stderr]    |     ^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `Param` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stderr] 
[INFO] [stderr] warning: function `main` is never used
[INFO] [stderr]   --> src/routine/photon.rs:41:8
[INFO] [stderr]    |
[INFO] [stderr] 41 | pub fn main(
[INFO] [stderr]    |        ^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: the type `[u8; 15]` does not permit being left uninitialized
[INFO] [stderr]    --> src/util.rs:100:46
[INFO] [stderr]     |
[INFO] [stderr] 100 | macro_rules! unsafe_init { () => {{ unsafe { std::mem::MaybeUninit::uninit().assume_init() } }}; }
[INFO] [stderr]     |                                              ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]     |                                              |
[INFO] [stderr]     |                                              this code causes undefined behavior when executed
[INFO] [stderr]     |                                              help: use `MaybeUninit<T>` instead, and only call `assume_init` after initialization is done
[INFO] [stderr]     |
[INFO] [stderr]    ::: src/routine/art.rs:128:41
[INFO] [stderr]     |
[INFO] [stderr] 128 |     let mut buf: [u8; ART_HEADER_LEN] = unsafe_init!();
[INFO] [stderr]     |                                         -------------- in this macro invocation
[INFO] [stderr]     |
[INFO] [stderr]     = note: integers must be initialized
[INFO] [stderr]     = note: `#[warn(invalid_value)]` on by default
[INFO] [stderr]     = note: this warning originates in the macro `unsafe_init` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: the type `[[f32; 8]; 8]` does not permit being left uninitialized
[INFO] [stderr]    --> src/util.rs:100:46
[INFO] [stderr]     |
[INFO] [stderr] 100 | macro_rules! unsafe_init { () => {{ unsafe { std::mem::MaybeUninit::uninit().assume_init() } }}; }
[INFO] [stderr]     |                                              ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]     |                                              |
[INFO] [stderr]     |                                              this code causes undefined behavior when executed
[INFO] [stderr]     |                                              help: use `MaybeUninit<T>` instead, and only call `assume_init` after initialization is done
[INFO] [stderr]     |
[INFO] [stderr]    ::: src/routine/art.rs:197:36
[INFO] [stderr]     |
[INFO] [stderr] 197 |     let mut block: [[f32; 8]; 8] = unsafe_init!();
[INFO] [stderr]     |                                    -------------- in this macro invocation
[INFO] [stderr]     |
[INFO] [stderr]     = note: floats must be initialized
[INFO] [stderr]     = note: this warning originates in the macro `unsafe_init` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: the type `[u8; 45]` does not permit being left uninitialized
[INFO] [stderr]    --> src/util.rs:100:46
[INFO] [stderr]     |
[INFO] [stderr] 100 | macro_rules! unsafe_init { () => {{ unsafe { std::mem::MaybeUninit::uninit().assume_init() } }}; }
[INFO] [stderr]     |                                              ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]     |                                              |
[INFO] [stderr]     |                                              this code causes undefined behavior when executed
[INFO] [stderr]     |                                              help: use `MaybeUninit<T>` instead, and only call `assume_init` after initialization is done
[INFO] [stderr]     |
[INFO] [stderr]    ::: src/routine/charset.rs:78:39
[INFO] [stderr]     |
[INFO] [stderr]  78 |     let mut buf: [u8; CST_ITEM_LEN] = unsafe_init!();
[INFO] [stderr]     |                                       -------------- in this macro invocation
[INFO] [stderr]     |
[INFO] [stderr]     = note: integers must be initialized
[INFO] [stderr]     = note: this warning originates in the macro `unsafe_init` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: the type `[[f32; 8]; 8]` does not permit being left uninitialized
[INFO] [stderr]    --> src/util.rs:100:46
[INFO] [stderr]     |
[INFO] [stderr] 100 | macro_rules! unsafe_init { () => {{ unsafe { std::mem::MaybeUninit::uninit().assume_init() } }}; }
[INFO] [stderr]     |                                              ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]     |                                              |
[INFO] [stderr]     |                                              this code causes undefined behavior when executed
[INFO] [stderr]     |                                              help: use `MaybeUninit<T>` instead, and only call `assume_init` after initialization is done
[INFO] [stderr]     |
[INFO] [stderr]    ::: src/routine/charset.rs:169:36
[INFO] [stderr]     |
[INFO] [stderr] 169 |     let mut block: [[f32; 8]; 8] = unsafe_init!();
[INFO] [stderr]     |                                    -------------- in this macro invocation
[INFO] [stderr]     |
[INFO] [stderr]     = note: floats must be initialized
[INFO] [stderr]     = note: this warning originates in the macro `unsafe_init` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: `shoalart` (bin "shoalart" test) generated 23 warnings (run `cargo fix --bin "shoalart" -p shoalart --tests` to apply 15 suggestions)
[INFO] [stderr]     Finished `test` profile [optimized + debuginfo] target(s) in 0.13s
[INFO] [stderr] warning: the following packages contain code that will be rejected by a future version of Rust: block v0.1.6
[INFO] [stderr] note: to see what the problems were, use the option `--future-incompat-report`, or run `cargo report future-incompatibilities --id 3`
[INFO] [stderr]      Running unittests src/main.rs (/opt/rustwide/target/debug/deps/shoalart-622f56c58d2b53f4)
[INFO] [stdout] 
[INFO] [stdout] running 7 tests
[INFO] [stdout] test algorithm::tests::test_idct_4x8_distort ... ok
[INFO] [stdout] test algorithm::tests::test_dct_8x8 ... ok
[INFO] [stdout] test algorithm::tests::test_idct_8x8 ... ok
[INFO] [stdout] test algorithm::tests::test_dct_4x8 ... ok
[INFO] [stdout] test algorithm::tests::test_idct_8x8_distort ... ok
[INFO] [stdout] test algorithm::tests::test_swapaxes ... ok
[INFO] [stdout] test algorithm::tests::test_idct_4x8 ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 7 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.02s
[INFO] [stdout] 
[INFO] running `Command { std: "docker" "inspect" "e37bae4b3df618825833cdf6cc5b6bfb22af6b8e802917b6b3163709261e220c", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "e37bae4b3df618825833cdf6cc5b6bfb22af6b8e802917b6b3163709261e220c", kill_on_drop: false }`
[INFO] [stdout] e37bae4b3df618825833cdf6cc5b6bfb22af6b8e802917b6b3163709261e220c
