[INFO] cloning repository https://github.com/mauricemojito/rasterkit
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/mauricemojito/rasterkit" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fmauricemojito%2Frasterkit", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fmauricemojito%2Frasterkit'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] 334325916be8cedb663cf44ac0582fd3527405c8
[INFO] testing mauricemojito/rasterkit against master#0d162b25edd5bf0dba9a22e83b614f1113e90474 for pr-150681
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fmauricemojito%2Frasterkit" "/workspace/builds/worker-6-tc1/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-6-tc1/source'...
[INFO] [stderr] done.
[INFO] started tweaking git repo https://github.com/mauricemojito/rasterkit
[INFO] finished tweaking git repo https://github.com/mauricemojito/rasterkit
[INFO] tweaked toml for git repo https://github.com/mauricemojito/rasterkit written to /workspace/builds/worker-6-tc1/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/mauricemojito/rasterkit on toolchain 0d162b25edd5bf0dba9a22e83b614f1113e90474
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+0d162b25edd5bf0dba9a22e83b614f1113e90474" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate git repo https://github.com/mauricemojito/rasterkit 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" "+0d162b25edd5bf0dba9a22e83b614f1113e90474" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]  Downloading crates ...
[INFO] [stderr]   Downloaded v_frame v0.3.8
[INFO] [stderr]   Downloaded profiling-procmacros v1.0.16
[INFO] [stderr]   Downloaded ravif v0.11.11
[INFO] [stderr]   Downloaded aligned-vec v0.5.0
[INFO] [stderr]   Downloaded once_cell v1.21.0
[INFO] [stderr]   Downloaded avif-serialize v0.8.3
[INFO] [stderr]   Downloaded indicatif v0.17.11
[INFO] [stderr]   Downloaded image-webp v0.2.1
[INFO] [stderr]   Downloaded av1-grain v0.2.3
[INFO] [stderr]   Downloaded libfuzzer-sys v0.4.9
[INFO] [stderr]   Downloaded quick-xml v0.37.2
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:845e597a41426bbf2703be69acdb67d10b6de511142d05cba7bbe119c898b2c7" "/opt/rustwide/cargo-home/bin/cargo" "+0d162b25edd5bf0dba9a22e83b614f1113e90474" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] 946c3547584b20ec6bdd1225b07f59395ccfe72c2c279be9ef038f0ccfe0b88c
[INFO] running `Command { std: "docker" "start" "-a" "946c3547584b20ec6bdd1225b07f59395ccfe72c2c279be9ef038f0ccfe0b88c", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "946c3547584b20ec6bdd1225b07f59395ccfe72c2c279be9ef038f0ccfe0b88c", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "946c3547584b20ec6bdd1225b07f59395ccfe72c2c279be9ef038f0ccfe0b88c", kill_on_drop: false }`
[INFO] [stdout] 946c3547584b20ec6bdd1225b07f59395ccfe72c2c279be9ef038f0ccfe0b88c
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:845e597a41426bbf2703be69acdb67d10b6de511142d05cba7bbe119c898b2c7" "/opt/rustwide/cargo-home/bin/cargo" "+0d162b25edd5bf0dba9a22e83b614f1113e90474" "build" "--frozen" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 8ce5440b7490793d095e1f0336629a489d341a159ce455ba0bec202d6adaafe1
[INFO] running `Command { std: "docker" "start" "-a" "8ce5440b7490793d095e1f0336629a489d341a159ce455ba0bec202d6adaafe1", kill_on_drop: false }`
[INFO] [stderr]    Compiling anyhow v1.0.97
[INFO] [stderr]    Compiling built v0.7.7
[INFO] [stderr]    Compiling aligned-vec v0.5.0
[INFO] [stderr]    Compiling arrayvec v0.7.6
[INFO] [stderr]    Compiling once_cell v1.21.0
[INFO] [stderr]    Compiling jobserver v0.1.32
[INFO] [stderr]    Compiling itertools v0.12.1
[INFO] [stderr]    Compiling noop_proc_macro v0.3.0
[INFO] [stderr]    Compiling syn v2.0.100
[INFO] [stderr]    Compiling simd_helpers v0.1.0
[INFO] [stderr]    Compiling quick-error v2.0.1
[INFO] [stderr]    Compiling num-bigint v0.4.6
[INFO] [stderr]    Compiling portable-atomic v1.11.0
[INFO] [stderr]    Compiling bitstream-io v2.6.0
[INFO] [stderr]    Compiling maybe-rayon v0.1.1
[INFO] [stderr]    Compiling imgref v1.11.0
[INFO] [stderr]    Compiling indexmap v2.8.0
[INFO] [stderr]    Compiling serde_spanned v0.6.8
[INFO] [stderr]    Compiling v_frame v0.3.8
[INFO] [stderr]    Compiling cc v1.2.16
[INFO] [stderr]    Compiling avif-serialize v0.8.3
[INFO] [stderr]    Compiling toml_datetime v0.6.8
[INFO] [stderr]    Compiling loop9 v0.1.5
[INFO] [stderr]    Compiling bytemuck v1.22.0
[INFO] [stderr]    Compiling jpeg-decoder v0.3.1
[INFO] [stderr]    Compiling winnow v0.7.4
[INFO] [stderr]    Compiling rav1e v0.7.1
[INFO] [stderr]    Compiling smallvec v1.14.0
[INFO] [stderr]    Compiling rgb v0.8.50
[INFO] [stderr]    Compiling image-webp v0.2.1
[INFO] [stderr]    Compiling console v0.15.11
[INFO] [stderr]    Compiling clap_builder v4.5.32
[INFO] [stderr]    Compiling is-terminal v0.4.16
[INFO] [stderr]    Compiling exr v1.73.0
[INFO] [stderr]    Compiling qoi v0.4.1
[INFO] [stderr]    Compiling humantime v2.2.0
[INFO] [stderr]    Compiling quick-xml v0.37.2
[INFO] [stderr]    Compiling env_logger v0.10.2
[INFO] [stderr]    Compiling tiff v0.9.1
[INFO] [stderr]    Compiling num-rational v0.4.2
[INFO] [stderr]    Compiling indicatif v0.17.11
[INFO] [stderr]    Compiling av1-grain v0.2.3
[INFO] [stderr]    Compiling toml_edit v0.22.24
[INFO] [stderr]    Compiling zstd-sys v2.0.14+zstd.1.5.7
[INFO] [stderr]    Compiling clap v4.5.32
[INFO] [stderr]    Compiling toml v0.8.20
[INFO] [stderr]    Compiling thiserror-impl v1.0.69
[INFO] [stderr]    Compiling profiling-procmacros v1.0.16
[INFO] [stderr]    Compiling arg_enum_proc_macro v0.3.4
[INFO] [stderr]    Compiling num-derive v0.4.2
[INFO] [stderr]    Compiling profiling v1.0.16
[INFO] [stderr]    Compiling zstd-safe v7.2.3
[INFO] [stderr]    Compiling zstd v0.13.3
[INFO] [stderr]    Compiling thiserror v1.0.69
[INFO] [stderr]    Compiling ravif v0.11.11
[INFO] [stderr]    Compiling image v0.25.5
[INFO] [stderr]    Compiling rasterkit v0.1.5 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unused import: `self`
[INFO] [stdout]  --> src/tiff/colormap.rs:7:15
[INFO] [stdout]   |
[INFO] [stdout] 7 | use std::io::{self, BufReader, Read, Write, BufWriter, BufRead};
[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: `error`
[INFO] [stdout]   --> src/tiff/colormap.rs:10:30
[INFO] [stdout]    |
[INFO] [stdout] 10 | use log::{debug, info, warn, error};
[INFO] [stdout]    |                              ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around block return value
[INFO] [stdout]    --> src/tiff/colormap.rs:929:5
[INFO] [stdout]     |
[INFO] [stdout] 929 |     ((start as f32 * (1.0 - t) + end as f32 * t) as u16 * 257)
[INFO] [stdout]     |     ^                                                        ^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_parens)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]     |
[INFO] [stdout] 929 -     ((start as f32 * (1.0 - t) + end as f32 * t) as u16 * 257)
[INFO] [stdout] 929 +     (start as f32 * (1.0 - t) + end as f32 * t) as u16 * 257
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::utils::coordinate_transformer`
[INFO] [stdout]   --> src/utils/image_extraction_utils.rs:23:5
[INFO] [stdout]    |
[INFO] [stdout] 23 | use crate::utils::coordinate_transformer;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `debug`
[INFO] [stdout]  --> src/utils/colormap_utils.rs:7:23
[INFO] [stdout]   |
[INFO] [stdout] 7 | use log::{info, warn, debug};
[INFO] [stdout]   |                       ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::tiff::TiffReader`
[INFO] [stdout]   --> src/utils/colormap_utils.rs:14:5
[INFO] [stdout]    |
[INFO] [stdout] 14 | use crate::tiff::TiffReader;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::tiff::geo_key_parser::GeoKeyParser`
[INFO] [stdout]   --> src/utils/colormap_utils.rs:15:5
[INFO] [stdout]    |
[INFO] [stdout] 15 | use crate::tiff::geo_key_parser::GeoKeyParser;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::coordinate::BoundingBox`
[INFO] [stdout]  --> src/utils/coordinate_utils.rs:8:5
[INFO] [stdout]   |
[INFO] [stdout] 8 | use crate::coordinate::BoundingBox;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `info`
[INFO] [stdout]   --> src/utils/coordinate_utils.rs:10:18
[INFO] [stdout]    |
[INFO] [stdout] 10 | use log::{debug, info};
[INFO] [stdout]    |                  ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `photometric`
[INFO] [stdout]   --> src/utils/reprojection_utils.rs:14:49
[INFO] [stdout]    |
[INFO] [stdout] 14 | use crate::tiff::constants::{tags, field_types, photometric};
[INFO] [stdout]    |                                                 ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `debug`
[INFO] [stdout]  --> src/utils/filter_utils.rs:8:11
[INFO] [stdout]   |
[INFO] [stdout] 8 | use log::{debug, info};
[INFO] [stdout]   |           ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `debug` and `warn`
[INFO] [stdout]  --> src/extractor/array_strategy.rs:7:17
[INFO] [stdout]   |
[INFO] [stdout] 7 | use log::{info, debug, warn};
[INFO] [stdout]   |                 ^^^^^  ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::path::Path`
[INFO] [stdout]   --> src/extractor/array_strategy.rs:10:5
[INFO] [stdout]    |
[INFO] [stdout] 10 | use std::path::Path;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `debug`
[INFO] [stdout]  --> src/commands/extract_command.rs:2:11
[INFO] [stdout]   |
[INFO] [stdout] 2 | use log::{debug, info, warn, error};
[INFO] [stdout]   |           ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::coordinate::BoundingBox`
[INFO] [stdout]  --> src/commands/extract_command.rs:9:5
[INFO] [stdout]   |
[INFO] [stdout] 9 | use crate::coordinate::BoundingBox;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::tiff::constants::epsg`
[INFO] [stdout]   --> src/commands/extract_command.rs:11:5
[INFO] [stdout]    |
[INFO] [stdout] 11 | use crate::tiff::constants::epsg;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::tiff::types::TIFF`
[INFO] [stdout]   --> src/commands/extract_command.rs:12:5
[INFO] [stdout]    |
[INFO] [stdout] 12 | use crate::tiff::types::TIFF;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::utils::reference_utils`
[INFO] [stdout]   --> src/commands/extract_command.rs:14:5
[INFO] [stdout]    |
[INFO] [stdout] 14 | use crate::utils::reference_utils;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `error`
[INFO] [stdout]  --> src/commands/convert_command.rs:7:17
[INFO] [stdout]   |
[INFO] [stdout] 7 | use log::{info, error};
[INFO] [stdout]   |                 ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::path::Path`
[INFO] [stdout]  --> src/api.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::path::Path;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Read`
[INFO] [stdout]  --> src/tiff/reader.rs:8:26
[INFO] [stdout]   |
[INFO] [stdout] 8 | use std::io::{BufReader, Read, Seek, SeekFrom};
[INFO] [stdout]   |                          ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `super::handler::CompressionHandler`
[INFO] [stdout]   --> src/compression/converter.rs:11:5
[INFO] [stdout]    |
[INFO] [stdout] 11 | use super::handler::CompressionHandler;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `GenericImageView`
[INFO] [stdout]   --> src/extractor/array_strategy.rs:11:27
[INFO] [stdout]    |
[INFO] [stdout] 11 | use image::{DynamicImage, GenericImageView};
[INFO] [stdout]    |                           ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `GenericImageView`
[INFO] [stdout]  --> src/utils/mask_utils.rs:6:27
[INFO] [stdout]   |
[INFO] [stdout] 6 | use image::{DynamicImage, GenericImageView, Rgba, RgbaImage};
[INFO] [stdout]   |                           ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unreachable pattern
[INFO] [stdout]    --> src/tiff/geotags.rs:187:13
[INFO] [stdout]     |
[INFO] [stdout] 184 |             2000..=2056 => "NAD 83 / State Plane (US)".to_string(),
[INFO] [stdout]     |             ----------- matches all the relevant values
[INFO] [stdout] ...
[INFO] [stdout] 187 |             2044 => "NAD 83 / Alaska Albers".to_string(),
[INFO] [stdout]     |             ^^^^ no value can reach this
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unreachable_patterns)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `sorted_ifds`
[INFO] [stdout]    --> src/tiff/builders/writer.rs:237:9
[INFO] [stdout]     |
[INFO] [stdout] 237 |         sorted_ifds: &[IFD],
[INFO] [stdout]     |         ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_sorted_ifds`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `projection` is never read
[INFO] [stdout]    --> src/tiff/geo_key_parser.rs:300:30
[INFO] [stdout]     |
[INFO] [stdout] 300 |         let mut projection = String::new();
[INFO] [stdout]     |                              ^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = help: maybe it is overwritten before being read?
[INFO] [stdout]     = note: `#[warn(unused_assignments)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `target_epsg`
[INFO] [stdout]    --> src/utils/image_extraction_utils.rs:158:61
[INFO] [stdout]     |
[INFO] [stdout] 158 | fn try_transform_bbox(bbox: &BoundingBox, source_epsg: u32, target_epsg: u32) -> BoundingBox {
[INFO] [stdout]     |                                                             ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_target_epsg`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `logger`
[INFO] [stdout]    --> src/utils/image_extraction_utils.rs:435:5
[INFO] [stdout]     |
[INFO] [stdout] 435 |     logger: &Logger
[INFO] [stdout]     |     ^^^^^^ help: if this is intentional, prefix it with an underscore: `_logger`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `builder`
[INFO] [stdout]    --> src/utils/reprojection_utils.rs:266:5
[INFO] [stdout]     |
[INFO] [stdout] 266 |     builder: &mut TiffBuilder,
[INFO] [stdout]     |     ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_builder`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `ifd_index`
[INFO] [stdout]    --> src/utils/reprojection_utils.rs:267:5
[INFO] [stdout]     |
[INFO] [stdout] 267 |     ifd_index: usize,
[INFO] [stdout]     |     ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_ifd_index`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `photometric`
[INFO] [stdout]   --> src/extractor/tiff_strategy.rs:75:31
[INFO] [stdout]    |
[INFO] [stdout] 75 |         let (bits_per_sample, photometric, samples_per_pixel) =
[INFO] [stdout]    |                               ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_photometric`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `image_for_tiff`
[INFO] [stdout]    --> src/extractor/tiff_strategy.rs:118:13
[INFO] [stdout]     |
[INFO] [stdout] 118 |         let image_for_tiff = final_image.to_rgb8();
[INFO] [stdout]     |             ^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_image_for_tiff`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `img_height`
[INFO] [stdout]    --> src/extractor/tile_reader.rs:143:25
[INFO] [stdout]     |
[INFO] [stdout] 143 |         let (img_width, img_height) = self.ifd.get_dimensions()
[INFO] [stdout]     |                         ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_img_height`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `shape`
[INFO] [stdout]    --> src/extractor/array_strategy.rs:249:48
[INFO] [stdout]     |
[INFO] [stdout] 249 |                        region: Option<Region>, shape: Option<&str>) -> TiffResult<()> {
[INFO] [stdout]     |                                                ^^^^^ help: if this is intentional, prefix it with an underscore: `_shape`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `has_geotiff_tags` is assigned to, but never used
[INFO] [stdout]    --> src/commands/analyze_command.rs:291:13
[INFO] [stdout]     |
[INFO] [stdout] 291 |         let mut has_geotiff_tags = false;
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: consider using `_has_geotiff_tags` instead
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `has_geotiff_tags` is never read
[INFO] [stdout]    --> src/commands/analyze_command.rs:308:17
[INFO] [stdout]     |
[INFO] [stdout] 308 |                 has_geotiff_tags = true;
[INFO] [stdout]     |                 ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = help: maybe it is overwritten before being read?
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `logger` is never read
[INFO] [stdout]   --> src/tiff/reader.rs:48:5
[INFO] [stdout]    |
[INFO] [stdout] 44 | pub struct TiffReader<'a> {
[INFO] [stdout]    |            ---------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 48 |     logger: &'a Logger,
[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 `create_test_tiff_buffer` is never used
[INFO] [stdout]  --> src/tiff/tests/test_utils.rs:5:8
[INFO] [stdout]   |
[INFO] [stdout] 5 | pub fn create_test_tiff_buffer() -> Cursor<Vec<u8>> {
[INFO] [stdout]   |        ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `create_test_bigtiff_buffer` is never used
[INFO] [stdout]   --> src/tiff/tests/test_utils.rs:39:8
[INFO] [stdout]    |
[INFO] [stdout] 39 | pub fn create_test_bigtiff_buffer() -> Cursor<Vec<u8>> {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `GEOTIFF_TAGS_FILE` is never used
[INFO] [stdout]   --> src/tiff/geotags.rs:12:7
[INFO] [stdout]    |
[INFO] [stdout] 12 | const GEOTIFF_TAGS_FILE: &str = "geotiff_tags.toml";
[INFO] [stdout]    |       ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `BIG_ENDIAN_MARKER` is never used
[INFO] [stdout]   --> src/tiff/constants.rs:19:15
[INFO] [stdout]    |
[INFO] [stdout] 19 |     pub const BIG_ENDIAN_MARKER: [u8; 2] = [0x4D, 0x4D];
[INFO] [stdout]    |               ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `NONE` is never used
[INFO] [stdout]    --> src/tiff/constants.rs:143:15
[INFO] [stdout]     |
[INFO] [stdout] 143 |     pub const NONE: u16 = 1;              // No meaningful units
[INFO] [stdout]     |               ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `INCH` is never used
[INFO] [stdout]    --> src/tiff/constants.rs:144:15
[INFO] [stdout]     |
[INFO] [stdout] 144 |     pub const INCH: u16 = 2;              // Inches (default)
[INFO] [stdout]     |               ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `CENTIMETER` is never used
[INFO] [stdout]    --> src/tiff/constants.rs:145:15
[INFO] [stdout]     |
[INFO] [stdout] 145 |     pub const CENTIMETER: u16 = 3;        // Centimeters
[INFO] [stdout]     |               ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `TOP_LEFT` is never used
[INFO] [stdout]    --> src/tiff/constants.rs:150:15
[INFO] [stdout]     |
[INFO] [stdout] 150 |     pub const TOP_LEFT: u16 = 1;          // 0th row = top, 0th column = left side
[INFO] [stdout]     |               ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `TOP_RIGHT` is never used
[INFO] [stdout]    --> src/tiff/constants.rs:151:15
[INFO] [stdout]     |
[INFO] [stdout] 151 |     pub const TOP_RIGHT: u16 = 2;         // 0th row = top, 0th column = right side
[INFO] [stdout]     |               ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `BOTTOM_RIGHT` is never used
[INFO] [stdout]    --> src/tiff/constants.rs:152:15
[INFO] [stdout]     |
[INFO] [stdout] 152 |     pub const BOTTOM_RIGHT: u16 = 3;      // 0th row = bottom, 0th column = right side
[INFO] [stdout]     |               ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `BOTTOM_LEFT` is never used
[INFO] [stdout]    --> src/tiff/constants.rs:153:15
[INFO] [stdout]     |
[INFO] [stdout] 153 |     pub const BOTTOM_LEFT: u16 = 4;       // 0th row = bottom, 0th column = left side
[INFO] [stdout]     |               ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `LEFT_TOP` is never used
[INFO] [stdout]    --> src/tiff/constants.rs:154:15
[INFO] [stdout]     |
[INFO] [stdout] 154 |     pub const LEFT_TOP: u16 = 5;          // 0th row = left side, 0th column = top
[INFO] [stdout]     |               ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `RIGHT_TOP` is never used
[INFO] [stdout]    --> src/tiff/constants.rs:155:15
[INFO] [stdout]     |
[INFO] [stdout] 155 |     pub const RIGHT_TOP: u16 = 6;         // 0th row = right side, 0th column = top
[INFO] [stdout]     |               ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `RIGHT_BOTTOM` is never used
[INFO] [stdout]    --> src/tiff/constants.rs:156:15
[INFO] [stdout]     |
[INFO] [stdout] 156 |     pub const RIGHT_BOTTOM: u16 = 7;      // 0th row = right side, 0th column = bottom
[INFO] [stdout]     |               ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `LEFT_BOTTOM` is never used
[INFO] [stdout]    --> src/tiff/constants.rs:157:15
[INFO] [stdout]     |
[INFO] [stdout] 157 |     pub const LEFT_BOTTOM: u16 = 8;       // 0th row = left side, 0th column = bottom
[INFO] [stdout]     |               ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `MSB_TO_LSB` is never used
[INFO] [stdout]    --> src/tiff/constants.rs:169:15
[INFO] [stdout]     |
[INFO] [stdout] 169 |     pub const MSB_TO_LSB: u16 = 1;              // Most significant bit to least
[INFO] [stdout]     |               ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `LSB_TO_MSB` is never used
[INFO] [stdout]    --> src/tiff/constants.rs:170:15
[INFO] [stdout]     |
[INFO] [stdout] 170 |     pub const LSB_TO_MSB: u16 = 2;              // Least significant bit to most
[INFO] [stdout]     |               ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `UNSPECIFIED` is never used
[INFO] [stdout]    --> src/tiff/constants.rs:175:15
[INFO] [stdout]     |
[INFO] [stdout] 175 |     pub const UNSPECIFIED: u16 = 0;             // Unspecified data
[INFO] [stdout]     |               ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `ASSOCIATED_ALPHA` is never used
[INFO] [stdout]    --> src/tiff/constants.rs:176:15
[INFO] [stdout]     |
[INFO] [stdout] 176 |     pub const ASSOCIATED_ALPHA: u16 = 1;        // Associated alpha data
[INFO] [stdout]     |               ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `UNASSOCIATED_ALPHA` is never used
[INFO] [stdout]    --> src/tiff/constants.rs:177:15
[INFO] [stdout]     |
[INFO] [stdout] 177 |     pub const UNASSOCIATED_ALPHA: u16 = 2;      // Unassociated alpha data
[INFO] [stdout]     |               ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `REDUCED_RESOLUTION` is never used
[INFO] [stdout]    --> src/tiff/constants.rs:182:15
[INFO] [stdout]     |
[INFO] [stdout] 182 |     pub const REDUCED_RESOLUTION: u32 = 1;      // Reduced resolution version of another image
[INFO] [stdout]     |               ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `SINGLE_PAGE` is never used
[INFO] [stdout]    --> src/tiff/constants.rs:183:15
[INFO] [stdout]     |
[INFO] [stdout] 183 |     pub const SINGLE_PAGE: u32 = 2;             // One page of many
[INFO] [stdout]     |               ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `TRANSPARENCY_MASK` is never used
[INFO] [stdout]    --> src/tiff/constants.rs:184:15
[INFO] [stdout]     |
[INFO] [stdout] 184 |     pub const TRANSPARENCY_MASK: u32 = 4;       // Transparency mask for another image
[INFO] [stdout]     |               ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `GEOG_LINEAR_UNITS` is never used
[INFO] [stdout]    --> src/tiff/constants.rs:192:15
[INFO] [stdout]     |
[INFO] [stdout] 192 |     pub const GEOG_LINEAR_UNITS: u16 = 2052;  // GeogLinearUnitsGeoKey
[INFO] [stdout]     |               ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `PROJ_LINEAR_UNITS` is never used
[INFO] [stdout]    --> src/tiff/constants.rs:193:15
[INFO] [stdout]     |
[INFO] [stdout] 193 |     pub const PROJ_LINEAR_UNITS: u16 = 3076;  // ProjLinearUnitsGeoKey
[INFO] [stdout]     |               ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `validate_range` is never used
[INFO] [stdout]    --> src/tiff/validation.rs:100:8
[INFO] [stdout]     |
[INFO] [stdout] 100 | pub fn validate_range<T>(value: T, min: T, max: T, name: &str) -> TiffResult<()>
[INFO] [stdout]     |        ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `from_hex_color` is never used
[INFO] [stdout]    --> src/tiff/colormap.rs:149:12
[INFO] [stdout]     |
[INFO] [stdout]  98 | impl ColorMapEntry {
[INFO] [stdout]     | ------------------ associated function in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 149 |     pub fn from_hex_color(value: u16, hex: &str, label: Option<String>) -> TiffResult<Self> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `to_tiff_colormap`, `interpolate_ramp_values`, and `apply_to_builder` are never used
[INFO] [stdout]    --> src/tiff/colormap.rs:439:12
[INFO] [stdout]     |
[INFO] [stdout] 169 | impl ColorMap {
[INFO] [stdout]     | ------------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 439 |     pub fn to_tiff_colormap(&self) -> (u16, Vec<u16>) {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 484 |     fn interpolate_ramp_values(
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 609 |     pub fn apply_to_builder(&self, builder: &mut TiffBuilder, ifd_index: usize) -> TiffResult<()> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `interpolate_color_component` is never used
[INFO] [stdout]    --> src/tiff/colormap.rs:928:4
[INFO] [stdout]     |
[INFO] [stdout] 928 | fn interpolate_color_component(start: u8, end: u8, t: f32) -> u16 {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `ProgressTracker` is never constructed
[INFO] [stdout]  --> src/utils/progress.rs:3:12
[INFO] [stdout]   |
[INFO] [stdout] 3 | pub struct ProgressTracker {
[INFO] [stdout]   |            ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new`, `increment`, `finish`, and `set_message` are never used
[INFO] [stdout]   --> src/utils/progress.rs:8:12
[INFO] [stdout]    |
[INFO] [stdout]  7 | impl ProgressTracker {
[INFO] [stdout]    | -------------------- associated items in this implementation
[INFO] [stdout]  8 |     pub fn new(total: u64, description: &str) -> Self {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 21 |     pub fn increment(&self, amount: u64) {
[INFO] [stdout]    |            ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 25 |     pub fn finish(&self) {
[INFO] [stdout]    |            ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 29 |     pub fn set_message(&self, msg: &str) {
[INFO] [stdout]    |            ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `calculate_padding` is never used
[INFO] [stdout]   --> src/utils/write_utils.rs:64:8
[INFO] [stdout]    |
[INFO] [stdout] 64 | pub fn calculate_padding(data_len: usize) -> usize {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `detect_byte_order` is never used
[INFO] [stdout]   --> src/utils/byte_order_utils.rs:11:8
[INFO] [stdout]    |
[INFO] [stdout] 11 | pub fn detect_byte_order(reader: &mut dyn SeekableReader) -> TiffResult<Box<dyn ByteOrderHandler>> {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `get_handler_unwrapped` is never used
[INFO] [stdout]   --> src/utils/byte_order_utils.rs:19:8
[INFO] [stdout]    |
[INFO] [stdout] 19 | pub fn get_handler_unwrapped(handler: &Option<Box<dyn ByteOrderHandler>>) -> TiffResult<&Box<dyn ByteOrderHandler>> {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `is_in_region` is never used
[INFO] [stdout]    --> src/utils/image_extraction_utils.rs:612:8
[INFO] [stdout]     |
[INFO] [stdout] 612 | pub fn is_in_region(x: u32, y: u32, region: &Region) -> bool {
[INFO] [stdout]     |        ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `calc_buffer_coords` is never used
[INFO] [stdout]    --> src/utils/image_extraction_utils.rs:628:8
[INFO] [stdout]     |
[INFO] [stdout] 628 | pub fn calc_buffer_coords(global_x: u32, global_y: u32, region: &Region) -> (u32, u32) {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `apply_shape_mask` is never used
[INFO] [stdout]    --> src/utils/image_extraction_utils.rs:643:8
[INFO] [stdout]     |
[INFO] [stdout] 643 | pub fn apply_shape_mask(image: &DynamicImage, shape: &str) -> DynamicImage {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `ensure_png_extension` is never used
[INFO] [stdout]    --> src/utils/image_extraction_utils.rs:690:8
[INFO] [stdout]     |
[INFO] [stdout] 690 | pub fn ensure_png_extension(path: &str) -> String {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `EARTH_RADIUS` is never used
[INFO] [stdout]   --> src/utils/coordinate_transformer.rs:12:11
[INFO] [stdout]    |
[INFO] [stdout] 12 | pub const EARTH_RADIUS: f64 = 6378137.0;
[INFO] [stdout]    |           ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `wgs84_to_web_mercator` is never used
[INFO] [stdout]   --> src/utils/coordinate_transformer.rs:22:8
[INFO] [stdout]    |
[INFO] [stdout] 22 | pub fn wgs84_to_web_mercator(lon: f64, lat: f64) -> Point {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `web_mercator_to_wgs84` is never used
[INFO] [stdout]   --> src/utils/coordinate_transformer.rs:55:8
[INFO] [stdout]    |
[INFO] [stdout] 55 | pub fn web_mercator_to_wgs84(x: f64, y: f64) -> Point {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `wgs84_bbox_to_web_mercator` is never used
[INFO] [stdout]   --> src/utils/coordinate_transformer.rs:78:8
[INFO] [stdout]    |
[INFO] [stdout] 78 | pub fn wgs84_bbox_to_web_mercator(min_x: f64, min_y: f64, max_x: f64, max_y: f64) -> (f64, f64, f64, f64) {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `logger` is never read
[INFO] [stdout]   --> src/compression/converter.rs:15:5
[INFO] [stdout]    |
[INFO] [stdout] 14 | pub struct CompressionConverter<'a> {
[INFO] [stdout]    |            -------------------- field in this struct
[INFO] [stdout] 15 |     logger: &'a Logger,
[INFO] [stdout]    |     ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `logger` is never read
[INFO] [stdout]    --> src/extractor/extractor_strategy.rs:155:5
[INFO] [stdout]     |
[INFO] [stdout] 153 | pub struct ImageExtractor<'a> {
[INFO] [stdout]     |            -------------- field in this struct
[INFO] [stdout] 154 |     /// Logger for recording operations
[INFO] [stdout] 155 |     logger: &'a Logger,
[INFO] [stdout]     |     ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `logger` is never read
[INFO] [stdout]    --> src/extractor/array_strategy.rs:221:5
[INFO] [stdout]     |
[INFO] [stdout] 219 | pub struct ArrayExtractorStrategy<'a> {
[INFO] [stdout]     |            ---------------------- field in this struct
[INFO] [stdout] 220 |     /// Logger for recording operations
[INFO] [stdout] 221 |     logger: &'a Logger,
[INFO] [stdout]     |     ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `save_colorized_image` and `determine_region_with_radius` are never used
[INFO] [stdout]    --> src/commands/extract_command.rs:415:8
[INFO] [stdout]     |
[INFO] [stdout]  54 | impl<'a> ExtractCommand<'a> {
[INFO] [stdout]     | --------------------------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 415 |     fn save_colorized_image(&self, rgb_image: image::RgbImage, region: Option<Region>) -> TiffResult<()> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 509 |     fn determine_region_with_radius(&self, radius_meters: Option<f64>) -> TiffResult<Option<Region>> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 52.25s
[INFO] running `Command { std: "docker" "inspect" "8ce5440b7490793d095e1f0336629a489d341a159ce455ba0bec202d6adaafe1", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "8ce5440b7490793d095e1f0336629a489d341a159ce455ba0bec202d6adaafe1", kill_on_drop: false }`
[INFO] [stdout] 8ce5440b7490793d095e1f0336629a489d341a159ce455ba0bec202d6adaafe1
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:845e597a41426bbf2703be69acdb67d10b6de511142d05cba7bbe119c898b2c7" "/opt/rustwide/cargo-home/bin/cargo" "+0d162b25edd5bf0dba9a22e83b614f1113e90474" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] afa965473f802fb2ab4e39caa2dff7ba9784563b1702e46cd4e7e61742cefe64
[INFO] running `Command { std: "docker" "start" "-a" "afa965473f802fb2ab4e39caa2dff7ba9784563b1702e46cd4e7e61742cefe64", kill_on_drop: false }`
[INFO] [stdout] warning: unused import: `self`
[INFO] [stdout]  --> src/tiff/colormap.rs:7:15
[INFO] [stdout]   |
[INFO] [stdout] 7 | use std::io::{self, BufReader, Read, Write, BufWriter, BufRead};
[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: `error`
[INFO] [stdout]   --> src/tiff/colormap.rs:10:30
[INFO] [stdout]    |
[INFO] [stdout] 10 | use log::{debug, info, warn, error};
[INFO] [stdout]    |                              ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around block return value
[INFO] [stdout]    --> src/tiff/colormap.rs:929:5
[INFO] [stdout]     |
[INFO] [stdout] 929 |     ((start as f32 * (1.0 - t) + end as f32 * t) as u16 * 257)
[INFO] [stdout]     |     ^                                                        ^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_parens)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]     |
[INFO] [stdout] 929 -     ((start as f32 * (1.0 - t) + end as f32 * t) as u16 * 257)
[INFO] [stdout] 929 +     (start as f32 * (1.0 - t) + end as f32 * t) as u16 * 257
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::utils::coordinate_transformer`
[INFO] [stdout]   --> src/utils/image_extraction_utils.rs:23:5
[INFO] [stdout]    |
[INFO] [stdout] 23 | use crate::utils::coordinate_transformer;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `debug`
[INFO] [stdout]  --> src/utils/colormap_utils.rs:7:23
[INFO] [stdout]   |
[INFO] [stdout] 7 | use log::{info, warn, debug};
[INFO] [stdout]   |                       ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::tiff::TiffReader`
[INFO] [stdout]   --> src/utils/colormap_utils.rs:14:5
[INFO] [stdout]    |
[INFO] [stdout] 14 | use crate::tiff::TiffReader;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::tiff::geo_key_parser::GeoKeyParser`
[INFO] [stdout]   --> src/utils/colormap_utils.rs:15:5
[INFO] [stdout]    |
[INFO] [stdout] 15 | use crate::tiff::geo_key_parser::GeoKeyParser;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::coordinate::BoundingBox`
[INFO] [stdout]  --> src/utils/coordinate_utils.rs:8:5
[INFO] [stdout]   |
[INFO] [stdout] 8 | use crate::coordinate::BoundingBox;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `info`
[INFO] [stdout]   --> src/utils/coordinate_utils.rs:10:18
[INFO] [stdout]    |
[INFO] [stdout] 10 | use log::{debug, info};
[INFO] [stdout]    |                  ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `photometric`
[INFO] [stdout]   --> src/utils/reprojection_utils.rs:14:49
[INFO] [stdout]    |
[INFO] [stdout] 14 | use crate::tiff::constants::{tags, field_types, photometric};
[INFO] [stdout]    |                                                 ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `debug`
[INFO] [stdout]  --> src/utils/filter_utils.rs:8:11
[INFO] [stdout]   |
[INFO] [stdout] 8 | use log::{debug, info};
[INFO] [stdout]   |           ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `debug` and `warn`
[INFO] [stdout]  --> src/extractor/array_strategy.rs:7:17
[INFO] [stdout]   |
[INFO] [stdout] 7 | use log::{info, debug, warn};
[INFO] [stdout]   |                 ^^^^^  ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::path::Path`
[INFO] [stdout]   --> src/extractor/array_strategy.rs:10:5
[INFO] [stdout]    |
[INFO] [stdout] 10 | use std::path::Path;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `debug`
[INFO] [stdout]  --> src/commands/extract_command.rs:2:11
[INFO] [stdout]   |
[INFO] [stdout] 2 | use log::{debug, info, warn, error};
[INFO] [stdout]   |           ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::coordinate::BoundingBox`
[INFO] [stdout]  --> src/commands/extract_command.rs:9:5
[INFO] [stdout]   |
[INFO] [stdout] 9 | use crate::coordinate::BoundingBox;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::tiff::constants::epsg`
[INFO] [stdout]   --> src/commands/extract_command.rs:11:5
[INFO] [stdout]    |
[INFO] [stdout] 11 | use crate::tiff::constants::epsg;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::tiff::types::TIFF`
[INFO] [stdout]   --> src/commands/extract_command.rs:12:5
[INFO] [stdout]    |
[INFO] [stdout] 12 | use crate::tiff::types::TIFF;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::utils::reference_utils`
[INFO] [stdout]   --> src/commands/extract_command.rs:14:5
[INFO] [stdout]    |
[INFO] [stdout] 14 | use crate::utils::reference_utils;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `error`
[INFO] [stdout]  --> src/commands/convert_command.rs:7:17
[INFO] [stdout]   |
[INFO] [stdout] 7 | use log::{info, error};
[INFO] [stdout]   |                 ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::path::Path`
[INFO] [stdout]  --> src/api.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::path::Path;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Read`
[INFO] [stdout]  --> src/tiff/reader.rs:8:26
[INFO] [stdout]   |
[INFO] [stdout] 8 | use std::io::{BufReader, Read, Seek, SeekFrom};
[INFO] [stdout]   |                          ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `super::handler::CompressionHandler`
[INFO] [stdout]   --> src/compression/converter.rs:11:5
[INFO] [stdout]    |
[INFO] [stdout] 11 | use super::handler::CompressionHandler;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `GenericImageView`
[INFO] [stdout]   --> src/extractor/array_strategy.rs:11:27
[INFO] [stdout]    |
[INFO] [stdout] 11 | use image::{DynamicImage, GenericImageView};
[INFO] [stdout]    |                           ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `GenericImageView`
[INFO] [stdout]  --> src/utils/mask_utils.rs:6:27
[INFO] [stdout]   |
[INFO] [stdout] 6 | use image::{DynamicImage, GenericImageView, Rgba, RgbaImage};
[INFO] [stdout]   |                           ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unreachable pattern
[INFO] [stdout]    --> src/tiff/geotags.rs:187:13
[INFO] [stdout]     |
[INFO] [stdout] 184 |             2000..=2056 => "NAD 83 / State Plane (US)".to_string(),
[INFO] [stdout]     |             ----------- matches all the relevant values
[INFO] [stdout] ...
[INFO] [stdout] 187 |             2044 => "NAD 83 / Alaska Albers".to_string(),
[INFO] [stdout]     |             ^^^^ no value can reach this
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unreachable_patterns)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `sorted_ifds`
[INFO] [stdout]    --> src/tiff/builders/writer.rs:237:9
[INFO] [stdout]     |
[INFO] [stdout] 237 |         sorted_ifds: &[IFD],
[INFO] [stdout]     |         ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_sorted_ifds`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `projection` is never read
[INFO] [stdout]    --> src/tiff/geo_key_parser.rs:300:30
[INFO] [stdout]     |
[INFO] [stdout] 300 |         let mut projection = String::new();
[INFO] [stdout]     |                              ^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = help: maybe it is overwritten before being read?
[INFO] [stdout]     = note: `#[warn(unused_assignments)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `target_epsg`
[INFO] [stdout]    --> src/utils/image_extraction_utils.rs:158:61
[INFO] [stdout]     |
[INFO] [stdout] 158 | fn try_transform_bbox(bbox: &BoundingBox, source_epsg: u32, target_epsg: u32) -> BoundingBox {
[INFO] [stdout]     |                                                             ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_target_epsg`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `logger`
[INFO] [stdout]    --> src/utils/image_extraction_utils.rs:435:5
[INFO] [stdout]     |
[INFO] [stdout] 435 |     logger: &Logger
[INFO] [stdout]     |     ^^^^^^ help: if this is intentional, prefix it with an underscore: `_logger`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `builder`
[INFO] [stdout]    --> src/utils/reprojection_utils.rs:266:5
[INFO] [stdout]     |
[INFO] [stdout] 266 |     builder: &mut TiffBuilder,
[INFO] [stdout]     |     ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_builder`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `ifd_index`
[INFO] [stdout]    --> src/utils/reprojection_utils.rs:267:5
[INFO] [stdout]     |
[INFO] [stdout] 267 |     ifd_index: usize,
[INFO] [stdout]     |     ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_ifd_index`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `photometric`
[INFO] [stdout]   --> src/extractor/tiff_strategy.rs:75:31
[INFO] [stdout]    |
[INFO] [stdout] 75 |         let (bits_per_sample, photometric, samples_per_pixel) =
[INFO] [stdout]    |                               ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_photometric`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `image_for_tiff`
[INFO] [stdout]    --> src/extractor/tiff_strategy.rs:118:13
[INFO] [stdout]     |
[INFO] [stdout] 118 |         let image_for_tiff = final_image.to_rgb8();
[INFO] [stdout]     |             ^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_image_for_tiff`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `img_height`
[INFO] [stdout]    --> src/extractor/tile_reader.rs:143:25
[INFO] [stdout]     |
[INFO] [stdout] 143 |         let (img_width, img_height) = self.ifd.get_dimensions()
[INFO] [stdout]     |                         ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_img_height`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `shape`
[INFO] [stdout]    --> src/extractor/array_strategy.rs:249:48
[INFO] [stdout]     |
[INFO] [stdout] 249 |                        region: Option<Region>, shape: Option<&str>) -> TiffResult<()> {
[INFO] [stdout]     |                                                ^^^^^ help: if this is intentional, prefix it with an underscore: `_shape`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `has_geotiff_tags` is assigned to, but never used
[INFO] [stdout]    --> src/commands/analyze_command.rs:291:13
[INFO] [stdout]     |
[INFO] [stdout] 291 |         let mut has_geotiff_tags = false;
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: consider using `_has_geotiff_tags` instead
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `has_geotiff_tags` is never read
[INFO] [stdout]    --> src/commands/analyze_command.rs:308:17
[INFO] [stdout]     |
[INFO] [stdout] 308 |                 has_geotiff_tags = true;
[INFO] [stdout]     |                 ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = help: maybe it is overwritten before being read?
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `logger` is never read
[INFO] [stdout]   --> src/tiff/reader.rs:48:5
[INFO] [stdout]    |
[INFO] [stdout] 44 | pub struct TiffReader<'a> {
[INFO] [stdout]    |            ---------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 48 |     logger: &'a Logger,
[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 `create_test_tiff_buffer` is never used
[INFO] [stdout]  --> src/tiff/tests/test_utils.rs:5:8
[INFO] [stdout]   |
[INFO] [stdout] 5 | pub fn create_test_tiff_buffer() -> Cursor<Vec<u8>> {
[INFO] [stdout]   |        ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `create_test_bigtiff_buffer` is never used
[INFO] [stdout]   --> src/tiff/tests/test_utils.rs:39:8
[INFO] [stdout]    |
[INFO] [stdout] 39 | pub fn create_test_bigtiff_buffer() -> Cursor<Vec<u8>> {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `GEOTIFF_TAGS_FILE` is never used
[INFO] [stdout]   --> src/tiff/geotags.rs:12:7
[INFO] [stdout]    |
[INFO] [stdout] 12 | const GEOTIFF_TAGS_FILE: &str = "geotiff_tags.toml";
[INFO] [stdout]    |       ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `BIG_ENDIAN_MARKER` is never used
[INFO] [stdout]   --> src/tiff/constants.rs:19:15
[INFO] [stdout]    |
[INFO] [stdout] 19 |     pub const BIG_ENDIAN_MARKER: [u8; 2] = [0x4D, 0x4D];
[INFO] [stdout]    |               ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `NONE` is never used
[INFO] [stdout]    --> src/tiff/constants.rs:143:15
[INFO] [stdout]     |
[INFO] [stdout] 143 |     pub const NONE: u16 = 1;              // No meaningful units
[INFO] [stdout]     |               ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `INCH` is never used
[INFO] [stdout]    --> src/tiff/constants.rs:144:15
[INFO] [stdout]     |
[INFO] [stdout] 144 |     pub const INCH: u16 = 2;              // Inches (default)
[INFO] [stdout]     |               ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `CENTIMETER` is never used
[INFO] [stdout]    --> src/tiff/constants.rs:145:15
[INFO] [stdout]     |
[INFO] [stdout] 145 |     pub const CENTIMETER: u16 = 3;        // Centimeters
[INFO] [stdout]     |               ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `TOP_LEFT` is never used
[INFO] [stdout]    --> src/tiff/constants.rs:150:15
[INFO] [stdout]     |
[INFO] [stdout] 150 |     pub const TOP_LEFT: u16 = 1;          // 0th row = top, 0th column = left side
[INFO] [stdout]     |               ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `TOP_RIGHT` is never used
[INFO] [stdout]    --> src/tiff/constants.rs:151:15
[INFO] [stdout]     |
[INFO] [stdout] 151 |     pub const TOP_RIGHT: u16 = 2;         // 0th row = top, 0th column = right side
[INFO] [stdout]     |               ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `BOTTOM_RIGHT` is never used
[INFO] [stdout]    --> src/tiff/constants.rs:152:15
[INFO] [stdout]     |
[INFO] [stdout] 152 |     pub const BOTTOM_RIGHT: u16 = 3;      // 0th row = bottom, 0th column = right side
[INFO] [stdout]     |               ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `BOTTOM_LEFT` is never used
[INFO] [stdout]    --> src/tiff/constants.rs:153:15
[INFO] [stdout]     |
[INFO] [stdout] 153 |     pub const BOTTOM_LEFT: u16 = 4;       // 0th row = bottom, 0th column = left side
[INFO] [stdout]     |               ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `LEFT_TOP` is never used
[INFO] [stdout]    --> src/tiff/constants.rs:154:15
[INFO] [stdout]     |
[INFO] [stdout] 154 |     pub const LEFT_TOP: u16 = 5;          // 0th row = left side, 0th column = top
[INFO] [stdout]     |               ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `RIGHT_TOP` is never used
[INFO] [stdout]    --> src/tiff/constants.rs:155:15
[INFO] [stdout]     |
[INFO] [stdout] 155 |     pub const RIGHT_TOP: u16 = 6;         // 0th row = right side, 0th column = top
[INFO] [stdout]     |               ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]    Compiling rasterkit v0.1.5 (/opt/rustwide/workdir)
[INFO] [stdout] warning: constant `RIGHT_BOTTOM` is never used
[INFO] [stdout]    --> src/tiff/constants.rs:156:15
[INFO] [stdout]     |
[INFO] [stdout] 156 |     pub const RIGHT_BOTTOM: u16 = 7;      // 0th row = right side, 0th column = bottom
[INFO] [stdout]     |               ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `LEFT_BOTTOM` is never used
[INFO] [stdout]    --> src/tiff/constants.rs:157:15
[INFO] [stdout]     |
[INFO] [stdout] 157 |     pub const LEFT_BOTTOM: u16 = 8;       // 0th row = left side, 0th column = bottom
[INFO] [stdout]     |               ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `MSB_TO_LSB` is never used
[INFO] [stdout]    --> src/tiff/constants.rs:169:15
[INFO] [stdout]     |
[INFO] [stdout] 169 |     pub const MSB_TO_LSB: u16 = 1;              // Most significant bit to least
[INFO] [stdout]     |               ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `LSB_TO_MSB` is never used
[INFO] [stdout]    --> src/tiff/constants.rs:170:15
[INFO] [stdout]     |
[INFO] [stdout] 170 |     pub const LSB_TO_MSB: u16 = 2;              // Least significant bit to most
[INFO] [stdout]     |               ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `UNSPECIFIED` is never used
[INFO] [stdout]    --> src/tiff/constants.rs:175:15
[INFO] [stdout]     |
[INFO] [stdout] 175 |     pub const UNSPECIFIED: u16 = 0;             // Unspecified data
[INFO] [stdout]     |               ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `ASSOCIATED_ALPHA` is never used
[INFO] [stdout]    --> src/tiff/constants.rs:176:15
[INFO] [stdout]     |
[INFO] [stdout] 176 |     pub const ASSOCIATED_ALPHA: u16 = 1;        // Associated alpha data
[INFO] [stdout]     |               ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `UNASSOCIATED_ALPHA` is never used
[INFO] [stdout]    --> src/tiff/constants.rs:177:15
[INFO] [stdout]     |
[INFO] [stdout] 177 |     pub const UNASSOCIATED_ALPHA: u16 = 2;      // Unassociated alpha data
[INFO] [stdout]     |               ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `REDUCED_RESOLUTION` is never used
[INFO] [stdout]    --> src/tiff/constants.rs:182:15
[INFO] [stdout]     |
[INFO] [stdout] 182 |     pub const REDUCED_RESOLUTION: u32 = 1;      // Reduced resolution version of another image
[INFO] [stdout]     |               ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `SINGLE_PAGE` is never used
[INFO] [stdout]    --> src/tiff/constants.rs:183:15
[INFO] [stdout]     |
[INFO] [stdout] 183 |     pub const SINGLE_PAGE: u32 = 2;             // One page of many
[INFO] [stdout]     |               ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `TRANSPARENCY_MASK` is never used
[INFO] [stdout]    --> src/tiff/constants.rs:184:15
[INFO] [stdout]     |
[INFO] [stdout] 184 |     pub const TRANSPARENCY_MASK: u32 = 4;       // Transparency mask for another image
[INFO] [stdout]     |               ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `GEOG_LINEAR_UNITS` is never used
[INFO] [stdout]    --> src/tiff/constants.rs:192:15
[INFO] [stdout]     |
[INFO] [stdout] 192 |     pub const GEOG_LINEAR_UNITS: u16 = 2052;  // GeogLinearUnitsGeoKey
[INFO] [stdout]     |               ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `PROJ_LINEAR_UNITS` is never used
[INFO] [stdout]    --> src/tiff/constants.rs:193:15
[INFO] [stdout]     |
[INFO] [stdout] 193 |     pub const PROJ_LINEAR_UNITS: u16 = 3076;  // ProjLinearUnitsGeoKey
[INFO] [stdout]     |               ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `validate_range` is never used
[INFO] [stdout]    --> src/tiff/validation.rs:100:8
[INFO] [stdout]     |
[INFO] [stdout] 100 | pub fn validate_range<T>(value: T, min: T, max: T, name: &str) -> TiffResult<()>
[INFO] [stdout]     |        ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `from_hex_color` is never used
[INFO] [stdout]    --> src/tiff/colormap.rs:149:12
[INFO] [stdout]     |
[INFO] [stdout]  98 | impl ColorMapEntry {
[INFO] [stdout]     | ------------------ associated function in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 149 |     pub fn from_hex_color(value: u16, hex: &str, label: Option<String>) -> TiffResult<Self> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `to_tiff_colormap`, `interpolate_ramp_values`, and `apply_to_builder` are never used
[INFO] [stdout]    --> src/tiff/colormap.rs:439:12
[INFO] [stdout]     |
[INFO] [stdout] 169 | impl ColorMap {
[INFO] [stdout]     | ------------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 439 |     pub fn to_tiff_colormap(&self) -> (u16, Vec<u16>) {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 484 |     fn interpolate_ramp_values(
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 609 |     pub fn apply_to_builder(&self, builder: &mut TiffBuilder, ifd_index: usize) -> TiffResult<()> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `interpolate_color_component` is never used
[INFO] [stdout]    --> src/tiff/colormap.rs:928:4
[INFO] [stdout]     |
[INFO] [stdout] 928 | fn interpolate_color_component(start: u8, end: u8, t: f32) -> u16 {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `ProgressTracker` is never constructed
[INFO] [stdout]  --> src/utils/progress.rs:3:12
[INFO] [stdout]   |
[INFO] [stdout] 3 | pub struct ProgressTracker {
[INFO] [stdout]   |            ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new`, `increment`, `finish`, and `set_message` are never used
[INFO] [stdout]   --> src/utils/progress.rs:8:12
[INFO] [stdout]    |
[INFO] [stdout]  7 | impl ProgressTracker {
[INFO] [stdout]    | -------------------- associated items in this implementation
[INFO] [stdout]  8 |     pub fn new(total: u64, description: &str) -> Self {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 21 |     pub fn increment(&self, amount: u64) {
[INFO] [stdout]    |            ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 25 |     pub fn finish(&self) {
[INFO] [stdout]    |            ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 29 |     pub fn set_message(&self, msg: &str) {
[INFO] [stdout]    |            ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `calculate_padding` is never used
[INFO] [stdout]   --> src/utils/write_utils.rs:64:8
[INFO] [stdout]    |
[INFO] [stdout] 64 | pub fn calculate_padding(data_len: usize) -> usize {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `detect_byte_order` is never used
[INFO] [stdout]   --> src/utils/byte_order_utils.rs:11:8
[INFO] [stdout]    |
[INFO] [stdout] 11 | pub fn detect_byte_order(reader: &mut dyn SeekableReader) -> TiffResult<Box<dyn ByteOrderHandler>> {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `get_handler_unwrapped` is never used
[INFO] [stdout]   --> src/utils/byte_order_utils.rs:19:8
[INFO] [stdout]    |
[INFO] [stdout] 19 | pub fn get_handler_unwrapped(handler: &Option<Box<dyn ByteOrderHandler>>) -> TiffResult<&Box<dyn ByteOrderHandler>> {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `is_in_region` is never used
[INFO] [stdout]    --> src/utils/image_extraction_utils.rs:612:8
[INFO] [stdout]     |
[INFO] [stdout] 612 | pub fn is_in_region(x: u32, y: u32, region: &Region) -> bool {
[INFO] [stdout]     |        ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `calc_buffer_coords` is never used
[INFO] [stdout]    --> src/utils/image_extraction_utils.rs:628:8
[INFO] [stdout]     |
[INFO] [stdout] 628 | pub fn calc_buffer_coords(global_x: u32, global_y: u32, region: &Region) -> (u32, u32) {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `apply_shape_mask` is never used
[INFO] [stdout]    --> src/utils/image_extraction_utils.rs:643:8
[INFO] [stdout]     |
[INFO] [stdout] 643 | pub fn apply_shape_mask(image: &DynamicImage, shape: &str) -> DynamicImage {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `ensure_png_extension` is never used
[INFO] [stdout]    --> src/utils/image_extraction_utils.rs:690:8
[INFO] [stdout]     |
[INFO] [stdout] 690 | pub fn ensure_png_extension(path: &str) -> String {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `EARTH_RADIUS` is never used
[INFO] [stdout]   --> src/utils/coordinate_transformer.rs:12:11
[INFO] [stdout]    |
[INFO] [stdout] 12 | pub const EARTH_RADIUS: f64 = 6378137.0;
[INFO] [stdout]    |           ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `wgs84_to_web_mercator` is never used
[INFO] [stdout]   --> src/utils/coordinate_transformer.rs:22:8
[INFO] [stdout]    |
[INFO] [stdout] 22 | pub fn wgs84_to_web_mercator(lon: f64, lat: f64) -> Point {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `web_mercator_to_wgs84` is never used
[INFO] [stdout]   --> src/utils/coordinate_transformer.rs:55:8
[INFO] [stdout]    |
[INFO] [stdout] 55 | pub fn web_mercator_to_wgs84(x: f64, y: f64) -> Point {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `wgs84_bbox_to_web_mercator` is never used
[INFO] [stdout]   --> src/utils/coordinate_transformer.rs:78:8
[INFO] [stdout]    |
[INFO] [stdout] 78 | pub fn wgs84_bbox_to_web_mercator(min_x: f64, min_y: f64, max_x: f64, max_y: f64) -> (f64, f64, f64, f64) {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `logger` is never read
[INFO] [stdout]   --> src/compression/converter.rs:15:5
[INFO] [stdout]    |
[INFO] [stdout] 14 | pub struct CompressionConverter<'a> {
[INFO] [stdout]    |            -------------------- field in this struct
[INFO] [stdout] 15 |     logger: &'a Logger,
[INFO] [stdout]    |     ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `logger` is never read
[INFO] [stdout]    --> src/extractor/extractor_strategy.rs:155:5
[INFO] [stdout]     |
[INFO] [stdout] 153 | pub struct ImageExtractor<'a> {
[INFO] [stdout]     |            -------------- field in this struct
[INFO] [stdout] 154 |     /// Logger for recording operations
[INFO] [stdout] 155 |     logger: &'a Logger,
[INFO] [stdout]     |     ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `logger` is never read
[INFO] [stdout]    --> src/extractor/array_strategy.rs:221:5
[INFO] [stdout]     |
[INFO] [stdout] 219 | pub struct ArrayExtractorStrategy<'a> {
[INFO] [stdout]     |            ---------------------- field in this struct
[INFO] [stdout] 220 |     /// Logger for recording operations
[INFO] [stdout] 221 |     logger: &'a Logger,
[INFO] [stdout]     |     ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `save_colorized_image` and `determine_region_with_radius` are never used
[INFO] [stdout]    --> src/commands/extract_command.rs:415:8
[INFO] [stdout]     |
[INFO] [stdout]  54 | impl<'a> ExtractCommand<'a> {
[INFO] [stdout]     | --------------------------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 415 |     fn save_colorized_image(&self, rgb_image: image::RgbImage, region: Option<Region>) -> TiffResult<()> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 509 |     fn determine_region_with_radius(&self, radius_meters: Option<f64>) -> TiffResult<Option<Region>> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `self`
[INFO] [stdout]  --> src/tiff/colormap.rs:7:15
[INFO] [stdout]   |
[INFO] [stdout] 7 | use std::io::{self, BufReader, Read, Write, BufWriter, BufRead};
[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: `error`
[INFO] [stdout]   --> src/tiff/colormap.rs:10:30
[INFO] [stdout]    |
[INFO] [stdout] 10 | use log::{debug, info, warn, error};
[INFO] [stdout]    |                              ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around block return value
[INFO] [stdout]    --> src/tiff/colormap.rs:929:5
[INFO] [stdout]     |
[INFO] [stdout] 929 |     ((start as f32 * (1.0 - t) + end as f32 * t) as u16 * 257)
[INFO] [stdout]     |     ^                                                        ^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_parens)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]     |
[INFO] [stdout] 929 -     ((start as f32 * (1.0 - t) + end as f32 * t) as u16 * 257)
[INFO] [stdout] 929 +     (start as f32 * (1.0 - t) + end as f32 * t) as u16 * 257
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::utils::coordinate_transformer`
[INFO] [stdout]   --> src/utils/image_extraction_utils.rs:23:5
[INFO] [stdout]    |
[INFO] [stdout] 23 | use crate::utils::coordinate_transformer;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `debug`
[INFO] [stdout]  --> src/utils/colormap_utils.rs:7:23
[INFO] [stdout]   |
[INFO] [stdout] 7 | use log::{info, warn, debug};
[INFO] [stdout]   |                       ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::tiff::TiffReader`
[INFO] [stdout]   --> src/utils/colormap_utils.rs:14:5
[INFO] [stdout]    |
[INFO] [stdout] 14 | use crate::tiff::TiffReader;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::tiff::geo_key_parser::GeoKeyParser`
[INFO] [stdout]   --> src/utils/colormap_utils.rs:15:5
[INFO] [stdout]    |
[INFO] [stdout] 15 | use crate::tiff::geo_key_parser::GeoKeyParser;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::coordinate::BoundingBox`
[INFO] [stdout]  --> src/utils/coordinate_utils.rs:8:5
[INFO] [stdout]   |
[INFO] [stdout] 8 | use crate::coordinate::BoundingBox;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `info`
[INFO] [stdout]   --> src/utils/coordinate_utils.rs:10:18
[INFO] [stdout]    |
[INFO] [stdout] 10 | use log::{debug, info};
[INFO] [stdout]    |                  ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `photometric`
[INFO] [stdout]   --> src/utils/reprojection_utils.rs:14:49
[INFO] [stdout]    |
[INFO] [stdout] 14 | use crate::tiff::constants::{tags, field_types, photometric};
[INFO] [stdout]    |                                                 ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `debug`
[INFO] [stdout]  --> src/utils/filter_utils.rs:8:11
[INFO] [stdout]   |
[INFO] [stdout] 8 | use log::{debug, info};
[INFO] [stdout]   |           ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `debug` and `warn`
[INFO] [stdout]  --> src/extractor/array_strategy.rs:7:17
[INFO] [stdout]   |
[INFO] [stdout] 7 | use log::{info, debug, warn};
[INFO] [stdout]   |                 ^^^^^  ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::path::Path`
[INFO] [stdout]   --> src/extractor/array_strategy.rs:10:5
[INFO] [stdout]    |
[INFO] [stdout] 10 | use std::path::Path;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `debug`
[INFO] [stdout]  --> src/commands/extract_command.rs:2:11
[INFO] [stdout]   |
[INFO] [stdout] 2 | use log::{debug, info, warn, error};
[INFO] [stdout]   |           ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::coordinate::BoundingBox`
[INFO] [stdout]  --> src/commands/extract_command.rs:9:5
[INFO] [stdout]   |
[INFO] [stdout] 9 | use crate::coordinate::BoundingBox;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::tiff::constants::epsg`
[INFO] [stdout]   --> src/commands/extract_command.rs:11:5
[INFO] [stdout]    |
[INFO] [stdout] 11 | use crate::tiff::constants::epsg;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::tiff::types::TIFF`
[INFO] [stdout]   --> src/commands/extract_command.rs:12:5
[INFO] [stdout]    |
[INFO] [stdout] 12 | use crate::tiff::types::TIFF;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::utils::reference_utils`
[INFO] [stdout]   --> src/commands/extract_command.rs:14:5
[INFO] [stdout]    |
[INFO] [stdout] 14 | use crate::utils::reference_utils;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `error`
[INFO] [stdout]  --> src/commands/convert_command.rs:7:17
[INFO] [stdout]   |
[INFO] [stdout] 7 | use log::{info, error};
[INFO] [stdout]   |                 ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::path::Path`
[INFO] [stdout]  --> src/api.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::path::Path;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Read`
[INFO] [stdout]  --> src/tiff/reader.rs:8:26
[INFO] [stdout]   |
[INFO] [stdout] 8 | use std::io::{BufReader, Read, Seek, SeekFrom};
[INFO] [stdout]   |                          ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `super::handler::CompressionHandler`
[INFO] [stdout]   --> src/compression/converter.rs:11:5
[INFO] [stdout]    |
[INFO] [stdout] 11 | use super::handler::CompressionHandler;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `GenericImageView`
[INFO] [stdout]   --> src/extractor/array_strategy.rs:11:27
[INFO] [stdout]    |
[INFO] [stdout] 11 | use image::{DynamicImage, GenericImageView};
[INFO] [stdout]    |                           ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `GenericImageView`
[INFO] [stdout]  --> src/utils/mask_utils.rs:6:27
[INFO] [stdout]   |
[INFO] [stdout] 6 | use image::{DynamicImage, GenericImageView, Rgba, RgbaImage};
[INFO] [stdout]   |                           ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unreachable pattern
[INFO] [stdout]    --> src/tiff/geotags.rs:187:13
[INFO] [stdout]     |
[INFO] [stdout] 184 |             2000..=2056 => "NAD 83 / State Plane (US)".to_string(),
[INFO] [stdout]     |             ----------- matches all the relevant values
[INFO] [stdout] ...
[INFO] [stdout] 187 |             2044 => "NAD 83 / Alaska Albers".to_string(),
[INFO] [stdout]     |             ^^^^ no value can reach this
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unreachable_patterns)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `sorted_ifds`
[INFO] [stdout]    --> src/tiff/builders/writer.rs:237:9
[INFO] [stdout]     |
[INFO] [stdout] 237 |         sorted_ifds: &[IFD],
[INFO] [stdout]     |         ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_sorted_ifds`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `projection` is never read
[INFO] [stdout]    --> src/tiff/geo_key_parser.rs:300:30
[INFO] [stdout]     |
[INFO] [stdout] 300 |         let mut projection = String::new();
[INFO] [stdout]     |                              ^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = help: maybe it is overwritten before being read?
[INFO] [stdout]     = note: `#[warn(unused_assignments)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `target_epsg`
[INFO] [stdout]    --> src/utils/image_extraction_utils.rs:158:61
[INFO] [stdout]     |
[INFO] [stdout] 158 | fn try_transform_bbox(bbox: &BoundingBox, source_epsg: u32, target_epsg: u32) -> BoundingBox {
[INFO] [stdout]     |                                                             ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_target_epsg`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `logger`
[INFO] [stdout]    --> src/utils/image_extraction_utils.rs:435:5
[INFO] [stdout]     |
[INFO] [stdout] 435 |     logger: &Logger
[INFO] [stdout]     |     ^^^^^^ help: if this is intentional, prefix it with an underscore: `_logger`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `builder`
[INFO] [stdout]    --> src/utils/reprojection_utils.rs:266:5
[INFO] [stdout]     |
[INFO] [stdout] 266 |     builder: &mut TiffBuilder,
[INFO] [stdout]     |     ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_builder`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `ifd_index`
[INFO] [stdout]    --> src/utils/reprojection_utils.rs:267:5
[INFO] [stdout]     |
[INFO] [stdout] 267 |     ifd_index: usize,
[INFO] [stdout]     |     ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_ifd_index`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `photometric`
[INFO] [stdout]   --> src/extractor/tiff_strategy.rs:75:31
[INFO] [stdout]    |
[INFO] [stdout] 75 |         let (bits_per_sample, photometric, samples_per_pixel) =
[INFO] [stdout]    |                               ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_photometric`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `image_for_tiff`
[INFO] [stdout]    --> src/extractor/tiff_strategy.rs:118:13
[INFO] [stdout]     |
[INFO] [stdout] 118 |         let image_for_tiff = final_image.to_rgb8();
[INFO] [stdout]     |             ^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_image_for_tiff`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `img_height`
[INFO] [stdout]    --> src/extractor/tile_reader.rs:143:25
[INFO] [stdout]     |
[INFO] [stdout] 143 |         let (img_width, img_height) = self.ifd.get_dimensions()
[INFO] [stdout]     |                         ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_img_height`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `shape`
[INFO] [stdout]    --> src/extractor/array_strategy.rs:249:48
[INFO] [stdout]     |
[INFO] [stdout] 249 |                        region: Option<Region>, shape: Option<&str>) -> TiffResult<()> {
[INFO] [stdout]     |                                                ^^^^^ help: if this is intentional, prefix it with an underscore: `_shape`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `has_geotiff_tags` is assigned to, but never used
[INFO] [stdout]    --> src/commands/analyze_command.rs:291:13
[INFO] [stdout]     |
[INFO] [stdout] 291 |         let mut has_geotiff_tags = false;
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: consider using `_has_geotiff_tags` instead
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `has_geotiff_tags` is never read
[INFO] [stdout]    --> src/commands/analyze_command.rs:308:17
[INFO] [stdout]     |
[INFO] [stdout] 308 |                 has_geotiff_tags = true;
[INFO] [stdout]     |                 ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = help: maybe it is overwritten before being read?
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `logger` is never read
[INFO] [stdout]   --> src/tiff/reader.rs:48:5
[INFO] [stdout]    |
[INFO] [stdout] 44 | pub struct TiffReader<'a> {
[INFO] [stdout]    |            ---------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 48 |     logger: &'a Logger,
[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 `create_test_tiff_buffer` is never used
[INFO] [stdout]  --> src/tiff/tests/test_utils.rs:5:8
[INFO] [stdout]   |
[INFO] [stdout] 5 | pub fn create_test_tiff_buffer() -> Cursor<Vec<u8>> {
[INFO] [stdout]   |        ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `create_test_bigtiff_buffer` is never used
[INFO] [stdout]   --> src/tiff/tests/test_utils.rs:39:8
[INFO] [stdout]    |
[INFO] [stdout] 39 | pub fn create_test_bigtiff_buffer() -> Cursor<Vec<u8>> {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `GEOTIFF_TAGS_FILE` is never used
[INFO] [stdout]   --> src/tiff/geotags.rs:12:7
[INFO] [stdout]    |
[INFO] [stdout] 12 | const GEOTIFF_TAGS_FILE: &str = "geotiff_tags.toml";
[INFO] [stdout]    |       ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `BIG_ENDIAN_MARKER` is never used
[INFO] [stdout]   --> src/tiff/constants.rs:19:15
[INFO] [stdout]    |
[INFO] [stdout] 19 |     pub const BIG_ENDIAN_MARKER: [u8; 2] = [0x4D, 0x4D];
[INFO] [stdout]    |               ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `NONE` is never used
[INFO] [stdout]    --> src/tiff/constants.rs:143:15
[INFO] [stdout]     |
[INFO] [stdout] 143 |     pub const NONE: u16 = 1;              // No meaningful units
[INFO] [stdout]     |               ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `INCH` is never used
[INFO] [stdout]    --> src/tiff/constants.rs:144:15
[INFO] [stdout]     |
[INFO] [stdout] 144 |     pub const INCH: u16 = 2;              // Inches (default)
[INFO] [stdout]     |               ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `CENTIMETER` is never used
[INFO] [stdout]    --> src/tiff/constants.rs:145:15
[INFO] [stdout]     |
[INFO] [stdout] 145 |     pub const CENTIMETER: u16 = 3;        // Centimeters
[INFO] [stdout]     |               ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `TOP_LEFT` is never used
[INFO] [stdout]    --> src/tiff/constants.rs:150:15
[INFO] [stdout]     |
[INFO] [stdout] 150 |     pub const TOP_LEFT: u16 = 1;          // 0th row = top, 0th column = left side
[INFO] [stdout]     |               ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `TOP_RIGHT` is never used
[INFO] [stdout]    --> src/tiff/constants.rs:151:15
[INFO] [stdout]     |
[INFO] [stdout] 151 |     pub const TOP_RIGHT: u16 = 2;         // 0th row = top, 0th column = right side
[INFO] [stdout]     |               ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `BOTTOM_RIGHT` is never used
[INFO] [stdout]    --> src/tiff/constants.rs:152:15
[INFO] [stdout]     |
[INFO] [stdout] 152 |     pub const BOTTOM_RIGHT: u16 = 3;      // 0th row = bottom, 0th column = right side
[INFO] [stdout]     |               ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `BOTTOM_LEFT` is never used
[INFO] [stdout]    --> src/tiff/constants.rs:153:15
[INFO] [stdout]     |
[INFO] [stdout] 153 |     pub const BOTTOM_LEFT: u16 = 4;       // 0th row = bottom, 0th column = left side
[INFO] [stdout]     |               ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `LEFT_TOP` is never used
[INFO] [stdout]    --> src/tiff/constants.rs:154:15
[INFO] [stdout]     |
[INFO] [stdout] 154 |     pub const LEFT_TOP: u16 = 5;          // 0th row = left side, 0th column = top
[INFO] [stdout]     |               ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `RIGHT_TOP` is never used
[INFO] [stdout]    --> src/tiff/constants.rs:155:15
[INFO] [stdout]     |
[INFO] [stdout] 155 |     pub const RIGHT_TOP: u16 = 6;         // 0th row = right side, 0th column = top
[INFO] [stdout]     |               ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `RIGHT_BOTTOM` is never used
[INFO] [stdout]    --> src/tiff/constants.rs:156:15
[INFO] [stdout]     |
[INFO] [stdout] 156 |     pub const RIGHT_BOTTOM: u16 = 7;      // 0th row = right side, 0th column = bottom
[INFO] [stdout]     |               ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `LEFT_BOTTOM` is never used
[INFO] [stdout]    --> src/tiff/constants.rs:157:15
[INFO] [stdout]     |
[INFO] [stdout] 157 |     pub const LEFT_BOTTOM: u16 = 8;       // 0th row = left side, 0th column = bottom
[INFO] [stdout]     |               ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `MSB_TO_LSB` is never used
[INFO] [stdout]    --> src/tiff/constants.rs:169:15
[INFO] [stdout]     |
[INFO] [stdout] 169 |     pub const MSB_TO_LSB: u16 = 1;              // Most significant bit to least
[INFO] [stdout]     |               ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `LSB_TO_MSB` is never used
[INFO] [stdout]    --> src/tiff/constants.rs:170:15
[INFO] [stdout]     |
[INFO] [stdout] 170 |     pub const LSB_TO_MSB: u16 = 2;              // Least significant bit to most
[INFO] [stdout]     |               ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `UNSPECIFIED` is never used
[INFO] [stdout]    --> src/tiff/constants.rs:175:15
[INFO] [stdout]     |
[INFO] [stdout] 175 |     pub const UNSPECIFIED: u16 = 0;             // Unspecified data
[INFO] [stdout]     |               ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `ASSOCIATED_ALPHA` is never used
[INFO] [stdout]    --> src/tiff/constants.rs:176:15
[INFO] [stdout]     |
[INFO] [stdout] 176 |     pub const ASSOCIATED_ALPHA: u16 = 1;        // Associated alpha data
[INFO] [stdout]     |               ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `UNASSOCIATED_ALPHA` is never used
[INFO] [stdout]    --> src/tiff/constants.rs:177:15
[INFO] [stdout]     |
[INFO] [stdout] 177 |     pub const UNASSOCIATED_ALPHA: u16 = 2;      // Unassociated alpha data
[INFO] [stdout]     |               ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `REDUCED_RESOLUTION` is never used
[INFO] [stdout]    --> src/tiff/constants.rs:182:15
[INFO] [stdout]     |
[INFO] [stdout] 182 |     pub const REDUCED_RESOLUTION: u32 = 1;      // Reduced resolution version of another image
[INFO] [stdout]     |               ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `SINGLE_PAGE` is never used
[INFO] [stdout]    --> src/tiff/constants.rs:183:15
[INFO] [stdout]     |
[INFO] [stdout] 183 |     pub const SINGLE_PAGE: u32 = 2;             // One page of many
[INFO] [stdout]     |               ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `TRANSPARENCY_MASK` is never used
[INFO] [stdout]    --> src/tiff/constants.rs:184:15
[INFO] [stdout]     |
[INFO] [stdout] 184 |     pub const TRANSPARENCY_MASK: u32 = 4;       // Transparency mask for another image
[INFO] [stdout]     |               ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `GEOG_LINEAR_UNITS` is never used
[INFO] [stdout]    --> src/tiff/constants.rs:192:15
[INFO] [stdout]     |
[INFO] [stdout] 192 |     pub const GEOG_LINEAR_UNITS: u16 = 2052;  // GeogLinearUnitsGeoKey
[INFO] [stdout]     |               ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `PROJ_LINEAR_UNITS` is never used
[INFO] [stdout]    --> src/tiff/constants.rs:193:15
[INFO] [stdout]     |
[INFO] [stdout] 193 |     pub const PROJ_LINEAR_UNITS: u16 = 3076;  // ProjLinearUnitsGeoKey
[INFO] [stdout]     |               ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `validate_range` is never used
[INFO] [stdout]    --> src/tiff/validation.rs:100:8
[INFO] [stdout]     |
[INFO] [stdout] 100 | pub fn validate_range<T>(value: T, min: T, max: T, name: &str) -> TiffResult<()>
[INFO] [stdout]     |        ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `from_hex_color` is never used
[INFO] [stdout]    --> src/tiff/colormap.rs:149:12
[INFO] [stdout]     |
[INFO] [stdout]  98 | impl ColorMapEntry {
[INFO] [stdout]     | ------------------ associated function in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 149 |     pub fn from_hex_color(value: u16, hex: &str, label: Option<String>) -> TiffResult<Self> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `to_tiff_colormap`, `interpolate_ramp_values`, and `apply_to_builder` are never used
[INFO] [stdout]    --> src/tiff/colormap.rs:439:12
[INFO] [stdout]     |
[INFO] [stdout] 169 | impl ColorMap {
[INFO] [stdout]     | ------------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 439 |     pub fn to_tiff_colormap(&self) -> (u16, Vec<u16>) {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 484 |     fn interpolate_ramp_values(
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 609 |     pub fn apply_to_builder(&self, builder: &mut TiffBuilder, ifd_index: usize) -> TiffResult<()> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `interpolate_color_component` is never used
[INFO] [stdout]    --> src/tiff/colormap.rs:928:4
[INFO] [stdout]     |
[INFO] [stdout] 928 | fn interpolate_color_component(start: u8, end: u8, t: f32) -> u16 {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `ProgressTracker` is never constructed
[INFO] [stdout]  --> src/utils/progress.rs:3:12
[INFO] [stdout]   |
[INFO] [stdout] 3 | pub struct ProgressTracker {
[INFO] [stdout]   |            ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new`, `increment`, `finish`, and `set_message` are never used
[INFO] [stdout]   --> src/utils/progress.rs:8:12
[INFO] [stdout]    |
[INFO] [stdout]  7 | impl ProgressTracker {
[INFO] [stdout]    | -------------------- associated items in this implementation
[INFO] [stdout]  8 |     pub fn new(total: u64, description: &str) -> Self {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 21 |     pub fn increment(&self, amount: u64) {
[INFO] [stdout]    |            ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 25 |     pub fn finish(&self) {
[INFO] [stdout]    |            ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 29 |     pub fn set_message(&self, msg: &str) {
[INFO] [stdout]    |            ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `calculate_padding` is never used
[INFO] [stdout]   --> src/utils/write_utils.rs:64:8
[INFO] [stdout]    |
[INFO] [stdout] 64 | pub fn calculate_padding(data_len: usize) -> usize {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `detect_byte_order` is never used
[INFO] [stdout]   --> src/utils/byte_order_utils.rs:11:8
[INFO] [stdout]    |
[INFO] [stdout] 11 | pub fn detect_byte_order(reader: &mut dyn SeekableReader) -> TiffResult<Box<dyn ByteOrderHandler>> {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `get_handler_unwrapped` is never used
[INFO] [stdout]   --> src/utils/byte_order_utils.rs:19:8
[INFO] [stdout]    |
[INFO] [stdout] 19 | pub fn get_handler_unwrapped(handler: &Option<Box<dyn ByteOrderHandler>>) -> TiffResult<&Box<dyn ByteOrderHandler>> {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `is_in_region` is never used
[INFO] [stdout]    --> src/utils/image_extraction_utils.rs:612:8
[INFO] [stdout]     |
[INFO] [stdout] 612 | pub fn is_in_region(x: u32, y: u32, region: &Region) -> bool {
[INFO] [stdout]     |        ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `calc_buffer_coords` is never used
[INFO] [stdout]    --> src/utils/image_extraction_utils.rs:628:8
[INFO] [stdout]     |
[INFO] [stdout] 628 | pub fn calc_buffer_coords(global_x: u32, global_y: u32, region: &Region) -> (u32, u32) {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `apply_shape_mask` is never used
[INFO] [stdout]    --> src/utils/image_extraction_utils.rs:643:8
[INFO] [stdout]     |
[INFO] [stdout] 643 | pub fn apply_shape_mask(image: &DynamicImage, shape: &str) -> DynamicImage {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `ensure_png_extension` is never used
[INFO] [stdout]    --> src/utils/image_extraction_utils.rs:690:8
[INFO] [stdout]     |
[INFO] [stdout] 690 | pub fn ensure_png_extension(path: &str) -> String {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `EARTH_RADIUS` is never used
[INFO] [stdout]   --> src/utils/coordinate_transformer.rs:12:11
[INFO] [stdout]    |
[INFO] [stdout] 12 | pub const EARTH_RADIUS: f64 = 6378137.0;
[INFO] [stdout]    |           ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `wgs84_to_web_mercator` is never used
[INFO] [stdout]   --> src/utils/coordinate_transformer.rs:22:8
[INFO] [stdout]    |
[INFO] [stdout] 22 | pub fn wgs84_to_web_mercator(lon: f64, lat: f64) -> Point {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `web_mercator_to_wgs84` is never used
[INFO] [stdout]   --> src/utils/coordinate_transformer.rs:55:8
[INFO] [stdout]    |
[INFO] [stdout] 55 | pub fn web_mercator_to_wgs84(x: f64, y: f64) -> Point {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `wgs84_bbox_to_web_mercator` is never used
[INFO] [stdout]   --> src/utils/coordinate_transformer.rs:78:8
[INFO] [stdout]    |
[INFO] [stdout] 78 | pub fn wgs84_bbox_to_web_mercator(min_x: f64, min_y: f64, max_x: f64, max_y: f64) -> (f64, f64, f64, f64) {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `logger` is never read
[INFO] [stdout]   --> src/compression/converter.rs:15:5
[INFO] [stdout]    |
[INFO] [stdout] 14 | pub struct CompressionConverter<'a> {
[INFO] [stdout]    |            -------------------- field in this struct
[INFO] [stdout] 15 |     logger: &'a Logger,
[INFO] [stdout]    |     ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `logger` is never read
[INFO] [stdout]    --> src/extractor/extractor_strategy.rs:155:5
[INFO] [stdout]     |
[INFO] [stdout] 153 | pub struct ImageExtractor<'a> {
[INFO] [stdout]     |            -------------- field in this struct
[INFO] [stdout] 154 |     /// Logger for recording operations
[INFO] [stdout] 155 |     logger: &'a Logger,
[INFO] [stdout]     |     ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `logger` is never read
[INFO] [stdout]    --> src/extractor/array_strategy.rs:221:5
[INFO] [stdout]     |
[INFO] [stdout] 219 | pub struct ArrayExtractorStrategy<'a> {
[INFO] [stdout]     |            ---------------------- field in this struct
[INFO] [stdout] 220 |     /// Logger for recording operations
[INFO] [stdout] 221 |     logger: &'a Logger,
[INFO] [stdout]     |     ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `save_colorized_image` and `determine_region_with_radius` are never used
[INFO] [stdout]    --> src/commands/extract_command.rs:415:8
[INFO] [stdout]     |
[INFO] [stdout]  54 | impl<'a> ExtractCommand<'a> {
[INFO] [stdout]     | --------------------------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 415 |     fn save_colorized_image(&self, rgb_image: image::RgbImage, region: Option<Region>) -> TiffResult<()> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 509 |     fn determine_region_with_radius(&self, radius_meters: Option<f64>) -> TiffResult<Option<Region>> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 2.62s
[INFO] running `Command { std: "docker" "inspect" "afa965473f802fb2ab4e39caa2dff7ba9784563b1702e46cd4e7e61742cefe64", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "afa965473f802fb2ab4e39caa2dff7ba9784563b1702e46cd4e7e61742cefe64", kill_on_drop: false }`
[INFO] [stdout] afa965473f802fb2ab4e39caa2dff7ba9784563b1702e46cd4e7e61742cefe64
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:845e597a41426bbf2703be69acdb67d10b6de511142d05cba7bbe119c898b2c7" "/opt/rustwide/cargo-home/bin/cargo" "+0d162b25edd5bf0dba9a22e83b614f1113e90474" "test" "--frozen", kill_on_drop: false }`
[INFO] [stdout] b92bafb19c35cd96645d6a8e5dfa887d2fc312a2bc8f6c012365432cfb707725
[INFO] running `Command { std: "docker" "start" "-a" "b92bafb19c35cd96645d6a8e5dfa887d2fc312a2bc8f6c012365432cfb707725", kill_on_drop: false }`
[INFO] [stderr] warning: unused import: `self`
[INFO] [stderr]  --> src/tiff/colormap.rs:7:15
[INFO] [stderr]   |
[INFO] [stderr] 7 | use std::io::{self, BufReader, Read, Write, BufWriter, BufRead};
[INFO] [stderr]   |               ^^^^
[INFO] [stderr]   |
[INFO] [stderr]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `error`
[INFO] [stderr]   --> src/tiff/colormap.rs:10:30
[INFO] [stderr]    |
[INFO] [stderr] 10 | use log::{debug, info, warn, error};
[INFO] [stderr]    |                              ^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unnecessary parentheses around block return value
[INFO] [stderr]    --> src/tiff/colormap.rs:929:5
[INFO] [stderr]     |
[INFO] [stderr] 929 |     ((start as f32 * (1.0 - t) + end as f32 * t) as u16 * 257)
[INFO] [stderr]     |     ^                                                        ^
[INFO] [stderr]     |
[INFO] [stderr]     = note: `#[warn(unused_parens)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] help: remove these parentheses
[INFO] [stderr]     |
[INFO] [stderr] 929 -     ((start as f32 * (1.0 - t) + end as f32 * t) as u16 * 257)
[INFO] [stderr] 929 +     (start as f32 * (1.0 - t) + end as f32 * t) as u16 * 257
[INFO] [stderr]     |
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `crate::utils::coordinate_transformer`
[INFO] [stderr]   --> src/utils/image_extraction_utils.rs:23:5
[INFO] [stderr]    |
[INFO] [stderr] 23 | use crate::utils::coordinate_transformer;
[INFO] [stderr]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `debug`
[INFO] [stderr]  --> src/utils/colormap_utils.rs:7:23
[INFO] [stderr]   |
[INFO] [stderr] 7 | use log::{info, warn, debug};
[INFO] [stderr]   |                       ^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `crate::tiff::TiffReader`
[INFO] [stderr]   --> src/utils/colormap_utils.rs:14:5
[INFO] [stderr]    |
[INFO] [stderr] 14 | use crate::tiff::TiffReader;
[INFO] [stderr]    |     ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `crate::tiff::geo_key_parser::GeoKeyParser`
[INFO] [stderr]   --> src/utils/colormap_utils.rs:15:5
[INFO] [stderr]    |
[INFO] [stderr] 15 | use crate::tiff::geo_key_parser::GeoKeyParser;
[INFO] [stderr]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `crate::coordinate::BoundingBox`
[INFO] [stderr]  --> src/utils/coordinate_utils.rs:8:5
[INFO] [stderr]   |
[INFO] [stderr] 8 | use crate::coordinate::BoundingBox;
[INFO] [stderr]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `info`
[INFO] [stderr]   --> src/utils/coordinate_utils.rs:10:18
[INFO] [stderr]    |
[INFO] [stderr] 10 | use log::{debug, info};
[INFO] [stderr]    |                  ^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `photometric`
[INFO] [stderr]   --> src/utils/reprojection_utils.rs:14:49
[INFO] [stderr]    |
[INFO] [stderr] 14 | use crate::tiff::constants::{tags, field_types, photometric};
[INFO] [stderr]    |                                                 ^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `debug`
[INFO] [stderr]  --> src/utils/filter_utils.rs:8:11
[INFO] [stderr]   |
[INFO] [stderr] 8 | use log::{debug, info};
[INFO] [stderr]   |           ^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused imports: `debug` and `warn`
[INFO] [stderr]  --> src/extractor/array_strategy.rs:7:17
[INFO] [stderr]   |
[INFO] [stderr] 7 | use log::{info, debug, warn};
[INFO] [stderr]   |                 ^^^^^  ^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `std::path::Path`
[INFO] [stderr]   --> src/extractor/array_strategy.rs:10:5
[INFO] [stderr]    |
[INFO] [stderr] 10 | use std::path::Path;
[INFO] [stderr]    |     ^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `debug`
[INFO] [stderr]  --> src/commands/extract_command.rs:2:11
[INFO] [stderr]   |
[INFO] [stderr] 2 | use log::{debug, info, warn, error};
[INFO] [stderr]   |           ^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `crate::coordinate::BoundingBox`
[INFO] [stderr]  --> src/commands/extract_command.rs:9:5
[INFO] [stderr]   |
[INFO] [stderr] 9 | use crate::coordinate::BoundingBox;
[INFO] [stderr]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `crate::tiff::constants::epsg`
[INFO] [stderr]   --> src/commands/extract_command.rs:11:5
[INFO] [stderr]    |
[INFO] [stderr] 11 | use crate::tiff::constants::epsg;
[INFO] [stderr]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `crate::tiff::types::TIFF`
[INFO] [stderr]   --> src/commands/extract_command.rs:12:5
[INFO] [stderr]    |
[INFO] [stderr] 12 | use crate::tiff::types::TIFF;
[INFO] [stderr]    |     ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `crate::utils::reference_utils`
[INFO] [stderr]   --> src/commands/extract_command.rs:14:5
[INFO] [stderr]    |
[INFO] [stderr] 14 | use crate::utils::reference_utils;
[INFO] [stderr]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `error`
[INFO] [stderr]  --> src/commands/convert_command.rs:7:17
[INFO] [stderr]   |
[INFO] [stderr] 7 | use log::{info, error};
[INFO] [stderr]   |                 ^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `std::path::Path`
[INFO] [stderr]  --> src/api.rs:1:5
[INFO] [stderr]   |
[INFO] [stderr] 1 | use std::path::Path;
[INFO] [stderr]   |     ^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `Read`
[INFO] [stderr]  --> src/tiff/reader.rs:8:26
[INFO] [stderr]   |
[INFO] [stderr] 8 | use std::io::{BufReader, Read, Seek, SeekFrom};
[INFO] [stderr]   |                          ^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `super::handler::CompressionHandler`
[INFO] [stderr]   --> src/compression/converter.rs:11:5
[INFO] [stderr]    |
[INFO] [stderr] 11 | use super::handler::CompressionHandler;
[INFO] [stderr]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `GenericImageView`
[INFO] [stderr]   --> src/extractor/array_strategy.rs:11:27
[INFO] [stderr]    |
[INFO] [stderr] 11 | use image::{DynamicImage, GenericImageView};
[INFO] [stderr]    |                           ^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `GenericImageView`
[INFO] [stderr]  --> src/utils/mask_utils.rs:6:27
[INFO] [stderr]   |
[INFO] [stderr] 6 | use image::{DynamicImage, GenericImageView, Rgba, RgbaImage};
[INFO] [stderr]   |                           ^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unreachable pattern
[INFO] [stderr]    --> src/tiff/geotags.rs:187:13
[INFO] [stderr]     |
[INFO] [stderr] 184 |             2000..=2056 => "NAD 83 / State Plane (US)".to_string(),
[INFO] [stderr]     |             ----------- matches all the relevant values
[INFO] [stderr] ...
[INFO] [stderr] 187 |             2044 => "NAD 83 / Alaska Albers".to_string(),
[INFO] [stderr]     |             ^^^^ no value can reach this
[INFO] [stderr]     |
[INFO] [stderr]     = note: `#[warn(unreachable_patterns)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `sorted_ifds`
[INFO] [stderr]    --> src/tiff/builders/writer.rs:237:9
[INFO] [stderr]     |
[INFO] [stderr] 237 |         sorted_ifds: &[IFD],
[INFO] [stderr]     |         ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_sorted_ifds`
[INFO] [stderr]     |
[INFO] [stderr]     = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: value assigned to `projection` is never read
[INFO] [stderr]    --> src/tiff/geo_key_parser.rs:300:30
[INFO] [stderr]     |
[INFO] [stderr] 300 |         let mut projection = String::new();
[INFO] [stderr]     |                              ^^^^^^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = help: maybe it is overwritten before being read?
[INFO] [stderr]     = note: `#[warn(unused_assignments)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `target_epsg`
[INFO] [stderr]    --> src/utils/image_extraction_utils.rs:158:61
[INFO] [stderr]     |
[INFO] [stderr] 158 | fn try_transform_bbox(bbox: &BoundingBox, source_epsg: u32, target_epsg: u32) -> BoundingBox {
[INFO] [stderr]     |                                                             ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_target_epsg`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `logger`
[INFO] [stderr]    --> src/utils/image_extraction_utils.rs:435:5
[INFO] [stderr]     |
[INFO] [stderr] 435 |     logger: &Logger
[INFO] [stderr]     |     ^^^^^^ help: if this is intentional, prefix it with an underscore: `_logger`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `builder`
[INFO] [stderr]    --> src/utils/reprojection_utils.rs:266:5
[INFO] [stderr]     |
[INFO] [stderr] 266 |     builder: &mut TiffBuilder,
[INFO] [stderr]     |     ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_builder`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `ifd_index`
[INFO] [stderr]    --> src/utils/reprojection_utils.rs:267:5
[INFO] [stderr]     |
[INFO] [stderr] 267 |     ifd_index: usize,
[INFO] [stderr]     |     ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_ifd_index`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `photometric`
[INFO] [stderr]   --> src/extractor/tiff_strategy.rs:75:31
[INFO] [stderr]    |
[INFO] [stderr] 75 |         let (bits_per_sample, photometric, samples_per_pixel) =
[INFO] [stderr]    |                               ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_photometric`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `image_for_tiff`
[INFO] [stderr]    --> src/extractor/tiff_strategy.rs:118:13
[INFO] [stderr]     |
[INFO] [stderr] 118 |         let image_for_tiff = final_image.to_rgb8();
[INFO] [stderr]     |             ^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_image_for_tiff`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `img_height`
[INFO] [stderr]    --> src/extractor/tile_reader.rs:143:25
[INFO] [stderr]     |
[INFO] [stderr] 143 |         let (img_width, img_height) = self.ifd.get_dimensions()
[INFO] [stderr]     |                         ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_img_height`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `shape`
[INFO] [stderr]    --> src/extractor/array_strategy.rs:249:48
[INFO] [stderr]     |
[INFO] [stderr] 249 |                        region: Option<Region>, shape: Option<&str>) -> TiffResult<()> {
[INFO] [stderr]     |                                                ^^^^^ help: if this is intentional, prefix it with an underscore: `_shape`
[INFO] [stderr] 
[INFO] [stderr] warning: variable `has_geotiff_tags` is assigned to, but never used
[INFO] [stderr]    --> src/commands/analyze_command.rs:291:13
[INFO] [stderr]     |
[INFO] [stderr] 291 |         let mut has_geotiff_tags = false;
[INFO] [stderr]     |             ^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = note: consider using `_has_geotiff_tags` instead
[INFO] [stderr] 
[INFO] [stderr] warning: value assigned to `has_geotiff_tags` is never read
[INFO] [stderr]    --> src/commands/analyze_command.rs:308:17
[INFO] [stderr]     |
[INFO] [stderr] 308 |                 has_geotiff_tags = true;
[INFO] [stderr]     |                 ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = help: maybe it is overwritten before being read?
[INFO] [stderr] 
[INFO] [stderr] warning: field `logger` is never read
[INFO] [stderr]   --> src/tiff/reader.rs:48:5
[INFO] [stderr]    |
[INFO] [stderr] 44 | pub struct TiffReader<'a> {
[INFO] [stderr]    |            ---------- field in this struct
[INFO] [stderr] ...
[INFO] [stderr] 48 |     logger: &'a Logger,
[INFO] [stderr]    |     ^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: function `create_test_tiff_buffer` is never used
[INFO] [stderr]  --> src/tiff/tests/test_utils.rs:5:8
[INFO] [stderr]   |
[INFO] [stderr] 5 | pub fn create_test_tiff_buffer() -> Cursor<Vec<u8>> {
[INFO] [stderr]   |        ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `create_test_bigtiff_buffer` is never used
[INFO] [stderr]   --> src/tiff/tests/test_utils.rs:39:8
[INFO] [stderr]    |
[INFO] [stderr] 39 | pub fn create_test_bigtiff_buffer() -> Cursor<Vec<u8>> {
[INFO] [stderr]    |        ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: constant `GEOTIFF_TAGS_FILE` is never used
[INFO] [stderr]   --> src/tiff/geotags.rs:12:7
[INFO] [stderr]    |
[INFO] [stderr] 12 | const GEOTIFF_TAGS_FILE: &str = "geotiff_tags.toml";
[INFO] [stderr]    |       ^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: constant `BIG_ENDIAN_MARKER` is never used
[INFO] [stderr]   --> src/tiff/constants.rs:19:15
[INFO] [stderr]    |
[INFO] [stderr] 19 |     pub const BIG_ENDIAN_MARKER: [u8; 2] = [0x4D, 0x4D];
[INFO] [stderr]    |               ^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: constant `NONE` is never used
[INFO] [stderr]    --> src/tiff/constants.rs:143:15
[INFO] [stderr]     |
[INFO] [stderr] 143 |     pub const NONE: u16 = 1;              // No meaningful units
[INFO] [stderr]     |               ^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: constant `INCH` is never used
[INFO] [stderr]    --> src/tiff/constants.rs:144:15
[INFO] [stderr]     |
[INFO] [stderr] 144 |     pub const INCH: u16 = 2;              // Inches (default)
[INFO] [stderr]     |               ^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: constant `CENTIMETER` is never used
[INFO] [stderr]    --> src/tiff/constants.rs:145:15
[INFO] [stderr]     |
[INFO] [stderr] 145 |     pub const CENTIMETER: u16 = 3;        // Centimeters
[INFO] [stderr]     |               ^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: constant `TOP_LEFT` is never used
[INFO] [stderr]    --> src/tiff/constants.rs:150:15
[INFO] [stderr]     |
[INFO] [stderr] 150 |     pub const TOP_LEFT: u16 = 1;          // 0th row = top, 0th column = left side
[INFO] [stderr]     |               ^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: constant `TOP_RIGHT` is never used
[INFO] [stderr]    --> src/tiff/constants.rs:151:15
[INFO] [stderr]     |
[INFO] [stderr] 151 |     pub const TOP_RIGHT: u16 = 2;         // 0th row = top, 0th column = right side
[INFO] [stderr]     |               ^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: constant `BOTTOM_RIGHT` is never used
[INFO] [stderr]    --> src/tiff/constants.rs:152:15
[INFO] [stderr]     |
[INFO] [stderr] 152 |     pub const BOTTOM_RIGHT: u16 = 3;      // 0th row = bottom, 0th column = right side
[INFO] [stderr]     |               ^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: constant `BOTTOM_LEFT` is never used
[INFO] [stderr]    --> src/tiff/constants.rs:153:15
[INFO] [stderr]     |
[INFO] [stderr] 153 |     pub const BOTTOM_LEFT: u16 = 4;       // 0th row = bottom, 0th column = left side
[INFO] [stderr]     |               ^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: constant `LEFT_TOP` is never used
[INFO] [stderr]    --> src/tiff/constants.rs:154:15
[INFO] [stderr]     |
[INFO] [stderr] 154 |     pub const LEFT_TOP: u16 = 5;          // 0th row = left side, 0th column = top
[INFO] [stderr]     |               ^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: constant `RIGHT_TOP` is never used
[INFO] [stderr]    --> src/tiff/constants.rs:155:15
[INFO] [stderr]     |
[INFO] [stderr] 155 |     pub const RIGHT_TOP: u16 = 6;         // 0th row = right side, 0th column = top
[INFO] [stderr]     |               ^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: constant `RIGHT_BOTTOM` is never used
[INFO] [stderr]    --> src/tiff/constants.rs:156:15
[INFO] [stderr]     |
[INFO] [stderr] 156 |     pub const RIGHT_BOTTOM: u16 = 7;      // 0th row = right side, 0th column = bottom
[INFO] [stderr]     |               ^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: constant `LEFT_BOTTOM` is never used
[INFO] [stderr]    --> src/tiff/constants.rs:157:15
[INFO] [stderr]     |
[INFO] [stderr] 157 |     pub const LEFT_BOTTOM: u16 = 8;       // 0th row = left side, 0th column = bottom
[INFO] [stderr]     |               ^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: constant `MSB_TO_LSB` is never used
[INFO] [stderr]    --> src/tiff/constants.rs:169:15
[INFO] [stderr]     |
[INFO] [stderr] 169 |     pub const MSB_TO_LSB: u16 = 1;              // Most significant bit to least
[INFO] [stderr]     |               ^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: constant `LSB_TO_MSB` is never used
[INFO] [stderr]    --> src/tiff/constants.rs:170:15
[INFO] [stderr]     |
[INFO] [stderr] 170 |     pub const LSB_TO_MSB: u16 = 2;              // Least significant bit to most
[INFO] [stderr]     |               ^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: constant `UNSPECIFIED` is never used
[INFO] [stderr]    --> src/tiff/constants.rs:175:15
[INFO] [stderr]     |
[INFO] [stderr] 175 |     pub const UNSPECIFIED: u16 = 0;             // Unspecified data
[INFO] [stderr]     |               ^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: constant `ASSOCIATED_ALPHA` is never used
[INFO] [stderr]    --> src/tiff/constants.rs:176:15
[INFO] [stderr]     |
[INFO] [stderr] 176 |     pub const ASSOCIATED_ALPHA: u16 = 1;        // Associated alpha data
[INFO] [stderr]     |               ^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: constant `UNASSOCIATED_ALPHA` is never used
[INFO] [stderr]    --> src/tiff/constants.rs:177:15
[INFO] [stderr]     |
[INFO] [stderr] 177 |     pub const UNASSOCIATED_ALPHA: u16 = 2;      // Unassociated alpha data
[INFO] [stderr]     |               ^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: constant `REDUCED_RESOLUTION` is never used
[INFO] [stderr]    --> src/tiff/constants.rs:182:15
[INFO] [stderr]     |
[INFO] [stderr] 182 |     pub const REDUCED_RESOLUTION: u32 = 1;      // Reduced resolution version of another image
[INFO] [stderr]     |               ^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: constant `SINGLE_PAGE` is never used
[INFO] [stderr]    --> src/tiff/constants.rs:183:15
[INFO] [stderr]     |
[INFO] [stderr] 183 |     pub const SINGLE_PAGE: u32 = 2;             // One page of many
[INFO] [stderr]     |               ^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: constant `TRANSPARENCY_MASK` is never used
[INFO] [stderr]    --> src/tiff/constants.rs:184:15
[INFO] [stderr]     |
[INFO] [stderr] 184 |     pub const TRANSPARENCY_MASK: u32 = 4;       // Transparency mask for another image
[INFO] [stderr]     |               ^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: constant `GEOG_LINEAR_UNITS` is never used
[INFO] [stderr]    --> src/tiff/constants.rs:192:15
[INFO] [stderr]     |
[INFO] [stderr] 192 |     pub const GEOG_LINEAR_UNITS: u16 = 2052;  // GeogLinearUnitsGeoKey
[INFO] [stderr]     |               ^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: constant `PROJ_LINEAR_UNITS` is never used
[INFO] [stderr]    --> src/tiff/constants.rs:193:15
[INFO] [stderr]     |
[INFO] [stderr] 193 |     pub const PROJ_LINEAR_UNITS: u16 = 3076;  // ProjLinearUnitsGeoKey
[INFO] [stderr]     |               ^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `validate_range` is never used
[INFO] [stderr]    --> src/tiff/validation.rs:100:8
[INFO] [stderr]     |
[INFO] [stderr] 100 | pub fn validate_range<T>(value: T, min: T, max: T, name: &str) -> TiffResult<()>
[INFO] [stderr]     |        ^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: associated function `from_hex_color` is never used
[INFO] [stderr]    --> src/tiff/colormap.rs:149:12
[INFO] [stderr]     |
[INFO] [stderr]  98 | impl ColorMapEntry {
[INFO] [stderr]     | ------------------ associated function in this implementation
[INFO] [stderr] ...
[INFO] [stderr] 149 |     pub fn from_hex_color(value: u16, hex: &str, label: Option<String>) -> TiffResult<Self> {
[INFO] [stderr]     |            ^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: methods `to_tiff_colormap`, `interpolate_ramp_values`, and `apply_to_builder` are never used
[INFO] [stderr]    --> src/tiff/colormap.rs:439:12
[INFO] [stderr]     |
[INFO] [stderr] 169 | impl ColorMap {
[INFO] [stderr]     | ------------- methods in this implementation
[INFO] [stderr] ...
[INFO] [stderr] 439 |     pub fn to_tiff_colormap(&self) -> (u16, Vec<u16>) {
[INFO] [stderr]     |            ^^^^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 484 |     fn interpolate_ramp_values(
[INFO] [stderr]     |        ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 609 |     pub fn apply_to_builder(&self, builder: &mut TiffBuilder, ifd_index: usize) -> TiffResult<()> {
[INFO] [stderr]     |            ^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `interpolate_color_component` is never used
[INFO] [stderr]    --> src/tiff/colormap.rs:928:4
[INFO] [stderr]     |
[INFO] [stderr] 928 | fn interpolate_color_component(start: u8, end: u8, t: f32) -> u16 {
[INFO] [stderr]     |    ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: struct `ProgressTracker` is never constructed
[INFO] [stderr]  --> src/utils/progress.rs:3:12
[INFO] [stderr]   |
[INFO] [stderr] 3 | pub struct ProgressTracker {
[INFO] [stderr]   |            ^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: associated items `new`, `increment`, `finish`, and `set_message` are never used
[INFO] [stderr]   --> src/utils/progress.rs:8:12
[INFO] [stderr]    |
[INFO] [stderr]  7 | impl ProgressTracker {
[INFO] [stderr]    | -------------------- associated items in this implementation
[INFO] [stderr]  8 |     pub fn new(total: u64, description: &str) -> Self {
[INFO] [stderr]    |            ^^^
[INFO] [stderr] ...
[INFO] [stderr] 21 |     pub fn increment(&self, amount: u64) {
[INFO] [stderr]    |            ^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 25 |     pub fn finish(&self) {
[INFO] [stderr]    |            ^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 29 |     pub fn set_message(&self, msg: &str) {
[INFO] [stderr]    |            ^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `calculate_padding` is never used
[INFO] [stderr]   --> src/utils/write_utils.rs:64:8
[INFO] [stderr]    |
[INFO] [stderr] 64 | pub fn calculate_padding(data_len: usize) -> usize {
[INFO] [stderr]    |        ^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `detect_byte_order` is never used
[INFO] [stderr]   --> src/utils/byte_order_utils.rs:11:8
[INFO] [stderr]    |
[INFO] [stderr] 11 | pub fn detect_byte_order(reader: &mut dyn SeekableReader) -> TiffResult<Box<dyn ByteOrderHandler>> {
[INFO] [stderr]    |        ^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `get_handler_unwrapped` is never used
[INFO] [stderr]   --> src/utils/byte_order_utils.rs:19:8
[INFO] [stderr]    |
[INFO] [stderr] 19 | pub fn get_handler_unwrapped(handler: &Option<Box<dyn ByteOrderHandler>>) -> TiffResult<&Box<dyn ByteOrderHandler>> {
[INFO] [stderr]    |        ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `is_in_region` is never used
[INFO] [stderr]    --> src/utils/image_extraction_utils.rs:612:8
[INFO] [stderr]     |
[INFO] [stderr] 612 | pub fn is_in_region(x: u32, y: u32, region: &Region) -> bool {
[INFO] [stderr]     |        ^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `calc_buffer_coords` is never used
[INFO] [stderr]    --> src/utils/image_extraction_utils.rs:628:8
[INFO] [stderr]     |
[INFO] [stderr] 628 | pub fn calc_buffer_coords(global_x: u32, global_y: u32, region: &Region) -> (u32, u32) {
[INFO] [stderr]     |        ^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `apply_shape_mask` is never used
[INFO] [stderr]    --> src/utils/image_extraction_utils.rs:643:8
[INFO] [stderr]     |
[INFO] [stderr] 643 | pub fn apply_shape_mask(image: &DynamicImage, shape: &str) -> DynamicImage {
[INFO] [stderr]     |        ^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `ensure_png_extension` is never used
[INFO] [stderr]    --> src/utils/image_extraction_utils.rs:690:8
[INFO] [stderr]     |
[INFO] [stderr] 690 | pub fn ensure_png_extension(path: &str) -> String {
[INFO] [stderr]     |        ^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: constant `EARTH_RADIUS` is never used
[INFO] [stderr]   --> src/utils/coordinate_transformer.rs:12:11
[INFO] [stderr]    |
[INFO] [stderr] 12 | pub const EARTH_RADIUS: f64 = 6378137.0;
[INFO] [stderr]    |           ^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `wgs84_to_web_mercator` is never used
[INFO] [stderr]   --> src/utils/coordinate_transformer.rs:22:8
[INFO] [stderr]    |
[INFO] [stderr] 22 | pub fn wgs84_to_web_mercator(lon: f64, lat: f64) -> Point {
[INFO] [stderr]    |        ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `web_mercator_to_wgs84` is never used
[INFO] [stderr]   --> src/utils/coordinate_transformer.rs:55:8
[INFO] [stderr]    |
[INFO] [stderr] 55 | pub fn web_mercator_to_wgs84(x: f64, y: f64) -> Point {
[INFO] [stderr]    |        ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `wgs84_bbox_to_web_mercator` is never used
[INFO] [stderr]   --> src/utils/coordinate_transformer.rs:78:8
[INFO] [stderr]    |
[INFO] [stderr] 78 | pub fn wgs84_bbox_to_web_mercator(min_x: f64, min_y: f64, max_x: f64, max_y: f64) -> (f64, f64, f64, f64) {
[INFO] [stderr]    |        ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: field `logger` is never read
[INFO] [stderr]   --> src/compression/converter.rs:15:5
[INFO] [stderr]    |
[INFO] [stderr] 14 | pub struct CompressionConverter<'a> {
[INFO] [stderr]    |            -------------------- field in this struct
[INFO] [stderr] 15 |     logger: &'a Logger,
[INFO] [stderr]    |     ^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: field `logger` is never read
[INFO] [stderr]    --> src/extractor/extractor_strategy.rs:155:5
[INFO] [stderr]     |
[INFO] [stderr] 153 | pub struct ImageExtractor<'a> {
[INFO] [stderr]     |            -------------- field in this struct
[INFO] [stderr] 154 |     /// Logger for recording operations
[INFO] [stderr] 155 |     logger: &'a Logger,
[INFO] [stderr]     |     ^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: field `logger` is never read
[INFO] [stderr]    --> src/extractor/array_strategy.rs:221:5
[INFO] [stderr]     |
[INFO] [stderr] 219 | pub struct ArrayExtractorStrategy<'a> {
[INFO] [stderr]     |            ---------------------- field in this struct
[INFO] [stderr] 220 |     /// Logger for recording operations
[INFO] [stderr] 221 |     logger: &'a Logger,
[INFO] [stderr]     |     ^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: methods `save_colorized_image` and `determine_region_with_radius` are never used
[INFO] [stderr]    --> src/commands/extract_command.rs:415:8
[INFO] [stderr]     |
[INFO] [stderr]  54 | impl<'a> ExtractCommand<'a> {
[INFO] [stderr]     | --------------------------- methods in this implementation
[INFO] [stderr] ...
[INFO] [stderr] 415 |     fn save_colorized_image(&self, rgb_image: image::RgbImage, region: Option<Region>) -> TiffResult<()> {
[INFO] [stderr]     |        ^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 509 |     fn determine_region_with_radius(&self, radius_meters: Option<f64>) -> TiffResult<Option<Region>> {
[INFO] [stderr]     |        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: `rasterkit` (lib) generated 84 warnings (run `cargo fix --lib -p rasterkit` to apply 29 suggestions)
[INFO] [stderr] warning: `rasterkit` (lib test) generated 84 warnings (84 duplicates)
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 0.22s
[INFO] [stderr]      Running unittests src/lib.rs (/opt/rustwide/target/debug/deps/rasterkit-628d99dfdd07f180)
[INFO] [stdout] 
[INFO] [stdout] running 7 tests
[INFO] [stdout] test tiff::tests::byte_order_tests::test_big_endian_handler ... ok
[INFO] [stdout] test tiff::tests::byte_order_tests::test_byte_order_detection_invalid ... ok
[INFO] [stdout] test tiff::tests::byte_order_tests::test_byte_order_detection_little_endian ... ok
[INFO] [stdout] test tiff::tests::types_tests::test_tiff_with_ifds ... ok
[INFO] [stdout] test tiff::tests::byte_order_tests::test_little_endian_handler ... ok
[INFO] [stdout] test tiff::tests::byte_order_tests::test_byte_order_detection_big_endian ... ok
[INFO] [stdout] test tiff::tests::types_tests::test_tiff_creation ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 7 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.01s
[INFO] [stdout] 
[INFO] [stderr]      Running unittests src/main.rs (/opt/rustwide/target/debug/deps/rasterkit-85304b61f605d7e2)
[INFO] [stdout] 
[INFO] [stdout] running 0 tests
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s
[INFO] [stdout] 
[INFO] [stderr]    Doc-tests rasterkit
[INFO] [stderr] warning: unnecessary parentheses around block return value
[INFO] [stderr]    --> src/tiff/colormap.rs:929:5
[INFO] [stderr]     |
[INFO] [stderr] 929 |     ((start as f32 * (1.0 - t) + end as f32 * t) as u16 * 257)
[INFO] [stderr]     |     ^                                                        ^
[INFO] [stderr]     |
[INFO] [stderr]     = note: `#[warn(unused_parens)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] help: remove these parentheses
[INFO] [stderr]     |
[INFO] [stderr] 929 -     ((start as f32 * (1.0 - t) + end as f32 * t) as u16 * 257)
[INFO] [stderr] 929 +     (start as f32 * (1.0 - t) + end as f32 * t) as u16 * 257
[INFO] [stderr]     |
[INFO] [stderr] 
[INFO] [stderr] warning: 1 warning emitted
[INFO] [stderr] 
[INFO] [stdout] 
[INFO] [stdout] running 1 test
[INFO] [stdout] test src/utils/coordinate_transformer.rs - utils::coordinate_transformer::web_mercator_to_wgs84 (line 51) ... FAILED
[INFO] [stdout] 
[INFO] [stdout] failures:
[INFO] [stdout] 
[INFO] [stdout] ---- src/utils/coordinate_transformer.rs - utils::coordinate_transformer::web_mercator_to_wgs84 (line 51) stdout ----
[INFO] [stdout] error[E0425]: cannot find function `web_mercator_to_wgs84` in this scope
[INFO] [stdout]   --> src/utils/coordinate_transformer.rs:52:13
[INFO] [stdout]    |
[INFO] [stdout] 52 | let wgs84 = web_mercator_to_wgs84(-8237642.2, 4970241.3);
[INFO] [stdout]    |             ^^^^^^^^^^^^^^^^^^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] error: aborting due to 1 previous error
[INFO] [stdout] 
[INFO] [stdout] For more information about this error, try `rustc --explain E0425`.
[INFO] [stdout] Couldn't compile the test.
[INFO] [stdout] 
[INFO] [stdout] failures:
[INFO] [stdout]     src/utils/coordinate_transformer.rs - utils::coordinate_transformer::web_mercator_to_wgs84 (line 51)
[INFO] [stdout] 
[INFO] [stdout] test result: FAILED. 0 passed; 1 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.24s
[INFO] [stdout] 
[INFO] [stderr] error: doctest failed, to rerun pass `--doc`
[INFO] running `Command { std: "docker" "inspect" "b92bafb19c35cd96645d6a8e5dfa887d2fc312a2bc8f6c012365432cfb707725", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "b92bafb19c35cd96645d6a8e5dfa887d2fc312a2bc8f6c012365432cfb707725", kill_on_drop: false }`
[INFO] [stdout] b92bafb19c35cd96645d6a8e5dfa887d2fc312a2bc8f6c012365432cfb707725
