[INFO] cloning repository https://github.com/DavRack/imops
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/DavRack/imops" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FDavRack%2Fimops", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FDavRack%2Fimops'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] dde94363f541cf485a822f5531778e4f25440bc6
[INFO] checking DavRack/imops against try#0bdee9e879c87b7211d316e9152109cfd46c576b for pr-150097
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FDavRack%2Fimops" "/workspace/builds/worker-0-tc2/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-0-tc2/source'...
[INFO] [stderr] done.
[INFO] started tweaking git repo https://github.com/DavRack/imops
[INFO] finished tweaking git repo https://github.com/DavRack/imops
[INFO] tweaked toml for git repo https://github.com/DavRack/imops written to /workspace/builds/worker-0-tc2/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/DavRack/imops on toolchain 0bdee9e879c87b7211d316e9152109cfd46c576b
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+0bdee9e879c87b7211d316e9152109cfd46c576b" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate git repo https://github.com/DavRack/imops 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" "+0bdee9e879c87b7211d316e9152109cfd46c576b" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr] warning: unused manifest key: profile.release.target-cpu
[INFO] [stderr]     Blocking waiting for file lock on package cache
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-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:845e597a41426bbf2703be69acdb67d10b6de511142d05cba7bbe119c898b2c7" "/opt/rustwide/cargo-home/bin/cargo" "+0bdee9e879c87b7211d316e9152109cfd46c576b" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] cdc043d2637a9e98866826234b03ec32af084cbef81abe72a18ec769882343ad
[INFO] running `Command { std: "docker" "start" "-a" "cdc043d2637a9e98866826234b03ec32af084cbef81abe72a18ec769882343ad", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "cdc043d2637a9e98866826234b03ec32af084cbef81abe72a18ec769882343ad", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "cdc043d2637a9e98866826234b03ec32af084cbef81abe72a18ec769882343ad", kill_on_drop: false }`
[INFO] [stdout] cdc043d2637a9e98866826234b03ec32af084cbef81abe72a18ec769882343ad
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-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=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" "+0bdee9e879c87b7211d316e9152109cfd46c576b" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 776c675abda136bc57cebd242b6b65441ab7a1948642b0d5b8123bd49c38fe6d
[INFO] running `Command { std: "docker" "start" "-a" "776c675abda136bc57cebd242b6b65441ab7a1948642b0d5b8123bd49c38fe6d", kill_on_drop: false }`
[INFO] [stderr] warning: unused manifest key: profile.release.target-cpu
[INFO] [stderr]    Compiling winnow v0.7.14
[INFO] [stderr]    Compiling hashbrown v0.16.1
[INFO] [stderr]     Checking tracing-core v0.1.35
[INFO] [stderr]     Checking foldhash v0.2.0
[INFO] [stderr]    Compiling wasm-bindgen-shared v0.2.106
[INFO] [stderr]    Compiling rustversion v1.0.22
[INFO] [stderr]    Compiling target-features v0.1.6
[INFO] [stderr]    Compiling syn v2.0.111
[INFO] [stderr]    Compiling serde_spanned v0.6.9
[INFO] [stderr]    Compiling toml_datetime v0.6.11
[INFO] [stderr]    Compiling crc32fast v1.5.0
[INFO] [stderr]     Checking brotli-decompressor v5.0.0
[INFO] [stderr]     Checking pxfm v0.1.27
[INFO] [stderr]    Compiling bumpalo v3.19.0
[INFO] [stderr]     Checking rle-decode-fast v1.0.3
[INFO] [stderr]    Compiling glob v0.3.3
[INFO] [stderr]    Compiling zerocopy v0.8.31
[INFO] [stderr]     Checking zune-jpeg v0.5.7
[INFO] [stderr]     Checking miniz_oxide v0.8.9
[INFO] [stderr]     Checking num-rational v0.4.2
[INFO] [stderr]     Checking tracing v0.1.43
[INFO] [stderr]     Checking object v0.37.3
[INFO] [stderr]     Checking getrandom v0.3.4
[INFO] [stderr]    Compiling indexmap v2.12.1
[INFO] [stderr]     Checking jxl-bitstream v1.1.0
[INFO] [stderr]     Checking jxl-grid v0.6.1
[INFO] [stderr]     Checking jxl-threadpool v1.0.0
[INFO] [stderr]     Checking num-iter v0.1.45
[INFO] [stderr]     Checking num-complex v0.4.6
[INFO] [stderr]     Checking dary_heap v0.3.8
[INFO] [stderr]     Checking jxl-oxide-common v1.0.0
[INFO] [stderr]     Checking jxl-coding v1.0.1
[INFO] [stderr]     Checking adler32 v1.2.0
[INFO] [stderr]    Compiling wasm-bindgen v0.2.106
[INFO] [stderr]     Checking unicode-ident v1.0.22
[INFO] [stderr]     Checking chrono v0.4.42
[INFO] [stderr]     Checking libflate_lz77 v2.2.0
[INFO] [stderr]     Checking jxl-image v0.13.0
[INFO] [stderr]     Checking uuid v1.19.0
[INFO] [stderr]     Checking jxl-modular v0.11.2
[INFO] [stderr]     Checking memmap2 v0.9.9
[INFO] [stderr]     Checking jxl-color v0.11.0
[INFO] [stderr]     Checking num v0.4.3
[INFO] [stderr]     Checking libflate v2.2.1
[INFO] [stderr]     Checking serde_json v1.0.145
[INFO] [stderr]     Checking jxl-vardct v0.11.1
[INFO] [stderr]    Compiling toml_parser v1.0.4
[INFO] [stderr]    Compiling toml_edit v0.22.27
[INFO] [stderr]     Checking jxl-frame v0.13.3
[INFO] [stderr]     Checking moxcms v0.7.11
[INFO] [stderr]     Checking jxl-render v0.12.3
[INFO] [stderr]     Checking jxl-jbr v0.2.1
[INFO] [stderr]    Compiling toml_edit v0.23.9
[INFO] [stderr]    Compiling darling_core v0.21.3
[INFO] [stderr]    Compiling wasm-bindgen-macro-support v0.2.106
[INFO] [stderr]    Compiling proc-macro-crate v3.4.0
[INFO] [stderr]     Checking backtrace v0.3.76
[INFO] [stderr]     Checking jxl-oxide v0.12.5
[INFO] [stderr]    Compiling serde_derive v1.0.228
[INFO] [stderr]    Compiling zerocopy-derive v0.8.31
[INFO] [stderr]    Compiling multiversion-macros v0.8.0
[INFO] [stderr]    Compiling thiserror-impl v2.0.17
[INFO] [stderr]    Compiling enumn v0.1.14
[INFO] [stderr]    Compiling num_enum_derive v0.7.5
[INFO] [stderr]    Compiling toml v0.8.23
[INFO] [stderr]     Checking thiserror v2.0.17
[INFO] [stderr]     Checking num_enum v0.7.5
[INFO] [stderr]    Compiling rawler v0.7.1
[INFO] [stderr]    Compiling darling_macro v0.21.3
[INFO] [stderr]     Checking multiversion v0.8.0
[INFO] [stderr]    Compiling darling v0.21.3
[INFO] [stderr]    Compiling wasm-bindgen-macro v0.2.106
[INFO] [stderr]    Compiling serde_with_macros v3.16.1
[INFO] [stderr]     Checking image v0.25.9
[INFO] [stderr]     Checking serde_with v3.16.1
[INFO] [stderr]     Checking serde v1.0.228
[INFO] [stderr]     Checking color v0.3.2
[INFO] [stderr]     Checking serde_plain v1.0.2
[INFO] [stderr]     Checking pichromatic v0.1.0 (/opt/rustwide/workdir/pichromatic)
[INFO] [stderr]     Checking pichromatic-pipeline v0.1.0 (/opt/rustwide/workdir/pichromatic-pipeline)
[INFO] [stderr]     Checking filsimrs v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] error[E0433]: failed to resolve: use of unresolved module or unlinked crate `image`
[INFO] [stdout]  --> src/bin/imops-cli.rs:2:5
[INFO] [stdout]   |
[INFO] [stdout] 2 | use image::metadata::{Cicp, CicpColorPrimaries};
[INFO] [stdout]   |     ^^^^^ use of unresolved module or unlinked crate `image`
[INFO] [stdout]   |
[INFO] [stdout]   = help: if you wanted to use a crate named `image`, use `cargo add image` to add it to your `Cargo.toml`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of unresolved module or unlinked crate `image`
[INFO] [stdout]  --> src/bin/imops-cli.rs:2:5
[INFO] [stdout]   |
[INFO] [stdout] 2 | use image::metadata::{Cicp, CicpColorPrimaries};
[INFO] [stdout]   |     ^^^^^ use of unresolved module or unlinked crate `image`
[INFO] [stdout]   |
[INFO] [stdout]   = help: if you wanted to use a crate named `image`, use `cargo add image` to add it to your `Cargo.toml`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of unresolved module or unlinked crate `imops`
[INFO] [stdout]  --> src/bin/imops-cli.rs:3:5
[INFO] [stdout]   |
[INFO] [stdout] 3 | use imops::{config, pipeline::run_pixel_pipeline};
[INFO] [stdout]   |     ^^^^^ use of unresolved module or unlinked crate `imops`
[INFO] [stdout]   |
[INFO] [stdout]   = help: if you wanted to use a crate named `imops`, use `cargo add imops` to add it to your `Cargo.toml`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0432]: unresolved import `imops`
[INFO] [stdout]  --> src/bin/imops-cli.rs:3:5
[INFO] [stdout]   |
[INFO] [stdout] 3 | use imops::{config, pipeline::run_pixel_pipeline};
[INFO] [stdout]   |     ^^^^^ use of unresolved module or unlinked crate `imops`
[INFO] [stdout]   |
[INFO] [stdout]   = help: if you wanted to use a crate named `imops`, use `cargo add imops` to add it to your `Cargo.toml`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0432]: unresolved import `clap`
[INFO] [stdout]  --> src/bin/imops-cli.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | use clap::Parser as Clap_parser;
[INFO] [stdout]   |     ^^^^ use of unresolved module or unlinked crate `clap`
[INFO] [stdout]   |
[INFO] [stdout]   = help: if you wanted to use a crate named `clap`, use `cargo add clap` to add it to your `Cargo.toml`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of unresolved module or unlinked crate `imops`
[INFO] [stdout]  --> src/bin/imops-cli.rs:3:5
[INFO] [stdout]   |
[INFO] [stdout] 3 | use imops::{config, pipeline::run_pixel_pipeline};
[INFO] [stdout]   |     ^^^^^ use of unresolved module or unlinked crate `imops`
[INFO] [stdout]   |
[INFO] [stdout]   = help: if you wanted to use a crate named `imops`, use `cargo add imops` to add it to your `Cargo.toml`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0432]: unresolved import `imops`
[INFO] [stdout]  --> src/bin/imops-cli.rs:3:5
[INFO] [stdout]   |
[INFO] [stdout] 3 | use imops::{config, pipeline::run_pixel_pipeline};
[INFO] [stdout]   |     ^^^^^ use of unresolved module or unlinked crate `imops`
[INFO] [stdout]   |
[INFO] [stdout]   = help: if you wanted to use a crate named `imops`, use `cargo add imops` to add it to your `Cargo.toml`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0432]: unresolved import `clap`
[INFO] [stdout]  --> src/bin/imops-cli.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | use clap::Parser as Clap_parser;
[INFO] [stdout]   |     ^^^^ use of unresolved module or unlinked crate `clap`
[INFO] [stdout]   |
[INFO] [stdout]   = help: if you wanted to use a crate named `clap`, use `cargo add clap` to add it to your `Cargo.toml`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of unresolved module or unlinked crate `rayon`
[INFO] [stdout]   --> src/bin/example.rs:11:5
[INFO] [stdout]    |
[INFO] [stdout] 11 | use rayon::prelude::*;
[INFO] [stdout]    |     ^^^^^ use of unresolved module or unlinked crate `rayon`
[INFO] [stdout]    |
[INFO] [stdout]    = help: if you wanted to use a crate named `rayon`, use `cargo add rayon` to add it to your `Cargo.toml`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of unresolved module or unlinked crate `rayon`
[INFO] [stdout]   --> src/bin/example.rs:11:5
[INFO] [stdout]    |
[INFO] [stdout] 11 | use rayon::prelude::*;
[INFO] [stdout]    |     ^^^^^ use of unresolved module or unlinked crate `rayon`
[INFO] [stdout]    |
[INFO] [stdout]    = help: if you wanted to use a crate named `rayon`, use `cargo add rayon` to add it to your `Cargo.toml`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: cannot find attribute `command` in this scope
[INFO] [stdout]   --> src/bin/imops-cli.rs:10:3
[INFO] [stdout]    |
[INFO] [stdout] 10 | #[command(author, version, about, long_about = None)]
[INFO] [stdout]    |   ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: cannot find attribute `arg` in this scope
[INFO] [stdout]   --> src/bin/imops-cli.rs:13:7
[INFO] [stdout]    |
[INFO] [stdout] 13 |     #[arg(name = "input path", value_name = "input_path")]
[INFO] [stdout]    |       ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: cannot find attribute `arg` in this scope
[INFO] [stdout]   --> src/bin/imops-cli.rs:16:7
[INFO] [stdout]    |
[INFO] [stdout] 16 |     #[arg(
[INFO] [stdout]    |       ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: cannot find attribute `arg` in this scope
[INFO] [stdout]   --> src/bin/imops-cli.rs:24:7
[INFO] [stdout]    |
[INFO] [stdout] 24 |     #[arg(
[INFO] [stdout]    |       ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of unresolved module or unlinked crate `imops`
[INFO] [stdout]   --> src/bin/imops-cli.rs:33:17
[INFO] [stdout]    |
[INFO] [stdout] 33 | fn to_vec(data: imops::imops::PipelineImage) -> image::ImageBuffer<image::Rgb<u8>, Vec<u8>> {
[INFO] [stdout]    |                 ^^^^^ use of unresolved module or unlinked crate `imops`
[INFO] [stdout]    |
[INFO] [stdout]    = help: if you wanted to use a crate named `imops`, use `cargo add imops` to add it to your `Cargo.toml`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of unresolved module or unlinked crate `image`
[INFO] [stdout]   --> src/bin/imops-cli.rs:42:15
[INFO] [stdout]    |
[INFO] [stdout] 42 |     let img = image::RgbImage::from_vec(width as u32, height as u32, data2).unwrap();
[INFO] [stdout]    |               ^^^^^ use of unresolved module or unlinked crate `image`
[INFO] [stdout]    |
[INFO] [stdout]    = help: if you wanted to use a crate named `image`, use `cargo add image` to add it to your `Cargo.toml`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of unresolved module or unlinked crate `image`
[INFO] [stdout]   --> src/bin/imops-cli.rs:67:19
[INFO] [stdout]    |
[INFO] [stdout] 67 |     let mut img = image::DynamicImage::ImageRgb8(to_vec(debayer_image));
[INFO] [stdout]    |                   ^^^^^ use of unresolved module or unlinked crate `image`
[INFO] [stdout]    |
[INFO] [stdout]    = help: if you wanted to use a crate named `image`, use `cargo add image` to add it to your `Cargo.toml`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of unresolved module or unlinked crate `image`
[INFO] [stdout]   --> src/bin/imops-cli.rs:81:9
[INFO] [stdout]    |
[INFO] [stdout] 81 |         image::ImageFormat::Jpeg,
[INFO] [stdout]    |         ^^^^^ use of unresolved module or unlinked crate `image`
[INFO] [stdout]    |
[INFO] [stdout]    = help: if you wanted to use a crate named `image`, use `cargo add image` to add it to your `Cargo.toml`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: cannot find attribute `command` in this scope
[INFO] [stdout]   --> src/bin/imops-cli.rs:10:3
[INFO] [stdout]    |
[INFO] [stdout] 10 | #[command(author, version, about, long_about = None)]
[INFO] [stdout]    |   ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: cannot find attribute `arg` in this scope
[INFO] [stdout]   --> src/bin/imops-cli.rs:13:7
[INFO] [stdout]    |
[INFO] [stdout] 13 |     #[arg(name = "input path", value_name = "input_path")]
[INFO] [stdout]    |       ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: cannot find attribute `arg` in this scope
[INFO] [stdout]   --> src/bin/imops-cli.rs:16:7
[INFO] [stdout]    |
[INFO] [stdout] 16 |     #[arg(
[INFO] [stdout]    |       ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]   --> src/bin/pipeline-socket.rs:64:42
[INFO] [stdout]    |
[INFO] [stdout] 64 |     let mut result1 = run_pixel_pipeline(image, pipeline);
[INFO] [stdout]    |                       ------------------ ^^^^^ expected `&mut Image`, found `Image`
[INFO] [stdout]    |                       |
[INFO] [stdout]    |                       arguments to this function are incorrect
[INFO] [stdout]    |
[INFO] [stdout] note: function defined here
[INFO] [stdout]   --> pichromatic-pipeline/src/pipeline.rs:4:8
[INFO] [stdout]    |
[INFO] [stdout]  4 | pub fn run_pixel_pipeline(
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] help: consider mutably borrowing here
[INFO] [stdout]    |
[INFO] [stdout] 64 |     let mut result1 = run_pixel_pipeline(&mut image, pipeline);
[INFO] [stdout]    |                                          ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: cannot find attribute `arg` in this scope
[INFO] [stdout]   --> src/bin/imops-cli.rs:24:7
[INFO] [stdout]    |
[INFO] [stdout] 24 |     #[arg(
[INFO] [stdout]    |       ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of unresolved module or unlinked crate `imops`
[INFO] [stdout]   --> src/bin/imops-cli.rs:33:17
[INFO] [stdout]    |
[INFO] [stdout] 33 | fn to_vec(data: imops::imops::PipelineImage) -> image::ImageBuffer<image::Rgb<u8>, Vec<u8>> {
[INFO] [stdout]    |                 ^^^^^ use of unresolved module or unlinked crate `imops`
[INFO] [stdout]    |
[INFO] [stdout]    = help: if you wanted to use a crate named `imops`, use `cargo add imops` to add it to your `Cargo.toml`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]   --> src/bin/pipeline-socket.rs:66:41
[INFO] [stdout]    |
[INFO] [stdout] 66 |     let (pixels, width, height) = to_u8(&mut result1);
[INFO] [stdout]    |                                   ----- ^^^^^^^^^^^^ expected `&mut Image`, found `&mut ()`
[INFO] [stdout]    |                                   |
[INFO] [stdout]    |                                   arguments to this function are incorrect
[INFO] [stdout]    |
[INFO] [stdout]    = note: expected mutable reference `&mut Image`
[INFO] [stdout]               found mutable reference `&mut ()`
[INFO] [stdout] note: function defined here
[INFO] [stdout]   --> src/file_helpers.rs:5:8
[INFO] [stdout]    |
[INFO] [stdout]  5 | pub fn to_u8(image: &mut Image) -> (Vec<[u8;3]>, usize, usize){
[INFO] [stdout]    |        ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]   --> src/bin/pipeline-test.rs:57:19
[INFO] [stdout]    |
[INFO] [stdout] 57 |         raw_data: raw_image_data,
[INFO] [stdout]    |                   ^^^^^^^^^^^^^^ expected `Vec<f32>`, found `Vec<u16>`
[INFO] [stdout]    |
[INFO] [stdout]    = note: expected struct `Vec<f32>`
[INFO] [stdout]               found struct `Vec<u16>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]   --> src/bin/pipeline-socket.rs:68:12
[INFO] [stdout]    |
[INFO] [stdout] 62 | fn process_image(image: Image, pipeline: &mut PipelineConfig, output_path: String) -> Image{
[INFO] [stdout]    |                                                                                       ----- expected `Image` because of return type
[INFO] [stdout] ...
[INFO] [stdout] 68 |     return result1
[INFO] [stdout]    |            ^^^^^^^ expected `Image`, found `()`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]   --> src/bin/example.rs:57:19
[INFO] [stdout]    |
[INFO] [stdout] 57 |         raw_data: raw_image_data,
[INFO] [stdout]    |                   ^^^^^^^^^^^^^^ expected `Vec<f32>`, found `Vec<u16>`
[INFO] [stdout]    |
[INFO] [stdout]    = note: expected struct `Vec<f32>`
[INFO] [stdout]               found struct `Vec<u16>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]   --> src/bin/example.rs:57:19
[INFO] [stdout]    |
[INFO] [stdout] 57 |         raw_data: raw_image_data,
[INFO] [stdout]    |                   ^^^^^^^^^^^^^^ expected `Vec<f32>`, found `Vec<u16>`
[INFO] [stdout]    |
[INFO] [stdout]    = note: expected struct `Vec<f32>`
[INFO] [stdout]               found struct `Vec<u16>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0560]: struct `Module<pichromatic_pipeline::modules::Demosaic>` has no field named `chained_hash`
[INFO] [stdout]   --> src/bin/pipeline-test.rs:67:13
[INFO] [stdout]    |
[INFO] [stdout] 67 |             chained_hash: 0,
[INFO] [stdout]    |             ^^^^^^^^^^^^ `Module<_>` does not have this field
[INFO] [stdout]    |
[INFO] [stdout]    = note: all struct fields are already assigned
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0282]: type annotations needed
[INFO] [stdout]   --> src/bin/imops-cli.rs:40:15
[INFO] [stdout]    |
[INFO] [stdout] 40 |         .map(|x| (x.max(0.0).min(1.0) * 255.0) as u8)
[INFO] [stdout]    |               ^   - type must be known at this point
[INFO] [stdout]    |
[INFO] [stdout] help: consider giving this closure parameter an explicit type
[INFO] [stdout]    |
[INFO] [stdout] 40 |         .map(|x: /* Type */| (x.max(0.0).min(1.0) * 255.0) as u8)
[INFO] [stdout]    |                ++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0560]: struct `Module<CFACoeffs>` has no field named `chained_hash`
[INFO] [stdout]   --> src/bin/pipeline-test.rs:74:13
[INFO] [stdout]    |
[INFO] [stdout] 74 |             chained_hash: 0,
[INFO] [stdout]    |             ^^^^^^^^^^^^ `Module<_>` does not have this field
[INFO] [stdout]    |
[INFO] [stdout]    = note: all struct fields are already assigned
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0560]: struct `Module<HighlightReconstruction>` has no field named `chained_hash`
[INFO] [stdout]   --> src/bin/pipeline-test.rs:81:13
[INFO] [stdout]    |
[INFO] [stdout] 81 |             chained_hash: 0,
[INFO] [stdout]    |             ^^^^^^^^^^^^ `Module<_>` does not have this field
[INFO] [stdout]    |
[INFO] [stdout]    = note: all struct fields are already assigned
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0560]: struct `Module<Exp>` has no field named `chained_hash`
[INFO] [stdout]   --> src/bin/pipeline-test.rs:88:13
[INFO] [stdout]    |
[INFO] [stdout] 88 |             chained_hash: 0,
[INFO] [stdout]    |             ^^^^^^^^^^^^ `Module<_>` does not have this field
[INFO] [stdout]    |
[INFO] [stdout]    = note: all struct fields are already assigned
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0560]: struct `Module<pichromatic_pipeline::modules::Contrast>` has no field named `chained_hash`
[INFO] [stdout]   --> src/bin/pipeline-test.rs:95:13
[INFO] [stdout]    |
[INFO] [stdout] 95 |             chained_hash: 0,
[INFO] [stdout]    |             ^^^^^^^^^^^^ `Module<_>` does not have this field
[INFO] [stdout]    |
[INFO] [stdout]    = note: all struct fields are already assigned
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0560]: struct `Module<CST>` has no field named `chained_hash`
[INFO] [stdout]    --> src/bin/pipeline-test.rs:102:13
[INFO] [stdout]     |
[INFO] [stdout] 102 |             chained_hash: 0,
[INFO] [stdout]     |             ^^^^^^^^^^^^ `Module<_>` does not have this field
[INFO] [stdout]     |
[INFO] [stdout]     = note: all struct fields are already assigned
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0560]: struct `Module<LCH>` has no field named `chained_hash`
[INFO] [stdout]    --> src/bin/pipeline-test.rs:113:13
[INFO] [stdout]     |
[INFO] [stdout] 113 |             chained_hash: 0,
[INFO] [stdout]     |             ^^^^^^^^^^^^ `Module<_>` does not have this field
[INFO] [stdout]     |
[INFO] [stdout]     = note: all struct fields are already assigned
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0560]: struct `Module<ToneMap>` has no field named `chained_hash`
[INFO] [stdout]    --> src/bin/pipeline-test.rs:120:13
[INFO] [stdout]     |
[INFO] [stdout] 120 |             chained_hash: 0,
[INFO] [stdout]     |             ^^^^^^^^^^^^ `Module<_>` does not have this field
[INFO] [stdout]     |
[INFO] [stdout]     = note: all struct fields are already assigned
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0560]: struct `Module<CST>` has no field named `chained_hash`
[INFO] [stdout]    --> src/bin/pipeline-test.rs:127:13
[INFO] [stdout]     |
[INFO] [stdout] 127 |             chained_hash: 0,
[INFO] [stdout]     |             ^^^^^^^^^^^^ `Module<_>` does not have this field
[INFO] [stdout]     |
[INFO] [stdout]     = note: all struct fields are already assigned
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]   --> src/bin/pipeline-test.rs:57:19
[INFO] [stdout]    |
[INFO] [stdout] 57 |         raw_data: raw_image_data,
[INFO] [stdout]    |                   ^^^^^^^^^^^^^^ expected `Vec<f32>`, found `Vec<u16>`
[INFO] [stdout]    |
[INFO] [stdout]    = note: expected struct `Vec<f32>`
[INFO] [stdout]               found struct `Vec<u16>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0560]: struct `Module<pichromatic_pipeline::modules::Demosaic>` has no field named `chained_hash`
[INFO] [stdout]   --> src/bin/pipeline-test.rs:67:13
[INFO] [stdout]    |
[INFO] [stdout] 67 |             chained_hash: 0,
[INFO] [stdout]    |             ^^^^^^^^^^^^ `Module<_>` does not have this field
[INFO] [stdout]    |
[INFO] [stdout]    = note: all struct fields are already assigned
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0560]: struct `Module<CFACoeffs>` has no field named `chained_hash`
[INFO] [stdout]   --> src/bin/pipeline-test.rs:74:13
[INFO] [stdout]    |
[INFO] [stdout] 74 |             chained_hash: 0,
[INFO] [stdout]    |             ^^^^^^^^^^^^ `Module<_>` does not have this field
[INFO] [stdout]    |
[INFO] [stdout]    = note: all struct fields are already assigned
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0560]: struct `Module<HighlightReconstruction>` has no field named `chained_hash`
[INFO] [stdout]   --> src/bin/pipeline-test.rs:81:13
[INFO] [stdout]    |
[INFO] [stdout] 81 |             chained_hash: 0,
[INFO] [stdout]    |             ^^^^^^^^^^^^ `Module<_>` does not have this field
[INFO] [stdout]    |
[INFO] [stdout]    = note: all struct fields are already assigned
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0560]: struct `Module<Exp>` has no field named `chained_hash`
[INFO] [stdout]   --> src/bin/pipeline-test.rs:88:13
[INFO] [stdout]    |
[INFO] [stdout] 88 |             chained_hash: 0,
[INFO] [stdout]    |             ^^^^^^^^^^^^ `Module<_>` does not have this field
[INFO] [stdout]    |
[INFO] [stdout]    = note: all struct fields are already assigned
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0560]: struct `Module<pichromatic_pipeline::modules::Contrast>` has no field named `chained_hash`
[INFO] [stdout]   --> src/bin/pipeline-test.rs:95:13
[INFO] [stdout]    |
[INFO] [stdout] 95 |             chained_hash: 0,
[INFO] [stdout]    |             ^^^^^^^^^^^^ `Module<_>` does not have this field
[INFO] [stdout]    |
[INFO] [stdout]    = note: all struct fields are already assigned
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0560]: struct `Module<CST>` has no field named `chained_hash`
[INFO] [stdout]    --> src/bin/pipeline-test.rs:102:13
[INFO] [stdout]     |
[INFO] [stdout] 102 |             chained_hash: 0,
[INFO] [stdout]     |             ^^^^^^^^^^^^ `Module<_>` does not have this field
[INFO] [stdout]     |
[INFO] [stdout]     = note: all struct fields are already assigned
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0560]: struct `Module<LCH>` has no field named `chained_hash`
[INFO] [stdout]    --> src/bin/pipeline-test.rs:113:13
[INFO] [stdout]     |
[INFO] [stdout] 113 |             chained_hash: 0,
[INFO] [stdout]     |             ^^^^^^^^^^^^ `Module<_>` does not have this field
[INFO] [stdout]     |
[INFO] [stdout]     = note: all struct fields are already assigned
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0560]: struct `Module<ToneMap>` has no field named `chained_hash`
[INFO] [stdout]    --> src/bin/pipeline-test.rs:120:13
[INFO] [stdout]     |
[INFO] [stdout] 120 |             chained_hash: 0,
[INFO] [stdout]     |             ^^^^^^^^^^^^ `Module<_>` does not have this field
[INFO] [stdout]     |
[INFO] [stdout]     = note: all struct fields are already assigned
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0560]: struct `Module<CST>` has no field named `chained_hash`
[INFO] [stdout]    --> src/bin/pipeline-test.rs:127:13
[INFO] [stdout]     |
[INFO] [stdout] 127 |             chained_hash: 0,
[INFO] [stdout]     |             ^^^^^^^^^^^^ `Module<_>` does not have this field
[INFO] [stdout]     |
[INFO] [stdout]     = note: all struct fields are already assigned
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: arguments to this function are incorrect
[INFO] [stdout]    --> src/bin/pipeline-test.rs:134:23
[INFO] [stdout]     |
[INFO] [stdout] 134 |     let mut result1 = run_pixel_pipeline(image, pipeline1);
[INFO] [stdout]     |                       ^^^^^^^^^^^^^^^^^^ -----  --------- expected `&mut PipelineConfig`, found `PipelineConfig`
[INFO] [stdout]     |                                          |
[INFO] [stdout]     |                                          expected `&mut Image`, found `Image`
[INFO] [stdout]     |
[INFO] [stdout] note: function defined here
[INFO] [stdout]    --> pichromatic-pipeline/src/pipeline.rs:4:8
[INFO] [stdout]     |
[INFO] [stdout]   4 | pub fn run_pixel_pipeline(
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] help: consider mutably borrowing here
[INFO] [stdout]     |
[INFO] [stdout] 134 |     let mut result1 = run_pixel_pipeline(&mut image, pipeline1);
[INFO] [stdout]     |                                          ++++
[INFO] [stdout] help: consider mutably borrowing here
[INFO] [stdout]     |
[INFO] [stdout] 134 |     let mut result1 = run_pixel_pipeline(image, &mut pipeline1);
[INFO] [stdout]     |                                                 ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: arguments to this function are incorrect
[INFO] [stdout]    --> src/bin/pipeline-test.rs:134:23
[INFO] [stdout]     |
[INFO] [stdout] 134 |     let mut result1 = run_pixel_pipeline(image, pipeline1);
[INFO] [stdout]     |                       ^^^^^^^^^^^^^^^^^^ -----  --------- expected `&mut PipelineConfig`, found `PipelineConfig`
[INFO] [stdout]     |                                          |
[INFO] [stdout]     |                                          expected `&mut Image`, found `Image`
[INFO] [stdout]     |
[INFO] [stdout] note: function defined here
[INFO] [stdout]    --> pichromatic-pipeline/src/pipeline.rs:4:8
[INFO] [stdout]     |
[INFO] [stdout]   4 | pub fn run_pixel_pipeline(
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] help: consider mutably borrowing here
[INFO] [stdout]     |
[INFO] [stdout] 134 |     let mut result1 = run_pixel_pipeline(&mut image, pipeline1);
[INFO] [stdout]     |                                          ++++
[INFO] [stdout] help: consider mutably borrowing here
[INFO] [stdout]     |
[INFO] [stdout] 134 |     let mut result1 = run_pixel_pipeline(image, &mut pipeline1);
[INFO] [stdout]     |                                                 ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `par_iter` found for struct `Vec<[f32; 3]>` in the current scope
[INFO] [stdout]    --> src/bin/example.rs:85:36
[INFO] [stdout]     |
[INFO] [stdout]  85 |     let new_image = image.rgb_data.par_iter().map(|pixel|{
[INFO] [stdout]     |                                    ^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/rayon-1.11.0/src/iter/mod.rs:284:8
[INFO] [stdout]     |
[INFO] [stdout] 284 |     fn par_iter(&'data self) -> Self::Iter;
[INFO] [stdout]     |        -------- the method is available for `Vec<[f32; 3]>` here
[INFO] [stdout]     |
[INFO] [stdout]     = help: items from traits can only be used if the trait is in scope
[INFO] [stdout] help: trait `IntoParallelRefIterator` which provides `par_iter` is implemented but not in scope; perhaps you want to import it
[INFO] [stdout]     |
[INFO] [stdout]   1 + use rayon::iter::IntoParallelRefIterator;
[INFO] [stdout]     |
[INFO] [stdout] help: there is a method `iter` with a similar name
[INFO] [stdout]     |
[INFO] [stdout]  85 -     let new_image = image.rgb_data.par_iter().map(|pixel|{
[INFO] [stdout]  85 +     let new_image = image.rgb_data.iter().map(|pixel|{
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] For more information about this error, try `rustc --explain E0308`.
[INFO] [stdout] 
[INFO] [stdout] error[E0282]: type annotations needed
[INFO] [stdout]   --> src/bin/example.rs:85:52
[INFO] [stdout]    |
[INFO] [stdout] 85 |     let new_image = image.rgb_data.par_iter().map(|pixel|{
[INFO] [stdout]    |                                                    ^^^^^
[INFO] [stdout] 86 |         pixel.map(|sub_pixel| (sub_pixel.clamp(0.0, 1.0) * 255.0) as u8)
[INFO] [stdout]    |         ----- type must be known at this point
[INFO] [stdout]    |
[INFO] [stdout] help: consider giving this closure parameter an explicit type
[INFO] [stdout]    |
[INFO] [stdout] 85 |     let new_image = image.rgb_data.par_iter().map(|pixel: /* Type */|{
[INFO] [stdout]    |                                                         ++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0282]: type annotations needed
[INFO] [stdout]   --> src/bin/example.rs:86:20
[INFO] [stdout]    |
[INFO] [stdout] 86 |         pixel.map(|sub_pixel| (sub_pixel.clamp(0.0, 1.0) * 255.0) as u8)
[INFO] [stdout]    |                    ^^^^^^^^^   --------- type must be known at this point
[INFO] [stdout]    |
[INFO] [stdout] help: consider giving this closure parameter an explicit type
[INFO] [stdout]    |
[INFO] [stdout] 86 |         pixel.map(|sub_pixel: /* Type */| (sub_pixel.clamp(0.0, 1.0) * 255.0) as u8)
[INFO] [stdout]    |                             ++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]    --> src/bin/pipeline-test.rs:138:41
[INFO] [stdout]     |
[INFO] [stdout] 138 |     let (pixels, width, height) = to_u8(&mut result1);
[INFO] [stdout]     |                                   ----- ^^^^^^^^^^^^ expected `&mut Image`, found `&mut ()`
[INFO] [stdout]     |                                   |
[INFO] [stdout]     |                                   arguments to this function are incorrect
[INFO] [stdout]     |
[INFO] [stdout]     = note: expected mutable reference `&mut Image`
[INFO] [stdout]                found mutable reference `&mut ()`
[INFO] [stdout] note: function defined here
[INFO] [stdout]    --> src/file_helpers.rs:5:8
[INFO] [stdout]     |
[INFO] [stdout]   5 | pub fn to_u8(image: &mut Image) -> (Vec<[u8;3]>, usize, usize){
[INFO] [stdout]     |        ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `par_iter` found for struct `Vec<[f32; 3]>` in the current scope
[INFO] [stdout]    --> src/bin/example.rs:85:36
[INFO] [stdout]     |
[INFO] [stdout]  85 |     let new_image = image.rgb_data.par_iter().map(|pixel|{
[INFO] [stdout]     |                                    ^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/rayon-1.11.0/src/iter/mod.rs:284:8
[INFO] [stdout]     |
[INFO] [stdout] 284 |     fn par_iter(&'data self) -> Self::Iter;
[INFO] [stdout]     |        -------- the method is available for `Vec<[f32; 3]>` here
[INFO] [stdout]     |
[INFO] [stdout]     = help: items from traits can only be used if the trait is in scope
[INFO] [stdout] help: trait `IntoParallelRefIterator` which provides `par_iter` is implemented but not in scope; perhaps you want to import it
[INFO] [stdout]     |
[INFO] [stdout]   1 + use rayon::iter::IntoParallelRefIterator;
[INFO] [stdout]     |
[INFO] [stdout] help: there is a method `iter` with a similar name
[INFO] [stdout]     |
[INFO] [stdout]  85 -     let new_image = image.rgb_data.par_iter().map(|pixel|{
[INFO] [stdout]  85 +     let new_image = image.rgb_data.iter().map(|pixel|{
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0282]: type annotations needed
[INFO] [stdout]   --> src/bin/example.rs:85:52
[INFO] [stdout]    |
[INFO] [stdout] 85 |     let new_image = image.rgb_data.par_iter().map(|pixel|{
[INFO] [stdout]    |                                                    ^^^^^
[INFO] [stdout] 86 |         pixel.map(|sub_pixel| (sub_pixel.clamp(0.0, 1.0) * 255.0) as u8)
[INFO] [stdout]    |         ----- type must be known at this point
[INFO] [stdout]    |
[INFO] [stdout] help: consider giving this closure parameter an explicit type
[INFO] [stdout]    |
[INFO] [stdout] 85 |     let new_image = image.rgb_data.par_iter().map(|pixel: /* Type */|{
[INFO] [stdout]    |                                                         ++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0282]: type annotations needed
[INFO] [stdout]   --> src/bin/example.rs:86:20
[INFO] [stdout]    |
[INFO] [stdout] 86 |         pixel.map(|sub_pixel| (sub_pixel.clamp(0.0, 1.0) * 255.0) as u8)
[INFO] [stdout]    |                    ^^^^^^^^^   --------- type must be known at this point
[INFO] [stdout]    |
[INFO] [stdout] help: consider giving this closure parameter an explicit type
[INFO] [stdout]    |
[INFO] [stdout] 86 |         pixel.map(|sub_pixel: /* Type */| (sub_pixel.clamp(0.0, 1.0) * 255.0) as u8)
[INFO] [stdout]    |                             ++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]    --> src/bin/pipeline-test.rs:138:41
[INFO] [stdout]     |
[INFO] [stdout] 138 |     let (pixels, width, height) = to_u8(&mut result1);
[INFO] [stdout]     |                                   ----- ^^^^^^^^^^^^ expected `&mut Image`, found `&mut ()`
[INFO] [stdout]     |                                   |
[INFO] [stdout]     |                                   arguments to this function are incorrect
[INFO] [stdout]     |
[INFO] [stdout]     = note: expected mutable reference `&mut Image`
[INFO] [stdout]                found mutable reference `&mut ()`
[INFO] [stdout] note: function defined here
[INFO] [stdout]    --> src/file_helpers.rs:5:8
[INFO] [stdout]     |
[INFO] [stdout]   5 | pub fn to_u8(image: &mut Image) -> (Vec<[u8;3]>, usize, usize){
[INFO] [stdout]     |        ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] Some errors have detailed explanations: E0308, E0560.
[INFO] [stdout] 
[INFO] [stdout] For more information about an error, try `rustc --explain E0308`.
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of unresolved module or unlinked crate `image`
[INFO] [stdout]   --> src/bin/imops-cli.rs:42:15
[INFO] [stdout]    |
[INFO] [stdout] 42 |     let img = image::RgbImage::from_vec(width as u32, height as u32, data2).unwrap();
[INFO] [stdout]    |               ^^^^^ use of unresolved module or unlinked crate `image`
[INFO] [stdout]    |
[INFO] [stdout]    = help: if you wanted to use a crate named `image`, use `cargo add image` to add it to your `Cargo.toml`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] Some errors have detailed explanations: E0308, E0560.
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of unresolved module or unlinked crate `image`
[INFO] [stdout]   --> src/bin/imops-cli.rs:67:19
[INFO] [stdout]    |
[INFO] [stdout] 67 |     let mut img = image::DynamicImage::ImageRgb8(to_vec(debayer_image));
[INFO] [stdout]    |                   ^^^^^ use of unresolved module or unlinked crate `image`
[INFO] [stdout]    |
[INFO] [stdout]    = help: if you wanted to use a crate named `image`, use `cargo add image` to add it to your `Cargo.toml`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] For more information about an error, try `rustc --explain E0308`.
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]   --> src/bin/pipeline-socket.rs:64:42
[INFO] [stdout]    |
[INFO] [stdout] 64 |     let mut result1 = run_pixel_pipeline(image, pipeline);
[INFO] [stdout]    |                       ------------------ ^^^^^ expected `&mut Image`, found `Image`
[INFO] [stdout]    |                       |
[INFO] [stdout]    |                       arguments to this function are incorrect
[INFO] [stdout]    |
[INFO] [stdout] note: function defined here
[INFO] [stdout]   --> pichromatic-pipeline/src/pipeline.rs:4:8
[INFO] [stdout]    |
[INFO] [stdout]  4 | pub fn run_pixel_pipeline(
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] help: consider mutably borrowing here
[INFO] [stdout]    |
[INFO] [stdout] 64 |     let mut result1 = run_pixel_pipeline(&mut image, pipeline);
[INFO] [stdout]    |                                          ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of unresolved module or unlinked crate `image`
[INFO] [stdout]   --> src/bin/imops-cli.rs:81:9
[INFO] [stdout]    |
[INFO] [stdout] 81 |         image::ImageFormat::Jpeg,
[INFO] [stdout]    |         ^^^^^ use of unresolved module or unlinked crate `image`
[INFO] [stdout]    |
[INFO] [stdout]    = help: if you wanted to use a crate named `image`, use `cargo add image` to add it to your `Cargo.toml`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] Some errors have detailed explanations: E0282, E0308, E0433, E0599.
[INFO] [stdout] 
[INFO] [stdout] For more information about an error, try `rustc --explain E0282`.
[INFO] [stdout] 
[INFO] [stdout] Some errors have detailed explanations: E0282, E0308, E0433, E0599.
[INFO] [stdout] 
[INFO] [stdout] For more information about an error, try `rustc --explain E0282`.
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `filsimrs` (bin "pipeline-test" test) due to 12 previous errors
[INFO] [stderr] warning: build failed, waiting for other jobs to finish...
[INFO] [stderr] error: could not compile `filsimrs` (bin "pipeline-test") due to 12 previous errors
[INFO] [stderr] error: could not compile `filsimrs` (bin "pipeline-socket") due to 3 previous errors
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]   --> src/bin/pipeline-socket.rs:66:41
[INFO] [stdout]    |
[INFO] [stdout] 66 |     let (pixels, width, height) = to_u8(&mut result1);
[INFO] [stdout]    |                                   ----- ^^^^^^^^^^^^ expected `&mut Image`, found `&mut ()`
[INFO] [stdout]    |                                   |
[INFO] [stdout]    |                                   arguments to this function are incorrect
[INFO] [stdout]    |
[INFO] [stdout]    = note: expected mutable reference `&mut Image`
[INFO] [stdout]               found mutable reference `&mut ()`
[INFO] [stdout] note: function defined here
[INFO] [stdout]   --> src/file_helpers.rs:5:8
[INFO] [stdout]    |
[INFO] [stdout]  5 | pub fn to_u8(image: &mut Image) -> (Vec<[u8;3]>, usize, usize){
[INFO] [stdout]    |        ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]   --> src/bin/pipeline-socket.rs:68:12
[INFO] [stdout]    |
[INFO] [stdout] 62 | fn process_image(image: Image, pipeline: &mut PipelineConfig, output_path: String) -> Image{
[INFO] [stdout]    |                                                                                       ----- expected `Image` because of return type
[INFO] [stdout] ...
[INFO] [stdout] 68 |     return result1
[INFO] [stdout]    |            ^^^^^^^ expected `Image`, found `()`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no function or associated item named `parse` found for struct `Args` in the current scope
[INFO] [stdout]   --> src/bin/imops-cli.rs:47:41
[INFO] [stdout]    |
[INFO] [stdout] 11 | struct Args {
[INFO] [stdout]    | ----------- function or associated item `parse` not found for this struct
[INFO] [stdout] ...
[INFO] [stdout] 47 |     let args = Box::leak(Box::new(Args::parse()));
[INFO] [stdout]    |                                         ^^^^^ function or associated item not found in `Args`
[INFO] [stdout]    |
[INFO] [stdout]    = help: items from traits can only be used if the trait is implemented and in scope
[INFO] [stdout]    = note: the following traits define an item `parse`, perhaps you need to implement one of them:
[INFO] [stdout]            candidate #1: `bitstream_io::read::BitRead`
[INFO] [stdout]            candidate #2: `bitstream_io::read::BitRead2`
[INFO] [stdout]            candidate #3: `bitstream_io::read::ByteRead`
[INFO] [stdout]            candidate #4: `jxl_oxide_common::Bundle`
[INFO] [stdout]            candidate #5: `object::read::coff::file::CoffHeader`
[INFO] [stdout]            candidate #6: `object::read::elf::file::FileHeader`
[INFO] [stdout]            candidate #7: `object::read::macho::file::MachHeader`
[INFO] [stdout]            candidate #8: `object::read::pe::file::ImageNtHeaders`
[INFO] [stdout]            candidate #9: `object::read::xcoff::file::FileHeader`
[INFO] [stdout]            candidate #10: `winnow::parser::Parser`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `filsimrs` (bin "example" test) due to 5 previous errors
[INFO] [stderr] error: could not compile `filsimrs` (bin "example") due to 5 previous errors
[INFO] [stdout] error[E0433]: failed to resolve: use of unresolved module or unlinked crate `image`
[INFO] [stdout]   --> src/bin/imops-cli.rs:33:49
[INFO] [stdout]    |
[INFO] [stdout] 33 | fn to_vec(data: imops::imops::PipelineImage) -> image::ImageBuffer<image::Rgb<u8>, Vec<u8>> {
[INFO] [stdout]    |                                                 ^^^^^ use of unresolved module or unlinked crate `image`
[INFO] [stdout]    |
[INFO] [stdout]    = help: if you wanted to use a crate named `image`, use `cargo add image` to add it to your `Cargo.toml`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of unresolved module or unlinked crate `image`
[INFO] [stdout]   --> src/bin/imops-cli.rs:33:68
[INFO] [stdout]    |
[INFO] [stdout] 33 | fn to_vec(data: imops::imops::PipelineImage) -> image::ImageBuffer<image::Rgb<u8>, Vec<u8>> {
[INFO] [stdout]    |                                                                    ^^^^^ use of unresolved module or unlinked crate `image`
[INFO] [stdout]    |
[INFO] [stdout]    = help: if you wanted to use a crate named `image`, use `cargo add image` to add it to your `Cargo.toml`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] Some errors have detailed explanations: E0282, E0432, E0433, E0599.
[INFO] [stdout] 
[INFO] [stdout] For more information about an error, try `rustc --explain E0282`.
[INFO] [stdout] 
[INFO] [stdout] error[E0282]: type annotations needed
[INFO] [stdout]   --> src/bin/imops-cli.rs:40:15
[INFO] [stdout]    |
[INFO] [stdout] 40 |         .map(|x| (x.max(0.0).min(1.0) * 255.0) as u8)
[INFO] [stdout]    |               ^   - type must be known at this point
[INFO] [stdout]    |
[INFO] [stdout] help: consider giving this closure parameter an explicit type
[INFO] [stdout]    |
[INFO] [stdout] 40 |         .map(|x: /* Type */| (x.max(0.0).min(1.0) * 255.0) as u8)
[INFO] [stdout]    |                ++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] For more information about this error, try `rustc --explain E0308`.
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `filsimrs` (bin "imops-cli" test) due to 16 previous errors
[INFO] [stderr] error: could not compile `filsimrs` (bin "pipeline-socket" test) due to 3 previous errors
[INFO] [stdout] error[E0599]: no function or associated item named `parse` found for struct `Args` in the current scope
[INFO] [stdout]   --> src/bin/imops-cli.rs:47:41
[INFO] [stdout]    |
[INFO] [stdout] 11 | struct Args {
[INFO] [stdout]    | ----------- function or associated item `parse` not found for this struct
[INFO] [stdout] ...
[INFO] [stdout] 47 |     let args = Box::leak(Box::new(Args::parse()));
[INFO] [stdout]    |                                         ^^^^^ function or associated item not found in `Args`
[INFO] [stdout]    |
[INFO] [stdout]    = help: items from traits can only be used if the trait is implemented and in scope
[INFO] [stdout]    = note: the following traits define an item `parse`, perhaps you need to implement one of them:
[INFO] [stdout]            candidate #1: `bitstream_io::read::BitRead`
[INFO] [stdout]            candidate #2: `bitstream_io::read::BitRead2`
[INFO] [stdout]            candidate #3: `bitstream_io::read::ByteRead`
[INFO] [stdout]            candidate #4: `jxl_oxide_common::Bundle`
[INFO] [stdout]            candidate #5: `object::read::coff::file::CoffHeader`
[INFO] [stdout]            candidate #6: `object::read::elf::file::FileHeader`
[INFO] [stdout]            candidate #7: `object::read::macho::file::MachHeader`
[INFO] [stdout]            candidate #8: `object::read::pe::file::ImageNtHeaders`
[INFO] [stdout]            candidate #9: `object::read::xcoff::file::FileHeader`
[INFO] [stdout]            candidate #10: `winnow::parser::Parser`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of unresolved module or unlinked crate `image`
[INFO] [stdout]   --> src/bin/imops-cli.rs:33:49
[INFO] [stdout]    |
[INFO] [stdout] 33 | fn to_vec(data: imops::imops::PipelineImage) -> image::ImageBuffer<image::Rgb<u8>, Vec<u8>> {
[INFO] [stdout]    |                                                 ^^^^^ use of unresolved module or unlinked crate `image`
[INFO] [stdout]    |
[INFO] [stdout]    = help: if you wanted to use a crate named `image`, use `cargo add image` to add it to your `Cargo.toml`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of unresolved module or unlinked crate `image`
[INFO] [stdout]   --> src/bin/imops-cli.rs:33:68
[INFO] [stdout]    |
[INFO] [stdout] 33 | fn to_vec(data: imops::imops::PipelineImage) -> image::ImageBuffer<image::Rgb<u8>, Vec<u8>> {
[INFO] [stdout]    |                                                                    ^^^^^ use of unresolved module or unlinked crate `image`
[INFO] [stdout]    |
[INFO] [stdout]    = help: if you wanted to use a crate named `image`, use `cargo add image` to add it to your `Cargo.toml`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] Some errors have detailed explanations: E0282, E0432, E0433, E0599.
[INFO] [stdout] 
[INFO] [stdout] For more information about an error, try `rustc --explain E0282`.
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `filsimrs` (bin "imops-cli") due to 16 previous errors
[INFO] running `Command { std: "docker" "inspect" "776c675abda136bc57cebd242b6b65441ab7a1948642b0d5b8123bd49c38fe6d", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "776c675abda136bc57cebd242b6b65441ab7a1948642b0d5b8123bd49c38fe6d", kill_on_drop: false }`
[INFO] [stdout] 776c675abda136bc57cebd242b6b65441ab7a1948642b0d5b8123bd49c38fe6d
