[INFO] cloning repository https://github.com/frfabrizio/imgoptim
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/frfabrizio/imgoptim" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Ffrfabrizio%2Fimgoptim", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Ffrfabrizio%2Fimgoptim'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] a182be04ce1c1697ad00fdcb7a90c3aa4c447035
[INFO] testing frfabrizio/imgoptim against 1.100.0-beta.1+cargoflags=--release for beta-release-1.100-2
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Ffrfabrizio%2Fimgoptim" "/workspace/builds/worker-5-tc2/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-5-tc2/source'...
[INFO] [stderr] done.
[INFO] started tweaking git repo https://github.com/frfabrizio/imgoptim
[INFO] finished tweaking git repo https://github.com/frfabrizio/imgoptim
[INFO] tweaked toml for git repo https://github.com/frfabrizio/imgoptim written to /workspace/builds/worker-5-tc2/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/frfabrizio/imgoptim on toolchain 1.100.0-beta.1
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+1.100.0-beta.1" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate git repo https://github.com/frfabrizio/imgoptim 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" "+1.100.0-beta.1" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc2/target:/opt/rustwide/target:rw,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" "-m" "1610612736" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:77db811e55d90add9212f6832c23229e3de5f1c1f9905e8cb07319ea15df73ac" "sleep" "infinity", kill_on_drop: false }`
[INFO] [stdout] a5daaa2c95c9aac43d1647d937b0685bda6cb236fd85abe90c600f2ebb8e7144
[INFO] running `Command { std: "docker" "start" "a5daaa2c95c9aac43d1647d937b0685bda6cb236fd85abe90c600f2ebb8e7144", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "a5daaa2c95c9aac43d1647d937b0685bda6cb236fd85abe90c600f2ebb8e7144", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "exec" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-w" "/opt/rustwide/workdir" "--user" "0:0" "a5daaa2c95c9aac43d1647d937b0685bda6cb236fd85abe90c600f2ebb8e7144" "/opt/rustwide/cargo-home/bin/cargo" "+1.100.0-beta.1" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "a5daaa2c95c9aac43d1647d937b0685bda6cb236fd85abe90c600f2ebb8e7144", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "exec" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-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" "-w" "/opt/rustwide/workdir" "--user" "0:0" "a5daaa2c95c9aac43d1647d937b0685bda6cb236fd85abe90c600f2ebb8e7144" "/opt/rustwide/cargo-home/bin/cargo" "+1.100.0-beta.1" "build" "--frozen" "--message-format=json" "--release", kill_on_drop: false }`
[INFO] [stderr]    Compiling proc-macro2 v1.0.106
[INFO] [stderr]    Compiling unicode-ident v1.0.22
[INFO] [stderr]    Compiling crossbeam-utils v0.8.21
[INFO] [stderr]    Compiling quote v1.0.45
[INFO] [stderr]    Compiling cfg-if v1.0.4
[INFO] [stderr]    Compiling find-msvc-tools v0.1.5
[INFO] [stderr]    Compiling rustix v1.1.4
[INFO] [stderr]    Compiling simd-adler32 v0.3.8
[INFO] [stderr]    Compiling bitflags v2.10.0
[INFO] [stderr]    Compiling shlex v1.3.0
[INFO] [stderr]    Compiling linux-raw-sys v0.12.1
[INFO] [stderr]    Compiling libc v0.2.183
[INFO] [stderr]    Compiling once_cell v1.21.4
[INFO] [stderr]    Compiling rayon-core v1.13.0
[INFO] [stderr]    Compiling utf8parse v0.2.2
[INFO] [stderr]    Compiling log v0.4.29
[INFO] [stderr]    Compiling radium v0.7.0
[INFO] [stderr]    Compiling crc32fast v1.5.0
[INFO] [stderr]    Compiling anstyle-parse v1.0.0
[INFO] [stderr]    Compiling cc v1.2.49
[INFO] [stderr]    Compiling anstyle-query v1.1.5
[INFO] [stderr]    Compiling is_terminal_polyfill v1.70.2
[INFO] [stderr]    Compiling tap v1.0.1
[INFO] [stderr]    Compiling getrandom v0.3.4
[INFO] [stderr]    Compiling either v1.15.0
[INFO] [stderr]    Compiling anstyle v1.0.13
[INFO] [stderr]    Compiling colorchoice v1.0.4
[INFO] [stderr]    Compiling adler2 v2.0.1
[INFO] [stderr]    Compiling wyz v0.5.1
[INFO] [stderr]    Compiling miniz_oxide v0.8.9
[INFO] [stderr]    Compiling anstream v1.0.0
[INFO] [stderr]    Compiling bytemuck v1.24.0
[INFO] [stderr]    Compiling thiserror v2.0.18
[INFO] [stderr]    Compiling clap_lex v1.1.0
[INFO] [stderr]    Compiling heck v0.5.0
[INFO] [stderr]    Compiling bumpalo v3.19.0
[INFO] [stderr]    Compiling tracing-core v0.1.36
[INFO] [stderr]    Compiling hashbrown v0.16.1
[INFO] [stderr]    Compiling equivalent v1.0.2
[INFO] [stderr]    Compiling lazy_static v1.5.0
[INFO] [stderr]    Compiling anyhow v1.0.100
[INFO] [stderr]    Compiling strsim v0.11.1
[INFO] [stderr]    Compiling funty v2.0.0
[INFO] [stderr]    Compiling sharded-slab v0.1.7
[INFO] [stderr]    Compiling rgb v0.8.52
[INFO] [stderr]    Compiling fdeflate v0.3.7
[INFO] [stderr]    Compiling zopfli v0.8.3
[INFO] [stderr]    Compiling thread_local v1.1.9
[INFO] [stderr]    Compiling crossbeam-epoch v0.9.18
[INFO] [stderr]    Compiling tracing-log v0.2.0
[INFO] [stderr]    Compiling flate2 v1.1.5
[INFO] [stderr]    Compiling crossbeam-channel v0.5.15
[INFO] [stderr]    Compiling syn v2.0.117
[INFO] [stderr]    Compiling crossbeam-deque v0.8.6
[INFO] [stderr]    Compiling bitvec v1.0.1
[INFO] [stderr]    Compiling libdeflate-sys v1.25.0
[INFO] [stderr]    Compiling pin-project-lite v0.2.16
[INFO] [stderr]    Compiling nu-ansi-term v0.50.3
[INFO] [stderr]    Compiling zune-core v0.5.1
[INFO] [stderr]    Compiling fastrand v2.3.0
[INFO] [stderr]    Compiling smallvec v1.15.1
[INFO] [stderr]    Compiling same-file v1.0.6
[INFO] [stderr]    Compiling rustc-hash v2.1.1
[INFO] [stderr]    Compiling zune-jpeg v0.5.15
[INFO] [stderr]    Compiling filetime v0.2.27
[INFO] [stderr]    Compiling walkdir v2.5.0
[INFO] [stderr]    Compiling tracing-subscriber v0.3.23
[INFO] [stderr]    Compiling png v0.18.1
[INFO] [stderr]    Compiling jpeg-encoder v0.7.0
[INFO] [stderr]    Compiling bytesize v2.3.1
[INFO] [stderr]    Compiling path-clean v1.0.1
[INFO] [stderr]    Compiling glob v0.3.3
[INFO] [stderr]    Compiling rayon v1.11.0
[INFO] [stderr]    Compiling terminal_size v0.4.3
[INFO] [stderr]    Compiling tempfile v3.27.0
[INFO] [stderr]    Compiling clap_builder v4.6.0
[INFO] [stderr]    Compiling indexmap v2.13.0
[INFO] [stderr]    Compiling tracing-attributes v0.1.31
[INFO] [stderr]    Compiling thiserror-impl v2.0.18
[INFO] [stderr]    Compiling clap_derive v4.6.0
[INFO] [stderr]    Compiling tracing v0.1.44
[INFO] [stderr]    Compiling clap v4.6.0
[INFO] [stderr]    Compiling libdeflater v1.25.0
[INFO] [stderr]    Compiling oxipng v10.1.0
[INFO] [stderr]    Compiling imgoptim v0.1.0 (/opt/rustwide/workdir)
[INFO] [stderr] warning: unused dependency `bytesize`
[INFO] [stderr]  --> Cargo.toml:3:1
[INFO] [stderr]   |
[INFO] [stderr] 3 | bytesize = "2.3.1"
[INFO] [stderr]   | ^^^^^^^^^^^^^^^^^^
[INFO] [stderr]   |
[INFO] [stderr]   = note: `cargo::unused_dependencies` is set to `warn` by default
[INFO] [stderr] help: consider removing the dependency on `bytesize`
[INFO] [stderr] warning: unused dependency `path-clean`
[INFO] [stderr]  --> Cargo.toml:7:1
[INFO] [stderr]   |
[INFO] [stderr] 7 | path-clean = "1.0"
[INFO] [stderr]   | ^^^^^^^^^^^^^^^^^^
[INFO] [stderr]   |
[INFO] [stderr] help: consider removing the dependency on `path-clean`
[INFO] [stderr] warning: unused dependency `thiserror`
[INFO] [stderr]  --> Cargo.toml:9:1
[INFO] [stderr]   |
[INFO] [stderr] 9 | thiserror = "2.0.18"
[INFO] [stderr]   | ^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]   |
[INFO] [stderr] help: consider removing the dependency on `thiserror`
[INFO] [stderr] warning: unused dependency `walkdir`
[INFO] [stderr]   --> Cargo.toml:11:1
[INFO] [stderr]    |
[INFO] [stderr] 11 | walkdir = "2"
[INFO] [stderr]    | ^^^^^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr] help: consider removing the dependency on `walkdir`
[INFO] [stderr] warning: `imgoptim` (manifest) generated 4 warnings
[INFO] [stderr]     Finished `release` profile [optimized] target(s) in 1m 04s
[INFO] running `Command { std: "docker" "inspect" "a5daaa2c95c9aac43d1647d937b0685bda6cb236fd85abe90c600f2ebb8e7144", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "exec" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-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" "-w" "/opt/rustwide/workdir" "--user" "0:0" "a5daaa2c95c9aac43d1647d937b0685bda6cb236fd85abe90c600f2ebb8e7144" "/opt/rustwide/cargo-home/bin/cargo" "+1.100.0-beta.1" "test" "--frozen" "--no-run" "--message-format=json" "--release", kill_on_drop: false }`
[INFO] [stderr]    Compiling memchr v2.7.6
[INFO] [stderr]    Compiling autocfg v1.5.0
[INFO] [stderr]    Compiling regex-syntax v0.8.8
[INFO] [stderr]    Compiling predicates-core v1.0.9
[INFO] [stderr]    Compiling difflib v0.4.0
[INFO] [stderr]    Compiling termtree v0.5.1
[INFO] [stderr]    Compiling assert_cmd v2.1.1
[INFO] [stderr]    Compiling normalize-line-endings v0.3.0
[INFO] [stderr]    Compiling wait-timeout v0.2.1
[INFO] [stderr]    Compiling predicates-tree v1.0.12
[INFO] [stderr]    Compiling num-traits v0.2.19
[INFO] [stderr]    Compiling aho-corasick v1.1.4
[INFO] [stderr]    Compiling float-cmp v0.10.0
[INFO] [stderr]    Compiling regex-automata v0.4.13
[INFO] [stderr]    Compiling regex v1.12.2
[INFO] [stderr]    Compiling bstr v1.12.1
[INFO] [stderr]    Compiling predicates v3.1.3
[INFO] [stderr]    Compiling imgoptim v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] error[E0583]: file not found for module `common`
[INFO] [stdout]  --> tests/cli_convert.rs:1:1
[INFO] [stdout]   |
[INFO] [stdout] 1 | mod common;
[INFO] [stdout]   | ^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = help: to create the module `common`, create file "tests/common.rs" or "tests/common/mod.rs"
[INFO] [stdout]   = note: if there is a `mod common` elsewhere in the crate already, import it with `use crate::...` instead
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0583]: file not found for module `common`
[INFO] [stdout]  --> tests/cli_filters_naming.rs:1:1
[INFO] [stdout]   |
[INFO] [stdout] 1 | mod common;
[INFO] [stdout]   | ^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = help: to create the module `common`, create file "tests/common.rs" or "tests/common/mod.rs"
[INFO] [stdout]   = note: if there is a `mod common` elsewhere in the crate already, import it with `use crate::...` instead
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0583]: file not found for module `common`
[INFO] [stdout]  --> tests/cli_misc.rs:1:1
[INFO] [stdout]   |
[INFO] [stdout] 1 | mod common;
[INFO] [stdout]   | ^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = help: to create the module `common`, create file "tests/common.rs" or "tests/common/mod.rs"
[INFO] [stdout]   = note: if there is a `mod common` elsewhere in the crate already, import it with `use crate::...` instead
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0583]: file not found for module `common`
[INFO] [stdout]  --> tests/cli_resize_size.rs:1:1
[INFO] [stdout]   |
[INFO] [stdout] 1 | mod common;
[INFO] [stdout]   | ^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = help: to create the module `common`, create file "tests/common.rs" or "tests/common/mod.rs"
[INFO] [stdout]   = note: if there is a `mod common` elsewhere in the crate already, import it with `use crate::...` instead
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0583]: file not found for module `common`
[INFO] [stdout]  --> tests/cli_output.rs:1:1
[INFO] [stdout]   |
[INFO] [stdout] 1 | mod common;
[INFO] [stdout]   | ^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = help: to create the module `common`, create file "tests/common.rs" or "tests/common/mod.rs"
[INFO] [stdout]   = note: if there is a `mod common` elsewhere in the crate already, import it with `use crate::...` instead
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `common::*`
[INFO] [stdout]  --> tests/cli_resize_size.rs:3:5
[INFO] [stdout]   |
[INFO] [stdout] 3 | use common::*;
[INFO] [stdout]   |     ^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find function `tmp_out_dir` in this scope
[INFO] [stdout]  --> tests/cli_resize_size.rs:9:19
[INFO] [stdout]   |
[INFO] [stdout] 9 |     let out_dir = tmp_out_dir();
[INFO] [stdout]   |                   ^^^^^^^^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find function `asset_path` in this scope
[INFO] [stdout]   --> tests/cli_resize_size.rs:10:17
[INFO] [stdout]    |
[INFO] [stdout] 10 |     let input = asset_path("tests/assets/png/image_nometa.png");
[INFO] [stdout]    |                 ^^^^^^^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find function `run_ok` in this scope
[INFO] [stdout]   --> tests/cli_resize_size.rs:13:5
[INFO] [stdout]    |
[INFO] [stdout] 13 |     run_ok(&[
[INFO] [stdout]    |     ^^^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find function `expect_file_exists` in this scope
[INFO] [stdout]   --> tests/cli_resize_size.rs:27:5
[INFO] [stdout]    |
[INFO] [stdout] 27 |     expect_file_exists(&out);
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find function `read_bytes` in this scope
[INFO] [stdout]   --> tests/cli_resize_size.rs:29:17
[INFO] [stdout]    |
[INFO] [stdout] 29 |     let bytes = read_bytes(&out);
[INFO] [stdout]    |                 ^^^^^^^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find function `tmp_out_dir` in this scope
[INFO] [stdout]   --> tests/cli_resize_size.rs:38:19
[INFO] [stdout]    |
[INFO] [stdout] 38 |     let out_dir = tmp_out_dir();
[INFO] [stdout]    |                   ^^^^^^^^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find function `asset_path` in this scope
[INFO] [stdout]   --> tests/cli_resize_size.rs:39:17
[INFO] [stdout]    |
[INFO] [stdout] 39 |     let input = asset_path("tests/assets/png/image_meta.png");
[INFO] [stdout]    |                 ^^^^^^^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find function `run_ok` in this scope
[INFO] [stdout]   --> tests/cli_resize_size.rs:42:5
[INFO] [stdout]    |
[INFO] [stdout] 42 |     run_ok(&[
[INFO] [stdout]    |     ^^^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] Some errors have detailed explanations: E0425, E0583.
[INFO] [stdout] 
[INFO] [stdout] For more information about an error, try `rustc --explain E0425`.
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `imgoptim` (test "cli_resize_size") due to 9 previous errors; 1 warning emitted
[INFO] [stderr] warning: build failed, waiting for other jobs to finish...
[INFO] [stdout] warning: unused import: `common::*`
[INFO] [stdout]  --> tests/cli_misc.rs:3:5
[INFO] [stdout]   |
[INFO] [stdout] 3 | use common::*;
[INFO] [stdout]   |     ^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find function `tmp_out_dir` in this scope
[INFO] [stdout]   --> tests/cli_misc.rs:11:19
[INFO] [stdout]    |
[INFO] [stdout] 11 |     let out_dir = tmp_out_dir();
[INFO] [stdout]    |                   ^^^^^^^^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find function `tmp_out_dir` in this scope
[INFO] [stdout]   --> tests/cli_misc.rs:12:21
[INFO] [stdout]    |
[INFO] [stdout] 12 |     let input_dir = tmp_out_dir();
[INFO] [stdout]    |                     ^^^^^^^^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find function `run_ok` in this scope
[INFO] [stdout]   --> tests/cli_misc.rs:29:5
[INFO] [stdout]    |
[INFO] [stdout] 29 |     run_ok(&[
[INFO] [stdout]    |     ^^^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find function `run_ok` in this scope
[INFO] [stdout]   --> tests/cli_misc.rs:42:5
[INFO] [stdout]    |
[INFO] [stdout] 42 |     run_ok(&[
[INFO] [stdout]    |     ^^^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find function `expect_file_exists` in this scope
[INFO] [stdout]   --> tests/cli_misc.rs:57:5
[INFO] [stdout]    |
[INFO] [stdout] 57 |     expect_file_exists(&out_white);
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find function `expect_file_exists` in this scope
[INFO] [stdout]   --> tests/cli_misc.rs:58:5
[INFO] [stdout]    |
[INFO] [stdout] 58 |     expect_file_exists(&out_black);
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find function `read_bytes` in this scope
[INFO] [stdout]   --> tests/cli_misc.rs:60:23
[INFO] [stdout]    |
[INFO] [stdout] 60 |     let white_bytes = read_bytes(&out_white);
[INFO] [stdout]    |                       ^^^^^^^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find function `read_bytes` in this scope
[INFO] [stdout]   --> tests/cli_misc.rs:61:23
[INFO] [stdout]    |
[INFO] [stdout] 61 |     let black_bytes = read_bytes(&out_black);
[INFO] [stdout]    |                       ^^^^^^^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find function `assert_is_jpeg` in this scope
[INFO] [stdout]   --> tests/cli_misc.rs:62:5
[INFO] [stdout]    |
[INFO] [stdout] 62 |     assert_is_jpeg(&white_bytes);
[INFO] [stdout]    |     ^^^^^^^^^^^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find function `assert_is_jpeg` in this scope
[INFO] [stdout]   --> tests/cli_misc.rs:63:5
[INFO] [stdout]    |
[INFO] [stdout] 63 |     assert_is_jpeg(&black_bytes);
[INFO] [stdout]    |     ^^^^^^^^^^^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find function `tmp_out_dir` in this scope
[INFO] [stdout]   --> tests/cli_misc.rs:72:19
[INFO] [stdout]    |
[INFO] [stdout] 72 |     let out_dir = tmp_out_dir();
[INFO] [stdout]    |                   ^^^^^^^^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find function `asset_path` in this scope
[INFO] [stdout]   --> tests/cli_misc.rs:73:17
[INFO] [stdout]    |
[INFO] [stdout] 73 |     let input = asset_path("tests/assets/png/image_nometa.png");
[INFO] [stdout]    |                 ^^^^^^^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find function `run_ok` in this scope
[INFO] [stdout]   --> tests/cli_misc.rs:76:5
[INFO] [stdout]    |
[INFO] [stdout] 76 |     run_ok(&[
[INFO] [stdout]    |     ^^^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find function `tmp_out_dir` in this scope
[INFO] [stdout]   --> tests/cli_misc.rs:95:19
[INFO] [stdout]    |
[INFO] [stdout] 95 |     let out_dir = tmp_out_dir();
[INFO] [stdout]    |                   ^^^^^^^^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find function `asset_path` in this scope
[INFO] [stdout]   --> tests/cli_misc.rs:96:21
[INFO] [stdout]    |
[INFO] [stdout] 96 |     let input_src = asset_path("tests/assets/png/image_nometa.png");
[INFO] [stdout]    |                     ^^^^^^^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find function `run_ok` in this scope
[INFO] [stdout]    --> tests/cli_misc.rs:105:5
[INFO] [stdout]     |
[INFO] [stdout] 105 |     run_ok(&[
[INFO] [stdout]     |     ^^^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find function `expect_file_exists` in this scope
[INFO] [stdout]    --> tests/cli_misc.rs:116:5
[INFO] [stdout]     |
[INFO] [stdout] 116 |     expect_file_exists(&out);
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find function `tmp_out_dir` in this scope
[INFO] [stdout]    --> tests/cli_misc.rs:125:19
[INFO] [stdout]     |
[INFO] [stdout] 125 |     let out_dir = tmp_out_dir();
[INFO] [stdout]     |                   ^^^^^^^^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find function `asset_path` in this scope
[INFO] [stdout]    --> tests/cli_misc.rs:126:17
[INFO] [stdout]     |
[INFO] [stdout] 126 |     let input = asset_path("tests/assets/png/image_nometa.png");
[INFO] [stdout]     |                 ^^^^^^^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find function `run_ok` in this scope
[INFO] [stdout]    --> tests/cli_misc.rs:129:5
[INFO] [stdout]     |
[INFO] [stdout] 129 |     run_ok(&[
[INFO] [stdout]     |     ^^^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find function `run_ok` in this scope
[INFO] [stdout]    --> tests/cli_misc.rs:146:5
[INFO] [stdout]     |
[INFO] [stdout] 146 |     run_ok(&[
[INFO] [stdout]     |     ^^^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find function `expect_file_exists` in this scope
[INFO] [stdout]    --> tests/cli_misc.rs:159:5
[INFO] [stdout]     |
[INFO] [stdout] 159 |     expect_file_exists(&out_force);
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find function `tmp_out_dir` in this scope
[INFO] [stdout]    --> tests/cli_misc.rs:164:19
[INFO] [stdout]     |
[INFO] [stdout] 164 |     let out_dir = tmp_out_dir();
[INFO] [stdout]     |                   ^^^^^^^^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find function `asset_path` in this scope
[INFO] [stdout]    --> tests/cli_misc.rs:165:17
[INFO] [stdout]     |
[INFO] [stdout] 165 |     let input = asset_path("tests/assets/jpeg/photo_nometa.jpg");
[INFO] [stdout]     |                 ^^^^^^^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find function `run_ok_with_input` in this scope
[INFO] [stdout]    --> tests/cli_misc.rs:174:5
[INFO] [stdout]     |
[INFO] [stdout] 174 |     run_ok_with_input(
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find function `expect_jpeg_out` in this scope
[INFO] [stdout]    --> tests/cli_misc.rs:185:15
[INFO] [stdout]     |
[INFO] [stdout] 185 |     let out = expect_jpeg_out(&dest, "photo_nometa");
[INFO] [stdout]     |               ^^^^^^^^^^^^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find function `read_bytes` in this scope
[INFO] [stdout]    --> tests/cli_misc.rs:186:17
[INFO] [stdout]     |
[INFO] [stdout] 186 |     let bytes = read_bytes(&out);
[INFO] [stdout]     |                 ^^^^^^^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find function `assert_is_jpeg` in this scope
[INFO] [stdout]    --> tests/cli_misc.rs:187:5
[INFO] [stdout]     |
[INFO] [stdout] 187 |     assert_is_jpeg(&bytes);
[INFO] [stdout]     |     ^^^^^^^^^^^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find function `tmp_out_dir` in this scope
[INFO] [stdout]    --> tests/cli_misc.rs:192:19
[INFO] [stdout]     |
[INFO] [stdout] 192 |     let out_dir = tmp_out_dir();
[INFO] [stdout]     |                   ^^^^^^^^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find function `asset_path` in this scope
[INFO] [stdout]    --> tests/cli_misc.rs:193:17
[INFO] [stdout]     |
[INFO] [stdout] 193 |     let input = asset_path("tests/assets/jpeg/photo_nometa.jpg");
[INFO] [stdout]     |                 ^^^^^^^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find function `imgoptim_cmd` in this scope
[INFO] [stdout]    --> tests/cli_misc.rs:202:19
[INFO] [stdout]     |
[INFO] [stdout] 202 |     let mut cmd = imgoptim_cmd();
[INFO] [stdout]     |                   ^^^^^^^^^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] Some errors have detailed explanations: E0425, E0583.
[INFO] [stdout] 
[INFO] [stdout] For more information about an error, try `rustc --explain E0425`.
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `imgoptim` (test "cli_misc") due to 32 previous errors; 1 warning emitted
[INFO] [stdout] warning: unused import: `super::common::*`
[INFO] [stdout]  --> tests/cli_convert.rs:4:9
[INFO] [stdout]   |
[INFO] [stdout] 4 |     use super::common::*;
[INFO] [stdout]   |         ^^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `super::common::*`
[INFO] [stdout]    --> tests/cli_convert.rs:109:9
[INFO] [stdout]     |
[INFO] [stdout] 109 |     use super::common::*;
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `common::*`
[INFO] [stdout]  --> tests/cli_filters_naming.rs:3:5
[INFO] [stdout]   |
[INFO] [stdout] 3 | use common::*;
[INFO] [stdout]   |     ^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find function `tmp_out_dir` in this scope
[INFO] [stdout]  --> tests/cli_convert.rs:8:23
[INFO] [stdout]   |
[INFO] [stdout] 8 |         let out_dir = tmp_out_dir();
[INFO] [stdout]   |                       ^^^^^^^^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find function `asset_path` in this scope
[INFO] [stdout]  --> tests/cli_convert.rs:9:21
[INFO] [stdout]   |
[INFO] [stdout] 9 |         let input = asset_path("tests/assets/jpeg/photo_meta.jpg");
[INFO] [stdout]   |                     ^^^^^^^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find function `run_ok` in this scope
[INFO] [stdout]   --> tests/cli_convert.rs:12:9
[INFO] [stdout]    |
[INFO] [stdout] 12 |         run_ok(&[
[INFO] [stdout]    |         ^^^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find function `expect_file_exists` in this scope
[INFO] [stdout]   --> tests/cli_convert.rs:27:9
[INFO] [stdout]    |
[INFO] [stdout] 27 |         expect_file_exists(&out);
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find function `read_bytes` in this scope
[INFO] [stdout]   --> tests/cli_convert.rs:29:21
[INFO] [stdout]    |
[INFO] [stdout] 29 |         let bytes = read_bytes(&out);
[INFO] [stdout]    |                     ^^^^^^^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find function `assert_is_png` in this scope
[INFO] [stdout]   --> tests/cli_convert.rs:30:9
[INFO] [stdout]    |
[INFO] [stdout] 30 |         assert_is_png(&bytes);
[INFO] [stdout]    |         ^^^^^^^^^^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find function `png_extract_xmp` in this scope
[INFO] [stdout]   --> tests/cli_convert.rs:32:19
[INFO] [stdout]    |
[INFO] [stdout] 32 |         let xmp = png_extract_xmp(&bytes).expect("XMP not found in PNG");
[INFO] [stdout]    |                   ^^^^^^^^^^^^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find function `tmp_out_dir` in this scope
[INFO] [stdout]  --> tests/cli_filters_naming.rs:7:19
[INFO] [stdout]   |
[INFO] [stdout] 7 |     let out_dir = tmp_out_dir();
[INFO] [stdout]   |                   ^^^^^^^^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find function `tmp_out_dir` in this scope
[INFO] [stdout]    --> tests/cli_convert.rs:113:23
[INFO] [stdout]     |
[INFO] [stdout] 113 |         let out_dir = tmp_out_dir();
[INFO] [stdout]     |                       ^^^^^^^^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find function `asset_path` in this scope
[INFO] [stdout]    --> tests/cli_convert.rs:114:21
[INFO] [stdout]     |
[INFO] [stdout] 114 |         let input = asset_path("tests/assets/png/image_meta.png");
[INFO] [stdout]     |                     ^^^^^^^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find function `run_ok` in this scope
[INFO] [stdout]    --> tests/cli_convert.rs:117:9
[INFO] [stdout]     |
[INFO] [stdout] 117 |         run_ok(&[
[INFO] [stdout]     |         ^^^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find function `expect_jpeg_out` in this scope
[INFO] [stdout]    --> tests/cli_convert.rs:136:19
[INFO] [stdout]     |
[INFO] [stdout] 136 |         let out = expect_jpeg_out(out_dir.path(), &format!("{stem}_imgoptim"));
[INFO] [stdout]     |                   ^^^^^^^^^^^^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find function `read_bytes` in this scope
[INFO] [stdout]    --> tests/cli_convert.rs:138:21
[INFO] [stdout]     |
[INFO] [stdout] 138 |         let bytes = read_bytes(&out);
[INFO] [stdout]     |                     ^^^^^^^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find function `assert_is_jpeg` in this scope
[INFO] [stdout]    --> tests/cli_convert.rs:139:9
[INFO] [stdout]     |
[INFO] [stdout] 139 |         assert_is_jpeg(&bytes);
[INFO] [stdout]     |         ^^^^^^^^^^^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find function `jpeg_contains_exif` in this scope
[INFO] [stdout]    --> tests/cli_convert.rs:142:13
[INFO] [stdout]     |
[INFO] [stdout] 142 |             jpeg_contains_exif(&bytes) || jpeg_extract_xmp(&bytes).is_some(),
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find function `jpeg_extract_xmp` in this scope
[INFO] [stdout]    --> tests/cli_convert.rs:142:43
[INFO] [stdout]     |
[INFO] [stdout] 142 |             jpeg_contains_exif(&bytes) || jpeg_extract_xmp(&bytes).is_some(),
[INFO] [stdout]     |                                           ^^^^^^^^^^^^^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find function `tmp_out_dir` in this scope
[INFO] [stdout]    --> tests/cli_convert.rs:149:23
[INFO] [stdout]     |
[INFO] [stdout] 149 |         let out_dir = tmp_out_dir();
[INFO] [stdout]     |                       ^^^^^^^^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find function `asset_path` in this scope
[INFO] [stdout]    --> tests/cli_convert.rs:150:21
[INFO] [stdout]     |
[INFO] [stdout] 150 |         let input = asset_path("tests/assets/png/image_meta.png");
[INFO] [stdout]     |                     ^^^^^^^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find function `run_ok` in this scope
[INFO] [stdout]    --> tests/cli_convert.rs:153:9
[INFO] [stdout]     |
[INFO] [stdout] 153 |         run_ok(&[
[INFO] [stdout]     |         ^^^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find function `expect_jpeg_out` in this scope
[INFO] [stdout]    --> tests/cli_convert.rs:171:19
[INFO] [stdout]     |
[INFO] [stdout] 171 |         let out = expect_jpeg_out(out_dir.path(), &format!("{stem}_imgoptim"));
[INFO] [stdout]     |                   ^^^^^^^^^^^^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find function `read_bytes` in this scope
[INFO] [stdout]    --> tests/cli_convert.rs:173:21
[INFO] [stdout]     |
[INFO] [stdout] 173 |         let bytes = read_bytes(&out);
[INFO] [stdout]     |                     ^^^^^^^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find function `assert_is_jpeg` in this scope
[INFO] [stdout]    --> tests/cli_convert.rs:174:9
[INFO] [stdout]     |
[INFO] [stdout] 174 |         assert_is_jpeg(&bytes);
[INFO] [stdout]     |         ^^^^^^^^^^^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find function `jpeg_contains_exif` in this scope
[INFO] [stdout]    --> tests/cli_convert.rs:177:13
[INFO] [stdout]     |
[INFO] [stdout] 177 |             jpeg_contains_exif(&bytes) || jpeg_extract_xmp(&bytes).is_some(),
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find function `jpeg_extract_xmp` in this scope
[INFO] [stdout]    --> tests/cli_convert.rs:177:43
[INFO] [stdout]     |
[INFO] [stdout] 177 |             jpeg_contains_exif(&bytes) || jpeg_extract_xmp(&bytes).is_some(),
[INFO] [stdout]     |                                           ^^^^^^^^^^^^^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find function `tmp_out_dir` in this scope
[INFO] [stdout]    --> tests/cli_convert.rs:184:23
[INFO] [stdout]     |
[INFO] [stdout] 184 |         let out_dir = tmp_out_dir();
[INFO] [stdout]     |                       ^^^^^^^^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find function `asset_path` in this scope
[INFO] [stdout]    --> tests/cli_convert.rs:185:21
[INFO] [stdout]     |
[INFO] [stdout] 185 |         let input = asset_path("tests/assets/png/image_meta.png");
[INFO] [stdout]     |                     ^^^^^^^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find function `run_ok` in this scope
[INFO] [stdout]    --> tests/cli_convert.rs:188:9
[INFO] [stdout]     |
[INFO] [stdout] 188 |         run_ok(&[
[INFO] [stdout]     |         ^^^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find function `expect_jpeg_out` in this scope
[INFO] [stdout]    --> tests/cli_convert.rs:207:19
[INFO] [stdout]     |
[INFO] [stdout] 207 |         let out = expect_jpeg_out(out_dir.path(), &format!("{stem}_imgoptim"));
[INFO] [stdout]     |                   ^^^^^^^^^^^^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find function `read_bytes` in this scope
[INFO] [stdout]    --> tests/cli_convert.rs:209:21
[INFO] [stdout]     |
[INFO] [stdout] 209 |         let bytes = read_bytes(&out);
[INFO] [stdout]     |                     ^^^^^^^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find function `assert_is_jpeg` in this scope
[INFO] [stdout]    --> tests/cli_convert.rs:210:9
[INFO] [stdout]     |
[INFO] [stdout] 210 |         assert_is_jpeg(&bytes);
[INFO] [stdout]     |         ^^^^^^^^^^^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find function `jpeg_contains_exif` in this scope
[INFO] [stdout]    --> tests/cli_convert.rs:213:14
[INFO] [stdout]     |
[INFO] [stdout] 213 |             !jpeg_contains_exif(&bytes),
[INFO] [stdout]     |              ^^^^^^^^^^^^^^^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find function `jpeg_extract_xmp` in this scope
[INFO] [stdout]    --> tests/cli_convert.rs:217:13
[INFO] [stdout]     |
[INFO] [stdout] 217 |             jpeg_extract_xmp(&bytes).is_none(),
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find function `tmp_out_dir` in this scope
[INFO] [stdout]    --> tests/cli_convert.rs:224:23
[INFO] [stdout]     |
[INFO] [stdout] 224 |         let out_dir = tmp_out_dir();
[INFO] [stdout]     |                       ^^^^^^^^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find function `asset_path` in this scope
[INFO] [stdout]    --> tests/cli_convert.rs:225:21
[INFO] [stdout]     |
[INFO] [stdout] 225 |         let input = asset_path("tests/assets/png/image_nometa.png");
[INFO] [stdout]     |                     ^^^^^^^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find function `run_ok` in this scope
[INFO] [stdout]    --> tests/cli_convert.rs:228:9
[INFO] [stdout]     |
[INFO] [stdout] 228 |         run_ok(&[
[INFO] [stdout]     |         ^^^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find function `expect_jpeg_out` in this scope
[INFO] [stdout]    --> tests/cli_convert.rs:249:19
[INFO] [stdout]     |
[INFO] [stdout] 249 |         let out = expect_jpeg_out(out_dir.path(), &format!("{stem}_imgoptim"));
[INFO] [stdout]     |                   ^^^^^^^^^^^^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find function `read_bytes` in this scope
[INFO] [stdout]    --> tests/cli_convert.rs:251:21
[INFO] [stdout]     |
[INFO] [stdout] 251 |         let bytes = read_bytes(&out);
[INFO] [stdout]     |                     ^^^^^^^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find function `assert_is_jpeg` in this scope
[INFO] [stdout]    --> tests/cli_convert.rs:252:9
[INFO] [stdout]     |
[INFO] [stdout] 252 |         assert_is_jpeg(&bytes);
[INFO] [stdout]     |         ^^^^^^^^^^^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find function `jpeg_extract_xmp` in this scope
[INFO] [stdout]    --> tests/cli_convert.rs:254:19
[INFO] [stdout]     |
[INFO] [stdout] 254 |         let xmp = jpeg_extract_xmp(&bytes).expect("XMP not found in JPEG");
[INFO] [stdout]     |                   ^^^^^^^^^^^^^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find function `asset_path` in this scope
[INFO] [stdout]  --> tests/cli_filters_naming.rs:8:17
[INFO] [stdout]   |
[INFO] [stdout] 8 |     let input = asset_path("tests/assets/png/image_nometa.png");
[INFO] [stdout]   |                 ^^^^^^^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find function `run_ok` in this scope
[INFO] [stdout]   --> tests/cli_filters_naming.rs:11:5
[INFO] [stdout]    |
[INFO] [stdout] 11 |     run_ok(&[
[INFO] [stdout]    |     ^^^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find function `tmp_out_dir` in this scope
[INFO] [stdout]   --> tests/cli_filters_naming.rs:33:19
[INFO] [stdout]    |
[INFO] [stdout] 33 |     let out_dir = tmp_out_dir();
[INFO] [stdout]    |                   ^^^^^^^^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] Some errors have detailed explanations: E0425, E0583.
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find function `asset_path` in this scope
[INFO] [stdout]   --> tests/cli_filters_naming.rs:34:17
[INFO] [stdout]    |
[INFO] [stdout] 34 |     let input = asset_path("tests/assets/png/image_nometa.png");
[INFO] [stdout]    |                 ^^^^^^^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] For more information about an error, try `rustc --explain E0425`.
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find function `run_ok` in this scope
[INFO] [stdout]   --> tests/cli_filters_naming.rs:37:5
[INFO] [stdout]    |
[INFO] [stdout] 37 |     run_ok(&[
[INFO] [stdout]    |     ^^^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find function `tmp_out_dir` in this scope
[INFO] [stdout]   --> tests/cli_filters_naming.rs:59:19
[INFO] [stdout]    |
[INFO] [stdout] 59 |     let out_dir = tmp_out_dir();
[INFO] [stdout]    |                   ^^^^^^^^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find function `asset_path` in this scope
[INFO] [stdout]   --> tests/cli_filters_naming.rs:60:17
[INFO] [stdout]    |
[INFO] [stdout] 60 |     let input = asset_path("tests/assets/jpeg/photo_meta.jpg");
[INFO] [stdout]    |                 ^^^^^^^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find function `run_ok` in this scope
[INFO] [stdout]   --> tests/cli_filters_naming.rs:63:5
[INFO] [stdout]    |
[INFO] [stdout] 63 |     run_ok(&[
[INFO] [stdout]    |     ^^^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find function `tmp_out_dir` in this scope
[INFO] [stdout]   --> tests/cli_filters_naming.rs:85:19
[INFO] [stdout]    |
[INFO] [stdout] 85 |     let out_dir = tmp_out_dir();
[INFO] [stdout]    |                   ^^^^^^^^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find function `asset_path` in this scope
[INFO] [stdout]   --> tests/cli_filters_naming.rs:86:17
[INFO] [stdout]    |
[INFO] [stdout] 86 |     let input = asset_path("tests/assets/png/image_nometa.png");
[INFO] [stdout]    |                 ^^^^^^^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find function `run_ok` in this scope
[INFO] [stdout]   --> tests/cli_filters_naming.rs:89:5
[INFO] [stdout]    |
[INFO] [stdout] 89 |     run_ok(&[
[INFO] [stdout]    |     ^^^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find function `expect_file_exists` in this scope
[INFO] [stdout]   --> tests/cli_filters_naming.rs:99:5
[INFO] [stdout]    |
[INFO] [stdout] 99 |     expect_file_exists(&out);
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find function `read_bytes` in this scope
[INFO] [stdout]    --> tests/cli_filters_naming.rs:100:17
[INFO] [stdout]     |
[INFO] [stdout] 100 |     let bytes = read_bytes(&out);
[INFO] [stdout]     |                 ^^^^^^^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find function `assert_is_png` in this scope
[INFO] [stdout]    --> tests/cli_filters_naming.rs:101:5
[INFO] [stdout]     |
[INFO] [stdout] 101 |     assert_is_png(&bytes);
[INFO] [stdout]     |     ^^^^^^^^^^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find function `tmp_out_dir` in this scope
[INFO] [stdout]    --> tests/cli_filters_naming.rs:106:19
[INFO] [stdout]     |
[INFO] [stdout] 106 |     let out_dir = tmp_out_dir();
[INFO] [stdout]     |                   ^^^^^^^^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find function `asset_path` in this scope
[INFO] [stdout]    --> tests/cli_filters_naming.rs:107:17
[INFO] [stdout]     |
[INFO] [stdout] 107 |     let input = asset_path("tests/assets/jpeg/photo_nometa.jpg");
[INFO] [stdout]     |                 ^^^^^^^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find function `run_ok` in this scope
[INFO] [stdout]    --> tests/cli_filters_naming.rs:110:5
[INFO] [stdout]     |
[INFO] [stdout] 110 |     run_ok(&[
[INFO] [stdout]     |     ^^^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find function `expect_file_exists` in this scope
[INFO] [stdout]    --> tests/cli_filters_naming.rs:121:5
[INFO] [stdout]     |
[INFO] [stdout] 121 |     expect_file_exists(&out);
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find function `read_bytes` in this scope
[INFO] [stdout]    --> tests/cli_filters_naming.rs:122:17
[INFO] [stdout]     |
[INFO] [stdout] 122 |     let bytes = read_bytes(&out);
[INFO] [stdout]     |                 ^^^^^^^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find function `assert_is_png` in this scope
[INFO] [stdout]    --> tests/cli_filters_naming.rs:123:5
[INFO] [stdout]     |
[INFO] [stdout] 123 |     assert_is_png(&bytes);
[INFO] [stdout]     |     ^^^^^^^^^^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find function `tmp_out_dir` in this scope
[INFO] [stdout]    --> tests/cli_filters_naming.rs:128:19
[INFO] [stdout]     |
[INFO] [stdout] 128 |     let out_dir = tmp_out_dir();
[INFO] [stdout]     |                   ^^^^^^^^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find function `asset_path` in this scope
[INFO] [stdout]    --> tests/cli_filters_naming.rs:129:17
[INFO] [stdout]     |
[INFO] [stdout] 129 |     let input = asset_path("tests/assets/png/image_nometa.png");
[INFO] [stdout]     |                 ^^^^^^^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find function `run_ok` in this scope
[INFO] [stdout]    --> tests/cli_filters_naming.rs:132:5
[INFO] [stdout]     |
[INFO] [stdout] 132 |     run_ok(&[
[INFO] [stdout]     |     ^^^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find function `expect_file_exists` in this scope
[INFO] [stdout]    --> tests/cli_filters_naming.rs:145:5
[INFO] [stdout]     |
[INFO] [stdout] 145 |     expect_file_exists(&out);
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find function `read_bytes` in this scope
[INFO] [stdout]    --> tests/cli_filters_naming.rs:146:17
[INFO] [stdout]     |
[INFO] [stdout] 146 |     let bytes = read_bytes(&out);
[INFO] [stdout]     |                 ^^^^^^^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find function `assert_is_jpeg` in this scope
[INFO] [stdout]    --> tests/cli_filters_naming.rs:147:5
[INFO] [stdout]     |
[INFO] [stdout] 147 |     assert_is_jpeg(&bytes);
[INFO] [stdout]     |     ^^^^^^^^^^^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find function `tmp_out_dir` in this scope
[INFO] [stdout]    --> tests/cli_filters_naming.rs:152:19
[INFO] [stdout]     |
[INFO] [stdout] 152 |     let out_dir = tmp_out_dir();
[INFO] [stdout]     |                   ^^^^^^^^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find function `asset_path` in this scope
[INFO] [stdout]    --> tests/cli_filters_naming.rs:153:17
[INFO] [stdout]     |
[INFO] [stdout] 153 |     let input = asset_path("tests/assets/png/image_nometa.png");
[INFO] [stdout]     |                 ^^^^^^^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find function `run_ok` in this scope
[INFO] [stdout]    --> tests/cli_filters_naming.rs:156:5
[INFO] [stdout]     |
[INFO] [stdout] 156 |     run_ok(&[
[INFO] [stdout]     |     ^^^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find function `tmp_out_dir` in this scope
[INFO] [stdout]    --> tests/cli_filters_naming.rs:176:19
[INFO] [stdout]     |
[INFO] [stdout] 176 |     let out_dir = tmp_out_dir();
[INFO] [stdout]     |                   ^^^^^^^^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find function `asset_path` in this scope
[INFO] [stdout]    --> tests/cli_filters_naming.rs:177:17
[INFO] [stdout]     |
[INFO] [stdout] 177 |     let input = asset_path("tests/assets/png/image_nometa.png");
[INFO] [stdout]     |                 ^^^^^^^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find function `run_ok` in this scope
[INFO] [stdout]    --> tests/cli_filters_naming.rs:180:5
[INFO] [stdout]     |
[INFO] [stdout] 180 |     run_ok(&[
[INFO] [stdout]     |     ^^^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find function `tmp_out_dir` in this scope
[INFO] [stdout]    --> tests/cli_filters_naming.rs:200:19
[INFO] [stdout]     |
[INFO] [stdout] 200 |     let out_dir = tmp_out_dir();
[INFO] [stdout]     |                   ^^^^^^^^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find function `asset_path` in this scope
[INFO] [stdout]    --> tests/cli_filters_naming.rs:201:17
[INFO] [stdout]     |
[INFO] [stdout] 201 |     let input = asset_path("tests/assets/jpeg/photo_nometa.jpg");
[INFO] [stdout]     |                 ^^^^^^^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find function `run_ok` in this scope
[INFO] [stdout]    --> tests/cli_filters_naming.rs:204:5
[INFO] [stdout]     |
[INFO] [stdout] 204 |     run_ok(&[
[INFO] [stdout]     |     ^^^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `imgoptim` (test "cli_convert") due to 39 previous errors; 2 warnings emitted
[INFO] [stdout] error[E0425]: cannot find function `expect_file_exists` in this scope
[INFO] [stdout]    --> tests/cli_filters_naming.rs:215:5
[INFO] [stdout]     |
[INFO] [stdout] 215 |     expect_file_exists(&out);
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find function `read_bytes` in this scope
[INFO] [stdout]    --> tests/cli_filters_naming.rs:216:17
[INFO] [stdout]     |
[INFO] [stdout] 216 |     let bytes = read_bytes(&out);
[INFO] [stdout]     |                 ^^^^^^^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find function `assert_is_png` in this scope
[INFO] [stdout]    --> tests/cli_filters_naming.rs:217:5
[INFO] [stdout]     |
[INFO] [stdout] 217 |     assert_is_png(&bytes);
[INFO] [stdout]     |     ^^^^^^^^^^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] Some errors have detailed explanations: E0425, E0583.
[INFO] [stdout] 
[INFO] [stdout] For more information about an error, try `rustc --explain E0425`.
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `imgoptim` (test "cli_filters_naming") due to 40 previous errors; 1 warning emitted
[INFO] [stdout] warning: unused import: `common::*`
[INFO] [stdout]  --> tests/cli_output.rs:3:5
[INFO] [stdout]   |
[INFO] [stdout] 3 | use common::*;
[INFO] [stdout]   |     ^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find function `tmp_out_dir` in this scope
[INFO] [stdout]  --> tests/cli_output.rs:9:21
[INFO] [stdout]   |
[INFO] [stdout] 9 |     let input_dir = tmp_out_dir();
[INFO] [stdout]   |                     ^^^^^^^^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find function `tmp_out_dir` in this scope
[INFO] [stdout]   --> tests/cli_output.rs:10:19
[INFO] [stdout]    |
[INFO] [stdout] 10 |     let out_dir = tmp_out_dir();
[INFO] [stdout]    |                   ^^^^^^^^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find function `asset_path` in this scope
[INFO] [stdout]   --> tests/cli_output.rs:11:15
[INFO] [stdout]    |
[INFO] [stdout] 11 |     let src = asset_path("tests/assets/jpeg/photo_nometa.jpg");
[INFO] [stdout]    |               ^^^^^^^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find function `imgoptim_cmd` in this scope
[INFO] [stdout]   --> tests/cli_output.rs:21:19
[INFO] [stdout]    |
[INFO] [stdout] 21 |     let mut cmd = imgoptim_cmd();
[INFO] [stdout]    |                   ^^^^^^^^^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find function `expect_jpeg_out` in this scope
[INFO] [stdout]   --> tests/cli_output.rs:34:5
[INFO] [stdout]    |
[INFO] [stdout] 34 |     expect_jpeg_out(out_dir.path(), "a");
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find function `expect_jpeg_out` in this scope
[INFO] [stdout]   --> tests/cli_output.rs:35:5
[INFO] [stdout]    |
[INFO] [stdout] 35 |     expect_jpeg_out(out_dir.path(), "b");
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find function `tmp_out_dir` in this scope
[INFO] [stdout]   --> tests/cli_output.rs:40:19
[INFO] [stdout]    |
[INFO] [stdout] 40 |     let out_dir = tmp_out_dir();
[INFO] [stdout]    |                   ^^^^^^^^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find function `asset_path` in this scope
[INFO] [stdout]   --> tests/cli_output.rs:41:17
[INFO] [stdout]    |
[INFO] [stdout] 41 |     let input = asset_path("tests/assets/jpeg/photo_nometa.jpg");
[INFO] [stdout]    |                 ^^^^^^^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find function `run_ok` in this scope
[INFO] [stdout]   --> tests/cli_output.rs:44:5
[INFO] [stdout]    |
[INFO] [stdout] 44 |     run_ok(&[
[INFO] [stdout]    |     ^^^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find function `expect_file_exists` in this scope
[INFO] [stdout]   --> tests/cli_output.rs:54:5
[INFO] [stdout]    |
[INFO] [stdout] 54 |     expect_file_exists(&out);
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find function `read_bytes` in this scope
[INFO] [stdout]   --> tests/cli_output.rs:55:17
[INFO] [stdout]    |
[INFO] [stdout] 55 |     let bytes = read_bytes(&out);
[INFO] [stdout]    |                 ^^^^^^^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find function `assert_is_png` in this scope
[INFO] [stdout]   --> tests/cli_output.rs:56:5
[INFO] [stdout]    |
[INFO] [stdout] 56 |     assert_is_png(&bytes);
[INFO] [stdout]    |     ^^^^^^^^^^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find function `tmp_out_dir` in this scope
[INFO] [stdout]   --> tests/cli_output.rs:61:19
[INFO] [stdout]    |
[INFO] [stdout] 61 |     let out_dir = tmp_out_dir();
[INFO] [stdout]    |                   ^^^^^^^^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find function `asset_path` in this scope
[INFO] [stdout]   --> tests/cli_output.rs:62:17
[INFO] [stdout]    |
[INFO] [stdout] 62 |     let input = asset_path("tests/assets/png/image_nometa.png");
[INFO] [stdout]    |                 ^^^^^^^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find function `imgoptim_cmd` in this scope
[INFO] [stdout]   --> tests/cli_output.rs:65:19
[INFO] [stdout]    |
[INFO] [stdout] 65 |     let mut cmd = imgoptim_cmd();
[INFO] [stdout]    |                   ^^^^^^^^^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find function `expect_file_exists` in this scope
[INFO] [stdout]   --> tests/cli_output.rs:87:5
[INFO] [stdout]    |
[INFO] [stdout] 87 |     expect_file_exists(&out);
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find function `tmp_out_dir` in this scope
[INFO] [stdout]   --> tests/cli_output.rs:97:19
[INFO] [stdout]    |
[INFO] [stdout] 97 |     let out_dir = tmp_out_dir();
[INFO] [stdout]    |                   ^^^^^^^^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find function `asset_path` in this scope
[INFO] [stdout]   --> tests/cli_output.rs:98:17
[INFO] [stdout]    |
[INFO] [stdout] 98 |     let input = asset_path("tests/assets/jpeg/photo_nometa.jpg");
[INFO] [stdout]    |                 ^^^^^^^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find function `imgoptim_cmd` in this scope
[INFO] [stdout]    --> tests/cli_output.rs:101:19
[INFO] [stdout]     |
[INFO] [stdout] 101 |     let mut cmd = imgoptim_cmd();
[INFO] [stdout]     |                   ^^^^^^^^^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find function `expect_jpeg_out` in this scope
[INFO] [stdout]    --> tests/cli_output.rs:113:5
[INFO] [stdout]     |
[INFO] [stdout] 113 |     expect_jpeg_out(out_dir.path(), "photo_nometa");
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find function `tmp_out_dir` in this scope
[INFO] [stdout]    --> tests/cli_output.rs:118:19
[INFO] [stdout]     |
[INFO] [stdout] 118 |     let out_dir = tmp_out_dir();
[INFO] [stdout]     |                   ^^^^^^^^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find function `asset_path` in this scope
[INFO] [stdout]    --> tests/cli_output.rs:119:17
[INFO] [stdout]     |
[INFO] [stdout] 119 |     let input = asset_path("tests/assets/jpeg/photo_meta.jpg");
[INFO] [stdout]     |                 ^^^^^^^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find function `read_bytes` in this scope
[INFO] [stdout]    --> tests/cli_output.rs:122:23
[INFO] [stdout]     |
[INFO] [stdout] 122 |     let input_bytes = read_bytes(&input);
[INFO] [stdout]     |                       ^^^^^^^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find function `jpeg_contains_exif` in this scope
[INFO] [stdout]    --> tests/cli_output.rs:123:20
[INFO] [stdout]     |
[INFO] [stdout] 123 |     let has_exif = jpeg_contains_exif(&input_bytes);
[INFO] [stdout]     |                    ^^^^^^^^^^^^^^^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find function `jpeg_extract_xmp` in this scope
[INFO] [stdout]    --> tests/cli_output.rs:124:19
[INFO] [stdout]     |
[INFO] [stdout] 124 |     let has_xmp = jpeg_extract_xmp(&input_bytes).is_some();
[INFO] [stdout]     |                   ^^^^^^^^^^^^^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find function `run_ok` in this scope
[INFO] [stdout]    --> tests/cli_output.rs:127:5
[INFO] [stdout]     |
[INFO] [stdout] 127 |     run_ok(&[
[INFO] [stdout]     |     ^^^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find function `expect_jpeg_out` in this scope
[INFO] [stdout]    --> tests/cli_output.rs:135:15
[INFO] [stdout]     |
[INFO] [stdout] 135 |     let out = expect_jpeg_out(out_dir.path(), "photo_meta");
[INFO] [stdout]     |               ^^^^^^^^^^^^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find function `read_bytes` in this scope
[INFO] [stdout]    --> tests/cli_output.rs:136:21
[INFO] [stdout]     |
[INFO] [stdout] 136 |     let out_bytes = read_bytes(&out);
[INFO] [stdout]     |                     ^^^^^^^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find function `jpeg_contains_exif` in this scope
[INFO] [stdout]    --> tests/cli_output.rs:138:17
[INFO] [stdout]     |
[INFO] [stdout] 138 |         assert!(jpeg_contains_exif(&out_bytes), "EXIF should be preserved");
[INFO] [stdout]     |                 ^^^^^^^^^^^^^^^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find function `jpeg_extract_xmp` in this scope
[INFO] [stdout]    --> tests/cli_output.rs:142:13
[INFO] [stdout]     |
[INFO] [stdout] 142 |             jpeg_extract_xmp(&out_bytes).is_some(),
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find function `tmp_out_dir` in this scope
[INFO] [stdout]    --> tests/cli_output.rs:150:19
[INFO] [stdout]     |
[INFO] [stdout] 150 |     let out_dir = tmp_out_dir();
[INFO] [stdout]     |                   ^^^^^^^^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find function `asset_path` in this scope
[INFO] [stdout]    --> tests/cli_output.rs:151:17
[INFO] [stdout]     |
[INFO] [stdout] 151 |     let input = asset_path("tests/assets/jpeg/photo_meta.jpg");
[INFO] [stdout]     |                 ^^^^^^^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find function `imgoptim_cmd` in this scope
[INFO] [stdout]    --> tests/cli_output.rs:157:19
[INFO] [stdout]     |
[INFO] [stdout] 157 |     let mut cmd = imgoptim_cmd();
[INFO] [stdout]     |                   ^^^^^^^^^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find function `expect_jpeg_out` in this scope
[INFO] [stdout]    --> tests/cli_output.rs:171:15
[INFO] [stdout]     |
[INFO] [stdout] 171 |     let out = expect_jpeg_out(out_dir.path(), "photo_meta");
[INFO] [stdout]     |               ^^^^^^^^^^^^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find function `tmp_out_dir` in this scope
[INFO] [stdout]    --> tests/cli_output.rs:187:21
[INFO] [stdout]     |
[INFO] [stdout] 187 |     let input_dir = tmp_out_dir();
[INFO] [stdout]     |                     ^^^^^^^^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find function `tmp_out_dir` in this scope
[INFO] [stdout]    --> tests/cli_output.rs:188:19
[INFO] [stdout]     |
[INFO] [stdout] 188 |     let out_dir = tmp_out_dir();
[INFO] [stdout]     |                   ^^^^^^^^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find function `asset_path` in this scope
[INFO] [stdout]    --> tests/cli_output.rs:189:15
[INFO] [stdout]     |
[INFO] [stdout] 189 |     let src = asset_path("tests/assets/jpeg/photo_nometa.jpg");
[INFO] [stdout]     |               ^^^^^^^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find function `imgoptim_cmd` in this scope
[INFO] [stdout]    --> tests/cli_output.rs:196:19
[INFO] [stdout]     |
[INFO] [stdout] 196 |     let mut cmd = imgoptim_cmd();
[INFO] [stdout]     |                   ^^^^^^^^^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find function `tmp_out_dir` in this scope
[INFO] [stdout]    --> tests/cli_output.rs:219:19
[INFO] [stdout]     |
[INFO] [stdout] 219 |     let out_dir = tmp_out_dir();
[INFO] [stdout]     |                   ^^^^^^^^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find function `asset_path` in this scope
[INFO] [stdout]    --> tests/cli_output.rs:220:17
[INFO] [stdout]     |
[INFO] [stdout] 220 |     let input = asset_path("tests/assets/png/image_nometa.png");
[INFO] [stdout]     |                 ^^^^^^^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find function `run_ok` in this scope
[INFO] [stdout]    --> tests/cli_output.rs:223:5
[INFO] [stdout]     |
[INFO] [stdout] 223 |     run_ok(&[
[INFO] [stdout]     |     ^^^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find function `run_ok` in this scope
[INFO] [stdout]    --> tests/cli_output.rs:238:5
[INFO] [stdout]     |
[INFO] [stdout] 238 |     run_ok(&[
[INFO] [stdout]     |     ^^^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find function `expect_jpeg_out` in this scope
[INFO] [stdout]    --> tests/cli_output.rs:253:19
[INFO] [stdout]     |
[INFO] [stdout] 253 |     let out_444 = expect_jpeg_out(out_dir.path(), "image_nometa_444");
[INFO] [stdout]     |                   ^^^^^^^^^^^^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find function `expect_jpeg_out` in this scope
[INFO] [stdout]    --> tests/cli_output.rs:254:19
[INFO] [stdout]     |
[INFO] [stdout] 254 |     let out_420 = expect_jpeg_out(out_dir.path(), "image_nometa_420");
[INFO] [stdout]     |                   ^^^^^^^^^^^^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find function `read_bytes` in this scope
[INFO] [stdout]    --> tests/cli_output.rs:256:21
[INFO] [stdout]     |
[INFO] [stdout] 256 |     let bytes_444 = read_bytes(&out_444);
[INFO] [stdout]     |                     ^^^^^^^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find function `read_bytes` in this scope
[INFO] [stdout]    --> tests/cli_output.rs:257:21
[INFO] [stdout]     |
[INFO] [stdout] 257 |     let bytes_420 = read_bytes(&out_420);
[INFO] [stdout]     |                     ^^^^^^^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find function `jpeg_luma_sampling` in this scope
[INFO] [stdout]    --> tests/cli_output.rs:258:16
[INFO] [stdout]     |
[INFO] [stdout] 258 |     assert_eq!(jpeg_luma_sampling(&bytes_444), Some((1, 1)));
[INFO] [stdout]     |                ^^^^^^^^^^^^^^^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find function `jpeg_luma_sampling` in this scope
[INFO] [stdout]    --> tests/cli_output.rs:259:16
[INFO] [stdout]     |
[INFO] [stdout] 259 |     assert_eq!(jpeg_luma_sampling(&bytes_420), Some((2, 2)));
[INFO] [stdout]     |                ^^^^^^^^^^^^^^^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find function `tmp_out_dir` in this scope
[INFO] [stdout]    --> tests/cli_output.rs:264:19
[INFO] [stdout]     |
[INFO] [stdout] 264 |     let out_dir = tmp_out_dir();
[INFO] [stdout]     |                   ^^^^^^^^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find function `asset_path` in this scope
[INFO] [stdout]    --> tests/cli_output.rs:265:17
[INFO] [stdout]     |
[INFO] [stdout] 265 |     let input = asset_path("tests/assets/jpeg/photo_nometa.jpg");
[INFO] [stdout]     |                 ^^^^^^^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find function `imgoptim_cmd` in this scope
[INFO] [stdout]    --> tests/cli_output.rs:268:19
[INFO] [stdout]     |
[INFO] [stdout] 268 |     let mut cmd = imgoptim_cmd();
[INFO] [stdout]     |                   ^^^^^^^^^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find function `tmp_out_dir` in this scope
[INFO] [stdout]    --> tests/cli_output.rs:311:19
[INFO] [stdout]     |
[INFO] [stdout] 311 |     let out_dir = tmp_out_dir();
[INFO] [stdout]     |                   ^^^^^^^^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find function `asset_path` in this scope
[INFO] [stdout]    --> tests/cli_output.rs:312:17
[INFO] [stdout]     |
[INFO] [stdout] 312 |     let input = asset_path("tests/assets/jpeg/photo_nometa.jpg");
[INFO] [stdout]     |                 ^^^^^^^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find function `imgoptim_cmd` in this scope
[INFO] [stdout]    --> tests/cli_output.rs:315:19
[INFO] [stdout]     |
[INFO] [stdout] 315 |     let mut cmd = imgoptim_cmd();
[INFO] [stdout]     |                   ^^^^^^^^^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] Some errors have detailed explanations: E0425, E0583.
[INFO] [stdout] 
[INFO] [stdout] For more information about an error, try `rustc --explain E0425`.
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `imgoptim` (test "cli_output") due to 55 previous errors; 1 warning emitted
[INFO] [stderr] warning: unused dependency `bytesize`
[INFO] [stderr]  --> Cargo.toml:3:1
[INFO] [stderr]   |
[INFO] [stderr] 3 | bytesize = "2.3.1"
[INFO] [stderr]   | ^^^^^^^^^^^^^^^^^^
[INFO] [stderr]   |
[INFO] [stderr]   = note: `cargo::unused_dependencies` is set to `warn` by default
[INFO] [stderr] help: consider removing the dependency on `bytesize`
[INFO] [stderr] warning: unused dependency `path-clean`
[INFO] [stderr]  --> Cargo.toml:7:1
[INFO] [stderr]   |
[INFO] [stderr] 7 | path-clean = "1.0"
[INFO] [stderr]   | ^^^^^^^^^^^^^^^^^^
[INFO] [stderr]   |
[INFO] [stderr] help: consider removing the dependency on `path-clean`
[INFO] [stderr] warning: unused dependency `thiserror`
[INFO] [stderr]  --> Cargo.toml:9:1
[INFO] [stderr]   |
[INFO] [stderr] 9 | thiserror = "2.0.18"
[INFO] [stderr]   | ^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]   |
[INFO] [stderr] help: consider removing the dependency on `thiserror`
[INFO] [stderr] warning: unused dependency `walkdir`
[INFO] [stderr]   --> Cargo.toml:11:1
[INFO] [stderr]    |
[INFO] [stderr] 11 | walkdir = "2"
[INFO] [stderr]    | ^^^^^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr] help: consider removing the dependency on `walkdir`
[INFO] [stderr] warning: `imgoptim` (manifest) generated 4 warnings
[INFO] running `Command { std: "docker" "inspect" "a5daaa2c95c9aac43d1647d937b0685bda6cb236fd85abe90c600f2ebb8e7144", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "a5daaa2c95c9aac43d1647d937b0685bda6cb236fd85abe90c600f2ebb8e7144", kill_on_drop: false }`
[INFO] [stdout] a5daaa2c95c9aac43d1647d937b0685bda6cb236fd85abe90c600f2ebb8e7144
