[INFO] cloning repository https://github.com/Vanfarock/image-processing
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/Vanfarock/image-processing" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FVanfarock%2Fimage-processing", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FVanfarock%2Fimage-processing'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] 318e38ff74c888142bec832e3d553347fb15d96a
[INFO] checking Vanfarock/image-processing against try#b1f2594eac607c1f051534800237eeedb5590a49 for pr-139493-3
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FVanfarock%2Fimage-processing" "/workspace/builds/worker-3-tc2/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-3-tc2/source'...
[INFO] [stderr] done.
[INFO] started tweaking git repo https://github.com/Vanfarock/image-processing
[INFO] finished tweaking git repo https://github.com/Vanfarock/image-processing
[INFO] tweaked toml for git repo https://github.com/Vanfarock/image-processing written to /workspace/builds/worker-3-tc2/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/Vanfarock/image-processing on toolchain b1f2594eac607c1f051534800237eeedb5590a49
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+b1f2594eac607c1f051534800237eeedb5590a49" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate git repo https://github.com/Vanfarock/image-processing 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" "+b1f2594eac607c1f051534800237eeedb5590a49" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-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:aa71247004a7fa38d13ec170f48f06cdedf5bc50b2a8645e56ed7e992e6fa513" "/opt/rustwide/cargo-home/bin/cargo" "+b1f2594eac607c1f051534800237eeedb5590a49" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] 5e53f7d9d5f371f1d836fcac2d0c5a9ca300ea2c1a8b9a953f2777cdc41c60a6
[INFO] running `Command { std: "docker" "start" "-a" "5e53f7d9d5f371f1d836fcac2d0c5a9ca300ea2c1a8b9a953f2777cdc41c60a6", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "5e53f7d9d5f371f1d836fcac2d0c5a9ca300ea2c1a8b9a953f2777cdc41c60a6", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "5e53f7d9d5f371f1d836fcac2d0c5a9ca300ea2c1a8b9a953f2777cdc41c60a6", kill_on_drop: false }`
[INFO] [stdout] 5e53f7d9d5f371f1d836fcac2d0c5a9ca300ea2c1a8b9a953f2777cdc41c60a6
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-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:aa71247004a7fa38d13ec170f48f06cdedf5bc50b2a8645e56ed7e992e6fa513" "/opt/rustwide/cargo-home/bin/cargo" "+b1f2594eac607c1f051534800237eeedb5590a49" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 5ff276187f53c69b94ada984e462bcb8b866c91e6f67b07fc4845d47d7ef5c94
[INFO] running `Command { std: "docker" "start" "-a" "5ff276187f53c69b94ada984e462bcb8b866c91e6f67b07fc4845d47d7ef5c94", kill_on_drop: false }`
[INFO] [stderr]    Compiling crossbeam-utils v0.8.6
[INFO] [stderr]    Compiling memoffset v0.6.5
[INFO] [stderr]    Compiling libc v0.2.112
[INFO] [stderr]    Compiling crossbeam-epoch v0.9.6
[INFO] [stderr]    Compiling rayon-core v1.9.1
[INFO] [stderr]    Compiling num-traits v0.2.14
[INFO] [stderr]    Compiling num-integer v0.1.44
[INFO] [stderr]    Compiling rayon v1.5.1
[INFO] [stderr]    Compiling miniz_oxide v0.4.4
[INFO] [stderr]     Checking either v1.6.1
[INFO] [stderr]    Compiling crc32fast v1.3.0
[INFO] [stderr]     Checking adler32 v1.2.0
[INFO] [stderr]    Compiling num-iter v0.1.42
[INFO] [stderr]    Compiling num-rational v0.3.2
[INFO] [stderr]     Checking crossbeam-channel v0.5.2
[INFO] [stderr]     Checking weezl v0.1.5
[INFO] [stderr]     Checking deflate v0.8.6
[INFO] [stderr]     Checking crossbeam-deque v0.8.1
[INFO] [stderr]     Checking miniz_oxide v0.3.7
[INFO] [stderr]     Checking gif v0.11.3
[INFO] [stderr]     Checking scoped_threadpool v0.1.9
[INFO] [stderr]     Checking bytemuck v1.7.3
[INFO] [stderr]     Checking num_cpus v1.13.1
[INFO] [stderr]     Checking png v0.16.8
[INFO] [stderr]     Checking jpeg-decoder v0.1.22
[INFO] [stderr]     Checking tiff v0.6.1
[INFO] [stderr]     Checking image v0.23.14
[INFO] [stderr]     Checking image_processing v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: function `get_average_kernel` is never used
[INFO] [stdout]  --> src/blur/kernel.rs:3:8
[INFO] [stdout]   |
[INFO] [stdout] 3 | pub fn get_average_kernel(kernel_size: (u32, u32)) -> Vec<Vec<f32>> {
[INFO] [stdout]   |        ^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `get_average_kernel` is never used
[INFO] [stdout]  --> src/blur/kernel.rs:3:8
[INFO] [stdout]   |
[INFO] [stdout] 3 | pub fn get_average_kernel(kernel_size: (u32, u32)) -> Vec<Vec<f32>> {
[INFO] [stdout]   |        ^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple methods are never used
[INFO] [stdout]   --> src/custom_image/custom_image.rs:11:8
[INFO] [stdout]    |
[INFO] [stdout] 10 | pub trait ImageFilter: Image {
[INFO] [stdout]    |           ----------- methods in this trait
[INFO] [stdout] 11 |     fn quantize(&mut self, level: u8) -> Box<dyn ImageFilter>;
[INFO] [stdout]    |        ^^^^^^^^
[INFO] [stdout] 12 |     fn quantize_rgb(&mut self, level: u8) -> Box<dyn ImageFilter>;
[INFO] [stdout]    |        ^^^^^^^^^^^^
[INFO] [stdout] 13 |     fn brighten(&mut self, brightness: f32) -> Box<dyn ImageFilter>;
[INFO] [stdout]    |        ^^^^^^^^
[INFO] [stdout] 14 |     fn floyd_steinberg(&mut self, level: u8) -> Box<dyn ImageFilter>;
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^
[INFO] [stdout] 15 |     fn floyd_steinberg_rgb(&mut self, level: u8) -> Box<dyn ImageFilter>;
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 16 |     fn pixelize(&mut self, step_size: usize) -> Box<dyn ImageFilter>;
[INFO] [stdout]    |        ^^^^^^^^
[INFO] [stdout] 17 |     fn average_blur(&mut self, kernel_size: (u32, u32)) -> Box<dyn ImageFilter>;
[INFO] [stdout]    |        ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple methods are never used
[INFO] [stdout]   --> src/custom_image/custom_image.rs:11:8
[INFO] [stdout]    |
[INFO] [stdout] 10 | pub trait ImageFilter: Image {
[INFO] [stdout]    |           ----------- methods in this trait
[INFO] [stdout] 11 |     fn quantize(&mut self, level: u8) -> Box<dyn ImageFilter>;
[INFO] [stdout]    |        ^^^^^^^^
[INFO] [stdout] 12 |     fn quantize_rgb(&mut self, level: u8) -> Box<dyn ImageFilter>;
[INFO] [stdout]    |        ^^^^^^^^^^^^
[INFO] [stdout] 13 |     fn brighten(&mut self, brightness: f32) -> Box<dyn ImageFilter>;
[INFO] [stdout]    |        ^^^^^^^^
[INFO] [stdout] 14 |     fn floyd_steinberg(&mut self, level: u8) -> Box<dyn ImageFilter>;
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^
[INFO] [stdout] 15 |     fn floyd_steinberg_rgb(&mut self, level: u8) -> Box<dyn ImageFilter>;
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 16 |     fn pixelize(&mut self, step_size: usize) -> Box<dyn ImageFilter>;
[INFO] [stdout]    |        ^^^^^^^^
[INFO] [stdout] 17 |     fn average_blur(&mut self, kernel_size: (u32, u32)) -> Box<dyn ImageFilter>;
[INFO] [stdout]    |        ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `run` is never used
[INFO] [stdout]  --> src/filters/average_blur.rs:7:8
[INFO] [stdout]   |
[INFO] [stdout] 7 | pub fn run(base_img: &mut DynamicImage, kernel_size: (u32, u32)) -> Box<dyn ImageFilter> {
[INFO] [stdout]   |        ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `run` is never used
[INFO] [stdout]  --> src/filters/brightness.rs:6:8
[INFO] [stdout]   |
[INFO] [stdout] 6 | pub fn run(base_img: &mut DynamicImage, brightness: f32) -> Box<dyn ImageFilter> {
[INFO] [stdout]   |        ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `run` is never used
[INFO] [stdout]  --> src/filters/floyd_steinberg.rs:6:8
[INFO] [stdout]   |
[INFO] [stdout] 6 | pub fn run(base_img: &mut DynamicImage, level: u8) -> Box<dyn ImageFilter> {
[INFO] [stdout]   |        ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `distribute_error_diffusion` is never used
[INFO] [stdout]   --> src/filters/floyd_steinberg.rs:32:4
[INFO] [stdout]    |
[INFO] [stdout] 32 | fn distribute_error_diffusion(img: &mut DynamicImage, error: i16, x: u32, y: u32) {
[INFO] [stdout]    |    ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `add_and_clamp` is never used
[INFO] [stdout]   --> src/filters/floyd_steinberg.rs:66:4
[INFO] [stdout]    |
[INFO] [stdout] 66 | fn add_and_clamp(value: i16, other_value: i16, min: u8, max: u8) -> u8 {
[INFO] [stdout]    |    ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `outside_image_bounds` is never used
[INFO] [stdout]   --> src/filters/floyd_steinberg.rs:77:4
[INFO] [stdout]    |
[INFO] [stdout] 77 | fn outside_image_bounds(dimensions: (u32, u32), current_pos: (Option<u32>, u32)) -> bool {
[INFO] [stdout]    |    ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `run` is never used
[INFO] [stdout]  --> src/filters/floyd_steinberg_rgb.rs:6:8
[INFO] [stdout]   |
[INFO] [stdout] 6 | pub fn run(base_img: &mut DynamicImage, level: u8) -> Box<dyn ImageFilter> {
[INFO] [stdout]   |        ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `distribute_error_diffusion` is never used
[INFO] [stdout]   --> src/filters/floyd_steinberg_rgb.rs:35:4
[INFO] [stdout]    |
[INFO] [stdout] 35 | fn distribute_error_diffusion(img: &mut DynamicImage, errors: (i16, i16, i16), x: u32, y: u32) {
[INFO] [stdout]    |    ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `add_and_clamp` is never used
[INFO] [stdout]   --> src/filters/floyd_steinberg_rgb.rs:69:4
[INFO] [stdout]    |
[INFO] [stdout] 69 | fn add_and_clamp(value: i16, other_value: i16, min: u8, max: u8) -> u8 {
[INFO] [stdout]    |    ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `outside_image_bounds` is never used
[INFO] [stdout]   --> src/filters/floyd_steinberg_rgb.rs:80:4
[INFO] [stdout]    |
[INFO] [stdout] 80 | fn outside_image_bounds(dimensions: (u32, u32), current_pos: (Option<u32>, u32)) -> bool {
[INFO] [stdout]    |    ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `run` is never used
[INFO] [stdout]  --> src/filters/pixelize.rs:5:8
[INFO] [stdout]   |
[INFO] [stdout] 5 | pub fn run(base_img: &mut DynamicImage, step_size: usize) -> Box<dyn ImageFilter> {
[INFO] [stdout]   |        ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `pixelize_chunk` is never used
[INFO] [stdout]   --> src/filters/pixelize.rs:17:4
[INFO] [stdout]    |
[INFO] [stdout] 17 | fn pixelize_chunk(img: &mut DynamicImage, start_pos: (u32, u32), chunk_size: u32) {
[INFO] [stdout]    |    ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `calculate_chunk_average` is never used
[INFO] [stdout]   --> src/filters/pixelize.rs:42:4
[INFO] [stdout]    |
[INFO] [stdout] 42 | fn calculate_chunk_average(img: &mut DynamicImage, start_pos: (u32, u32), chunk_size: u32) -> Option<(u8, u8, u8)> {
[INFO] [stdout]    |    ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `outside_image_bounds` is never used
[INFO] [stdout]   --> src/filters/pixelize.rs:78:4
[INFO] [stdout]    |
[INFO] [stdout] 78 | fn outside_image_bounds(dimensions: (u32, u32), current_pos: (u32, u32)) -> bool {
[INFO] [stdout]    |    ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `run` is never used
[INFO] [stdout]  --> src/filters/quantize_n_levels.rs:6:8
[INFO] [stdout]   |
[INFO] [stdout] 6 | pub fn run(base_img: &mut DynamicImage, level: u8) -> Box<dyn ImageFilter> {
[INFO] [stdout]   |        ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `run` is never used
[INFO] [stdout]  --> src/filters/quantize_n_levels_rgb.rs:6:8
[INFO] [stdout]   |
[INFO] [stdout] 6 | pub fn run(base_img: &mut DynamicImage, level: u8) -> Box<dyn ImageFilter> {
[INFO] [stdout]   |        ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `brighten` is never used
[INFO] [stdout]  --> src/pixel_algorithms/brightness.rs:1:8
[INFO] [stdout]   |
[INFO] [stdout] 1 | pub fn brighten(red: u8, green: u8, blue: u8, brightness: f32) -> (u8, u8, u8) {
[INFO] [stdout]   |        ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `multiply_and_clamp` is never used
[INFO] [stdout]  --> src/pixel_algorithms/brightness.rs:6:4
[INFO] [stdout]   |
[INFO] [stdout] 6 | fn multiply_and_clamp(color: u8, brightness: f32) -> u8 {
[INFO] [stdout]   |    ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `quantize` is never used
[INFO] [stdout]  --> src/pixel_algorithms/quantization.rs:1:8
[INFO] [stdout]   |
[INFO] [stdout] 1 | pub fn quantize(red: u8, green: u8, blue: u8, level: u8) -> u8 {
[INFO] [stdout]   |        ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `quantize_rgb` is never used
[INFO] [stdout]   --> src/pixel_algorithms/quantization.rs:17:8
[INFO] [stdout]    |
[INFO] [stdout] 17 | pub fn quantize_rgb(red: u8, green: u8, blue: u8, level: u8) -> (u8, u8, u8) {
[INFO] [stdout]    |        ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `run` is never used
[INFO] [stdout]  --> src/filters/average_blur.rs:7:8
[INFO] [stdout]   |
[INFO] [stdout] 7 | pub fn run(base_img: &mut DynamicImage, kernel_size: (u32, u32)) -> Box<dyn ImageFilter> {
[INFO] [stdout]   |        ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `run` is never used
[INFO] [stdout]  --> src/filters/brightness.rs:6:8
[INFO] [stdout]   |
[INFO] [stdout] 6 | pub fn run(base_img: &mut DynamicImage, brightness: f32) -> Box<dyn ImageFilter> {
[INFO] [stdout]   |        ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `run` is never used
[INFO] [stdout]  --> src/filters/floyd_steinberg.rs:6:8
[INFO] [stdout]   |
[INFO] [stdout] 6 | pub fn run(base_img: &mut DynamicImage, level: u8) -> Box<dyn ImageFilter> {
[INFO] [stdout]   |        ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `distribute_error_diffusion` is never used
[INFO] [stdout]   --> src/filters/floyd_steinberg.rs:32:4
[INFO] [stdout]    |
[INFO] [stdout] 32 | fn distribute_error_diffusion(img: &mut DynamicImage, error: i16, x: u32, y: u32) {
[INFO] [stdout]    |    ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `add_and_clamp` is never used
[INFO] [stdout]   --> src/filters/floyd_steinberg.rs:66:4
[INFO] [stdout]    |
[INFO] [stdout] 66 | fn add_and_clamp(value: i16, other_value: i16, min: u8, max: u8) -> u8 {
[INFO] [stdout]    |    ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `outside_image_bounds` is never used
[INFO] [stdout]   --> src/filters/floyd_steinberg.rs:77:4
[INFO] [stdout]    |
[INFO] [stdout] 77 | fn outside_image_bounds(dimensions: (u32, u32), current_pos: (Option<u32>, u32)) -> bool {
[INFO] [stdout]    |    ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `run` is never used
[INFO] [stdout]  --> src/filters/floyd_steinberg_rgb.rs:6:8
[INFO] [stdout]   |
[INFO] [stdout] 6 | pub fn run(base_img: &mut DynamicImage, level: u8) -> Box<dyn ImageFilter> {
[INFO] [stdout]   |        ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `distribute_error_diffusion` is never used
[INFO] [stdout]   --> src/filters/floyd_steinberg_rgb.rs:35:4
[INFO] [stdout]    |
[INFO] [stdout] 35 | fn distribute_error_diffusion(img: &mut DynamicImage, errors: (i16, i16, i16), x: u32, y: u32) {
[INFO] [stdout]    |    ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `add_and_clamp` is never used
[INFO] [stdout]   --> src/filters/floyd_steinberg_rgb.rs:69:4
[INFO] [stdout]    |
[INFO] [stdout] 69 | fn add_and_clamp(value: i16, other_value: i16, min: u8, max: u8) -> u8 {
[INFO] [stdout]    |    ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `outside_image_bounds` is never used
[INFO] [stdout]   --> src/filters/floyd_steinberg_rgb.rs:80:4
[INFO] [stdout]    |
[INFO] [stdout] 80 | fn outside_image_bounds(dimensions: (u32, u32), current_pos: (Option<u32>, u32)) -> bool {
[INFO] [stdout]    |    ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `run` is never used
[INFO] [stdout]  --> src/filters/pixelize.rs:5:8
[INFO] [stdout]   |
[INFO] [stdout] 5 | pub fn run(base_img: &mut DynamicImage, step_size: usize) -> Box<dyn ImageFilter> {
[INFO] [stdout]   |        ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `pixelize_chunk` is never used
[INFO] [stdout]   --> src/filters/pixelize.rs:17:4
[INFO] [stdout]    |
[INFO] [stdout] 17 | fn pixelize_chunk(img: &mut DynamicImage, start_pos: (u32, u32), chunk_size: u32) {
[INFO] [stdout]    |    ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `calculate_chunk_average` is never used
[INFO] [stdout]   --> src/filters/pixelize.rs:42:4
[INFO] [stdout]    |
[INFO] [stdout] 42 | fn calculate_chunk_average(img: &mut DynamicImage, start_pos: (u32, u32), chunk_size: u32) -> Option<(u8, u8, u8)> {
[INFO] [stdout]    |    ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `outside_image_bounds` is never used
[INFO] [stdout]   --> src/filters/pixelize.rs:78:4
[INFO] [stdout]    |
[INFO] [stdout] 78 | fn outside_image_bounds(dimensions: (u32, u32), current_pos: (u32, u32)) -> bool {
[INFO] [stdout]    |    ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `run` is never used
[INFO] [stdout]  --> src/filters/quantize_n_levels.rs:6:8
[INFO] [stdout]   |
[INFO] [stdout] 6 | pub fn run(base_img: &mut DynamicImage, level: u8) -> Box<dyn ImageFilter> {
[INFO] [stdout]   |        ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `run` is never used
[INFO] [stdout]  --> src/filters/quantize_n_levels_rgb.rs:6:8
[INFO] [stdout]   |
[INFO] [stdout] 6 | pub fn run(base_img: &mut DynamicImage, level: u8) -> Box<dyn ImageFilter> {
[INFO] [stdout]   |        ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `brighten` is never used
[INFO] [stdout]  --> src/pixel_algorithms/brightness.rs:1:8
[INFO] [stdout]   |
[INFO] [stdout] 1 | pub fn brighten(red: u8, green: u8, blue: u8, brightness: f32) -> (u8, u8, u8) {
[INFO] [stdout]   |        ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `multiply_and_clamp` is never used
[INFO] [stdout]  --> src/pixel_algorithms/brightness.rs:6:4
[INFO] [stdout]   |
[INFO] [stdout] 6 | fn multiply_and_clamp(color: u8, brightness: f32) -> u8 {
[INFO] [stdout]   |    ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `quantize` is never used
[INFO] [stdout]  --> src/pixel_algorithms/quantization.rs:1:8
[INFO] [stdout]   |
[INFO] [stdout] 1 | pub fn quantize(red: u8, green: u8, blue: u8, level: u8) -> u8 {
[INFO] [stdout]   |        ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `quantize_rgb` is never used
[INFO] [stdout]   --> src/pixel_algorithms/quantization.rs:17:8
[INFO] [stdout]    |
[INFO] [stdout] 17 | pub fn quantize_rgb(red: u8, green: u8, blue: u8, level: u8) -> (u8, u8, u8) {
[INFO] [stdout]    |        ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 11.33s
[INFO] running `Command { std: "docker" "inspect" "5ff276187f53c69b94ada984e462bcb8b866c91e6f67b07fc4845d47d7ef5c94", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "5ff276187f53c69b94ada984e462bcb8b866c91e6f67b07fc4845d47d7ef5c94", kill_on_drop: false }`
[INFO] [stdout] 5ff276187f53c69b94ada984e462bcb8b866c91e6f67b07fc4845d47d7ef5c94
