[INFO] cloning repository https://github.com/nikko-office/millsheet-ocr
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/nikko-office/millsheet-ocr" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fnikko-office%2Fmillsheet-ocr", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fnikko-office%2Fmillsheet-ocr'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] 8f5ea709c33e730928b4dd451150de56d9087187
[INFO] checking nikko-office/millsheet-ocr against try#7b3da9103634dffd4f4365cfd8642427c781d99f+rustflags=-Dinherent-method-on-receiver for 152214-denied
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fnikko-office%2Fmillsheet-ocr" "/workspace/builds/worker-6-tc2/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-6-tc2/source'...
[INFO] [stderr] done.
[INFO] started tweaking git repo https://github.com/nikko-office/millsheet-ocr
[INFO] finished tweaking git repo https://github.com/nikko-office/millsheet-ocr
[INFO] tweaked toml for git repo https://github.com/nikko-office/millsheet-ocr written to /workspace/builds/worker-6-tc2/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/nikko-office/millsheet-ocr on toolchain 7b3da9103634dffd4f4365cfd8642427c781d99f
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+7b3da9103634dffd4f4365cfd8642427c781d99f" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate git repo https://github.com/nikko-office/millsheet-ocr 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" "+7b3da9103634dffd4f4365cfd8642427c781d99f" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-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:61361fe0aef631f17e9d025a70c5a647956f8c671dd02950a60ad3f5cc5526d7" "/opt/rustwide/cargo-home/bin/cargo" "+7b3da9103634dffd4f4365cfd8642427c781d99f" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] a4628a5ce5756360bfd6bc98a20b0ec17beb769e8befe142f767b77af84ac21c
[INFO] running `Command { std: "docker" "start" "-a" "a4628a5ce5756360bfd6bc98a20b0ec17beb769e8befe142f767b77af84ac21c", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "a4628a5ce5756360bfd6bc98a20b0ec17beb769e8befe142f767b77af84ac21c", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "a4628a5ce5756360bfd6bc98a20b0ec17beb769e8befe142f767b77af84ac21c", kill_on_drop: false }`
[INFO] [stdout] a4628a5ce5756360bfd6bc98a20b0ec17beb769e8befe142f767b77af84ac21c
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-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 -Dinherent-method-on-receiver" "-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:61361fe0aef631f17e9d025a70c5a647956f8c671dd02950a60ad3f5cc5526d7" "/opt/rustwide/cargo-home/bin/cargo" "+7b3da9103634dffd4f4365cfd8642427c781d99f" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 59160a3049b568ccc8cd1885535edab9741a7306bf6bbfe8da79f3d13be5ee67
[INFO] running `Command { std: "docker" "start" "-a" "59160a3049b568ccc8cd1885535edab9741a7306bf6bbfe8da79f3d13be5ee67", kill_on_drop: false }`
[INFO] [stderr]    Compiling proc-macro2 v1.0.106
[INFO] [stderr]    Compiling quote v1.0.44
[INFO] [stderr]    Compiling libc v0.2.180
[INFO] [stderr]     Checking log v0.4.29
[INFO] [stderr]    Compiling serde_core v1.0.228
[INFO] [stderr]    Compiling rustix v1.1.3
[INFO] [stderr]    Compiling find-msvc-tools v0.1.8
[INFO] [stderr]    Compiling winnow v0.7.14
[INFO] [stderr]    Compiling hashbrown v0.16.1
[INFO] [stderr]    Compiling zerocopy v0.8.34
[INFO] [stderr]    Compiling memchr v2.7.6
[INFO] [stderr]    Compiling toml_datetime v0.7.5+spec-1.1.0
[INFO] [stderr]    Compiling libm v0.2.16
[INFO] [stderr]    Compiling num-traits v0.2.19
[INFO] [stderr]     Checking libloading v0.8.9
[INFO] [stderr]    Compiling wayland-sys v0.31.8
[INFO] [stderr]    Compiling cc v1.2.54
[INFO] [stderr]    Compiling wayland-client v0.31.12
[INFO] [stderr]     Checking dlib v0.5.2
[INFO] [stderr]     Checking event-listener-strategy v0.5.4
[INFO] [stderr]    Compiling typenum v1.19.0
[INFO] [stderr]     Checking arrayvec v0.7.6
[INFO] [stderr]    Compiling endi v1.1.1
[INFO] [stderr]     Checking async-channel v2.5.0
[INFO] [stderr]     Checking crossbeam-epoch v0.9.18
[INFO] [stderr]    Compiling rayon-core v1.13.0
[INFO] [stderr]     Checking itoa v1.0.17
[INFO] [stderr]     Checking async-lock v3.4.2
[INFO] [stderr]     Checking simd-adler32 v0.3.8
[INFO] [stderr]     Checking async-broadcast v0.7.2
[INFO] [stderr]     Checking blocking v1.6.2
[INFO] [stderr]     Checking crossbeam-deque v0.8.6
[INFO] [stderr]    Compiling indexmap v2.13.0
[INFO] [stderr]    Compiling quick-xml v0.38.4
[INFO] [stderr]    Compiling thiserror v2.0.18
[INFO] [stderr]     Checking miniz_oxide v0.8.9
[INFO] [stderr]    Compiling nix v0.29.0
[INFO] [stderr]     Checking async-fs v2.2.0
[INFO] [stderr]     Checking ab_glyph v0.2.32
[INFO] [stderr]     Checking regex-automata v0.4.13
[INFO] [stderr]     Checking rayon v1.11.0
[INFO] [stderr]    Compiling syn v2.0.114
[INFO] [stderr]     Checking flate2 v1.1.8
[INFO] [stderr]     Checking as-slice v0.2.1
[INFO] [stderr]     Checking weezl v0.1.12
[INFO] [stderr]    Compiling xml-rs v0.8.28
[INFO] [stderr]     Checking generic-array v0.14.7
[INFO] [stderr]    Compiling built v0.8.0
[INFO] [stderr]    Compiling av-scenechange v0.14.1
[INFO] [stderr]     Checking aligned v0.4.3
[INFO] [stderr]     Checking rustix v0.38.44
[INFO] [stderr]     Checking http v1.4.0
[INFO] [stderr]    Compiling wayland-scanner v0.31.8
[INFO] [stderr]    Compiling rav1e v0.8.1
[INFO] [stderr]    Compiling wayland-backend v0.3.12
[INFO] [stderr]    Compiling openssl-sys v0.9.111
[INFO] [stderr]     Checking core2 v0.4.0
[INFO] [stderr]     Checking nom v8.0.0
[INFO] [stderr]    Compiling gl_generator v0.14.0
[INFO] [stderr]     Checking crypto-common v0.1.7
[INFO] [stderr]     Checking num-integer v0.1.46
[INFO] [stderr]     Checking parking_lot_core v0.9.12
[INFO] [stderr]     Checking getrandom v0.3.4
[INFO] [stderr]     Checking errno v0.3.14
[INFO] [stderr]    Compiling toml_parser v1.0.6+spec-1.1.0
[INFO] [stderr]     Checking parking_lot v0.12.5
[INFO] [stderr]     Checking signal-hook-registry v1.4.8
[INFO] [stderr]     Checking getrandom v0.2.17
[INFO] [stderr]     Checking num-bigint v0.4.6
[INFO] [stderr]     Checking block-buffer v0.10.4
[INFO] [stderr]     Checking socket2 v0.6.2
[INFO] [stderr]     Checking mio v1.1.1
[INFO] [stderr]     Checking xdg-home v1.3.0
[INFO] [stderr]     Checking digest v0.10.7
[INFO] [stderr]     Checking rand_core v0.6.4
[INFO] [stderr]     Checking memmap2 v0.9.9
[INFO] [stderr]     Checking quick-error v2.0.1
[INFO] [stderr]     Checking sha1 v0.10.6
[INFO] [stderr]     Checking accesskit v0.16.3
[INFO] [stderr]     Checking y4m v0.8.0
[INFO] [stderr]    Compiling toml_edit v0.23.10+spec-1.0.0
[INFO] [stderr]     Checking unicode-ident v1.0.22
[INFO] [stderr]    Compiling pastey v0.1.1
[INFO] [stderr]     Checking bitstream-io v4.9.0
[INFO] [stderr]    Compiling simd_helpers v0.1.0
[INFO] [stderr]     Checking itertools v0.14.0
[INFO] [stderr]     Checking imgref v1.12.0
[INFO] [stderr]     Checking new_debug_unreachable v1.0.6
[INFO] [stderr]    Compiling noop_proc_macro v0.3.0
[INFO] [stderr]     Checking zune-core v0.4.12
[INFO] [stderr]     Checking loop9 v0.1.5
[INFO] [stderr]     Checking x11-dl v2.21.0
[INFO] [stderr]     Checking zune-jpeg v0.4.21
[INFO] [stderr]     Checking http-body v1.0.1
[INFO] [stderr]     Checking pxfm v0.1.27
[INFO] [stderr]     Checking zune-inflate v0.2.54
[INFO] [stderr]     Checking maybe-rayon v0.1.1
[INFO] [stderr]     Checking fdeflate v0.3.7
[INFO] [stderr]     Checking avif-serialize v0.8.6
[INFO] [stderr]    Compiling proc-macro-crate v3.4.0
[INFO] [stderr]     Checking lebe v0.5.3
[INFO] [stderr]     Checking rgb v0.8.52
[INFO] [stderr]     Checking zune-core v0.5.1
[INFO] [stderr]     Checking color_quant v1.1.0
[INFO] [stderr]     Checking bit_field v0.10.3
[INFO] [stderr]     Checking image-webp v0.2.4
[INFO] [stderr]     Checking num-rational v0.4.2
[INFO] [stderr]     Checking zune-jpeg v0.5.11
[INFO] [stderr]     Checking png v0.18.0
[INFO] [stderr]     Checking gif v0.14.1
[INFO] [stderr]     Checking polling v3.11.0
[INFO] [stderr]     Checking async-io v2.6.0
[INFO] [stderr]     Checking gethostname v1.1.0
[INFO] [stderr]     Checking immutable-chunkmap v2.1.2
[INFO] [stderr]     Checking x11rb v0.13.2
[INFO] [stderr]    Compiling siphasher v1.0.1
[INFO] [stderr]    Compiling unicase v2.9.0
[INFO] [stderr]    Compiling zmij v1.0.17
[INFO] [stderr]    Compiling openssl v0.10.75
[INFO] [stderr]     Checking epaint_default_fonts v0.29.1
[INFO] [stderr]     Checking accesskit_consumer v0.24.3
[INFO] [stderr]    Compiling phf_shared v0.11.3
[INFO] [stderr]     Checking regex v1.12.2
[INFO] [stderr]    Compiling glutin_glx_sys v0.6.1
[INFO] [stderr]    Compiling glutin_egl_sys v0.7.1
[INFO] [stderr]     Checking xkbcommon-dl v0.4.2
[INFO] [stderr]    Compiling smithay-client-toolkit v0.20.0
[INFO] [stderr]    Compiling serde_json v1.0.149
[INFO] [stderr]    Compiling native-tls v0.2.14
[INFO] [stderr]    Compiling phf v0.11.3
[INFO] [stderr]     Checking wayland-csd-frame v0.3.0
[INFO] [stderr]     Checking async-signal v0.2.13
[INFO] [stderr]     Checking bstr v1.12.1
[INFO] [stderr]     Checking rand_core v0.9.5
[INFO] [stderr]     Checking num-complex v0.4.6
[INFO] [stderr]    Compiling glutin v0.32.3
[INFO] [stderr]    Compiling matrixmultiply v0.3.10
[INFO] [stderr]     Checking anstyle-query v1.1.5
[INFO] [stderr]     Checking deranged v0.5.5
[INFO] [stderr]    Compiling synstructure v0.13.2
[INFO] [stderr]    Compiling zvariant_utils v2.1.0
[INFO] [stderr]     Checking anstream v0.6.21
[INFO] [stderr]     Checking async-process v2.5.0
[INFO] [stderr]    Compiling mime_guess2 v2.3.1
[INFO] [stderr]     Checking http-body-util v0.1.3
[INFO] [stderr]     Checking uuid v1.20.0
[INFO] [stderr]     Checking approx v0.5.1
[INFO] [stderr]    Compiling glutin-winit v0.5.0
[INFO] [stderr]     Checking num-conv v0.2.0
[INFO] [stderr]     Checking time-core v0.1.8
[INFO] [stderr]     Checking nom v7.1.3
[INFO] [stderr]     Checking chrono v0.4.43
[INFO] [stderr]     Checking pom v3.4.0
[INFO] [stderr]     Checking async-net v2.0.0
[INFO] [stderr]     Checking num-iter v0.1.45
[INFO] [stderr]     Checking glow v0.14.2
[INFO] [stderr]     Checking wayland-protocols v0.32.10
[INFO] [stderr]     Checking wayland-cursor v0.31.12
[INFO] [stderr]     Checking ttf-parser v0.19.2
[INFO] [stderr]     Checking md5 v0.7.0
[INFO] [stderr]     Checking moxcms v0.7.11
[INFO] [stderr]     Checking time v0.3.46
[INFO] [stderr]    Compiling rfd v0.15.4
[INFO] [stderr]     Checking ryu v1.0.22
[INFO] [stderr]    Compiling litrs v1.0.0
[INFO] [stderr]     Checking iri-string v0.7.10
[INFO] [stderr]     Checking clap_lex v0.7.7
[INFO] [stderr]     Checking linked-hash-map v0.5.6
[INFO] [stderr]     Checking rustls-pki-types v1.14.0
[INFO] [stderr]     Checking num v0.4.3
[INFO] [stderr]     Checking env_filter v0.1.4
[INFO] [stderr]     Checking jiff v0.2.18
[INFO] [stderr]     Checking predicates-core v1.0.9
[INFO] [stderr]     Checking urlencoding v2.1.3
[INFO] [stderr]     Checking pollster v0.4.0
[INFO] [stderr]     Checking clap_builder v4.5.54
[INFO] [stderr]     Checking sha2 v0.10.9
[INFO] [stderr]     Checking num_cpus v1.17.0
[INFO] [stderr]     Checking float-cmp v0.10.0
[INFO] [stderr]     Checking difflib v0.4.0
[INFO] [stderr]    Compiling assert_cmd v2.1.2
[INFO] [stderr]     Checking normalize-line-endings v0.3.0
[INFO] [stderr]     Checking owned_ttf_parser v0.19.0
[INFO] [stderr]     Checking ttf-parser v0.21.1
[INFO] [stderr]     Checking deadpool-runtime v0.1.4
[INFO] [stderr]     Checking termtree v0.5.1
[INFO] [stderr]     Checking wait-timeout v0.2.1
[INFO] [stderr]     Checking tempfile v3.24.0
[INFO] [stderr]     Checking predicates v3.1.3
[INFO] [stderr]    Compiling document-features v0.2.12
[INFO] [stderr]     Checking predicates-tree v1.0.12
[INFO] [stderr]    Compiling serde_derive v1.0.228
[INFO] [stderr]    Compiling zerocopy-derive v0.8.34
[INFO] [stderr]    Compiling enumflags2_derive v0.7.12
[INFO] [stderr]    Compiling tracing-attributes v0.1.31
[INFO] [stderr]    Compiling zerofrom-derive v0.1.6
[INFO] [stderr]    Compiling bytemuck_derive v1.10.2
[INFO] [stderr]    Compiling yoke-derive v0.8.1
[INFO] [stderr]    Compiling futures-macro v0.3.31
[INFO] [stderr]    Compiling zerovec-derive v0.11.2
[INFO] [stderr]    Compiling displaydoc v0.2.5
[INFO] [stderr]    Compiling zvariant_derive v4.2.0
[INFO] [stderr]    Compiling async-trait v0.1.89
[INFO] [stderr]    Compiling serde_repr v0.1.20
[INFO] [stderr]     Checking futures-util v0.3.31
[INFO] [stderr]    Compiling equator-macro v0.4.2
[INFO] [stderr]    Compiling thiserror-impl v2.0.18
[INFO] [stderr]     Checking zerofrom v0.1.6
[INFO] [stderr]    Compiling thiserror-impl v1.0.69
[INFO] [stderr]    Compiling tokio-macros v2.6.0
[INFO] [stderr]     Checking yoke v0.8.1
[INFO] [stderr]    Compiling zbus_macros v4.4.0
[INFO] [stderr]     Checking tracing v0.1.44
[INFO] [stderr]     Checking zerotrie v0.2.3
[INFO] [stderr]     Checking bytemuck v1.24.0
[INFO] [stderr]    Compiling profiling-procmacros v1.0.17
[INFO] [stderr]    Compiling arg_enum_proc_macro v0.3.4
[INFO] [stderr]    Compiling fax_derive v0.2.0
[INFO] [stderr]    Compiling num-derive v0.4.2
[INFO] [stderr]     Checking equator v0.4.2
[INFO] [stderr]     Checking tiny-skia-path v0.11.4
[INFO] [stderr]     Checking zerovec v0.11.5
[INFO] [stderr]     Checking profiling v1.0.17
[INFO] [stderr]     Checking tokio v1.49.0
[INFO] [stderr]     Checking aligned-vec v0.6.4
[INFO] [stderr]     Checking emath v0.29.1
[INFO] [stderr]     Checking tiny-skia v0.11.4
[INFO] [stderr]     Checking tinystr v0.8.2
[INFO] [stderr]     Checking potential_utf v0.1.4
[INFO] [stderr]     Checking fax v0.2.6
[INFO] [stderr]     Checking icu_collections v2.1.1
[INFO] [stderr]     Checking v_frame v0.3.9
[INFO] [stderr]     Checking icu_locale_core v2.1.1
[INFO] [stderr]     Checking av1-grain v0.2.5
[INFO] [stderr]     Checking qoi v0.4.1
[INFO] [stderr]     Checking calloop v0.14.3
[INFO] [stderr]     Checking ecolor v0.29.1
[INFO] [stderr]    Compiling openssl-macros v0.1.1
[INFO] [stderr]     Checking safe_arch v0.7.4
[INFO] [stderr]     Checking thiserror v1.0.69
[INFO] [stderr]    Compiling enum-map-derive v0.17.0
[INFO] [stderr]     Checking lopdf v0.31.0
[INFO] [stderr]     Checking calloop v0.13.0
[INFO] [stderr]     Checking wide v0.7.33
[INFO] [stderr]    Compiling clap_derive v4.5.49
[INFO] [stderr]     Checking icu_provider v2.1.1
[INFO] [stderr]     Checking env_logger v0.11.8
[INFO] [stderr]     Checking calloop-wayland-source v0.4.1
[INFO] [stderr]     Checking icu_normalizer v2.1.1
[INFO] [stderr]     Checking icu_properties v2.1.2
[INFO] [stderr]     Checking calloop-wayland-source v0.3.0
[INFO] [stderr]     Checking serde v1.0.228
[INFO] [stderr]     Checking printpdf v0.7.0
[INFO] [stderr]     Checking futures-executor v0.3.31
[INFO] [stderr]     Checking wayland-protocols-wlr v0.3.10
[INFO] [stderr]     Checking wayland-protocols-plasma v0.3.10
[INFO] [stderr]     Checking wayland-protocols-misc v0.3.10
[INFO] [stderr]     Checking wayland-protocols-experimental v20250721.0.1
[INFO] [stderr]     Checking futures v0.3.31
[INFO] [stderr]     Checking enumflags2 v0.7.12
[INFO] [stderr]    Compiling quick-xml v0.30.0
[INFO] [stderr]     Checking zvariant v4.2.0
[INFO] [stderr]    Compiling zvariant_utils v3.3.0
[INFO] [stderr]     Checking simba v0.8.1
[INFO] [stderr]     Checking enum-map v2.7.3
[INFO] [stderr]     Checking idna_adapter v1.2.1
[INFO] [stderr]     Checking serde_urlencoded v0.7.1
[INFO] [stderr]     Checking idna v1.1.0
[INFO] [stderr]     Checking clap v4.5.54
[INFO] [stderr]     Checking assert-json-diff v2.0.2
[INFO] [stderr]    Compiling zvariant_derive v5.9.2
[INFO] [stderr]     Checking url v2.5.8
[INFO] [stderr]     Checking smithay-client-toolkit v0.19.2
[INFO] [stderr]     Checking ppv-lite86 v0.2.21
[INFO] [stderr]     Checking ahash v0.8.12
[INFO] [stderr]     Checking half v2.7.1
[INFO] [stderr]     Checking epaint v0.29.1
[INFO] [stderr]     Checking exr v1.74.0
[INFO] [stderr]     Checking tiff v0.10.3
[INFO] [stderr]     Checking rand_chacha v0.3.1
[INFO] [stderr]     Checking rand v0.8.5
[INFO] [stderr]    Compiling zbus_names v3.0.0
[INFO] [stderr]     Checking rand_chacha v0.9.0
[INFO] [stderr]     Checking sctk-adwaita v0.10.1
[INFO] [stderr]     Checking webbrowser v1.0.6
[INFO] [stderr]     Checking smithay-clipboard v0.7.3
[INFO] [stderr]     Checking egui v0.29.1
[INFO] [stderr]     Checking rand v0.9.2
[INFO] [stderr]    Compiling zvariant v5.9.2
[INFO] [stderr]    Compiling zbus_xml v4.0.0
[INFO] [stderr]     Checking rand_distr v0.4.3
[INFO] [stderr]     Checking winit v0.30.12
[INFO] [stderr]     Checking tokio-util v0.7.18
[INFO] [stderr]     Checking tower v0.5.3
[INFO] [stderr]     Checking deadpool v0.12.3
[INFO] [stderr]    Compiling zbus-lockstep v0.4.4
[INFO] [stderr]    Compiling zbus-lockstep-macros v0.4.4
[INFO] [stderr]     Checking tokio-native-tls v0.3.1
[INFO] [stderr]     Checking tower-http v0.6.8
[INFO] [stderr]     Checking h2 v0.4.13
[INFO] [stderr]     Checking zbus v4.4.0
[INFO] [stderr]     Checking ravif v0.12.0
[INFO] [stderr]     Checking nalgebra v0.32.6
[INFO] [stderr]     Checking image v0.25.9
[INFO] [stderr]     Checking zbus_names v4.3.1
[INFO] [stderr]     Checking egui_glow v0.29.1
[INFO] [stderr]    Compiling zbus_macros v5.13.2
[INFO] [stderr]     Checking arboard v3.6.1
[INFO] [stderr]     Checking egui_extras v0.29.1
[INFO] [stderr]     Checking zbus v5.13.2
[INFO] [stderr]     Checking hyper v1.8.1
[INFO] [stderr]     Checking atspi-common v0.6.0
[INFO] [stderr]     Checking hyper-util v0.1.19
[INFO] [stderr]     Checking hyper-tls v0.6.0
[INFO] [stderr]     Checking wiremock v0.6.5
[INFO] [stderr]     Checking reqwest v0.12.28
[INFO] [stderr]     Checking imageproc v0.25.0
[INFO] [stderr]     Checking atspi-proxies v0.6.0
[INFO] [stderr]     Checking accesskit_atspi_common v0.9.3
[INFO] [stderr]     Checking ashpd v0.11.1
[INFO] [stderr]     Checking atspi-connection v0.6.0
[INFO] [stderr]     Checking atspi v0.22.0
[INFO] [stderr]     Checking accesskit_unix v0.12.3
[INFO] [stderr]     Checking accesskit_winit v0.22.4
[INFO] [stderr]     Checking egui-winit v0.29.1
[INFO] [stderr]     Checking eframe v0.29.1
[INFO] [stderr]     Checking faxocr v0.2.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: field `page_index` is never read
[INFO] [stdout]   --> src/mill_sheet_extract.rs:56:5
[INFO] [stdout]    |
[INFO] [stdout] 53 | struct FlatLine {
[INFO] [stdout]    |        -------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 56 |     page_index: u32,
[INFO] [stdout]    |     ^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `page_index` is never read
[INFO] [stdout]   --> src/mill_sheet_extract.rs:56:5
[INFO] [stdout]    |
[INFO] [stdout] 53 | struct FlatLine {
[INFO] [stdout]    |        -------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 56 |     page_index: u32,
[INFO] [stdout]    |     ^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated associated function `assert_cmd::Command::cargo_bin`: incompatible with a custom cargo build-dir, see instead `cargo::cargo_bin_cmd!`
[INFO] [stdout]   --> tests/cli_smoke.rs:26:14
[INFO] [stdout]    |
[INFO] [stdout] 26 |     Command::cargo_bin("faxocr")
[INFO] [stdout]    |              ^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(deprecated)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated associated function `assert_cmd::Command::cargo_bin`: incompatible with a custom cargo build-dir, see instead `cargo::cargo_bin_cmd!`
[INFO] [stdout]   --> tests/cli_smoke.rs:38:14
[INFO] [stdout]    |
[INFO] [stdout] 38 |     Command::cargo_bin("faxocr")
[INFO] [stdout]    |              ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated associated function `assert_cmd::Command::cargo_bin`: incompatible with a custom cargo build-dir, see instead `cargo::cargo_bin_cmd!`
[INFO] [stdout]   --> tests/cli_smoke.rs:54:14
[INFO] [stdout]    |
[INFO] [stdout] 54 |     Command::cargo_bin("faxocr")
[INFO] [stdout]    |              ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated associated function `assert_cmd::Command::cargo_bin`: incompatible with a custom cargo build-dir, see instead `cargo::cargo_bin_cmd!`
[INFO] [stdout]   --> tests/cli_smoke.rs:90:27
[INFO] [stdout]    |
[INFO] [stdout] 90 |     let result = Command::cargo_bin("faxocr")
[INFO] [stdout]    |                           ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated associated function `assert_cmd::Command::cargo_bin`: incompatible with a custom cargo build-dir, see instead `cargo::cargo_bin_cmd!`
[INFO] [stdout]    --> tests/cli_smoke.rs:121:14
[INFO] [stdout]     |
[INFO] [stdout] 121 |     Command::cargo_bin("faxocr")
[INFO] [stdout]     |              ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated associated function `assert_cmd::Command::cargo_bin`: incompatible with a custom cargo build-dir, see instead `cargo::cargo_bin_cmd!`
[INFO] [stdout]    --> tests/cli_smoke.rs:132:14
[INFO] [stdout]     |
[INFO] [stdout] 132 |     Command::cargo_bin("faxocr")
[INFO] [stdout]     |              ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated associated function `assert_cmd::Command::cargo_bin`: incompatible with a custom cargo build-dir, see instead `cargo::cargo_bin_cmd!`
[INFO] [stdout]    --> tests/cli_smoke.rs:143:14
[INFO] [stdout]     |
[INFO] [stdout] 143 |     Command::cargo_bin("faxocr")
[INFO] [stdout]     |              ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `ElementKind`
[INFO] [stdout]   --> src/bbox_fill/apply.rs:14:30
[INFO] [stdout]    |
[INFO] [stdout] 14 |     BlockContent, ElementId, ElementKind, OcrDocument,
[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: `crate::ocr_schema::*`
[INFO] [stdout]    --> src/bbox_fill/collect.rs:200:9
[INFO] [stdout]     |
[INFO] [stdout] 200 |     use crate::ocr_schema::*;
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `apply::apply_response`
[INFO] [stdout]    --> src/bbox_fill/mod.rs:299:9
[INFO] [stdout]     |
[INFO] [stdout] 299 | pub use apply::apply_response;
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `build_requests` and `collect_missing_bboxes`
[INFO] [stdout]    --> src/bbox_fill/mod.rs:300:19
[INFO] [stdout]     |
[INFO] [stdout] 300 | pub use collect::{build_requests, collect_missing_bboxes};
[INFO] [stdout]     |                   ^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::ocr_schema::*`
[INFO] [stdout]    --> src/merge/mod.rs:601:9
[INFO] [stdout]     |
[INFO] [stdout] 601 |     use crate::ocr_schema::*;
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `ImageBuffer`
[INFO] [stdout]  --> src/pipeline/preprocess.rs:9:38
[INFO] [stdout]   |
[INFO] [stdout] 9 | use image::{DynamicImage, GrayImage, ImageBuffer, Luma, Rgb, RgbImage};
[INFO] [stdout]   |                                      ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `ElementKind`
[INFO] [stdout]   --> src/bbox_fill/apply.rs:14:30
[INFO] [stdout]    |
[INFO] [stdout] 14 |     BlockContent, ElementId, ElementKind, OcrDocument,
[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: `apply::apply_response`
[INFO] [stdout]    --> src/bbox_fill/mod.rs:299:9
[INFO] [stdout]     |
[INFO] [stdout] 299 | pub use apply::apply_response;
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `build_requests` and `collect_missing_bboxes`
[INFO] [stdout]    --> src/bbox_fill/mod.rs:300:19
[INFO] [stdout]     |
[INFO] [stdout] 300 | pub use collect::{build_requests, collect_missing_bboxes};
[INFO] [stdout]     |                   ^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `ImageBuffer`
[INFO] [stdout]  --> src/pipeline/preprocess.rs:9:38
[INFO] [stdout]   |
[INFO] [stdout] 9 | use image::{DynamicImage, GrayImage, ImageBuffer, Luma, Rgb, RgbImage};
[INFO] [stdout]   |                                      ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `export_to_legacy` is never used
[INFO] [stdout]    --> src/adapter.rs:128:8
[INFO] [stdout]     |
[INFO] [stdout] 128 | pub fn export_to_legacy(doc: &OcrDocument) -> Result<Value, AdapterError> {
[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 `export_to_markdown` is never used
[INFO] [stdout]    --> src/adapter.rs:178:8
[INFO] [stdout]     |
[INFO] [stdout] 178 | pub fn export_to_markdown(doc: &OcrDocument) -> String {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variants `MissingField`, `InvalidFormat`, and `ConversionFailed` are never constructed
[INFO] [stdout]    --> src/adapter.rs:226:5
[INFO] [stdout]     |
[INFO] [stdout] 225 | pub enum AdapterError {
[INFO] [stdout]     |          ------------ variants in this enum
[INFO] [stdout] 226 |     MissingField(String),
[INFO] [stdout]     |     ^^^^^^^^^^^^
[INFO] [stdout] 227 |     InvalidFormat(String),
[INFO] [stdout]     |     ^^^^^^^^^^^^^
[INFO] [stdout] 228 |     ConversionFailed(String),
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `AdapterError` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `engine_name` is never used
[INFO] [stdout]   --> src/bbox_fill/inference_client.rs:20:8
[INFO] [stdout]    |
[INFO] [stdout] 18 | pub trait BBoxFiller: Send + Sync {
[INFO] [stdout]    |           ---------- method in this trait
[INFO] [stdout] 19 |     /// エンジン名を返す
[INFO] [stdout] 20 |     fn engine_name(&self) -> &str;
[INFO] [stdout]    |        ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `from_env`, `with_model`, and `with_max_targets` are never used
[INFO] [stdout]    --> src/bbox_fill/inference_client.rs:175:12
[INFO] [stdout]     |
[INFO] [stdout] 173 | impl GeminiBBoxFiller {
[INFO] [stdout]     | --------------------- associated items in this implementation
[INFO] [stdout] 174 |     /// 環境変数 GEMINI_API_KEY から API キーを取得して作成
[INFO] [stdout] 175 |     pub fn from_env() -> Result<Self, FillClientError> {
[INFO] [stdout]     |            ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 193 |     pub fn with_model(mut self, model: &str) -> Self {
[INFO] [stdout]     |            ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 198 |     pub fn with_max_targets(mut self, max: usize) -> Self {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `rename_original_file` and `save_markdown` are never used
[INFO] [stdout]     --> src/gui.rs:1408:8
[INFO] [stdout]      |
[INFO] [stdout]  511 | impl FaxOcrApp {
[INFO] [stdout]      | -------------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 1408 |     fn rename_original_file(&mut self) -> Result<PathBuf, String> {
[INFO] [stdout]      |        ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 1528 |     fn save_markdown(&self) {
[INFO] [stdout]      |        ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `MergeReport` is never constructed
[INFO] [stdout]   --> src/merge/mod.rs:36:12
[INFO] [stdout]    |
[INFO] [stdout] 36 | pub struct MergeReport {
[INFO] [stdout]    |            ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `merge` is never used
[INFO] [stdout]   --> src/merge/mod.rs:52:12
[INFO] [stdout]    |
[INFO] [stdout] 51 | impl MergeReport {
[INFO] [stdout]    | ---------------- method in this implementation
[INFO] [stdout] 52 |     pub fn merge(&mut self, other: &MergeReport) {
[INFO] [stdout]    |            ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `MergeDecision` is never constructed
[INFO] [stdout]   --> src/merge/mod.rs:64:12
[INFO] [stdout]    |
[INFO] [stdout] 64 | pub struct MergeDecision {
[INFO] [stdout]    |            ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `DecisionKind` is never used
[INFO] [stdout]   --> src/merge/mod.rs:75:10
[INFO] [stdout]    |
[INFO] [stdout] 75 | pub enum DecisionKind {
[INFO] [stdout]    |          ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `MergeOptions` is never constructed
[INFO] [stdout]   --> src/merge/mod.rs:96:12
[INFO] [stdout]    |
[INFO] [stdout] 96 | pub struct MergeOptions {
[INFO] [stdout]    |            ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `merge_documents` is never used
[INFO] [stdout]    --> src/merge/mod.rs:126:8
[INFO] [stdout]     |
[INFO] [stdout] 126 | pub fn merge_documents(
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `merge_page` is never used
[INFO] [stdout]    --> src/merge/mod.rs:167:4
[INFO] [stdout]     |
[INFO] [stdout] 167 | fn merge_page(page_a: &mut OcrPage, page_b: &OcrPage, opts: &MergeOptions) -> MergeReport {
[INFO] [stdout]     |    ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `merge_block` is never used
[INFO] [stdout]    --> src/merge/mod.rs:210:4
[INFO] [stdout]     |
[INFO] [stdout] 210 | fn merge_block(block_a: &mut OcrBlock, block_b: &OcrBlock, opts: &MergeOptions) -> MergeReport {
[INFO] [stdout]     |    ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `merge_lines` is never used
[INFO] [stdout]    --> src/merge/mod.rs:254:4
[INFO] [stdout]     |
[INFO] [stdout] 254 | fn merge_lines(
[INFO] [stdout]     |    ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `merge_line` is never used
[INFO] [stdout]    --> src/merge/mod.rs:295:4
[INFO] [stdout]     |
[INFO] [stdout] 295 | fn merge_line(line_a: &mut OcrLine, line_b: &OcrLine, opts: &MergeOptions) -> MergeReport {
[INFO] [stdout]     |    ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `merge_tokens` is never used
[INFO] [stdout]    --> src/merge/mod.rs:326:4
[INFO] [stdout]     |
[INFO] [stdout] 326 | fn merge_tokens(
[INFO] [stdout]     |    ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `merge_token` is never used
[INFO] [stdout]    --> src/merge/mod.rs:372:4
[INFO] [stdout]     |
[INFO] [stdout] 372 | fn merge_token(token_a: &mut OcrToken, token_b: &OcrToken, opts: &MergeOptions) -> MergeReport {
[INFO] [stdout]     |    ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `merge_table` is never used
[INFO] [stdout]    --> src/merge/mod.rs:459:4
[INFO] [stdout]     |
[INFO] [stdout] 459 | fn merge_table(table_a: &mut TableBlock, table_b: &TableBlock, opts: &MergeOptions) -> MergeReport {
[INFO] [stdout]     |    ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `merge_cell` is never used
[INFO] [stdout]    --> src/merge/mod.rs:543:4
[INFO] [stdout]     |
[INFO] [stdout] 543 | fn merge_cell(cell_a: &mut TableCell, cell_b: &TableCell, opts: &MergeOptions) -> MergeReport {
[INFO] [stdout]     |    ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `mime_type` is never used
[INFO] [stdout]   --> src/page_image.rs:27:12
[INFO] [stdout]    |
[INFO] [stdout] 25 | impl ImageFormat {
[INFO] [stdout]    | ---------------- method in this implementation
[INFO] [stdout] 26 |     /// MIME type を返す
[INFO] [stdout] 27 |     pub fn mime_type(&self) -> &'static str {
[INFO] [stdout]    |            ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `width_px`, `height_px`, and `format` are never read
[INFO] [stdout]   --> src/page_image.rs:48:9
[INFO] [stdout]    |
[INFO] [stdout] 44 | pub struct PageImage {
[INFO] [stdout]    |            --------- fields in this struct
[INFO] [stdout] ...
[INFO] [stdout] 48 |     pub width_px: u32,
[INFO] [stdout]    |         ^^^^^^^^
[INFO] [stdout] 49 |     /// 画像高さ（ピクセル）
[INFO] [stdout] 50 |     pub height_px: u32,
[INFO] [stdout]    |         ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 54 |     pub format: ImageFormat,
[INFO] [stdout]    |         ^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `PageImage` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `to_data_uri` is never used
[INFO] [stdout]   --> src/page_image.rs:66:12
[INFO] [stdout]    |
[INFO] [stdout] 59 | impl PageImage {
[INFO] [stdout]    | -------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 66 |     pub fn to_data_uri(&self) -> String {
[INFO] [stdout]    |            ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variants `ExtractionFailed` and `Other` are never constructed
[INFO] [stdout]    --> src/page_image.rs:92:5
[INFO] [stdout]     |
[INFO] [stdout]  81 | pub enum PageImageError {
[INFO] [stdout]     |          -------------- variants in this enum
[INFO] [stdout] ...
[INFO] [stdout]  92 |     ExtractionFailed(String),
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 100 |     Other(String),
[INFO] [stdout]     |     ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `PageImageError` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `page_count` is never used
[INFO] [stdout]    --> src/page_image.rs:128:8
[INFO] [stdout]     |
[INFO] [stdout] 115 | pub trait PageImageProvider: Send + Sync {
[INFO] [stdout]     |           ----------------- method in this trait
[INFO] [stdout] ...
[INFO] [stdout] 128 |     fn page_count(&self) -> u32;
[INFO] [stdout]     |        ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `MockPageImageProvider` is never constructed
[INFO] [stdout]    --> src/page_image.rs:138:12
[INFO] [stdout]     |
[INFO] [stdout] 138 | pub struct MockPageImageProvider {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new`, `add_page`, and `add_dummy_page` are never used
[INFO] [stdout]    --> src/page_image.rs:144:12
[INFO] [stdout]     |
[INFO] [stdout] 142 | impl MockPageImageProvider {
[INFO] [stdout]     | -------------------------- associated items in this implementation
[INFO] [stdout] 143 |     /// 空のプロバイダーを作成
[INFO] [stdout] 144 |     pub fn new() -> Self {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 151 |     pub fn add_page(&mut self, page: PageImage) {
[INFO] [stdout]     |            ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 158 |     pub fn add_dummy_page(&mut self, page_index: u32, width: u32, height: u32, dpi: u32) {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `InMemoryPageImageProvider` is never constructed
[INFO] [stdout]    --> src/page_image.rs:211:12
[INFO] [stdout]     |
[INFO] [stdout] 211 | pub struct InMemoryPageImageProvider {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `new` is never used
[INFO] [stdout]    --> src/page_image.rs:216:12
[INFO] [stdout]     |
[INFO] [stdout] 215 | impl InMemoryPageImageProvider {
[INFO] [stdout]     | ------------------------------ associated function in this implementation
[INFO] [stdout] 216 |     pub fn new(images: Vec<PageImage>) -> Self {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `ocr_engine`, `use_gemini`, `app_id`, and `app_key` are never read
[INFO] [stdout]   --> src/pipeline/mod.rs:52:9
[INFO] [stdout]    |
[INFO] [stdout] 48 | pub struct RunOptions {
[INFO] [stdout]    |            ---------- fields in this struct
[INFO] [stdout] ...
[INFO] [stdout] 52 |     pub ocr_engine: OcrEngine,
[INFO] [stdout]    |         ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 55 |     pub use_gemini: bool,
[INFO] [stdout]    |         ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 59 |     pub app_id: Option<String>,
[INFO] [stdout]    |         ^^^^^^
[INFO] [stdout] 60 |     pub app_key: Option<String>,
[INFO] [stdout]    |         ^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `RunOptions` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `export_json` is never used
[INFO] [stdout]   --> src/pipeline/export.rs:38:8
[INFO] [stdout]    |
[INFO] [stdout] 38 | pub fn export_json(response: &Value, output_path: &Path) -> Result<()> {
[INFO] [stdout]    |        ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `export_text` is never used
[INFO] [stdout]   --> src/pipeline/export.rs:45:8
[INFO] [stdout]    |
[INFO] [stdout] 45 | pub fn export_text(response: &Value, output_path: &Path) -> Result<()> {
[INFO] [stdout]    |        ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `export_html` is never used
[INFO] [stdout]   --> src/pipeline/export.rs:57:8
[INFO] [stdout]    |
[INFO] [stdout] 57 | pub fn export_html(response: &Value, output_path: &Path) -> Result<()> {
[INFO] [stdout]    |        ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `html_escape` is never used
[INFO] [stdout]    --> src/pipeline/export.rs:103:4
[INFO] [stdout]     |
[INFO] [stdout] 103 | fn html_escape(text: &str) -> String {
[INFO] [stdout]     |    ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `pages` is never read
[INFO] [stdout]   --> src/pipeline/google_vision.rs:63:5
[INFO] [stdout]    |
[INFO] [stdout] 61 | struct FullTextAnnotation {
[INFO] [stdout]    |        ------------------ field in this struct
[INFO] [stdout] 62 |     text: String,
[INFO] [stdout] 63 |     pages: Option<Vec<Page>>,
[INFO] [stdout]    |     ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `FullTextAnnotation` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `blocks` is never read
[INFO] [stdout]   --> src/pipeline/google_vision.rs:68:5
[INFO] [stdout]    |
[INFO] [stdout] 67 | struct Page {
[INFO] [stdout]    |        ---- field in this struct
[INFO] [stdout] 68 |     blocks: Option<Vec<Block>>,
[INFO] [stdout]    |     ^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `Page` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `paragraphs` and `block_type` are never read
[INFO] [stdout]   --> src/pipeline/google_vision.rs:73:5
[INFO] [stdout]    |
[INFO] [stdout] 72 | struct Block {
[INFO] [stdout]    |        ----- fields in this struct
[INFO] [stdout] 73 |     paragraphs: Option<Vec<Paragraph>>,
[INFO] [stdout]    |     ^^^^^^^^^^
[INFO] [stdout] 74 |     #[serde(rename = "blockType")]
[INFO] [stdout] 75 |     block_type: Option<String>,
[INFO] [stdout]    |     ^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `Block` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `words` is never read
[INFO] [stdout]   --> src/pipeline/google_vision.rs:80:5
[INFO] [stdout]    |
[INFO] [stdout] 79 | struct Paragraph {
[INFO] [stdout]    |        --------- field in this struct
[INFO] [stdout] 80 |     words: Option<Vec<Word>>,
[INFO] [stdout]    |     ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `Paragraph` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `symbols` is never read
[INFO] [stdout]   --> src/pipeline/google_vision.rs:85:5
[INFO] [stdout]    |
[INFO] [stdout] 84 | struct Word {
[INFO] [stdout]    |        ---- field in this struct
[INFO] [stdout] 85 |     symbols: Option<Vec<Symbol>>,
[INFO] [stdout]    |     ^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `Word` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `text` is never read
[INFO] [stdout]   --> src/pipeline/google_vision.rs:90:5
[INFO] [stdout]    |
[INFO] [stdout] 89 | struct Symbol {
[INFO] [stdout]    |        ------ field in this struct
[INFO] [stdout] 90 |     text: String,
[INFO] [stdout]    |     ^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `Symbol` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `locale` is never read
[INFO] [stdout]   --> src/pipeline/google_vision.rs:96:5
[INFO] [stdout]    |
[INFO] [stdout] 94 | struct TextAnnotation {
[INFO] [stdout]    |        -------------- field in this struct
[INFO] [stdout] 95 |     description: String,
[INFO] [stdout] 96 |     locale: Option<String>,
[INFO] [stdout]    |     ^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `TextAnnotation` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `CONFIDENCE_THRESHOLD` is never used
[INFO] [stdout]   --> src/pipeline/orient.rs:10:7
[INFO] [stdout]    |
[INFO] [stdout] 10 | const CONFIDENCE_THRESHOLD: f64 = 0.3;
[INFO] [stdout]    |       ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `ROTATIONS` is never used
[INFO] [stdout]   --> src/pipeline/orient.rs:13:7
[INFO] [stdout]    |
[INFO] [stdout] 13 | const ROTATIONS: [i32; 4] = [0, 90, 180, 270];
[INFO] [stdout]    |       ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `detect_and_correct_orientation` is never used
[INFO] [stdout]   --> src/pipeline/orient.rs:18:8
[INFO] [stdout]    |
[INFO] [stdout] 18 | pub fn detect_and_correct_orientation(img: &DynamicImage) -> Result<(DynamicImage, i32)> {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `invert_image` is never used
[INFO] [stdout]   --> src/pipeline/orient.rs:72:4
[INFO] [stdout]    |
[INFO] [stdout] 72 | fn invert_image(gray: &GrayImage) -> GrayImage {
[INFO] [stdout]    |    ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `rotate_gray` is never used
[INFO] [stdout]   --> src/pipeline/orient.rs:87:4
[INFO] [stdout]    |
[INFO] [stdout] 87 | fn rotate_gray(img: &GrayImage, angle: i32) -> GrayImage {
[INFO] [stdout]    |    ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `rotate_image` is never used
[INFO] [stdout]   --> src/pipeline/orient.rs:98:4
[INFO] [stdout]    |
[INFO] [stdout] 98 | fn rotate_image(img: &DynamicImage, angle: i32) -> DynamicImage {
[INFO] [stdout]    |    ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `compute_text_orientation_score` is never used
[INFO] [stdout]    --> src/pipeline/orient.rs:109:4
[INFO] [stdout]     |
[INFO] [stdout] 109 | fn compute_text_orientation_score(img: &GrayImage) -> f64 {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `detect_orientation_by_edge_density` is never used
[INFO] [stdout]    --> src/pipeline/orient.rs:159:4
[INFO] [stdout]     |
[INFO] [stdout] 159 | fn detect_orientation_by_edge_density(img: &GrayImage) -> i32 {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `A4_RATIO_PORTRAIT` is never used
[INFO] [stdout]   --> src/pipeline/preprocess.rs:13:7
[INFO] [stdout]    |
[INFO] [stdout] 13 | const A4_RATIO_PORTRAIT: f64 = 297.0 / 210.0; // ~1.414
[INFO] [stdout]    |       ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `preprocess_image` is never used
[INFO] [stdout]   --> src/pipeline/preprocess.rs:22:8
[INFO] [stdout]    |
[INFO] [stdout] 22 | pub fn preprocess_image(input_path: &Path, dpi: u32) -> Result<DynamicImage> {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `preprocess_to_gray` is never used
[INFO] [stdout]   --> src/pipeline/preprocess.rs:40:8
[INFO] [stdout]    |
[INFO] [stdout] 40 | pub fn preprocess_to_gray(input_path: &Path, dpi: u32) -> Result<GrayImage> {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `normalize_to_a4` is never used
[INFO] [stdout]   --> src/pipeline/preprocess.rs:47:4
[INFO] [stdout]    |
[INFO] [stdout] 47 | fn normalize_to_a4(img: &DynamicImage, dpi: u32) -> DynamicImage {
[INFO] [stdout]    |    ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `binarize_adaptive` is never used
[INFO] [stdout]    --> src/pipeline/preprocess.rs:101:4
[INFO] [stdout]     |
[INFO] [stdout] 101 | fn binarize_adaptive(gray: &GrayImage) -> GrayImage {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `gray_to_rgb` is never used
[INFO] [stdout]    --> src/pipeline/preprocess.rs:141:4
[INFO] [stdout]     |
[INFO] [stdout] 141 | fn gray_to_rgb(gray: &GrayImage) -> RgbImage {
[INFO] [stdout]     |    ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/bbox_fill/mod.rs:716:13
[INFO] [stdout]     |
[INFO] [stdout] 716 |         let mut filler = MockBBoxFiller::new();
[INFO] [stdout]     |             ----^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             help: remove this `mut`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `export_to_markdown` is never used
[INFO] [stdout]    --> src/adapter.rs:178:8
[INFO] [stdout]     |
[INFO] [stdout] 178 | pub fn export_to_markdown(doc: &OcrDocument) -> String {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variants `MissingField`, `InvalidFormat`, and `ConversionFailed` are never constructed
[INFO] [stdout]    --> src/adapter.rs:226:5
[INFO] [stdout]     |
[INFO] [stdout] 225 | pub enum AdapterError {
[INFO] [stdout]     |          ------------ variants in this enum
[INFO] [stdout] 226 |     MissingField(String),
[INFO] [stdout]     |     ^^^^^^^^^^^^
[INFO] [stdout] 227 |     InvalidFormat(String),
[INFO] [stdout]     |     ^^^^^^^^^^^^^
[INFO] [stdout] 228 |     ConversionFailed(String),
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `AdapterError` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `engine_name` is never used
[INFO] [stdout]   --> src/bbox_fill/inference_client.rs:20:8
[INFO] [stdout]    |
[INFO] [stdout] 18 | pub trait BBoxFiller: Send + Sync {
[INFO] [stdout]    |           ---------- method in this trait
[INFO] [stdout] 19 |     /// エンジン名を返す
[INFO] [stdout] 20 |     fn engine_name(&self) -> &str;
[INFO] [stdout]    |        ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `from_env` and `with_model` are never used
[INFO] [stdout]    --> src/bbox_fill/inference_client.rs:175:12
[INFO] [stdout]     |
[INFO] [stdout] 173 | impl GeminiBBoxFiller {
[INFO] [stdout]     | --------------------- associated items in this implementation
[INFO] [stdout] 174 |     /// 環境変数 GEMINI_API_KEY から API キーを取得して作成
[INFO] [stdout] 175 |     pub fn from_env() -> Result<Self, FillClientError> {
[INFO] [stdout]     |            ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 193 |     pub fn with_model(mut self, model: &str) -> Self {
[INFO] [stdout]     |            ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `lines` and `block` are never used
[INFO] [stdout]    --> src/bbox_fill/test_factory.rs:152:12
[INFO] [stdout]     |
[INFO] [stdout] 116 | impl PageBuilder {
[INFO] [stdout]     | ---------------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 152 |     pub fn lines(mut self, lines: Vec<LineBuilder>) -> Self {
[INFO] [stdout]     |            ^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 183 |     pub fn block(mut self, block: OcrBlock) -> Self {
[INFO] [stdout]     |            ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `auto` and `maybe_bbox` are never used
[INFO] [stdout]    --> src/bbox_fill/test_factory.rs:424:12
[INFO] [stdout]     |
[INFO] [stdout] 412 | impl CellBuilder {
[INFO] [stdout]     | ---------------- associated items in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 424 |     pub fn auto() -> Self {
[INFO] [stdout]     |            ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 438 |     pub fn maybe_bbox(mut self, bbox: Option<BBox>) -> Self {
[INFO] [stdout]     |            ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `line_hint`, `cell_hint`, and `hint` are never used
[INFO] [stdout]    --> src/bbox_fill/test_factory.rs:493:12
[INFO] [stdout]     |
[INFO] [stdout] 471 | impl ResponseBuilder {
[INFO] [stdout]     | -------------------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 493 |     pub fn line_hint(mut self, id: LineId, bbox: BBox, confidence: f32) -> Self {
[INFO] [stdout]     |            ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 504 |     pub fn cell_hint(mut self, id: CellId, bbox: BBox, confidence: f32) -> Self {
[INFO] [stdout]     |            ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 515 |     pub fn hint(mut self, hint: BBoxHint) -> Self {
[INFO] [stdout]     |            ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `rename_original_file` and `save_markdown` are never used
[INFO] [stdout]     --> src/gui.rs:1408:8
[INFO] [stdout]      |
[INFO] [stdout]  511 | impl FaxOcrApp {
[INFO] [stdout]      | -------------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 1408 |     fn rename_original_file(&mut self) -> Result<PathBuf, String> {
[INFO] [stdout]      |        ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 1528 |     fn save_markdown(&self) {
[INFO] [stdout]      |        ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `element_id` and `kind` are never read
[INFO] [stdout]   --> src/merge/mod.rs:66:9
[INFO] [stdout]    |
[INFO] [stdout] 64 | pub struct MergeDecision {
[INFO] [stdout]    |            ------------- fields in this struct
[INFO] [stdout] 65 |     /// 対象要素の識別子
[INFO] [stdout] 66 |     pub element_id: String,
[INFO] [stdout]    |         ^^^^^^^^^^
[INFO] [stdout] 67 |     /// 決定の種類
[INFO] [stdout] 68 |     pub kind: DecisionKind,
[INFO] [stdout]    |         ^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `MergeDecision` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `AdoptA` is never constructed
[INFO] [stdout]   --> src/merge/mod.rs:77:5
[INFO] [stdout]    |
[INFO] [stdout] 75 | pub enum DecisionKind {
[INFO] [stdout]    |          ------------ variant in this enum
[INFO] [stdout] 76 |     /// A を採用
[INFO] [stdout] 77 |     AdoptA,
[INFO] [stdout]    |     ^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `DecisionKind` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `height_px` and `format` are never read
[INFO] [stdout]   --> src/page_image.rs:50:9
[INFO] [stdout]    |
[INFO] [stdout] 44 | pub struct PageImage {
[INFO] [stdout]    |            --------- fields in this struct
[INFO] [stdout] ...
[INFO] [stdout] 50 |     pub height_px: u32,
[INFO] [stdout]    |         ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 54 |     pub format: ImageFormat,
[INFO] [stdout]    |         ^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `PageImage` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `to_data_uri` is never used
[INFO] [stdout]   --> src/page_image.rs:66:12
[INFO] [stdout]    |
[INFO] [stdout] 59 | impl PageImage {
[INFO] [stdout]    | -------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 66 |     pub fn to_data_uri(&self) -> String {
[INFO] [stdout]    |            ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variants `ExtractionFailed` and `Other` are never constructed
[INFO] [stdout]    --> src/page_image.rs:92:5
[INFO] [stdout]     |
[INFO] [stdout]  81 | pub enum PageImageError {
[INFO] [stdout]     |          -------------- variants in this enum
[INFO] [stdout] ...
[INFO] [stdout]  92 |     ExtractionFailed(String),
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 100 |     Other(String),
[INFO] [stdout]     |     ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `PageImageError` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `add_page` is never used
[INFO] [stdout]    --> src/page_image.rs:151:12
[INFO] [stdout]     |
[INFO] [stdout] 142 | impl MockPageImageProvider {
[INFO] [stdout]     | -------------------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 151 |     pub fn add_page(&mut self, page: PageImage) {
[INFO] [stdout]     |            ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `ocr_engine`, `use_gemini`, `app_id`, and `app_key` are never read
[INFO] [stdout]   --> src/pipeline/mod.rs:52:9
[INFO] [stdout]    |
[INFO] [stdout] 48 | pub struct RunOptions {
[INFO] [stdout]    |            ---------- fields in this struct
[INFO] [stdout] ...
[INFO] [stdout] 52 |     pub ocr_engine: OcrEngine,
[INFO] [stdout]    |         ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 55 |     pub use_gemini: bool,
[INFO] [stdout]    |         ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 59 |     pub app_id: Option<String>,
[INFO] [stdout]    |         ^^^^^^
[INFO] [stdout] 60 |     pub app_key: Option<String>,
[INFO] [stdout]    |         ^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `RunOptions` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `export_json` is never used
[INFO] [stdout]   --> src/pipeline/export.rs:38:8
[INFO] [stdout]    |
[INFO] [stdout] 38 | pub fn export_json(response: &Value, output_path: &Path) -> Result<()> {
[INFO] [stdout]    |        ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `export_text` is never used
[INFO] [stdout]   --> src/pipeline/export.rs:45:8
[INFO] [stdout]    |
[INFO] [stdout] 45 | pub fn export_text(response: &Value, output_path: &Path) -> Result<()> {
[INFO] [stdout]    |        ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `export_html` is never used
[INFO] [stdout]   --> src/pipeline/export.rs:57:8
[INFO] [stdout]    |
[INFO] [stdout] 57 | pub fn export_html(response: &Value, output_path: &Path) -> Result<()> {
[INFO] [stdout]    |        ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `pages` is never read
[INFO] [stdout]   --> src/pipeline/google_vision.rs:63:5
[INFO] [stdout]    |
[INFO] [stdout] 61 | struct FullTextAnnotation {
[INFO] [stdout]    |        ------------------ field in this struct
[INFO] [stdout] 62 |     text: String,
[INFO] [stdout] 63 |     pages: Option<Vec<Page>>,
[INFO] [stdout]    |     ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `FullTextAnnotation` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `blocks` is never read
[INFO] [stdout]   --> src/pipeline/google_vision.rs:68:5
[INFO] [stdout]    |
[INFO] [stdout] 67 | struct Page {
[INFO] [stdout]    |        ---- field in this struct
[INFO] [stdout] 68 |     blocks: Option<Vec<Block>>,
[INFO] [stdout]    |     ^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `Page` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `paragraphs` and `block_type` are never read
[INFO] [stdout]   --> src/pipeline/google_vision.rs:73:5
[INFO] [stdout]    |
[INFO] [stdout] 72 | struct Block {
[INFO] [stdout]    |        ----- fields in this struct
[INFO] [stdout] 73 |     paragraphs: Option<Vec<Paragraph>>,
[INFO] [stdout]    |     ^^^^^^^^^^
[INFO] [stdout] 74 |     #[serde(rename = "blockType")]
[INFO] [stdout] 75 |     block_type: Option<String>,
[INFO] [stdout]    |     ^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `Block` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `words` is never read
[INFO] [stdout]   --> src/pipeline/google_vision.rs:80:5
[INFO] [stdout]    |
[INFO] [stdout] 79 | struct Paragraph {
[INFO] [stdout]    |        --------- field in this struct
[INFO] [stdout] 80 |     words: Option<Vec<Word>>,
[INFO] [stdout]    |     ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `Paragraph` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `symbols` is never read
[INFO] [stdout]   --> src/pipeline/google_vision.rs:85:5
[INFO] [stdout]    |
[INFO] [stdout] 84 | struct Word {
[INFO] [stdout]    |        ---- field in this struct
[INFO] [stdout] 85 |     symbols: Option<Vec<Symbol>>,
[INFO] [stdout]    |     ^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `Word` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `text` is never read
[INFO] [stdout]   --> src/pipeline/google_vision.rs:90:5
[INFO] [stdout]    |
[INFO] [stdout] 89 | struct Symbol {
[INFO] [stdout]    |        ------ field in this struct
[INFO] [stdout] 90 |     text: String,
[INFO] [stdout]    |     ^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `Symbol` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `locale` is never read
[INFO] [stdout]   --> src/pipeline/google_vision.rs:96:5
[INFO] [stdout]    |
[INFO] [stdout] 94 | struct TextAnnotation {
[INFO] [stdout]    |        -------------- field in this struct
[INFO] [stdout] 95 |     description: String,
[INFO] [stdout] 96 |     locale: Option<String>,
[INFO] [stdout]    |     ^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `TextAnnotation` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `CONFIDENCE_THRESHOLD` is never used
[INFO] [stdout]   --> src/pipeline/orient.rs:10:7
[INFO] [stdout]    |
[INFO] [stdout] 10 | const CONFIDENCE_THRESHOLD: f64 = 0.3;
[INFO] [stdout]    |       ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `detect_and_correct_orientation` is never used
[INFO] [stdout]   --> src/pipeline/orient.rs:18:8
[INFO] [stdout]    |
[INFO] [stdout] 18 | pub fn detect_and_correct_orientation(img: &DynamicImage) -> Result<(DynamicImage, i32)> {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `invert_image` is never used
[INFO] [stdout]   --> src/pipeline/orient.rs:72:4
[INFO] [stdout]    |
[INFO] [stdout] 72 | fn invert_image(gray: &GrayImage) -> GrayImage {
[INFO] [stdout]    |    ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `rotate_gray` is never used
[INFO] [stdout]   --> src/pipeline/orient.rs:87:4
[INFO] [stdout]    |
[INFO] [stdout] 87 | fn rotate_gray(img: &GrayImage, angle: i32) -> GrayImage {
[INFO] [stdout]    |    ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `rotate_image` is never used
[INFO] [stdout]   --> src/pipeline/orient.rs:98:4
[INFO] [stdout]    |
[INFO] [stdout] 98 | fn rotate_image(img: &DynamicImage, angle: i32) -> DynamicImage {
[INFO] [stdout]    |    ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `compute_text_orientation_score` is never used
[INFO] [stdout]    --> src/pipeline/orient.rs:109:4
[INFO] [stdout]     |
[INFO] [stdout] 109 | fn compute_text_orientation_score(img: &GrayImage) -> f64 {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `detect_orientation_by_edge_density` is never used
[INFO] [stdout]    --> src/pipeline/orient.rs:159:4
[INFO] [stdout]     |
[INFO] [stdout] 159 | fn detect_orientation_by_edge_density(img: &GrayImage) -> i32 {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `preprocess_image` is never used
[INFO] [stdout]   --> src/pipeline/preprocess.rs:22:8
[INFO] [stdout]    |
[INFO] [stdout] 22 | pub fn preprocess_image(input_path: &Path, dpi: u32) -> Result<DynamicImage> {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `preprocess_to_gray` is never used
[INFO] [stdout]   --> src/pipeline/preprocess.rs:40:8
[INFO] [stdout]    |
[INFO] [stdout] 40 | pub fn preprocess_to_gray(input_path: &Path, dpi: u32) -> Result<GrayImage> {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `normalize_to_a4` is never used
[INFO] [stdout]   --> src/pipeline/preprocess.rs:47:4
[INFO] [stdout]    |
[INFO] [stdout] 47 | fn normalize_to_a4(img: &DynamicImage, dpi: u32) -> DynamicImage {
[INFO] [stdout]    |    ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `binarize_adaptive` is never used
[INFO] [stdout]    --> src/pipeline/preprocess.rs:101:4
[INFO] [stdout]     |
[INFO] [stdout] 101 | fn binarize_adaptive(gray: &GrayImage) -> GrayImage {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `gray_to_rgb` is never used
[INFO] [stdout]    --> src/pipeline/preprocess.rs:141:4
[INFO] [stdout]     |
[INFO] [stdout] 141 | fn gray_to_rgb(gray: &GrayImage) -> RgbImage {
[INFO] [stdout]     |    ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 2m 10s
[INFO] running `Command { std: "docker" "inspect" "59160a3049b568ccc8cd1885535edab9741a7306bf6bbfe8da79f3d13be5ee67", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "59160a3049b568ccc8cd1885535edab9741a7306bf6bbfe8da79f3d13be5ee67", kill_on_drop: false }`
[INFO] [stdout] 59160a3049b568ccc8cd1885535edab9741a7306bf6bbfe8da79f3d13be5ee67
