[INFO] fetching crate torsh-vision 0.1.0-alpha.1...
[INFO] checking torsh-vision-0.1.0-alpha.1 against try#f77b5bc6c7c84df104f86b0dd01d9490e3923fa8 for pr-147834
[INFO] extracting crate torsh-vision 0.1.0-alpha.1 into /workspace/builds/worker-0-tc2/source
[INFO] started tweaking crates.io crate torsh-vision 0.1.0-alpha.1
[INFO] removed 0 missing tests
[INFO] finished tweaking crates.io crate torsh-vision 0.1.0-alpha.1
[INFO] tweaked toml for crates.io crate torsh-vision 0.1.0-alpha.1 written to /workspace/builds/worker-0-tc2/source/Cargo.toml
[INFO] validating manifest of crates.io crate torsh-vision 0.1.0-alpha.1 on toolchain f77b5bc6c7c84df104f86b0dd01d9490e3923fa8
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+f77b5bc6c7c84df104f86b0dd01d9490e3923fa8" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate crates.io crate torsh-vision 0.1.0-alpha.1 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" "+f77b5bc6c7c84df104f86b0dd01d9490e3923fa8" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:e90291280db7d1fac5b66fc6dad9f9662629e7365a55743daf9bdf73ebc4ea79" "/opt/rustwide/cargo-home/bin/cargo" "+f77b5bc6c7c84df104f86b0dd01d9490e3923fa8" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] fd2b3f83763b7d60151820666438d70bf8643a80f3bf4992212b168490cda5c3
[INFO] running `Command { std: "docker" "start" "-a" "fd2b3f83763b7d60151820666438d70bf8643a80f3bf4992212b168490cda5c3", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "fd2b3f83763b7d60151820666438d70bf8643a80f3bf4992212b168490cda5c3", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "fd2b3f83763b7d60151820666438d70bf8643a80f3bf4992212b168490cda5c3", kill_on_drop: false }`
[INFO] [stdout] fd2b3f83763b7d60151820666438d70bf8643a80f3bf4992212b168490cda5c3
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:e90291280db7d1fac5b66fc6dad9f9662629e7365a55743daf9bdf73ebc4ea79" "/opt/rustwide/cargo-home/bin/cargo" "+f77b5bc6c7c84df104f86b0dd01d9490e3923fa8" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 5c00ca44c8bd28e0c3eebc6103743756921423b803af3f976370863604dec673
[INFO] running `Command { std: "docker" "start" "-a" "5c00ca44c8bd28e0c3eebc6103743756921423b803af3f976370863604dec673", kill_on_drop: false }`
[INFO] [stderr]    Compiling serde_core v1.0.225
[INFO] [stderr]    Compiling serde v1.0.225
[INFO] [stderr]    Compiling zerocopy v0.8.26
[INFO] [stderr]    Compiling libc v0.2.176
[INFO] [stderr]    Compiling syn v2.0.104
[INFO] [stderr]     Checking getrandom v0.2.16
[INFO] [stderr]     Checking bytemuck v1.23.1
[INFO] [stderr]    Compiling matrixmultiply v0.3.10
[INFO] [stderr]     Checking approx v0.5.1
[INFO] [stderr]    Compiling zeroize v1.8.1
[INFO] [stderr]     Checking num-bigint v0.4.6
[INFO] [stderr]    Compiling foreign-types-shared v0.1.1
[INFO] [stderr]    Compiling httparse v1.10.1
[INFO] [stderr]    Compiling rustix v1.0.7
[INFO] [stderr]     Checking getrandom v0.3.3
[INFO] [stderr]    Compiling base64ct v1.8.0
[INFO] [stderr]    Compiling foreign-types v0.3.2
[INFO] [stderr]    Compiling http v1.3.1
[INFO] [stderr]    Compiling rustls-pki-types v1.12.0
[INFO] [stderr]    Compiling openssl-probe v0.1.6
[INFO] [stderr]    Compiling miniz_oxide v0.8.9
[INFO] [stderr]    Compiling crc32fast v1.4.2
[INFO] [stderr]     Checking rand_core v0.6.4
[INFO] [stderr]    Compiling pem-rfc7468 v0.7.0
[INFO] [stderr]     Checking safe_arch v0.7.4
[INFO] [stderr]     Checking simd-adler32 v0.3.7
[INFO] [stderr]    Compiling der v0.7.10
[INFO] [stderr]    Compiling percent-encoding v2.3.1
[INFO] [stderr]     Checking rand_core v0.9.3
[INFO] [stderr]     Checking aho-corasick v1.1.3
[INFO] [stderr]     Checking parking_lot_core v0.9.11
[INFO] [stderr]    Compiling jobserver v0.1.33
[INFO] [stderr]    Compiling filetime v0.2.26
[INFO] [stderr]    Compiling dirs-sys v0.5.0
[INFO] [stderr]     Checking wide v0.7.33
[INFO] [stderr]    Compiling dirs v6.0.0
[INFO] [stderr]    Compiling cc v1.2.27
[INFO] [stderr]    Compiling rustls-pemfile v2.2.0
[INFO] [stderr]    Compiling webpki-root-certs v1.0.2
[INFO] [stderr]    Compiling flate2 v1.1.2
[INFO] [stderr]     Checking zlib-rs v0.5.2
[INFO] [stderr]     Checking hashbrown v0.15.4
[INFO] [stderr]     Checking parking_lot v0.12.4
[INFO] [stderr]     Checking lapack-sys v0.14.0
[INFO] [stderr]    Compiling ureq-proto v0.5.2
[INFO] [stderr]     Checking num-rational v0.4.2
[INFO] [stderr]     Checking regex-automata v0.4.11
[INFO] [stderr]     Checking rustc-std-workspace-alloc v1.0.1
[INFO] [stderr]    Compiling virtue v0.0.18
[INFO] [stderr]     Checking hashbrown v0.16.0
[INFO] [stderr]     Checking crossbeam-queue v0.3.12
[INFO] [stderr]     Checking num_cpus v1.17.0
[INFO] [stderr]     Checking unty v0.0.4
[INFO] [stderr]     Checking web-time v1.1.0
[INFO] [stderr]     Checking cached_proc_macro_types v0.1.1
[INFO] [stderr]     Checking tempfile v3.23.0
[INFO] [stderr]     Checking crossbeam v0.8.4
[INFO] [stderr]     Checking digest v0.10.7
[INFO] [stderr]     Checking signal-hook-registry v1.4.5
[INFO] [stderr]    Compiling zstd-safe v7.2.1
[INFO] [stderr]    Compiling clang-sys v1.8.1
[INFO] [stderr]     Checking inout v0.1.4
[INFO] [stderr]     Checking indexmap v2.11.4
[INFO] [stderr]     Checking num-iter v0.1.45
[INFO] [stderr]    Compiling bincode_derive v2.0.1
[INFO] [stderr]     Checking ppv-lite86 v0.2.21
[INFO] [stderr]    Compiling xattr v1.5.1
[INFO] [stderr]     Checking ahash v0.8.12
[INFO] [stderr]    Compiling lambert_w v1.2.28
[INFO] [stderr]     Checking sha2 v0.10.9
[INFO] [stderr]     Checking cipher v0.4.4
[INFO] [stderr]     Checking hmac v0.12.1
[INFO] [stderr]    Compiling prettyplease v0.2.35
[INFO] [stderr]    Compiling tar v0.4.44
[INFO] [stderr]    Compiling regex-syntax v0.8.5
[INFO] [stderr]     Checking bumpalo v3.18.1
[INFO] [stderr]    Compiling rustls v0.23.28
[INFO] [stderr]     Checking libbz2-rs-sys v0.2.2
[INFO] [stderr]    Compiling rustix v0.38.44
[INFO] [stderr]     Checking libz-rs-sys v0.5.2
[INFO] [stderr]     Checking time v0.3.41
[INFO] [stderr]     Checking rand_chacha v0.3.1
[INFO] [stderr]     Checking rand_chacha v0.9.0
[INFO] [stderr]     Checking aes v0.8.4
[INFO] [stderr]     Checking zopfli v0.8.2
[INFO] [stderr]     Checking rand v0.9.2
[INFO] [stderr]     Checking rand v0.8.5
[INFO] [stderr]     Checking bzip2 v0.6.0
[INFO] [stderr]     Checking pbkdf2 v0.12.2
[INFO] [stderr]     Checking lzma-rust2 v0.13.0
[INFO] [stderr]     Checking regex v1.11.3
[INFO] [stderr]     Checking sha1 v0.10.6
[INFO] [stderr]     Checking csv-core v0.1.12
[INFO] [stderr]     Checking deflate64 v0.1.9
[INFO] [stderr]     Checking ppmd-rust v1.2.1
[INFO] [stderr]    Compiling home v0.5.11
[INFO] [stderr]    Compiling bindgen v0.69.5
[INFO] [stderr]    Compiling openssl-sys v0.9.109
[INFO] [stderr]     Checking rand_distr v0.5.1
[INFO] [stderr]    Compiling zstd-sys v2.0.13+zstd.1.5.6
[INFO] [stderr]    Compiling ring v0.17.14
[INFO] [stderr]    Compiling blake3 v1.8.2
[INFO] [stderr]     Checking toml_parser v1.0.3
[INFO] [stderr]    Compiling itertools v0.12.1
[INFO] [stderr]     Checking serde_spanned v1.0.2
[INFO] [stderr]     Checking rand_distr v0.4.3
[INFO] [stderr]     Checking toml_datetime v0.7.2
[INFO] [stderr]    Compiling built v0.7.7
[INFO] [stderr]    Compiling openssl v0.10.73
[INFO] [stderr]    Compiling native-tls v0.2.14
[INFO] [stderr]     Checking toml_writer v1.0.3
[INFO] [stderr]    Compiling scirs2-neural v0.1.0-beta.3
[INFO] [stderr]     Checking nom v7.1.3
[INFO] [stderr]     Checking toml v0.9.7
[INFO] [stderr]     Checking memmap2 v0.9.8
[INFO] [stderr]     Checking iter-read v1.1.0
[INFO] [stderr]     Checking futures-util v0.3.31
[INFO] [stderr]     Checking env_logger v0.8.4
[INFO] [stderr]    Compiling darling_core v0.20.11
[INFO] [stderr]    Compiling synstructure v0.13.2
[INFO] [stderr]    Compiling rav1e v0.7.1
[INFO] [stderr]     Checking maybe-rayon v0.1.1
[INFO] [stderr]    Compiling simd_helpers v0.1.0
[INFO] [stderr]     Checking weezl v0.1.10
[INFO] [stderr]    Compiling noop_proc_macro v0.3.0
[INFO] [stderr]    Compiling which v4.4.2
[INFO] [stderr]     Checking zune-core v0.4.12
[INFO] [stderr]     Checking bitstream-io v2.6.0
[INFO] [stderr]     Checking imgref v1.11.0
[INFO] [stderr]     Checking quickcheck v1.0.3
[INFO] [stderr]     Checking zune-jpeg v0.4.18
[INFO] [stderr]     Checking avif-serialize v0.8.3
[INFO] [stderr]     Checking rand_pcg v0.9.0
[INFO] [stderr]     Checking zune-inflate v0.2.54
[INFO] [stderr]     Checking fdeflate v0.3.7
[INFO] [stderr]     Checking loop9 v0.1.5
[INFO] [stderr]     Checking pxfm v0.1.24
[INFO] [stderr]     Checking color_quant v1.1.0
[INFO] [stderr]     Checking byteorder-lite v0.1.0
[INFO] [stderr]    Compiling torsh-tensor v0.1.0-alpha.1
[INFO] [stderr]     Checking lebe v0.5.2
[INFO] [stderr]     Checking rgb v0.8.50
[INFO] [stderr]     Checking bit_field v0.10.2
[INFO] [stderr]     Checking image-webp v0.2.3
[INFO] [stderr]     Checking png v0.18.0
[INFO] [stderr]     Checking gif v0.13.1
[INFO] [stderr]     Checking qoi v0.4.1
[INFO] [stderr]    Compiling serde_derive v1.0.225
[INFO] [stderr]    Compiling openssl-macros v0.1.1
[INFO] [stderr]    Compiling thiserror-impl v2.0.16
[INFO] [stderr]    Compiling zeroize_derive v1.4.2
[INFO] [stderr]    Compiling katexit v0.1.5
[INFO] [stderr]    Compiling zerofrom-derive v0.1.6
[INFO] [stderr]    Compiling yoke-derive v0.8.0
[INFO] [stderr]    Compiling tokio-macros v2.5.0
[INFO] [stderr]    Compiling zerovec-derive v0.11.1
[INFO] [stderr]    Compiling displaydoc v0.2.5
[INFO] [stderr]    Compiling tracing-attributes v0.1.30
[INFO] [stderr]    Compiling nalgebra-macros v0.3.0
[INFO] [stderr]    Compiling thiserror v2.0.16
[INFO] [stderr]    Compiling num-derive v0.4.2
[INFO] [stderr]    Compiling equator-macro v0.4.2
[INFO] [stderr]     Checking tokio v1.47.1
[INFO] [stderr]    Compiling profiling-procmacros v1.0.17
[INFO] [stderr]    Compiling thiserror-impl v1.0.69
[INFO] [stderr]     Checking webpki-roots v1.0.1
[INFO] [stderr]    Compiling darling_macro v0.20.11
[INFO] [stderr]     Checking profiling v1.0.17
[INFO] [stderr]    Compiling fax_derive v0.2.0
[INFO] [stderr]    Compiling arg_enum_proc_macro v0.3.4
[INFO] [stderr]     Checking moxcms v0.7.5
[INFO] [stderr]     Checking equator v0.4.2
[INFO] [stderr]    Compiling darling v0.20.11
[INFO] [stderr]     Checking zerofrom v0.1.6
[INFO] [stderr]    Compiling cached_proc_macro v0.25.0
[INFO] [stderr]     Checking fax v0.2.6
[INFO] [stderr]     Checking ab_glyph_rasterizer v0.1.8
[INFO] [stderr]     Checking yoke v0.8.0
[INFO] [stderr]     Checking ttf-parser v0.25.1
[INFO] [stderr]     Checking aligned-vec v0.6.4
[INFO] [stderr]     Checking zerovec v0.11.2
[INFO] [stderr]     Checking zerotrie v0.2.2
[INFO] [stderr]     Checking v_frame v0.3.9
[INFO] [stderr]     Checking tracing v0.1.41
[INFO] [stderr]     Checking socket2 v0.5.10
[INFO] [stderr]     Checking thiserror v1.0.69
[INFO] [stderr]    Compiling scirs2-cluster v0.1.0-beta.3
[INFO] [stderr]     Checking av1-grain v0.2.4
[INFO] [stderr]     Checking fixedbitset v0.5.7
[INFO] [stderr]     Checking ttf-parser v0.15.2
[INFO] [stderr]     Checking rustls-webpki v0.103.3
[INFO] [stderr]     Checking petgraph v0.8.2
[INFO] [stderr]     Checking cached v0.56.0
[INFO] [stderr]    Compiling ureq v3.1.2
[INFO] [stderr]     Checking tinystr v0.8.1
[INFO] [stderr]     Checking icu_locale_core v2.0.0
[INFO] [stderr]     Checking potential_utf v0.1.2
[INFO] [stderr]     Checking icu_collections v2.0.0
[INFO] [stderr]     Checking num-complex v0.4.6
[INFO] [stderr]     Checking serde_json v1.0.140
[INFO] [stderr]     Checking uuid v1.18.1
[INFO] [stderr]     Checking bincode v2.0.1
[INFO] [stderr]     Checking chrono v0.4.42
[INFO] [stderr]    Compiling openblas-build v0.10.13
[INFO] [stderr]     Checking simba v0.9.0
[INFO] [stderr]     Checking ndarray v0.16.1
[INFO] [stderr]     Checking cauchy v0.4.0
[INFO] [stderr]     Checking half v2.6.0
[INFO] [stderr]     Checking num v0.4.3
[INFO] [stderr]     Checking special v0.11.4
[INFO] [stderr]    Compiling openblas-src v0.10.13
[INFO] [stderr]     Checking csv v1.3.1
[INFO] [stderr]     Checking icu_provider v2.0.0
[INFO] [stderr]     Checking bincode v1.3.3
[INFO] [stderr]     Checking serde-pickle v1.2.0
[INFO] [stderr]     Checking tiff v0.10.3
[INFO] [stderr]     Checking icu_normalizer v2.0.0
[INFO] [stderr]     Checking icu_properties v2.0.1
[INFO] [stderr]     Checking exr v1.73.0
[INFO] [stderr]     Checking lax v0.17.0
[INFO] [stderr]     Checking tokio-util v0.7.15
[INFO] [stderr]     Checking simba v0.8.1
[INFO] [stderr]     Checking owned_ttf_parser v0.25.0
[INFO] [stderr]     Checking ab_glyph v0.2.29
[INFO] [stderr]     Checking tokio-native-tls v0.3.1
[INFO] [stderr]     Checking tower v0.5.2
[INFO] [stderr]     Checking owned_ttf_parser v0.15.2
[INFO] [stderr]     Checking serde_urlencoded v0.7.1
[INFO] [stderr]     Checking rusttype v0.9.3
[INFO] [stderr]     Checking zstd v0.13.3
[INFO] [stderr]     Checking h2 v0.4.10
[INFO] [stderr]     Checking tower-http v0.6.6
[INFO] [stderr]     Checking zip v5.1.1
[INFO] [stderr]     Checking idna_adapter v1.2.1
[INFO] [stderr]     Checking idna v1.0.3
[INFO] [stderr]    Compiling qhull-sys v0.4.0
[INFO] [stderr]     Checking url v2.5.4
[INFO] [stderr]     Checking ndarray-rand v0.15.0
[INFO] [stderr]     Checking ndarray-linalg v0.17.0
[INFO] [stderr]     Checking ravif v0.11.20
[INFO] [stderr]     Checking hyper v1.6.0
[INFO] [stderr]     Checking image v0.25.8
[INFO] [stderr]     Checking hyper-util v0.1.14
[INFO] [stderr]     Checking qhull v0.4.0
[INFO] [stderr]     Checking nalgebra v0.32.6
[INFO] [stderr]     Checking hyper-tls v0.6.0
[INFO] [stderr]     Checking reqwest v0.12.20
[INFO] [stderr]     Checking nalgebra v0.33.2
[INFO] [stderr]     Checking nalgebra v0.34.1
[INFO] [stderr]     Checking imageproc v0.25.0
[INFO] [stderr]     Checking numrs2 v0.1.0-beta.2
[INFO] [stderr]     Checking statrs v0.18.0
[INFO] [stderr]     Checking scirs2-core v0.1.0-beta.3
[INFO] [stderr]     Checking scirs2-linalg v0.1.0-beta.3
[INFO] [stderr]     Checking scirs2-datasets v0.1.0-beta.3
[INFO] [stderr]     Checking scirs2-autograd v0.1.0-beta.3
[INFO] [stderr]     Checking scirs2-spatial v0.1.0-beta.3
[INFO] [stderr]     Checking scirs2-vision v0.1.0-beta.3
[INFO] [stderr]     Checking scirs2 v0.1.0-beta.3
[INFO] [stderr]     Checking scirs2-stats v0.1.0-beta.3
[INFO] [stderr]     Checking torsh-core v0.1.0-alpha.1
[INFO] [stderr]     Checking torsh-autograd v0.1.0-alpha.1
[INFO] [stderr]     Checking torsh-data v0.1.0-alpha.1
[INFO] [stderr]     Checking torsh-nn v0.1.0-alpha.1
[INFO] [stderr]     Checking torsh-vision v0.1.0-alpha.1 (/opt/rustwide/workdir)
[INFO] [stdout] warning: ambiguous glob re-exports
[INFO] [stdout]   --> src/models/mod.rs:71:9
[INFO] [stdout]    |
[INFO] [stdout] 71 | pub use advanced_architectures::*;
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^^^^^^^ the name `ViTConfig` in the type namespace is first re-exported here
[INFO] [stdout] ...
[INFO] [stdout] 83 | pub use vision_transformer::*;
[INFO] [stdout]    |         --------------------- but the name `ViTConfig` in the type namespace is also re-exported here
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(ambiguous_glob_reexports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: ambiguous glob re-exports
[INFO] [stdout]   --> src/models/mod.rs:76:9
[INFO] [stdout]    |
[INFO] [stdout] 72 | pub use advanced_cnns::*;
[INFO] [stdout]    |         ---------------- but the name `MBConvBlock` in the type namespace is also re-exported here
[INFO] [stdout] ...
[INFO] [stdout] 76 | pub use efficientnet::*;
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^ the name `MBConvBlock` in the type namespace is first re-exported here
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: ambiguous glob re-exports
[INFO] [stdout]   --> src/models/mod.rs:83:9
[INFO] [stdout]    |
[INFO] [stdout] 71 | pub use advanced_architectures::*;
[INFO] [stdout]    |         ------------------------- but the name `TransformerBlock` in the type namespace is also re-exported here
[INFO] [stdout] ...
[INFO] [stdout] 83 | pub use vision_transformer::*;
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^^^ the name `TransformerBlock` in the type namespace is first re-exported here
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around assigned value
[INFO] [stdout]    --> src/ops/filtering/mod.rs:818:44
[INFO] [stdout]     |
[INFO] [stdout] 818 |                         let spatial_dist = ((ky as f32 - kernel_radius as f32).powi(2)
[INFO] [stdout]     |                                            ^
[INFO] [stdout] 819 |                             + (kx as f32 - kernel_radius as f32).powi(2));
[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] 818 ~                         let spatial_dist = (ky as f32 - kernel_radius as f32).powi(2)
[INFO] [stdout] 819 ~                             + (kx as f32 - kernel_radius as f32).powi(2);
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around assigned value
[INFO] [stdout]     --> src/scirs2_integration.rs:1277:28
[INFO] [stdout]      |
[INFO] [stdout] 1277 |         let template_std = ((template.mapv(|x| (x - template_mean).powi(2)).sum()
[INFO] [stdout]      |                            ^
[INFO] [stdout] 1278 |             / (tmpl_h * tmpl_w) as f32)
[INFO] [stdout] 1279 |             .sqrt());
[INFO] [stdout]      |                    ^
[INFO] [stdout]      |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]      |
[INFO] [stdout] 1277 ~         let template_std = (template.mapv(|x| (x - template_mean).powi(2)).sum()
[INFO] [stdout] 1278 |             / (tmpl_h * tmpl_w) as f32)
[INFO] [stdout] 1279 ~             .sqrt();
[INFO] [stdout]      |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around assigned value
[INFO] [stdout]     --> src/scirs2_integration.rs:1285:33
[INFO] [stdout]      |
[INFO] [stdout] 1285 |                 let patch_std = ((patch.mapv(|x| (x - patch_mean).powi(2)).sum()
[INFO] [stdout]      |                                 ^
[INFO] [stdout] 1286 |                     / (tmpl_h * tmpl_w) as f32)
[INFO] [stdout] 1287 |                     .sqrt());
[INFO] [stdout]      |                            ^
[INFO] [stdout]      |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]      |
[INFO] [stdout] 1285 ~                 let patch_std = (patch.mapv(|x| (x - patch_mean).powi(2)).sum()
[INFO] [stdout] 1286 |                     / (tmpl_h * tmpl_w) as f32)
[INFO] [stdout] 1287 ~                     .sqrt();
[INFO] [stdout]      |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: ambiguous glob re-exports
[INFO] [stdout]   --> src/lib.rs:27:9
[INFO] [stdout]    |
[INFO] [stdout] 27 | pub use advanced_transforms::*;
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^^^^ the name `GpuResize` in the type namespace is first re-exported here
[INFO] [stdout] ...
[INFO] [stdout] 32 | pub use hardware::*;
[INFO] [stdout]    |         ----------- but the name `GpuResize` in the type namespace is also re-exported here
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: ambiguous glob re-exports
[INFO] [stdout]   --> src/lib.rs:33:9
[INFO] [stdout]    |
[INFO] [stdout] 33 | pub use interactive::*;
[INFO] [stdout]    |         ^^^^^^^^^^^^^^ the name `Annotation` in the type namespace is first re-exported here
[INFO] [stdout] ...
[INFO] [stdout] 53 | pub use utils::*;
[INFO] [stdout]    |         -------- but the name `Annotation` in the type namespace is also re-exported here
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: ambiguous glob re-exports
[INFO] [stdout]   --> src/lib.rs:36:9
[INFO] [stdout]    |
[INFO] [stdout] 36 | pub use models::*;
[INFO] [stdout]    |         ^^^^^^^^^ the name `registry` in the type namespace is first re-exported here
[INFO] [stdout] ...
[INFO] [stdout] 51 | pub use transforms::*;
[INFO] [stdout]    |         ------------- but the name `registry` in the type namespace is also re-exported here
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: ambiguous glob re-exports
[INFO] [stdout]   --> src/lib.rs:51:9
[INFO] [stdout]    |
[INFO] [stdout] 51 | pub use transforms::*;
[INFO] [stdout]    |         ^^^^^^^^^^^^^ the name `presets` in the type namespace is first re-exported here
[INFO] [stdout] 52 | pub use unified_transforms::*;
[INFO] [stdout]    |         --------------------- but the name `presets` in the type namespace is also re-exported here
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: ambiguous glob re-exports
[INFO] [stdout]   --> src/lib.rs:51:9
[INFO] [stdout]    |
[INFO] [stdout] 51 | pub use transforms::*;
[INFO] [stdout]    |         ^^^^^^^^^^^^^ the name `TransformBuilder` in the type namespace is first re-exported here
[INFO] [stdout] 52 | pub use unified_transforms::*;
[INFO] [stdout]    |         --------------------- but the name `TransformBuilder` in the type namespace is also re-exported here
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: ambiguous glob re-exports
[INFO] [stdout]   --> src/lib.rs:53:9
[INFO] [stdout]    |
[INFO] [stdout] 33 | pub use interactive::*;
[INFO] [stdout]    |         -------------- but the name `InteractiveViewer` in the type namespace is also re-exported here
[INFO] [stdout] ...
[INFO] [stdout] 53 | pub use utils::*;
[INFO] [stdout]    |         ^^^^^^^^ the name `InteractiveViewer` in the type namespace is first re-exported here
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: ambiguous glob re-exports
[INFO] [stdout]   --> src/lib.rs:55:9
[INFO] [stdout]    |
[INFO] [stdout] 53 | pub use utils::*;
[INFO] [stdout]    |         -------- but the name `Point3D` in the type namespace is also re-exported here
[INFO] [stdout] 54 | pub use video::*;
[INFO] [stdout] 55 | pub use viz3d::*;
[INFO] [stdout]    |         ^^^^^^^^ the name `Point3D` in the type namespace is first re-exported here
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: ambiguous glob re-exports
[INFO] [stdout]   --> src/lib.rs:55:9
[INFO] [stdout]    |
[INFO] [stdout] 53 | pub use utils::*;
[INFO] [stdout]    |         -------- but the name `Mesh3D` in the type namespace is also re-exported here
[INFO] [stdout] 54 | pub use video::*;
[INFO] [stdout] 55 | pub use viz3d::*;
[INFO] [stdout]    |         ^^^^^^^^ the name `Mesh3D` in the type namespace is first re-exported here
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: ambiguous glob re-exports
[INFO] [stdout]   --> src/models/mod.rs:71:9
[INFO] [stdout]    |
[INFO] [stdout] 71 | pub use advanced_architectures::*;
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^^^^^^^ the name `ViTConfig` in the type namespace is first re-exported here
[INFO] [stdout] ...
[INFO] [stdout] 83 | pub use vision_transformer::*;
[INFO] [stdout]    |         --------------------- but the name `ViTConfig` in the type namespace is also re-exported here
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(ambiguous_glob_reexports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: ambiguous glob re-exports
[INFO] [stdout]   --> src/models/mod.rs:76:9
[INFO] [stdout]    |
[INFO] [stdout] 72 | pub use advanced_cnns::*;
[INFO] [stdout]    |         ---------------- but the name `MBConvBlock` in the type namespace is also re-exported here
[INFO] [stdout] ...
[INFO] [stdout] 76 | pub use efficientnet::*;
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^ the name `MBConvBlock` in the type namespace is first re-exported here
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: ambiguous glob re-exports
[INFO] [stdout]   --> src/models/mod.rs:83:9
[INFO] [stdout]    |
[INFO] [stdout] 71 | pub use advanced_architectures::*;
[INFO] [stdout]    |         ------------------------- but the name `TransformerBlock` in the type namespace is also re-exported here
[INFO] [stdout] ...
[INFO] [stdout] 83 | pub use vision_transformer::*;
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^^^ the name `TransformerBlock` in the type namespace is first re-exported here
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around assigned value
[INFO] [stdout]    --> src/ops/filtering/mod.rs:818:44
[INFO] [stdout]     |
[INFO] [stdout] 818 |                         let spatial_dist = ((ky as f32 - kernel_radius as f32).powi(2)
[INFO] [stdout]     |                                            ^
[INFO] [stdout] 819 |                             + (kx as f32 - kernel_radius as f32).powi(2));
[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] 818 ~                         let spatial_dist = (ky as f32 - kernel_radius as f32).powi(2)
[INFO] [stdout] 819 ~                             + (kx as f32 - kernel_radius as f32).powi(2);
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around assigned value
[INFO] [stdout]     --> src/scirs2_integration.rs:1277:28
[INFO] [stdout]      |
[INFO] [stdout] 1277 |         let template_std = ((template.mapv(|x| (x - template_mean).powi(2)).sum()
[INFO] [stdout]      |                            ^
[INFO] [stdout] 1278 |             / (tmpl_h * tmpl_w) as f32)
[INFO] [stdout] 1279 |             .sqrt());
[INFO] [stdout]      |                    ^
[INFO] [stdout]      |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]      |
[INFO] [stdout] 1277 ~         let template_std = (template.mapv(|x| (x - template_mean).powi(2)).sum()
[INFO] [stdout] 1278 |             / (tmpl_h * tmpl_w) as f32)
[INFO] [stdout] 1279 ~             .sqrt();
[INFO] [stdout]      |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around assigned value
[INFO] [stdout]     --> src/scirs2_integration.rs:1285:33
[INFO] [stdout]      |
[INFO] [stdout] 1285 |                 let patch_std = ((patch.mapv(|x| (x - patch_mean).powi(2)).sum()
[INFO] [stdout]      |                                 ^
[INFO] [stdout] 1286 |                     / (tmpl_h * tmpl_w) as f32)
[INFO] [stdout] 1287 |                     .sqrt());
[INFO] [stdout]      |                            ^
[INFO] [stdout]      |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]      |
[INFO] [stdout] 1285 ~                 let patch_std = (patch.mapv(|x| (x - patch_mean).powi(2)).sum()
[INFO] [stdout] 1286 |                     / (tmpl_h * tmpl_w) as f32)
[INFO] [stdout] 1287 ~                     .sqrt();
[INFO] [stdout]      |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: ambiguous glob re-exports
[INFO] [stdout]   --> src/lib.rs:27:9
[INFO] [stdout]    |
[INFO] [stdout] 27 | pub use advanced_transforms::*;
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^^^^ the name `GpuResize` in the type namespace is first re-exported here
[INFO] [stdout] ...
[INFO] [stdout] 32 | pub use hardware::*;
[INFO] [stdout]    |         ----------- but the name `GpuResize` in the type namespace is also re-exported here
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: ambiguous glob re-exports
[INFO] [stdout]   --> src/lib.rs:33:9
[INFO] [stdout]    |
[INFO] [stdout] 33 | pub use interactive::*;
[INFO] [stdout]    |         ^^^^^^^^^^^^^^ the name `Annotation` in the type namespace is first re-exported here
[INFO] [stdout] ...
[INFO] [stdout] 53 | pub use utils::*;
[INFO] [stdout]    |         -------- but the name `Annotation` in the type namespace is also re-exported here
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: ambiguous glob re-exports
[INFO] [stdout]   --> src/lib.rs:36:9
[INFO] [stdout]    |
[INFO] [stdout] 36 | pub use models::*;
[INFO] [stdout]    |         ^^^^^^^^^ the name `registry` in the type namespace is first re-exported here
[INFO] [stdout] ...
[INFO] [stdout] 51 | pub use transforms::*;
[INFO] [stdout]    |         ------------- but the name `registry` in the type namespace is also re-exported here
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: ambiguous glob re-exports
[INFO] [stdout]   --> src/lib.rs:51:9
[INFO] [stdout]    |
[INFO] [stdout] 51 | pub use transforms::*;
[INFO] [stdout]    |         ^^^^^^^^^^^^^ the name `presets` in the type namespace is first re-exported here
[INFO] [stdout] 52 | pub use unified_transforms::*;
[INFO] [stdout]    |         --------------------- but the name `presets` in the type namespace is also re-exported here
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: ambiguous glob re-exports
[INFO] [stdout]   --> src/lib.rs:51:9
[INFO] [stdout]    |
[INFO] [stdout] 51 | pub use transforms::*;
[INFO] [stdout]    |         ^^^^^^^^^^^^^ the name `TransformBuilder` in the type namespace is first re-exported here
[INFO] [stdout] 52 | pub use unified_transforms::*;
[INFO] [stdout]    |         --------------------- but the name `TransformBuilder` in the type namespace is also re-exported here
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: ambiguous glob re-exports
[INFO] [stdout]   --> src/lib.rs:53:9
[INFO] [stdout]    |
[INFO] [stdout] 33 | pub use interactive::*;
[INFO] [stdout]    |         -------------- but the name `InteractiveViewer` in the type namespace is also re-exported here
[INFO] [stdout] ...
[INFO] [stdout] 53 | pub use utils::*;
[INFO] [stdout]    |         ^^^^^^^^ the name `InteractiveViewer` in the type namespace is first re-exported here
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: ambiguous glob re-exports
[INFO] [stdout]   --> src/lib.rs:55:9
[INFO] [stdout]    |
[INFO] [stdout] 53 | pub use utils::*;
[INFO] [stdout]    |         -------- but the name `Point3D` in the type namespace is also re-exported here
[INFO] [stdout] 54 | pub use video::*;
[INFO] [stdout] 55 | pub use viz3d::*;
[INFO] [stdout]    |         ^^^^^^^^ the name `Point3D` in the type namespace is first re-exported here
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: ambiguous glob re-exports
[INFO] [stdout]   --> src/lib.rs:55:9
[INFO] [stdout]    |
[INFO] [stdout] 53 | pub use utils::*;
[INFO] [stdout]    |         -------- but the name `Mesh3D` in the type namespace is also re-exported here
[INFO] [stdout] 54 | pub use video::*;
[INFO] [stdout] 55 | pub use viz3d::*;
[INFO] [stdout]    |         ^^^^^^^^ the name `Mesh3D` in the type namespace is first re-exported here
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated type alias `image::io::Reader`: this type has been moved and renamed to image::ImageReader
[INFO] [stdout]    --> src/io.rs:395:33
[INFO] [stdout]     |
[INFO] [stdout] 395 |         let reader = image::io::Reader::open(path)?;
[INFO] [stdout]     |                                 ^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(deprecated)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated type alias `image::io::Reader`: this type has been moved and renamed to image::ImageReader
[INFO] [stdout]    --> src/io.rs:395:33
[INFO] [stdout]     |
[INFO] [stdout] 395 |         let reader = image::io::Reader::open(path)?;
[INFO] [stdout]     |                                 ^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(deprecated)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `scirs2_core::Rng::gen`: Renamed to `random` to avoid conflict with the new `gen` keyword in Rust 2024.
[INFO] [stdout]    --> src/advanced_transforms.rs:205:28
[INFO] [stdout]     |
[INFO] [stdout] 205 |                     if rng.gen::<f32>() < intensity / 2.0 {
[INFO] [stdout]     |                            ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `scirs2_core::Rng::gen`: Renamed to `random` to avoid conflict with the new `gen` keyword in Rust 2024.
[INFO] [stdout]    --> src/advanced_transforms.rs:207:35
[INFO] [stdout]     |
[INFO] [stdout] 207 |                     } else if rng.gen::<f32>() < intensity {
[INFO] [stdout]     |                                   ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `scirs2_core::Rng::gen`: Renamed to `random` to avoid conflict with the new `gen` keyword in Rust 2024.
[INFO] [stdout]    --> src/advanced_transforms.rs:708:48
[INFO] [stdout]     |
[INFO] [stdout] 708 |         if self.config.rotation.enabled && rng.gen::<f32>() < self.config.rotation.probability {
[INFO] [stdout]     |                                                ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `scirs2_core::Rng::gen`: Renamed to `random` to avoid conflict with the new `gen` keyword in Rust 2024.
[INFO] [stdout]    --> src/advanced_transforms.rs:713:50
[INFO] [stdout]     |
[INFO] [stdout] 713 |         if self.config.brightness.enabled && rng.gen::<f32>() < self.config.brightness.probability {
[INFO] [stdout]     |                                                  ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `scirs2_core::Rng::gen`: Renamed to `random` to avoid conflict with the new `gen` keyword in Rust 2024.
[INFO] [stdout]    --> src/advanced_transforms.rs:719:45
[INFO] [stdout]     |
[INFO] [stdout] 719 |         if self.config.noise.enabled && rng.gen::<f32>() < self.config.noise.probability {
[INFO] [stdout]     |                                             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `scirs2_core::Rng::gen`: Renamed to `random` to avoid conflict with the new `gen` keyword in Rust 2024.
[INFO] [stdout]    --> src/advanced_transforms.rs:759:28
[INFO] [stdout]     |
[INFO] [stdout] 759 |                     if rng.gen::<f32>() < intensity / 2.0 {
[INFO] [stdout]     |                            ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `scirs2_core::Rng::gen`: Renamed to `random` to avoid conflict with the new `gen` keyword in Rust 2024.
[INFO] [stdout]    --> src/advanced_transforms.rs:761:35
[INFO] [stdout]     |
[INFO] [stdout] 761 |                     } else if rng.gen::<f32>() < intensity {
[INFO] [stdout]     |                                   ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `scirs2_core::Rng::gen`: Renamed to `random` to avoid conflict with the new `gen` keyword in Rust 2024.
[INFO] [stdout]    --> src/advanced_transforms.rs:205:28
[INFO] [stdout]     |
[INFO] [stdout] 205 |                     if rng.gen::<f32>() < intensity / 2.0 {
[INFO] [stdout]     |                            ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `scirs2_core::Rng::gen`: Renamed to `random` to avoid conflict with the new `gen` keyword in Rust 2024.
[INFO] [stdout]    --> src/advanced_transforms.rs:207:35
[INFO] [stdout]     |
[INFO] [stdout] 207 |                     } else if rng.gen::<f32>() < intensity {
[INFO] [stdout]     |                                   ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `scirs2_core::Rng::gen`: Renamed to `random` to avoid conflict with the new `gen` keyword in Rust 2024.
[INFO] [stdout]    --> src/advanced_transforms.rs:708:48
[INFO] [stdout]     |
[INFO] [stdout] 708 |         if self.config.rotation.enabled && rng.gen::<f32>() < self.config.rotation.probability {
[INFO] [stdout]     |                                                ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `scirs2_core::Rng::gen`: Renamed to `random` to avoid conflict with the new `gen` keyword in Rust 2024.
[INFO] [stdout]    --> src/advanced_transforms.rs:713:50
[INFO] [stdout]     |
[INFO] [stdout] 713 |         if self.config.brightness.enabled && rng.gen::<f32>() < self.config.brightness.probability {
[INFO] [stdout]     |                                                  ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `scirs2_core::Rng::gen`: Renamed to `random` to avoid conflict with the new `gen` keyword in Rust 2024.
[INFO] [stdout]    --> src/advanced_transforms.rs:719:45
[INFO] [stdout]     |
[INFO] [stdout] 719 |         if self.config.noise.enabled && rng.gen::<f32>() < self.config.noise.probability {
[INFO] [stdout]     |                                             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `scirs2_core::Rng::gen`: Renamed to `random` to avoid conflict with the new `gen` keyword in Rust 2024.
[INFO] [stdout]    --> src/advanced_transforms.rs:759:28
[INFO] [stdout]     |
[INFO] [stdout] 759 |                     if rng.gen::<f32>() < intensity / 2.0 {
[INFO] [stdout]     |                            ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `scirs2_core::Rng::gen`: Renamed to `random` to avoid conflict with the new `gen` keyword in Rust 2024.
[INFO] [stdout]    --> src/advanced_transforms.rs:761:35
[INFO] [stdout]     |
[INFO] [stdout] 761 |                     } else if rng.gen::<f32>() < intensity {
[INFO] [stdout]     |                                   ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `scirs2_core::Rng::gen`: Renamed to `random` to avoid conflict with the new `gen` keyword in Rust 2024.
[INFO] [stdout]    --> src/models/advanced_architectures.rs:597:28
[INFO] [stdout]     |
[INFO] [stdout] 597 |                     if rng.gen::<f32>() < keep_prob {
[INFO] [stdout]     |                            ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `scirs2_core::Rng::gen`: Renamed to `random` to avoid conflict with the new `gen` keyword in Rust 2024.
[INFO] [stdout]    --> src/models/advanced_architectures.rs:597:28
[INFO] [stdout]     |
[INFO] [stdout] 597 |                     if rng.gen::<f32>() < keep_prob {
[INFO] [stdout]     |                            ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `scirs2_core::Rng::gen`: Renamed to `random` to avoid conflict with the new `gen` keyword in Rust 2024.
[INFO] [stdout]    --> src/transforms/augmentation.rs:352:16
[INFO] [stdout]     |
[INFO] [stdout] 352 |         if rng.gen::<f32>() >= self.p {
[INFO] [stdout]     |                ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `scirs2_core::Rng::gen`: Renamed to `random` to avoid conflict with the new `gen` keyword in Rust 2024.
[INFO] [stdout]    --> src/transforms/automated.rs:104:20
[INFO] [stdout]     |
[INFO] [stdout] 104 |             if rng.gen::<f32>() < *probability {
[INFO] [stdout]     |                    ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `scirs2_core::Rng::gen`: Renamed to `random` to avoid conflict with the new `gen` keyword in Rust 2024.
[INFO] [stdout]   --> src/transforms/random.rs:54:16
[INFO] [stdout]    |
[INFO] [stdout] 54 |         if rng.gen::<f32>() < self.p {
[INFO] [stdout]    |                ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `scirs2_core::Rng::gen`: Renamed to `random` to avoid conflict with the new `gen` keyword in Rust 2024.
[INFO] [stdout]    --> src/transforms/random.rs:121:16
[INFO] [stdout]     |
[INFO] [stdout] 121 |         if rng.gen::<f32>() < self.p {
[INFO] [stdout]     |                ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `scirs2_core::Rng::gen`: Renamed to `random` to avoid conflict with the new `gen` keyword in Rust 2024.
[INFO] [stdout]    --> src/transforms/sophisticated.rs:194:65
[INFO] [stdout]     |
[INFO] [stdout] 194 |         let mut weights: Vec<f32> = (0..self.width).map(|_| rng.gen::<f32>()).collect();
[INFO] [stdout]     |                                                                 ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `scirs2_core::Rng::gen`: Renamed to `random` to avoid conflict with the new `gen` keyword in Rust 2024.
[INFO] [stdout]    --> src/transforms/sophisticated.rs:208:37
[INFO] [stdout]     |
[INFO] [stdout] 208 |                 let magnitude = rng.gen::<f32>();
[INFO] [stdout]     |                                     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `scirs2_core::Rng::gen`: Renamed to `random` to avoid conflict with the new `gen` keyword in Rust 2024.
[INFO] [stdout]    --> src/transforms/sophisticated.rs:336:16
[INFO] [stdout]     |
[INFO] [stdout] 336 |         if rng.gen::<f32>() > self.prob {
[INFO] [stdout]     |                ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `scirs2_core::Rng::gen`: Renamed to `random` to avoid conflict with the new `gen` keyword in Rust 2024.
[INFO] [stdout]    --> src/transforms/unified.rs:159:16
[INFO] [stdout]     |
[INFO] [stdout] 159 |         if rng.gen::<f32>() < self.p {
[INFO] [stdout]     |                ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `new_shape`
[INFO] [stdout]    --> src/advanced_transforms.rs:332:13
[INFO] [stdout]     |
[INFO] [stdout] 332 |         let new_shape = if shape.dims().len() == 3 {
[INFO] [stdout]     |             ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_new_shape`
[INFO] [stdout]     |
[INFO] [stdout]     = note: requested on the command line with `-W unused-variables`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `factor`
[INFO] [stdout]    --> src/advanced_transforms.rs:475:42
[INFO] [stdout]     |
[INFO] [stdout] 475 |     fn adjust_hue(&self, image: &Tensor, factor: f32) -> Result<Tensor> {
[INFO] [stdout]     |                                          ^^^^^^ help: if this is intentional, prefix it with an underscore: `_factor`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `sigma`
[INFO] [stdout]    --> src/advanced_transforms.rs:480:63
[INFO] [stdout]     |
[INFO] [stdout] 480 |     fn elastic_deformation(&self, image: &Tensor, alpha: f32, sigma: f32) -> Result<Tensor> {
[INFO] [stdout]     |                                                               ^^^^^ help: if this is intentional, prefix it with an underscore: `_sigma`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `scirs2_core::Rng::gen`: Renamed to `random` to avoid conflict with the new `gen` keyword in Rust 2024.
[INFO] [stdout]    --> src/transforms/augmentation.rs:352:16
[INFO] [stdout]     |
[INFO] [stdout] 352 |         if rng.gen::<f32>() >= self.p {
[INFO] [stdout]     |                ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]     --> src/advanced_transforms.rs:1171:13
[INFO] [stdout]      |
[INFO] [stdout] 1171 |         let mut padded = Tensor::zeros(new_dims, tensor.device())?;
[INFO] [stdout]      |             ----^^^^^^
[INFO] [stdout]      |             |
[INFO] [stdout]      |             help: remove this `mut`
[INFO] [stdout]      |
[INFO] [stdout]      = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `scirs2_core::Rng::gen`: Renamed to `random` to avoid conflict with the new `gen` keyword in Rust 2024.
[INFO] [stdout]    --> src/transforms/automated.rs:104:20
[INFO] [stdout]     |
[INFO] [stdout] 104 |             if rng.gen::<f32>() < *probability {
[INFO] [stdout]     |                    ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `model`
[INFO] [stdout]    --> src/benchmarks.rs:464:9
[INFO] [stdout]     |
[INFO] [stdout] 464 |         model: &dyn VisionModel,
[INFO] [stdout]     |         ^^^^^ help: if this is intentional, prefix it with an underscore: `_model`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/datasets_impl.rs:259:17
[INFO] [stdout]     |
[INFO] [stdout] 259 |             let mut tensor = creation::zeros(&[3, 32, 32]).unwrap();
[INFO] [stdout]     |                 ----^^^^^^
[INFO] [stdout]     |                 |
[INFO] [stdout]     |                 help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/datasets_impl.rs:394:17
[INFO] [stdout]     |
[INFO] [stdout] 394 |             let mut tensor = creation::zeros(&[1, rows, cols]).unwrap();
[INFO] [stdout]     |                 ----^^^^^^
[INFO] [stdout]     |                 |
[INFO] [stdout]     |                 help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `sobel_edges`
[INFO] [stdout]   --> src/examples/comprehensive_showcase.rs:74:13
[INFO] [stdout]    |
[INFO] [stdout] 74 |         let sobel_edges = processor.multi_edge_detection(&image, EdgeDetectionMethod::Sobel)?;
[INFO] [stdout]    |             ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_sobel_edges`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `canny_edges`
[INFO] [stdout]   --> src/examples/comprehensive_showcase.rs:81:13
[INFO] [stdout]    |
[INFO] [stdout] 81 |         let canny_edges = processor.multi_edge_detection(&image, EdgeDetectionMethod::Canny)?;
[INFO] [stdout]    |             ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_canny_edges`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `blurred`
[INFO] [stdout]    --> src/examples/comprehensive_showcase.rs:116:13
[INFO] [stdout]     |
[INFO] [stdout] 116 |         let blurred = processor.gaussian_blur(&color_image, 5, 1.0)?;
[INFO] [stdout]     |             ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_blurred`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `denoised`
[INFO] [stdout]    --> src/examples/comprehensive_showcase.rs:123:13
[INFO] [stdout]     |
[INFO] [stdout] 123 |         let denoised = processor.denoise_image(&color_image, DenoiseMethod::Bilateral)?;
[INFO] [stdout]     |             ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_denoised`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `enhanced`
[INFO] [stdout]    --> src/examples/comprehensive_showcase.rs:130:13
[INFO] [stdout]     |
[INFO] [stdout] 130 |         let enhanced = processor.enhance_contrast(&color_image, ContrastMethod::Clahe)?;
[INFO] [stdout]     |             ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_enhanced`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `upscaled`
[INFO] [stdout]    --> src/examples/comprehensive_showcase.rs:137:13
[INFO] [stdout]     |
[INFO] [stdout] 137 |         let upscaled = processor.super_resolution(&color_image, 2.0)?;
[INFO] [stdout]     |             ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_upscaled`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `scirs2_core::Rng::gen`: Renamed to `random` to avoid conflict with the new `gen` keyword in Rust 2024.
[INFO] [stdout]   --> src/transforms/random.rs:54:16
[INFO] [stdout]    |
[INFO] [stdout] 54 |         if rng.gen::<f32>() < self.p {
[INFO] [stdout]    |                ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `scirs2_core::Rng::gen`: Renamed to `random` to avoid conflict with the new `gen` keyword in Rust 2024.
[INFO] [stdout]    --> src/transforms/random.rs:121:16
[INFO] [stdout]     |
[INFO] [stdout] 121 |         if rng.gen::<f32>() < self.p {
[INFO] [stdout]     |                ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `augmented`
[INFO] [stdout]    --> src/examples/comprehensive_showcase.rs:358:9
[INFO] [stdout]     |
[INFO] [stdout] 358 |     let augmented = transforms.augment_image(&enhanced, &config)?;
[INFO] [stdout]     |         ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_augmented`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `hardware`
[INFO] [stdout]   --> src/examples.rs:79:13
[INFO] [stdout]    |
[INFO] [stdout] 79 |         let hardware = HardwareContext::auto_detect()?;
[INFO] [stdout]    |             ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_hardware`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/examples.rs:205:13
[INFO] [stdout]     |
[INFO] [stdout] 205 |         let mut mixup = MixUp::new(1.0);
[INFO] [stdout]     |             ----^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `i`
[INFO] [stdout]    --> src/examples.rs:342:17
[INFO] [stdout]     |
[INFO] [stdout] 342 |             for i in 0..batch_size {
[INFO] [stdout]     |                 ^ help: if this is intentional, prefix it with an underscore: `_i`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `i`
[INFO] [stdout]    --> src/examples.rs:400:14
[INFO] [stdout]     |
[INFO] [stdout] 400 |         for (i, shape) in tensor_shapes.iter().enumerate() {
[INFO] [stdout]     |              ^ help: if this is intentional, prefix it with an underscore: `_i`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `context`
[INFO] [stdout]    --> src/examples.rs:452:13
[INFO] [stdout]     |
[INFO] [stdout] 452 |         let context = TransformContext::new(device);
[INFO] [stdout]     |             ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_context`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `batch_size`
[INFO] [stdout]    --> src/examples.rs:495:13
[INFO] [stdout]     |
[INFO] [stdout] 495 |         let batch_size = 32;
[INFO] [stdout]     |             ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_batch_size`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `hardware`
[INFO] [stdout]    --> src/examples.rs:528:13
[INFO] [stdout]     |
[INFO] [stdout] 528 |         let hardware = HardwareContext::auto_detect()?;
[INFO] [stdout]     |             ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_hardware`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `transforms`
[INFO] [stdout]    --> src/examples.rs:533:13
[INFO] [stdout]     |
[INFO] [stdout] 533 |         let transforms = TransformBuilder::new()
[INFO] [stdout]     |             ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_transforms`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `batch_images`
[INFO] [stdout]    --> src/examples.rs:552:21
[INFO] [stdout]     |
[INFO] [stdout] 552 |                 let batch_images: Tensor<f32> = creation::randn(&[32, 3, 224, 224]).unwrap();
[INFO] [stdout]     |                     ^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_batch_images`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `batch_labels`
[INFO] [stdout]    --> src/examples.rs:553:21
[INFO] [stdout]     |
[INFO] [stdout] 553 |                 let batch_labels: Tensor<f32> = creation::zeros(&[32]).unwrap();
[INFO] [stdout]     |                     ^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_batch_labels`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `detection_transforms`
[INFO] [stdout]    --> src/examples.rs:589:13
[INFO] [stdout]     |
[INFO] [stdout] 589 |         let detection_transforms = TransformBuilder::new()
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_detection_transforms`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `mosaic`
[INFO] [stdout]    --> src/examples.rs:600:13
[INFO] [stdout]     |
[INFO] [stdout] 600 |         let mosaic = Mosaic::new((640, 640));
[INFO] [stdout]     |             ^^^^^^ help: if this is intentional, prefix it with an underscore: `_mosaic`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `exported`
[INFO] [stdout]    --> src/examples.rs:680:13
[INFO] [stdout]     |
[INFO] [stdout] 680 |         let exported = viewer.export_annotations()?;
[INFO] [stdout]     |             ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_exported`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/examples.rs:804:13
[INFO] [stdout]     |
[INFO] [stdout] 804 |         let mut cloud = PointCloud3D::new(points);
[INFO] [stdout]     |             ----^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `scirs2_core::Rng::gen`: Renamed to `random` to avoid conflict with the new `gen` keyword in Rust 2024.
[INFO] [stdout]    --> src/transforms/sophisticated.rs:194:65
[INFO] [stdout]     |
[INFO] [stdout] 194 |         let mut weights: Vec<f32> = (0..self.width).map(|_| rng.gen::<f32>()).collect();
[INFO] [stdout]     |                                                                 ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `scirs2_core::Rng::gen`: Renamed to `random` to avoid conflict with the new `gen` keyword in Rust 2024.
[INFO] [stdout]    --> src/transforms/sophisticated.rs:208:37
[INFO] [stdout]     |
[INFO] [stdout] 208 |                 let magnitude = rng.gen::<f32>();
[INFO] [stdout]     |                                     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `scirs2_core::Rng::gen`: Renamed to `random` to avoid conflict with the new `gen` keyword in Rust 2024.
[INFO] [stdout]    --> src/transforms/sophisticated.rs:336:16
[INFO] [stdout]     |
[INFO] [stdout] 336 |         if rng.gen::<f32>() > self.prob {
[INFO] [stdout]     |                ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `scirs2_core::Rng::gen`: Renamed to `random` to avoid conflict with the new `gen` keyword in Rust 2024.
[INFO] [stdout]    --> src/transforms/unified.rs:159:16
[INFO] [stdout]     |
[INFO] [stdout] 159 |         if rng.gen::<f32>() < self.p {
[INFO] [stdout]     |                ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `src_width`
[INFO] [stdout]    --> src/hardware.rs:150:9
[INFO] [stdout]     |
[INFO] [stdout] 150 |         src_width: usize,
[INFO] [stdout]     |         ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_src_width`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `src_height`
[INFO] [stdout]    --> src/hardware.rs:151:9
[INFO] [stdout]     |
[INFO] [stdout] 151 |         src_height: usize,
[INFO] [stdout]     |         ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_src_height`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `src_width`
[INFO] [stdout]    --> src/hardware.rs:166:9
[INFO] [stdout]     |
[INFO] [stdout] 166 |         src_width: usize,
[INFO] [stdout]     |         ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_src_width`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `src_height`
[INFO] [stdout]    --> src/hardware.rs:167:9
[INFO] [stdout]     |
[INFO] [stdout] 167 |         src_height: usize,
[INFO] [stdout]     |         ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_src_height`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/hardware.rs:214:13
[INFO] [stdout]     |
[INFO] [stdout] 214 |         let mut kernel = Tensor::zeros(&[size, size], torsh_core::DeviceType::Cpu)?;
[INFO] [stdout]     |             ----^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `cpu_device`
[INFO] [stdout]    --> src/hardware.rs:213:13
[INFO] [stdout]     |
[INFO] [stdout] 213 |         let cpu_device = CpuDevice::new();
[INFO] [stdout]     |             ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_cpu_device`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/hardware.rs:303:13
[INFO] [stdout]     |
[INFO] [stdout] 303 |         let mut output = Tensor::zeros(&[channels, output_h, output_w], input.device())?;
[INFO] [stdout]     |             ----^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `b`
[INFO] [stdout]    --> src/models/detection.rs:320:13
[INFO] [stdout]     |
[INFO] [stdout] 320 |         let b = x.size(0)?;
[INFO] [stdout]     |             ^ help: if this is intentional, prefix it with an underscore: `_b`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `c`
[INFO] [stdout]    --> src/models/detection.rs:321:13
[INFO] [stdout]     |
[INFO] [stdout] 321 |         let c = x.size(1)?;
[INFO] [stdout]     |             ^ help: if this is intentional, prefix it with an underscore: `_c`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/models/style_transfer.rs:54:13
[INFO] [stdout]    |
[INFO] [stdout] 54 |         let mut x = self.conv1_1.forward(x)?.relu()?;
[INFO] [stdout]    |             ----^
[INFO] [stdout]    |             |
[INFO] [stdout]    |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/models/style_transfer.rs:55:13
[INFO] [stdout]    |
[INFO] [stdout] 55 |         let mut x = self.conv1_2.forward(&x)?.relu()?;
[INFO] [stdout]    |             ----^
[INFO] [stdout]    |             |
[INFO] [stdout]    |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/models/style_transfer.rs:58:13
[INFO] [stdout]    |
[INFO] [stdout] 58 |         let mut x = max_pool2d(&x, (2, 2), Some((2, 2)), Some((0, 0)), None)?;
[INFO] [stdout]    |             ----^
[INFO] [stdout]    |             |
[INFO] [stdout]    |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/models/style_transfer.rs:59:13
[INFO] [stdout]    |
[INFO] [stdout] 59 |         let mut x = self.conv2_1.forward(&x)?.relu()?;
[INFO] [stdout]    |             ----^
[INFO] [stdout]    |             |
[INFO] [stdout]    |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/models/style_transfer.rs:60:13
[INFO] [stdout]    |
[INFO] [stdout] 60 |         let mut x = self.conv2_2.forward(&x)?.relu()?;
[INFO] [stdout]    |             ----^
[INFO] [stdout]    |             |
[INFO] [stdout]    |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/models/style_transfer.rs:63:13
[INFO] [stdout]    |
[INFO] [stdout] 63 |         let mut x = max_pool2d(&x, (2, 2), Some((2, 2)), Some((0, 0)), None)?;
[INFO] [stdout]    |             ----^
[INFO] [stdout]    |             |
[INFO] [stdout]    |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/models/style_transfer.rs:64:13
[INFO] [stdout]    |
[INFO] [stdout] 64 |         let mut x = self.conv3_1.forward(&x)?.relu()?;
[INFO] [stdout]    |             ----^
[INFO] [stdout]    |             |
[INFO] [stdout]    |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/models/style_transfer.rs:65:13
[INFO] [stdout]    |
[INFO] [stdout] 65 |         let mut x = self.conv3_2.forward(&x)?.relu()?;
[INFO] [stdout]    |             ----^
[INFO] [stdout]    |             |
[INFO] [stdout]    |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/models/style_transfer.rs:66:13
[INFO] [stdout]    |
[INFO] [stdout] 66 |         let mut x = self.conv3_3.forward(&x)?.relu()?;
[INFO] [stdout]    |             ----^
[INFO] [stdout]    |             |
[INFO] [stdout]    |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/models/style_transfer.rs:67:13
[INFO] [stdout]    |
[INFO] [stdout] 67 |         let mut x = self.conv3_4.forward(&x)?.relu()?;
[INFO] [stdout]    |             ----^
[INFO] [stdout]    |             |
[INFO] [stdout]    |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/models/style_transfer.rs:70:13
[INFO] [stdout]    |
[INFO] [stdout] 70 |         let mut x = max_pool2d(&x, (2, 2), Some((2, 2)), Some((0, 0)), None)?;
[INFO] [stdout]    |             ----^
[INFO] [stdout]    |             |
[INFO] [stdout]    |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/models/style_transfer.rs:71:13
[INFO] [stdout]    |
[INFO] [stdout] 71 |         let mut x = self.conv4_1.forward(&x)?.relu()?;
[INFO] [stdout]    |             ----^
[INFO] [stdout]    |             |
[INFO] [stdout]    |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/models/style_transfer.rs:72:13
[INFO] [stdout]    |
[INFO] [stdout] 72 |         let mut x = self.conv4_2.forward(&x)?.relu()?;
[INFO] [stdout]    |             ----^
[INFO] [stdout]    |             |
[INFO] [stdout]    |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/models/style_transfer.rs:73:13
[INFO] [stdout]    |
[INFO] [stdout] 73 |         let mut x = self.conv4_3.forward(&x)?.relu()?;
[INFO] [stdout]    |             ----^
[INFO] [stdout]    |             |
[INFO] [stdout]    |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/models/style_transfer.rs:74:13
[INFO] [stdout]    |
[INFO] [stdout] 74 |         let mut x = self.conv4_4.forward(&x)?.relu()?;
[INFO] [stdout]    |             ----^
[INFO] [stdout]    |             |
[INFO] [stdout]    |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/models/style_transfer.rs:77:13
[INFO] [stdout]    |
[INFO] [stdout] 77 |         let mut x = max_pool2d(&x, (2, 2), Some((2, 2)), Some((0, 0)), None)?;
[INFO] [stdout]    |             ----^
[INFO] [stdout]    |             |
[INFO] [stdout]    |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `gram_size`
[INFO] [stdout]    --> src/models/style_transfer.rs:136:13
[INFO] [stdout]     |
[INFO] [stdout] 136 |         let gram_size = channels * channels;
[INFO] [stdout]     |             ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_gram_size`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `batch`
[INFO] [stdout]   --> src/models/super_resolution.rs:52:14
[INFO] [stdout]    |
[INFO] [stdout] 52 |         let (batch, channels, height, width) = (
[INFO] [stdout]    |              ^^^^^ help: if this is intentional, prefix it with an underscore: `_batch`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `channels`
[INFO] [stdout]   --> src/models/super_resolution.rs:52:21
[INFO] [stdout]    |
[INFO] [stdout] 52 |         let (batch, channels, height, width) = (
[INFO] [stdout]    |                     ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_channels`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/models/super_resolution.rs:303:13
[INFO] [stdout]     |
[INFO] [stdout] 303 |         let mut current_channels = in_channels;
[INFO] [stdout]     |             ----^^^^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/ops/analysis/mod.rs:234:9
[INFO] [stdout]     |
[INFO] [stdout] 234 |     let mut losses = zeros(&[batch_size])?;
[INFO] [stdout]     |         ----^^^^^^
[INFO] [stdout]     |         |
[INFO] [stdout]     |         help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/ops/analysis/mod.rs:296:9
[INFO] [stdout]     |
[INFO] [stdout] 296 |     let mut losses = zeros(&[batch_size])?;
[INFO] [stdout]     |         ----^^^^^^
[INFO] [stdout]     |         |
[INFO] [stdout]     |         help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `num_classes`
[INFO] [stdout]    --> src/ops/analysis/mod.rs:290:22
[INFO] [stdout]     |
[INFO] [stdout] 290 |     let (batch_size, num_classes) = (pred_dims[0], pred_dims[1]);
[INFO] [stdout]     |                      ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_num_classes`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/ops/analysis/mod.rs:639:9
[INFO] [stdout]     |
[INFO] [stdout] 639 |     let mut result = zeros(&pred_dims)?;
[INFO] [stdout]     |         ----^^^^^^
[INFO] [stdout]     |         |
[INFO] [stdout]     |         help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/ops/analysis/mod.rs:671:9
[INFO] [stdout]     |
[INFO] [stdout] 671 |     let mut result = zeros(&dims)?;
[INFO] [stdout]     |         ----^^^^^^
[INFO] [stdout]     |         |
[INFO] [stdout]     |         help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/ops/analysis/mod.rs:688:9
[INFO] [stdout]     |
[INFO] [stdout] 688 |     let mut result = zeros(&dims)?;
[INFO] [stdout]     |         ----^^^^^^
[INFO] [stdout]     |         |
[INFO] [stdout]     |         help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `target_class`
[INFO] [stdout]    --> src/ops/analysis/mod.rs:705:5
[INFO] [stdout]     |
[INFO] [stdout] 705 |     target_class: usize,
[INFO] [stdout]     |     ^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_target_class`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `smoothing`
[INFO] [stdout]    --> src/ops/analysis/mod.rs:707:5
[INFO] [stdout]     |
[INFO] [stdout] 707 |     smoothing: f32,
[INFO] [stdout]     |     ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_smoothing`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/ops/analysis/mod.rs:739:13
[INFO] [stdout]     |
[INFO] [stdout] 739 |         let mut result = zeros(&[batch_size])?;
[INFO] [stdout]     |             ----^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `fn_count` is never read
[INFO] [stdout]    --> src/ops/analysis/mod.rs:890:24
[INFO] [stdout]     |
[INFO] [stdout] 890 |     let mut fn_count = 0;
[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: `new_shape`
[INFO] [stdout]    --> src/advanced_transforms.rs:332:13
[INFO] [stdout]     |
[INFO] [stdout] 332 |         let new_shape = if shape.dims().len() == 3 {
[INFO] [stdout]     |             ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_new_shape`
[INFO] [stdout]     |
[INFO] [stdout]     = note: requested on the command line with `-W unused-variables`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/ops/color/mod.rs:220:9
[INFO] [stdout]     |
[INFO] [stdout] 220 |     let mut result = zeros(&[1, height, width])?;
[INFO] [stdout]     |         ----^^^^^^
[INFO] [stdout]     |         |
[INFO] [stdout]     |         help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `factor`
[INFO] [stdout]    --> src/advanced_transforms.rs:475:42
[INFO] [stdout]     |
[INFO] [stdout] 475 |     fn adjust_hue(&self, image: &Tensor, factor: f32) -> Result<Tensor> {
[INFO] [stdout]     |                                          ^^^^^^ help: if this is intentional, prefix it with an underscore: `_factor`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/ops/color/mod.rs:249:9
[INFO] [stdout]     |
[INFO] [stdout] 249 |     let mut result = zeros(&[3, height, width])?;
[INFO] [stdout]     |         ----^^^^^^
[INFO] [stdout]     |         |
[INFO] [stdout]     |         help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `sigma`
[INFO] [stdout]    --> src/advanced_transforms.rs:480:63
[INFO] [stdout]     |
[INFO] [stdout] 480 |     fn elastic_deformation(&self, image: &Tensor, alpha: f32, sigma: f32) -> Result<Tensor> {
[INFO] [stdout]     |                                                               ^^^^^ help: if this is intentional, prefix it with an underscore: `_sigma`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/ops/color/mod.rs:278:9
[INFO] [stdout]     |
[INFO] [stdout] 278 |     let mut result = zeros(&[3, height, width])?;
[INFO] [stdout]     |         ----^^^^^^
[INFO] [stdout]     |         |
[INFO] [stdout]     |         help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/ops/color/mod.rs:307:9
[INFO] [stdout]     |
[INFO] [stdout] 307 |     let mut result = zeros(&[3, height, width])?;
[INFO] [stdout]     |         ----^^^^^^
[INFO] [stdout]     |         |
[INFO] [stdout]     |         help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/ops/color/mod.rs:383:9
[INFO] [stdout]     |
[INFO] [stdout] 383 |     let mut result = zeros(&dims)?;
[INFO] [stdout]     |         ----^^^^^^
[INFO] [stdout]     |         |
[INFO] [stdout]     |         help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/ops/color/mod.rs:401:9
[INFO] [stdout]     |
[INFO] [stdout] 401 |     let mut result = zeros(&dims)?;
[INFO] [stdout]     |         ----^^^^^^
[INFO] [stdout]     |         |
[INFO] [stdout]     |         help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/ops/color/mod.rs:427:9
[INFO] [stdout]     |
[INFO] [stdout] 427 |     let mut adjusted_hsv = hsv.clone();
[INFO] [stdout]     |         ----^^^^^^^^^^^^
[INFO] [stdout]     |         |
[INFO] [stdout]     |         help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/ops/color/mod.rs:452:9
[INFO] [stdout]     |
[INFO] [stdout] 452 |     let mut adjusted_hsv = hsv.clone();
[INFO] [stdout]     |         ----^^^^^^^^^^^^
[INFO] [stdout]     |         |
[INFO] [stdout]     |         help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/ops/color/mod.rs:474:9
[INFO] [stdout]     |
[INFO] [stdout] 474 |     let mut result = zeros(&dims)?;
[INFO] [stdout]     |         ----^^^^^^
[INFO] [stdout]     |         |
[INFO] [stdout]     |         help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/ops/color/mod.rs:499:9
[INFO] [stdout]     |
[INFO] [stdout] 499 |     let mut result = zeros(&[1, height, width])?;
[INFO] [stdout]     |         ----^^^^^^
[INFO] [stdout]     |         |
[INFO] [stdout]     |         help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/ops/color/mod.rs:588:9
[INFO] [stdout]     |
[INFO] [stdout] 588 |     let mut result = zeros(&dims)?;
[INFO] [stdout]     |         ----^^^^^^
[INFO] [stdout]     |         |
[INFO] [stdout]     |         help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/ops/color/mod.rs:647:9
[INFO] [stdout]     |
[INFO] [stdout] 647 |     let mut result = zeros(&dims)?;
[INFO] [stdout]     |         ----^^^^^^
[INFO] [stdout]     |         |
[INFO] [stdout]     |         help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/ops/color/mod.rs:736:9
[INFO] [stdout]     |
[INFO] [stdout] 736 |     let mut result = zeros(&[channels, height, width])?;
[INFO] [stdout]     |         ----^^^^^^
[INFO] [stdout]     |         |
[INFO] [stdout]     |         help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]     --> src/advanced_transforms.rs:1171:13
[INFO] [stdout]      |
[INFO] [stdout] 1171 |         let mut padded = Tensor::zeros(new_dims, tensor.device())?;
[INFO] [stdout]      |             ----^^^^^^
[INFO] [stdout]      |             |
[INFO] [stdout]      |             help: remove this `mut`
[INFO] [stdout]      |
[INFO] [stdout]      = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/ops/color/mod.rs:761:9
[INFO] [stdout]     |
[INFO] [stdout] 761 |     let mut result = zeros(&[channels, height, width])?;
[INFO] [stdout]     |         ----^^^^^^
[INFO] [stdout]     |         |
[INFO] [stdout]     |         help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/ops/color/mod.rs:810:9
[INFO] [stdout]     |
[INFO] [stdout] 810 |     let mut result = image.clone();
[INFO] [stdout]     |         ----^^^^^^
[INFO] [stdout]     |         |
[INFO] [stdout]     |         help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/ops/color/mod.rs:861:9
[INFO] [stdout]     |
[INFO] [stdout] 861 |     let mut result = zeros(&[channels, height, width])?;
[INFO] [stdout]     |         ----^^^^^^
[INFO] [stdout]     |         |
[INFO] [stdout]     |         help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `x2`
[INFO] [stdout]   --> src/ops/common.rs:89:9
[INFO] [stdout]    |
[INFO] [stdout] 89 |         x2: usize,
[INFO] [stdout]    |         ^^ help: if this is intentional, prefix it with an underscore: `_x2`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `y2`
[INFO] [stdout]   --> src/ops/common.rs:90:9
[INFO] [stdout]    |
[INFO] [stdout] 90 |         y2: usize,
[INFO] [stdout]    |         ^^ help: if this is intentional, prefix it with an underscore: `_y2`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `min_val`
[INFO] [stdout]    --> src/ops/common.rs:127:36
[INFO] [stdout]     |
[INFO] [stdout] 127 |     pub fn clamp_coord(value: i64, min_val: usize, max_val: usize) -> usize {
[INFO] [stdout]     |                                    ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_min_val`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/ops/detection/mod.rs:232:9
[INFO] [stdout]     |
[INFO] [stdout] 232 |     let mut iou_matrix = zeros(&[n, n])?;
[INFO] [stdout]     |         ----^^^^^^^^^^
[INFO] [stdout]     |         |
[INFO] [stdout]     |         help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/ops/detection/mod.rs:308:9
[INFO] [stdout]     |
[INFO] [stdout] 308 |     let mut pooled_features = zeros(&[num_rois, channels, pool_height, pool_width])?;
[INFO] [stdout]     |         ----^^^^^^^^^^^^^^^
[INFO] [stdout]     |         |
[INFO] [stdout]     |         help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/ops/detection/mod.rs:462:9
[INFO] [stdout]     |
[INFO] [stdout] 462 |     let mut bbox_targets = zeros(&[num_anchors, 4])?;
[INFO] [stdout]     |         ----^^^^^^^^^^^^
[INFO] [stdout]     |         |
[INFO] [stdout]     |         help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/ops/detection/mod.rs:550:5
[INFO] [stdout]     |
[INFO] [stdout] 550 |     mut detections: Vec<Detection>,
[INFO] [stdout]     |     ----^^^^^^^^^^
[INFO] [stdout]     |     |
[INFO] [stdout]     |     help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/ops/filtering/mod.rs:568:9
[INFO] [stdout]     |
[INFO] [stdout] 568 |     let mut result = zeros(&[channels, height, width])?;
[INFO] [stdout]     |         ----^^^^^^
[INFO] [stdout]     |         |
[INFO] [stdout]     |         help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `model`
[INFO] [stdout]    --> src/benchmarks.rs:464:9
[INFO] [stdout]     |
[INFO] [stdout] 464 |         model: &dyn VisionModel,
[INFO] [stdout]     |         ^^^^^ help: if this is intentional, prefix it with an underscore: `_model`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/ops/filtering/mod.rs:601:9
[INFO] [stdout]     |
[INFO] [stdout] 601 |     let mut result = zeros(&[channels, height, width])?;
[INFO] [stdout]     |         ----^^^^^^
[INFO] [stdout]     |         |
[INFO] [stdout]     |         help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/ops/filtering/mod.rs:636:9
[INFO] [stdout]     |
[INFO] [stdout] 636 |     let mut result = zeros(&[channels, height, width])?;
[INFO] [stdout]     |         ----^^^^^^
[INFO] [stdout]     |         |
[INFO] [stdout]     |         help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/ops/filtering/mod.rs:682:9
[INFO] [stdout]     |
[INFO] [stdout] 682 |     let mut result = zeros(&[1, height, width])?;
[INFO] [stdout]     |         ----^^^^^^
[INFO] [stdout]     |         |
[INFO] [stdout]     |         help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/ops/filtering/mod.rs:718:9
[INFO] [stdout]     |
[INFO] [stdout] 718 |     let mut result = zeros(&[1, height, width])?;
[INFO] [stdout]     |         ----^^^^^^
[INFO] [stdout]     |         |
[INFO] [stdout]     |         help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/ops/filtering/mod.rs:755:9
[INFO] [stdout]     |
[INFO] [stdout] 755 |     let mut result = zeros(&[channels, height, width])?;
[INFO] [stdout]     |         ----^^^^^^
[INFO] [stdout]     |         |
[INFO] [stdout]     |         help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/ops/filtering/mod.rs:795:9
[INFO] [stdout]     |
[INFO] [stdout] 795 |     let mut result = zeros(&[channels, height, width])?;
[INFO] [stdout]     |         ----^^^^^^
[INFO] [stdout]     |         |
[INFO] [stdout]     |         help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/ops/filtering/mod.rs:871:9
[INFO] [stdout]     |
[INFO] [stdout] 871 |     let mut result = zeros(&[3, 3])?;
[INFO] [stdout]     |         ----^^^^^^
[INFO] [stdout]     |         |
[INFO] [stdout]     |         help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/ops/filtering/mod.rs:883:9
[INFO] [stdout]     |
[INFO] [stdout] 883 |     let mut result: Tensor<f32> = zeros(&dims)?;
[INFO] [stdout]     |         ----^^^^^^
[INFO] [stdout]     |         |
[INFO] [stdout]     |         help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/ops/filtering/mod.rs:915:9
[INFO] [stdout]     |
[INFO] [stdout] 915 |     let mut result: Tensor<f32> = zeros(&dims)?;
[INFO] [stdout]     |         ----^^^^^^
[INFO] [stdout]     |         |
[INFO] [stdout]     |         help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/ops/filtering/mod.rs:942:9
[INFO] [stdout]     |
[INFO] [stdout] 942 |     let mut result: Tensor<f32> = zeros(&dims)?;
[INFO] [stdout]     |         ----^^^^^^
[INFO] [stdout]     |         |
[INFO] [stdout]     |         help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/ops/filtering/mod.rs:999:9
[INFO] [stdout]     |
[INFO] [stdout] 999 |     let mut result: Tensor<f32> = zeros(&dims)?;
[INFO] [stdout]     |         ----^^^^^^
[INFO] [stdout]     |         |
[INFO] [stdout]     |         help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]     --> src/ops/filtering/mod.rs:1083:9
[INFO] [stdout]      |
[INFO] [stdout] 1083 |     let mut result: Tensor<f32> = zeros(&dims)?;
[INFO] [stdout]      |         ----^^^^^^
[INFO] [stdout]      |         |
[INFO] [stdout]      |         help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/datasets_impl.rs:259:17
[INFO] [stdout]     |
[INFO] [stdout] 259 |             let mut tensor = creation::zeros(&[3, 32, 32]).unwrap();
[INFO] [stdout]     |                 ----^^^^^^
[INFO] [stdout]     |                 |
[INFO] [stdout]     |                 help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/ops/geometric/mod.rs:146:9
[INFO] [stdout]     |
[INFO] [stdout] 146 |     let mut output = zeros(&[channels, target_height, target_width]).unwrap();
[INFO] [stdout]     |         ----^^^^^^
[INFO] [stdout]     |         |
[INFO] [stdout]     |         help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/datasets_impl.rs:394:17
[INFO] [stdout]     |
[INFO] [stdout] 394 |             let mut tensor = creation::zeros(&[1, rows, cols]).unwrap();
[INFO] [stdout]     |                 ----^^^^^^
[INFO] [stdout]     |                 |
[INFO] [stdout]     |                 help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/ops/geometric/mod.rs:188:9
[INFO] [stdout]     |
[INFO] [stdout] 188 |     let mut output = zeros(&[channels, target_height, target_width]).unwrap();
[INFO] [stdout]     |         ----^^^^^^
[INFO] [stdout]     |         |
[INFO] [stdout]     |         help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `channels`
[INFO] [stdout]    --> src/ops/geometric/mod.rs:227:10
[INFO] [stdout]     |
[INFO] [stdout] 227 |     let (channels, height, width) = utils::validate_image_tensor_3d(image)?;
[INFO] [stdout]     |          ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_channels`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `channels`
[INFO] [stdout]    --> src/ops/geometric/mod.rs:240:10
[INFO] [stdout]     |
[INFO] [stdout] 240 |     let (channels, height, width) = utils::validate_image_tensor_3d(image)?;
[INFO] [stdout]     |          ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_channels`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/ops/geometric/mod.rs:282:9
[INFO] [stdout]     |
[INFO] [stdout] 282 |     let mut output = zeros(&[channels, height, width]).unwrap();
[INFO] [stdout]     |         ----^^^^^^
[INFO] [stdout]     |         |
[INFO] [stdout]     |         help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/ops/geometric/mod.rs:301:9
[INFO] [stdout]     |
[INFO] [stdout] 301 |     let mut output = zeros(&[channels, height, width]).unwrap();
[INFO] [stdout]     |         ----^^^^^^
[INFO] [stdout]     |         |
[INFO] [stdout]     |         help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/ops/geometric/mod.rs:320:9
[INFO] [stdout]     |
[INFO] [stdout] 320 |     let mut output = zeros(&[channels, height, width]).unwrap();
[INFO] [stdout]     |         ----^^^^^^
[INFO] [stdout]     |         |
[INFO] [stdout]     |         help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `sobel_edges`
[INFO] [stdout]   --> src/examples/comprehensive_showcase.rs:74:13
[INFO] [stdout]    |
[INFO] [stdout] 74 |         let sobel_edges = processor.multi_edge_detection(&image, EdgeDetectionMethod::Sobel)?;
[INFO] [stdout]    |             ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_sobel_edges`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `canny_edges`
[INFO] [stdout]   --> src/examples/comprehensive_showcase.rs:81:13
[INFO] [stdout]    |
[INFO] [stdout] 81 |         let canny_edges = processor.multi_edge_detection(&image, EdgeDetectionMethod::Canny)?;
[INFO] [stdout]    |             ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_canny_edges`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `blurred`
[INFO] [stdout]    --> src/examples/comprehensive_showcase.rs:116:13
[INFO] [stdout]     |
[INFO] [stdout] 116 |         let blurred = processor.gaussian_blur(&color_image, 5, 1.0)?;
[INFO] [stdout]     |             ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_blurred`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `denoised`
[INFO] [stdout]    --> src/examples/comprehensive_showcase.rs:123:13
[INFO] [stdout]     |
[INFO] [stdout] 123 |         let denoised = processor.denoise_image(&color_image, DenoiseMethod::Bilateral)?;
[INFO] [stdout]     |             ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_denoised`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `enhanced`
[INFO] [stdout]    --> src/examples/comprehensive_showcase.rs:130:13
[INFO] [stdout]     |
[INFO] [stdout] 130 |         let enhanced = processor.enhance_contrast(&color_image, ContrastMethod::Clahe)?;
[INFO] [stdout]     |             ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_enhanced`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `upscaled`
[INFO] [stdout]    --> src/examples/comprehensive_showcase.rs:137:13
[INFO] [stdout]     |
[INFO] [stdout] 137 |         let upscaled = processor.super_resolution(&color_image, 2.0)?;
[INFO] [stdout]     |             ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_upscaled`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/optimized_impl.rs:542:13
[INFO] [stdout]     |
[INFO] [stdout] 542 |         let mut tensor = torsh_tensor::creation::zeros(&[3, 32, 32]).unwrap();
[INFO] [stdout]     |             ----^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/optimized_impl.rs:570:13
[INFO] [stdout]     |
[INFO] [stdout] 570 |         let mut tensor = torsh_tensor::creation::zeros(&[3, 32, 32]).unwrap();
[INFO] [stdout]     |             ----^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `augmented`
[INFO] [stdout]    --> src/examples/comprehensive_showcase.rs:358:9
[INFO] [stdout]     |
[INFO] [stdout] 358 |     let augmented = transforms.augment_image(&enhanced, &config)?;
[INFO] [stdout]     |         ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_augmented`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `hardware`
[INFO] [stdout]   --> src/examples.rs:79:13
[INFO] [stdout]    |
[INFO] [stdout] 79 |         let hardware = HardwareContext::auto_detect()?;
[INFO] [stdout]    |             ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_hardware`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/examples.rs:205:13
[INFO] [stdout]     |
[INFO] [stdout] 205 |         let mut mixup = MixUp::new(1.0);
[INFO] [stdout]     |             ----^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `i`
[INFO] [stdout]    --> src/examples.rs:342:17
[INFO] [stdout]     |
[INFO] [stdout] 342 |             for i in 0..batch_size {
[INFO] [stdout]     |                 ^ help: if this is intentional, prefix it with an underscore: `_i`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `i`
[INFO] [stdout]    --> src/examples.rs:400:14
[INFO] [stdout]     |
[INFO] [stdout] 400 |         for (i, shape) in tensor_shapes.iter().enumerate() {
[INFO] [stdout]     |              ^ help: if this is intentional, prefix it with an underscore: `_i`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `context`
[INFO] [stdout]    --> src/examples.rs:452:13
[INFO] [stdout]     |
[INFO] [stdout] 452 |         let context = TransformContext::new(device);
[INFO] [stdout]     |             ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_context`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `batch_size`
[INFO] [stdout]    --> src/examples.rs:495:13
[INFO] [stdout]     |
[INFO] [stdout] 495 |         let batch_size = 32;
[INFO] [stdout]     |             ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_batch_size`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `hardware`
[INFO] [stdout]    --> src/examples.rs:528:13
[INFO] [stdout]     |
[INFO] [stdout] 528 |         let hardware = HardwareContext::auto_detect()?;
[INFO] [stdout]     |             ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_hardware`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `transforms`
[INFO] [stdout]    --> src/examples.rs:533:13
[INFO] [stdout]     |
[INFO] [stdout] 533 |         let transforms = TransformBuilder::new()
[INFO] [stdout]     |             ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_transforms`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `batch_images`
[INFO] [stdout]    --> src/examples.rs:552:21
[INFO] [stdout]     |
[INFO] [stdout] 552 |                 let batch_images: Tensor<f32> = creation::randn(&[32, 3, 224, 224]).unwrap();
[INFO] [stdout]     |                     ^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_batch_images`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `batch_labels`
[INFO] [stdout]    --> src/examples.rs:553:21
[INFO] [stdout]     |
[INFO] [stdout] 553 |                 let batch_labels: Tensor<f32> = creation::zeros(&[32]).unwrap();
[INFO] [stdout]     |                     ^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_batch_labels`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `detection_transforms`
[INFO] [stdout]    --> src/examples.rs:589:13
[INFO] [stdout]     |
[INFO] [stdout] 589 |         let detection_transforms = TransformBuilder::new()
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_detection_transforms`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `mosaic`
[INFO] [stdout]    --> src/examples.rs:600:13
[INFO] [stdout]     |
[INFO] [stdout] 600 |         let mosaic = Mosaic::new((640, 640));
[INFO] [stdout]     |             ^^^^^^ help: if this is intentional, prefix it with an underscore: `_mosaic`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `exported`
[INFO] [stdout]    --> src/examples.rs:680:13
[INFO] [stdout]     |
[INFO] [stdout] 680 |         let exported = viewer.export_annotations()?;
[INFO] [stdout]     |             ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_exported`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/examples.rs:804:13
[INFO] [stdout]     |
[INFO] [stdout] 804 |         let mut cloud = PointCloud3D::new(points);
[INFO] [stdout]     |             ----^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `src_width`
[INFO] [stdout]    --> src/hardware.rs:150:9
[INFO] [stdout]     |
[INFO] [stdout] 150 |         src_width: usize,
[INFO] [stdout]     |         ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_src_width`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `src_height`
[INFO] [stdout]    --> src/hardware.rs:151:9
[INFO] [stdout]     |
[INFO] [stdout] 151 |         src_height: usize,
[INFO] [stdout]     |         ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_src_height`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `src_width`
[INFO] [stdout]    --> src/hardware.rs:166:9
[INFO] [stdout]     |
[INFO] [stdout] 166 |         src_width: usize,
[INFO] [stdout]     |         ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_src_width`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `src_height`
[INFO] [stdout]    --> src/hardware.rs:167:9
[INFO] [stdout]     |
[INFO] [stdout] 167 |         src_height: usize,
[INFO] [stdout]     |         ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_src_height`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `database_patches`
[INFO] [stdout]   --> src/spatial/distance.rs:43:9
[INFO] [stdout]    |
[INFO] [stdout] 43 |         database_patches: &Array2<f64>,
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_database_patches`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/hardware.rs:214:13
[INFO] [stdout]     |
[INFO] [stdout] 214 |         let mut kernel = Tensor::zeros(&[size, size], torsh_core::DeviceType::Cpu)?;
[INFO] [stdout]     |             ----^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `cpu_device`
[INFO] [stdout]    --> src/hardware.rs:213:13
[INFO] [stdout]     |
[INFO] [stdout] 213 |         let cpu_device = CpuDevice::new();
[INFO] [stdout]     |             ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_cpu_device`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/hardware.rs:303:13
[INFO] [stdout]     |
[INFO] [stdout] 303 |         let mut output = Tensor::zeros(&[channels, output_h, output_w], input.device())?;
[INFO] [stdout]     |             ----^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `metric`
[INFO] [stdout]    --> src/spatial/distance.rs:149:9
[INFO] [stdout]     |
[INFO] [stdout] 149 |         metric: &str,
[INFO] [stdout]     |         ^^^^^^ help: if this is intentional, prefix it with an underscore: `_metric`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `cpu_device`
[INFO] [stdout]    --> src/hardware.rs:467:13
[INFO] [stdout]     |
[INFO] [stdout] 467 |         let cpu_device = CpuDevice::new();
[INFO] [stdout]     |             ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_cpu_device`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `cpu_device`
[INFO] [stdout]    --> src/hardware.rs:476:13
[INFO] [stdout]     |
[INFO] [stdout] 476 |         let cpu_device = CpuDevice::new();
[INFO] [stdout]     |             ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_cpu_device`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `cpu_device`
[INFO] [stdout]    --> src/hardware.rs:489:13
[INFO] [stdout]     |
[INFO] [stdout] 489 |         let cpu_device = CpuDevice::new();
[INFO] [stdout]     |             ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_cpu_device`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `points`
[INFO] [stdout]   --> src/spatial/interpolation.rs:96:9
[INFO] [stdout]    |
[INFO] [stdout] 96 |         points: &Array2<f64>,
[INFO] [stdout]    |         ^^^^^^ help: if this is intentional, prefix it with an underscore: `_points`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `values`
[INFO] [stdout]   --> src/spatial/interpolation.rs:97:9
[INFO] [stdout]    |
[INFO] [stdout] 97 |         values: &Array1<f64>,
[INFO] [stdout]    |         ^^^^^^ help: if this is intentional, prefix it with an underscore: `_values`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `points`
[INFO] [stdout]    --> src/spatial/interpolation.rs:107:9
[INFO] [stdout]     |
[INFO] [stdout] 107 |         points: &Array2<f64>,
[INFO] [stdout]     |         ^^^^^^ help: if this is intentional, prefix it with an underscore: `_points`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `values`
[INFO] [stdout]    --> src/spatial/interpolation.rs:108:9
[INFO] [stdout]     |
[INFO] [stdout] 108 |         values: &Array1<f64>,
[INFO] [stdout]     |         ^^^^^^ help: if this is intentional, prefix it with an underscore: `_values`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `points`
[INFO] [stdout]    --> src/spatial/interpolation.rs:156:9
[INFO] [stdout]     |
[INFO] [stdout] 156 |         points: &Array2<f64>,
[INFO] [stdout]     |         ^^^^^^ help: if this is intentional, prefix it with an underscore: `_points`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `values`
[INFO] [stdout]    --> src/spatial/interpolation.rs:157:9
[INFO] [stdout]     |
[INFO] [stdout] 157 |         values: &Array1<f64>,
[INFO] [stdout]     |         ^^^^^^ help: if this is intentional, prefix it with an underscore: `_values`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `points`
[INFO] [stdout]    --> src/spatial/interpolation.rs:167:9
[INFO] [stdout]     |
[INFO] [stdout] 167 |         points: &Array2<f64>,
[INFO] [stdout]     |         ^^^^^^ help: if this is intentional, prefix it with an underscore: `_points`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `values`
[INFO] [stdout]    --> src/spatial/interpolation.rs:168:9
[INFO] [stdout]     |
[INFO] [stdout] 168 |         values: &Array1<f64>,
[INFO] [stdout]     |         ^^^^^^ help: if this is intentional, prefix it with an underscore: `_values`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `mask`
[INFO] [stdout]    --> src/spatial/interpolation.rs:176:58
[INFO] [stdout]     |
[INFO] [stdout] 176 |     pub fn interpolate_image_gaps(&self, image: &Tensor, mask: &Tensor) -> Result<Tensor> {
[INFO] [stdout]     |                                                          ^^^^ help: if this is intentional, prefix it with an underscore: `_mask`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `displacement_field`
[INFO] [stdout]    --> src/spatial/interpolation.rs:210:46
[INFO] [stdout]     |
[INFO] [stdout] 210 |     pub fn warp_image(&self, image: &Tensor, displacement_field: &Array2<f64>) -> Result<Tensor> {
[INFO] [stdout]     |                                              ^^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_displacement_field`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `distortion_coeffs`
[INFO] [stdout]    --> src/spatial/interpolation.rs:220:9
[INFO] [stdout]     |
[INFO] [stdout] 220 |         distortion_coeffs: &Array1<f64>,
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_distortion_coeffs`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `distortion_coeffs`
[INFO] [stdout]    --> src/spatial/interpolation.rs:230:9
[INFO] [stdout]     |
[INFO] [stdout] 230 |         distortion_coeffs: &Array1<f64>,
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_distortion_coeffs`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `i`
[INFO] [stdout]    --> src/spatial/matching.rs:306:22
[INFO] [stdout]     |
[INFO] [stdout] 306 |                 for (i, (&a, &b)) in desc1.iter().zip(desc2.iter()).enumerate() {
[INFO] [stdout]     |                      ^ help: if this is intentional, prefix it with an underscore: `_i`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `query_keypoints`
[INFO] [stdout]    --> src/spatial/matching.rs:327:9
[INFO] [stdout]     |
[INFO] [stdout] 327 |         query_keypoints: &[Keypoint],
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_query_keypoints`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `train_keypoints`
[INFO] [stdout]    --> src/spatial/matching.rs:328:9
[INFO] [stdout]     |
[INFO] [stdout] 328 |         train_keypoints: &[Keypoint],
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_train_keypoints`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `bbox`
[INFO] [stdout]    --> src/spatial/structures.rs:272:13
[INFO] [stdout]     |
[INFO] [stdout] 272 |         let bbox = BoundingBox::from_points(&self.points)?;
[INFO] [stdout]     |             ^^^^ help: if this is intentional, prefix it with an underscore: `_bbox`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `region_size`
[INFO] [stdout]    --> src/spatial/structures.rs:322:35
[INFO] [stdout]     |
[INFO] [stdout] 322 |     pub fn segment_regions(&self, region_size: f64) -> Result<Vec<Vec<PointId>>> {
[INFO] [stdout]     |                                   ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_region_size`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `dims`
[INFO] [stdout]    --> src/spatial/structures.rs:329:17
[INFO] [stdout]     |
[INFO] [stdout] 329 |             let dims = bbox.max.len();
[INFO] [stdout]     |                 ^^^^ help: if this is intentional, prefix it with an underscore: `_dims`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `rotation`
[INFO] [stdout]   --> src/spatial/transforms.rs:79:9
[INFO] [stdout]    |
[INFO] [stdout] 79 |         rotation: &Rotation,
[INFO] [stdout]    |         ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_rotation`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `points_3d`
[INFO] [stdout]    --> src/spatial/transforms.rs:248:9
[INFO] [stdout]     |
[INFO] [stdout] 248 |         points_3d: &Array2<f64>,
[INFO] [stdout]     |         ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_points_3d`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `transform_matrix`
[INFO] [stdout]    --> src/spatial/transforms.rs:292:9
[INFO] [stdout]     |
[INFO] [stdout] 292 |         transform_matrix: &Array2<f64>,
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_transform_matrix`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `homography`
[INFO] [stdout]    --> src/spatial/transforms.rs:300:49
[INFO] [stdout]     |
[INFO] [stdout] 300 |     pub fn rectify_image(&self, image: &Tensor, homography: &Array2<f64>) -> Result<Tensor> {
[INFO] [stdout]     |                                                 ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_homography`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `source`
[INFO] [stdout]    --> src/spatial/transforms.rs:327:9
[INFO] [stdout]     |
[INFO] [stdout] 327 |         source: &Array2<f64>,
[INFO] [stdout]     |         ^^^^^^ help: if this is intentional, prefix it with an underscore: `_source`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `target`
[INFO] [stdout]    --> src/spatial/transforms.rs:328:9
[INFO] [stdout]     |
[INFO] [stdout] 328 |         target: &Array2<f64>,
[INFO] [stdout]     |         ^^^^^^ help: if this is intentional, prefix it with an underscore: `_target`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `target`
[INFO] [stdout]    --> src/spatial.rs:230:9
[INFO] [stdout]     |
[INFO] [stdout] 230 |         target: &Array2<f64>,
[INFO] [stdout]     |         ^^^^^^ help: if this is intentional, prefix it with an underscore: `_target`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/transforms/augmentation.rs:384:13
[INFO] [stdout]     |
[INFO] [stdout] 384 |         let mut output = input.clone();
[INFO] [stdout]     |             ----^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/transforms/augmentation.rs:483:13
[INFO] [stdout]     |
[INFO] [stdout] 483 |         let mut output = input.clone();
[INFO] [stdout]     |             ----^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/transforms/mixing.rs:92:13
[INFO] [stdout]    |
[INFO] [stdout] 92 |         let mut mixed_labels = creation::zeros(&[num_classes]).unwrap();
[INFO] [stdout]    |             ----^^^^^^^^^^^^
[INFO] [stdout]    |             |
[INFO] [stdout]    |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/transforms/mixing.rs:141:13
[INFO] [stdout]     |
[INFO] [stdout] 141 |         let mut mixed_labels = creation::zeros(&[num_classes]).unwrap();
[INFO] [stdout]     |             ----^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/transforms/mixing.rs:279:13
[INFO] [stdout]     |
[INFO] [stdout] 279 |         let mut mixed_image = input1.clone();
[INFO] [stdout]     |             ----^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/transforms/mixing.rs:297:13
[INFO] [stdout]     |
[INFO] [stdout] 297 |         let mut mixed_labels = creation::zeros(&[num_classes]).unwrap();
[INFO] [stdout]     |             ----^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/transforms/mixing.rs:352:13
[INFO] [stdout]     |
[INFO] [stdout] 352 |         let mut mixed_image = input1.clone();
[INFO] [stdout]     |             ----^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/transforms/mixing.rs:370:13
[INFO] [stdout]     |
[INFO] [stdout] 370 |         let mut mixed_labels = creation::zeros(&[num_classes]).unwrap();
[INFO] [stdout]     |             ----^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/transforms/sophisticated.rs:117:13
[INFO] [stdout]     |
[INFO] [stdout] 117 |         let mut output = input.clone();
[INFO] [stdout]     |             ----^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/transforms/sophisticated.rs:173:13
[INFO] [stdout]     |
[INFO] [stdout] 173 |         let mut output = input.clone();
[INFO] [stdout]     |             ----^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/transforms/sophisticated.rs:312:13
[INFO] [stdout]     |
[INFO] [stdout] 312 |         let mut mask = creation::ones(&[height, width]).unwrap();
[INFO] [stdout]     |             ----^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/transforms/sophisticated.rs:350:13
[INFO] [stdout]     |
[INFO] [stdout] 350 |         let mut output = input.clone();
[INFO] [stdout]     |             ----^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/transforms/sophisticated.rs:420:13
[INFO] [stdout]     |
[INFO] [stdout] 420 |         let mut mosaic = creation::zeros(&[channels, target_height, target_width]).unwrap();
[INFO] [stdout]     |             ----^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `b`
[INFO] [stdout]    --> src/models/detection.rs:320:13
[INFO] [stdout]     |
[INFO] [stdout] 320 |         let b = x.size(0)?;
[INFO] [stdout]     |             ^ help: if this is intentional, prefix it with an underscore: `_b`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `c`
[INFO] [stdout]    --> src/models/detection.rs:321:13
[INFO] [stdout]     |
[INFO] [stdout] 321 |         let c = x.size(1)?;
[INFO] [stdout]     |             ^ help: if this is intentional, prefix it with an underscore: `_c`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `compose`
[INFO] [stdout]    --> src/transforms/unified.rs:736:29
[INFO] [stdout]     |
[INFO] [stdout] 736 |     pub fn analyze_pipeline(compose: &crate::transforms::Compose) -> String {
[INFO] [stdout]     |                             ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_compose`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `device_type`
[INFO] [stdout]    --> src/unified_transforms.rs:148:13
[INFO] [stdout]     |
[INFO] [stdout] 148 |         let device_type = DeviceType::Cpu;
[INFO] [stdout]     |             ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_device_type`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/utils/image_conversion.rs:130:17
[INFO] [stdout]     |
[INFO] [stdout] 130 |             let mut tensor = creation::zeros(&[3, height as usize, width as usize]).unwrap();
[INFO] [stdout]     |                 ----^^^^^^
[INFO] [stdout]     |                 |
[INFO] [stdout]     |                 help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/utils/image_conversion.rs:148:17
[INFO] [stdout]     |
[INFO] [stdout] 148 |             let mut tensor = creation::zeros(&[1, height as usize, width as usize]).unwrap();
[INFO] [stdout]     |                 ----^^^^^^
[INFO] [stdout]     |                 |
[INFO] [stdout]     |                 help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/utils/image_conversion.rs:164:17
[INFO] [stdout]     |
[INFO] [stdout] 164 |             let mut tensor = creation::zeros(&[3, height as usize, width as usize]).unwrap();
[INFO] [stdout]     |                 ----^^^^^^
[INFO] [stdout]     |                 |
[INFO] [stdout]     |                 help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/utils/image_conversion.rs:234:9
[INFO] [stdout]     |
[INFO] [stdout] 234 |     let mut output = tensor.clone();
[INFO] [stdout]     |         ----^^^^^^
[INFO] [stdout]     |         |
[INFO] [stdout]     |         help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/utils/image_processing.rs:116:9
[INFO] [stdout]     |
[INFO] [stdout] 116 |     let mut grayscale = creation::zeros(&[1, height, width]).unwrap();
[INFO] [stdout]     |         ----^^^^^^^^^
[INFO] [stdout]     |         |
[INFO] [stdout]     |         help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/models/style_transfer.rs:54:13
[INFO] [stdout]    |
[INFO] [stdout] 54 |         let mut x = self.conv1_1.forward(x)?.relu()?;
[INFO] [stdout]    |             ----^
[INFO] [stdout]    |             |
[INFO] [stdout]    |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/models/style_transfer.rs:55:13
[INFO] [stdout]    |
[INFO] [stdout] 55 |         let mut x = self.conv1_2.forward(&x)?.relu()?;
[INFO] [stdout]    |             ----^
[INFO] [stdout]    |             |
[INFO] [stdout]    |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/models/style_transfer.rs:58:13
[INFO] [stdout]    |
[INFO] [stdout] 58 |         let mut x = max_pool2d(&x, (2, 2), Some((2, 2)), Some((0, 0)), None)?;
[INFO] [stdout]    |             ----^
[INFO] [stdout]    |             |
[INFO] [stdout]    |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/models/style_transfer.rs:59:13
[INFO] [stdout]    |
[INFO] [stdout] 59 |         let mut x = self.conv2_1.forward(&x)?.relu()?;
[INFO] [stdout]    |             ----^
[INFO] [stdout]    |             |
[INFO] [stdout]    |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/models/style_transfer.rs:60:13
[INFO] [stdout]    |
[INFO] [stdout] 60 |         let mut x = self.conv2_2.forward(&x)?.relu()?;
[INFO] [stdout]    |             ----^
[INFO] [stdout]    |             |
[INFO] [stdout]    |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/models/style_transfer.rs:63:13
[INFO] [stdout]    |
[INFO] [stdout] 63 |         let mut x = max_pool2d(&x, (2, 2), Some((2, 2)), Some((0, 0)), None)?;
[INFO] [stdout]    |             ----^
[INFO] [stdout]    |             |
[INFO] [stdout]    |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/models/style_transfer.rs:64:13
[INFO] [stdout]    |
[INFO] [stdout] 64 |         let mut x = self.conv3_1.forward(&x)?.relu()?;
[INFO] [stdout]    |             ----^
[INFO] [stdout]    |             |
[INFO] [stdout]    |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/models/style_transfer.rs:65:13
[INFO] [stdout]    |
[INFO] [stdout] 65 |         let mut x = self.conv3_2.forward(&x)?.relu()?;
[INFO] [stdout]    |             ----^
[INFO] [stdout]    |             |
[INFO] [stdout]    |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/models/style_transfer.rs:66:13
[INFO] [stdout]    |
[INFO] [stdout] 66 |         let mut x = self.conv3_3.forward(&x)?.relu()?;
[INFO] [stdout]    |             ----^
[INFO] [stdout]    |             |
[INFO] [stdout]    |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/models/style_transfer.rs:67:13
[INFO] [stdout]    |
[INFO] [stdout] 67 |         let mut x = self.conv3_4.forward(&x)?.relu()?;
[INFO] [stdout]    |             ----^
[INFO] [stdout]    |             |
[INFO] [stdout]    |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/models/style_transfer.rs:70:13
[INFO] [stdout]    |
[INFO] [stdout] 70 |         let mut x = max_pool2d(&x, (2, 2), Some((2, 2)), Some((0, 0)), None)?;
[INFO] [stdout]    |             ----^
[INFO] [stdout]    |             |
[INFO] [stdout]    |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/models/style_transfer.rs:71:13
[INFO] [stdout]    |
[INFO] [stdout] 71 |         let mut x = self.conv4_1.forward(&x)?.relu()?;
[INFO] [stdout]    |             ----^
[INFO] [stdout]    |             |
[INFO] [stdout]    |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/models/style_transfer.rs:72:13
[INFO] [stdout]    |
[INFO] [stdout] 72 |         let mut x = self.conv4_2.forward(&x)?.relu()?;
[INFO] [stdout]    |             ----^
[INFO] [stdout]    |             |
[INFO] [stdout]    |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/models/style_transfer.rs:73:13
[INFO] [stdout]    |
[INFO] [stdout] 73 |         let mut x = self.conv4_3.forward(&x)?.relu()?;
[INFO] [stdout]    |             ----^
[INFO] [stdout]    |             |
[INFO] [stdout]    |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/models/style_transfer.rs:74:13
[INFO] [stdout]    |
[INFO] [stdout] 74 |         let mut x = self.conv4_4.forward(&x)?.relu()?;
[INFO] [stdout]    |             ----^
[INFO] [stdout]    |             |
[INFO] [stdout]    |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/models/style_transfer.rs:77:13
[INFO] [stdout]    |
[INFO] [stdout] 77 |         let mut x = max_pool2d(&x, (2, 2), Some((2, 2)), Some((0, 0)), None)?;
[INFO] [stdout]    |             ----^
[INFO] [stdout]    |             |
[INFO] [stdout]    |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `gram_size`
[INFO] [stdout]    --> src/models/style_transfer.rs:136:13
[INFO] [stdout]     |
[INFO] [stdout] 136 |         let gram_size = channels * channels;
[INFO] [stdout]     |             ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_gram_size`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `batch`
[INFO] [stdout]   --> src/models/super_resolution.rs:52:14
[INFO] [stdout]    |
[INFO] [stdout] 52 |         let (batch, channels, height, width) = (
[INFO] [stdout]    |              ^^^^^ help: if this is intentional, prefix it with an underscore: `_batch`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `channels`
[INFO] [stdout]   --> src/models/super_resolution.rs:52:21
[INFO] [stdout]    |
[INFO] [stdout] 52 |         let (batch, channels, height, width) = (
[INFO] [stdout]    |                     ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_channels`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/utils/visualization.rs:85:9
[INFO] [stdout]    |
[INFO] [stdout] 85 |     let mut grid = creation::zeros(&[channels, grid_height, grid_width]).unwrap();
[INFO] [stdout]    |         ----^^^^
[INFO] [stdout]    |         |
[INFO] [stdout]    |         help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/models/super_resolution.rs:303:13
[INFO] [stdout]     |
[INFO] [stdout] 303 |         let mut current_channels = in_channels;
[INFO] [stdout]     |             ----^^^^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/video.rs:312:13
[INFO] [stdout]     |
[INFO] [stdout] 312 |         let mut flow_x = Tensor::zeros(&[height, width], self.device)?;
[INFO] [stdout]     |             ----^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/video.rs:313:13
[INFO] [stdout]     |
[INFO] [stdout] 313 |         let mut flow_y = Tensor::zeros(&[height, width], self.device)?;
[INFO] [stdout]     |             ----^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/ops/analysis/mod.rs:234:9
[INFO] [stdout]     |
[INFO] [stdout] 234 |     let mut losses = zeros(&[batch_size])?;
[INFO] [stdout]     |         ----^^^^^^
[INFO] [stdout]     |         |
[INFO] [stdout]     |         help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/video.rs:378:13
[INFO] [stdout]     |
[INFO] [stdout] 378 |         let mut output = Tensor::zeros(&[h, w], self.device)?;
[INFO] [stdout]     |             ----^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/ops/analysis/mod.rs:296:9
[INFO] [stdout]     |
[INFO] [stdout] 296 |     let mut losses = zeros(&[batch_size])?;
[INFO] [stdout]     |         ----^^^^^^
[INFO] [stdout]     |         |
[INFO] [stdout]     |         help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `num_classes`
[INFO] [stdout]    --> src/ops/analysis/mod.rs:290:22
[INFO] [stdout]     |
[INFO] [stdout] 290 |     let (batch_size, num_classes) = (pred_dims[0], pred_dims[1]);
[INFO] [stdout]     |                      ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_num_classes`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `in_channels`
[INFO] [stdout]    --> src/video.rs:481:26
[INFO] [stdout]     |
[INFO] [stdout] 481 |         let (batch_size, in_channels, time_steps, height, width) = (
[INFO] [stdout]     |                          ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_in_channels`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `batch_size`
[INFO] [stdout]    --> src/video.rs:526:14
[INFO] [stdout]     |
[INFO] [stdout] 526 |         let (batch_size, channels, _time_steps, height, width) = (
[INFO] [stdout]     |              ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_batch_size`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `channels`
[INFO] [stdout]    --> src/video.rs:526:26
[INFO] [stdout]     |
[INFO] [stdout] 526 |         let (batch_size, channels, _time_steps, height, width) = (
[INFO] [stdout]     |                          ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_channels`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `height`
[INFO] [stdout]    --> src/video.rs:526:49
[INFO] [stdout]     |
[INFO] [stdout] 526 |         let (batch_size, channels, _time_steps, height, width) = (
[INFO] [stdout]     |                                                 ^^^^^^ help: if this is intentional, prefix it with an underscore: `_height`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `width`
[INFO] [stdout]    --> src/video.rs:526:57
[INFO] [stdout]     |
[INFO] [stdout] 526 |         let (batch_size, channels, _time_steps, height, width) = (
[INFO] [stdout]     |                                                         ^^^^^ help: if this is intentional, prefix it with an underscore: `_width`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/ops/analysis/mod.rs:639:9
[INFO] [stdout]     |
[INFO] [stdout] 639 |     let mut result = zeros(&pred_dims)?;
[INFO] [stdout]     |         ----^^^^^^
[INFO] [stdout]     |         |
[INFO] [stdout]     |         help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `i`
[INFO] [stdout]    --> src/viz3d.rs:285:13
[INFO] [stdout]     |
[INFO] [stdout] 285 |         for i in 0..num_points {
[INFO] [stdout]     |             ^ help: if this is intentional, prefix it with an underscore: `_i`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/ops/analysis/mod.rs:671:9
[INFO] [stdout]     |
[INFO] [stdout] 671 |     let mut result = zeros(&dims)?;
[INFO] [stdout]     |         ----^^^^^^
[INFO] [stdout]     |         |
[INFO] [stdout]     |         help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/ops/analysis/mod.rs:688:9
[INFO] [stdout]     |
[INFO] [stdout] 688 |     let mut result = zeros(&dims)?;
[INFO] [stdout]     |         ----^^^^^^
[INFO] [stdout]     |         |
[INFO] [stdout]     |         help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `target_class`
[INFO] [stdout]    --> src/ops/analysis/mod.rs:705:5
[INFO] [stdout]     |
[INFO] [stdout] 705 |     target_class: usize,
[INFO] [stdout]     |     ^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_target_class`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `smoothing`
[INFO] [stdout]    --> src/ops/analysis/mod.rs:707:5
[INFO] [stdout]     |
[INFO] [stdout] 707 |     smoothing: f32,
[INFO] [stdout]     |     ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_smoothing`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/ops/analysis/mod.rs:739:13
[INFO] [stdout]     |
[INFO] [stdout] 739 |         let mut result = zeros(&[batch_size])?;
[INFO] [stdout]     |             ----^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `fn_count` is never read
[INFO] [stdout]    --> src/ops/analysis/mod.rs:890:24
[INFO] [stdout]     |
[INFO] [stdout] 890 |     let mut fn_count = 0;
[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: variable does not need to be mutable
[INFO] [stdout]    --> src/ops/color/mod.rs:220:9
[INFO] [stdout]     |
[INFO] [stdout] 220 |     let mut result = zeros(&[1, height, width])?;
[INFO] [stdout]     |         ----^^^^^^
[INFO] [stdout]     |         |
[INFO] [stdout]     |         help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/ops/color/mod.rs:249:9
[INFO] [stdout]     |
[INFO] [stdout] 249 |     let mut result = zeros(&[3, height, width])?;
[INFO] [stdout]     |         ----^^^^^^
[INFO] [stdout]     |         |
[INFO] [stdout]     |         help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/ops/color/mod.rs:278:9
[INFO] [stdout]     |
[INFO] [stdout] 278 |     let mut result = zeros(&[3, height, width])?;
[INFO] [stdout]     |         ----^^^^^^
[INFO] [stdout]     |         |
[INFO] [stdout]     |         help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/ops/color/mod.rs:307:9
[INFO] [stdout]     |
[INFO] [stdout] 307 |     let mut result = zeros(&[3, height, width])?;
[INFO] [stdout]     |         ----^^^^^^
[INFO] [stdout]     |         |
[INFO] [stdout]     |         help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/ops/color/mod.rs:383:9
[INFO] [stdout]     |
[INFO] [stdout] 383 |     let mut result = zeros(&dims)?;
[INFO] [stdout]     |         ----^^^^^^
[INFO] [stdout]     |         |
[INFO] [stdout]     |         help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/ops/color/mod.rs:401:9
[INFO] [stdout]     |
[INFO] [stdout] 401 |     let mut result = zeros(&dims)?;
[INFO] [stdout]     |         ----^^^^^^
[INFO] [stdout]     |         |
[INFO] [stdout]     |         help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/ops/color/mod.rs:427:9
[INFO] [stdout]     |
[INFO] [stdout] 427 |     let mut adjusted_hsv = hsv.clone();
[INFO] [stdout]     |         ----^^^^^^^^^^^^
[INFO] [stdout]     |         |
[INFO] [stdout]     |         help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/ops/color/mod.rs:452:9
[INFO] [stdout]     |
[INFO] [stdout] 452 |     let mut adjusted_hsv = hsv.clone();
[INFO] [stdout]     |         ----^^^^^^^^^^^^
[INFO] [stdout]     |         |
[INFO] [stdout]     |         help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/ops/color/mod.rs:474:9
[INFO] [stdout]     |
[INFO] [stdout] 474 |     let mut result = zeros(&dims)?;
[INFO] [stdout]     |         ----^^^^^^
[INFO] [stdout]     |         |
[INFO] [stdout]     |         help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/ops/color/mod.rs:499:9
[INFO] [stdout]     |
[INFO] [stdout] 499 |     let mut result = zeros(&[1, height, width])?;
[INFO] [stdout]     |         ----^^^^^^
[INFO] [stdout]     |         |
[INFO] [stdout]     |         help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/ops/color/mod.rs:588:9
[INFO] [stdout]     |
[INFO] [stdout] 588 |     let mut result = zeros(&dims)?;
[INFO] [stdout]     |         ----^^^^^^
[INFO] [stdout]     |         |
[INFO] [stdout]     |         help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/ops/color/mod.rs:647:9
[INFO] [stdout]     |
[INFO] [stdout] 647 |     let mut result = zeros(&dims)?;
[INFO] [stdout]     |         ----^^^^^^
[INFO] [stdout]     |         |
[INFO] [stdout]     |         help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/ops/color/mod.rs:736:9
[INFO] [stdout]     |
[INFO] [stdout] 736 |     let mut result = zeros(&[channels, height, width])?;
[INFO] [stdout]     |         ----^^^^^^
[INFO] [stdout]     |         |
[INFO] [stdout]     |         help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/ops/color/mod.rs:761:9
[INFO] [stdout]     |
[INFO] [stdout] 761 |     let mut result = zeros(&[channels, height, width])?;
[INFO] [stdout]     |         ----^^^^^^
[INFO] [stdout]     |         |
[INFO] [stdout]     |         help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/ops/color/mod.rs:810:9
[INFO] [stdout]     |
[INFO] [stdout] 810 |     let mut result = image.clone();
[INFO] [stdout]     |         ----^^^^^^
[INFO] [stdout]     |         |
[INFO] [stdout]     |         help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/ops/color/mod.rs:861:9
[INFO] [stdout]     |
[INFO] [stdout] 861 |     let mut result = zeros(&[channels, height, width])?;
[INFO] [stdout]     |         ----^^^^^^
[INFO] [stdout]     |         |
[INFO] [stdout]     |         help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a shared reference to mutable static
[INFO] [stdout]    --> src/io.rs:530:9
[INFO] [stdout]     |
[INFO] [stdout] 530 |         GLOBAL_IO.as_ref().unwrap()
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^ shared reference to mutable static
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stdout]     = note: shared references to mutable statics are dangerous; it's undefined behavior if the static is mutated or if a mutable reference is created for it while the shared reference lives
[INFO] [stdout]     = note: `#[warn(static_mut_refs)]` (part of `#[warn(rust_2024_compatibility)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `x2`
[INFO] [stdout]   --> src/ops/common.rs:89:9
[INFO] [stdout]    |
[INFO] [stdout] 89 |         x2: usize,
[INFO] [stdout]    |         ^^ help: if this is intentional, prefix it with an underscore: `_x2`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a shared reference to mutable static
[INFO] [stdout]    --> src/memory.rs:623:9
[INFO] [stdout]     |
[INFO] [stdout] 623 |         GLOBAL_MEMORY_MANAGER.as_ref().unwrap()
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ shared reference to mutable static
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stdout]     = note: shared references to mutable statics are dangerous; it's undefined behavior if the static is mutated or if a mutable reference is created for it while the shared reference lives
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `y2`
[INFO] [stdout]   --> src/ops/common.rs:90:9
[INFO] [stdout]    |
[INFO] [stdout] 90 |         y2: usize,
[INFO] [stdout]    |         ^^ help: if this is intentional, prefix it with an underscore: `_y2`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `min_val`
[INFO] [stdout]    --> src/ops/common.rs:127:36
[INFO] [stdout]     |
[INFO] [stdout] 127 |     pub fn clamp_coord(value: i64, min_val: usize, max_val: usize) -> usize {
[INFO] [stdout]     |                                    ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_min_val`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/ops/detection/mod.rs:232:9
[INFO] [stdout]     |
[INFO] [stdout] 232 |     let mut iou_matrix = zeros(&[n, n])?;
[INFO] [stdout]     |         ----^^^^^^^^^^
[INFO] [stdout]     |         |
[INFO] [stdout]     |         help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/ops/detection/mod.rs:308:9
[INFO] [stdout]     |
[INFO] [stdout] 308 |     let mut pooled_features = zeros(&[num_rois, channels, pool_height, pool_width])?;
[INFO] [stdout]     |         ----^^^^^^^^^^^^^^^
[INFO] [stdout]     |         |
[INFO] [stdout]     |         help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/ops/detection/mod.rs:462:9
[INFO] [stdout]     |
[INFO] [stdout] 462 |     let mut bbox_targets = zeros(&[num_anchors, 4])?;
[INFO] [stdout]     |         ----^^^^^^^^^^^^
[INFO] [stdout]     |         |
[INFO] [stdout]     |         help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/ops/detection/mod.rs:550:5
[INFO] [stdout]     |
[INFO] [stdout] 550 |     mut detections: Vec<Detection>,
[INFO] [stdout]     |     ----^^^^^^^^^^
[INFO] [stdout]     |     |
[INFO] [stdout]     |     help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/ops/filtering/mod.rs:568:9
[INFO] [stdout]     |
[INFO] [stdout] 568 |     let mut result = zeros(&[channels, height, width])?;
[INFO] [stdout]     |         ----^^^^^^
[INFO] [stdout]     |         |
[INFO] [stdout]     |         help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/ops/filtering/mod.rs:601:9
[INFO] [stdout]     |
[INFO] [stdout] 601 |     let mut result = zeros(&[channels, height, width])?;
[INFO] [stdout]     |         ----^^^^^^
[INFO] [stdout]     |         |
[INFO] [stdout]     |         help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/ops/filtering/mod.rs:636:9
[INFO] [stdout]     |
[INFO] [stdout] 636 |     let mut result = zeros(&[channels, height, width])?;
[INFO] [stdout]     |         ----^^^^^^
[INFO] [stdout]     |         |
[INFO] [stdout]     |         help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/ops/filtering/mod.rs:682:9
[INFO] [stdout]     |
[INFO] [stdout] 682 |     let mut result = zeros(&[1, height, width])?;
[INFO] [stdout]     |         ----^^^^^^
[INFO] [stdout]     |         |
[INFO] [stdout]     |         help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/ops/filtering/mod.rs:718:9
[INFO] [stdout]     |
[INFO] [stdout] 718 |     let mut result = zeros(&[1, height, width])?;
[INFO] [stdout]     |         ----^^^^^^
[INFO] [stdout]     |         |
[INFO] [stdout]     |         help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/ops/filtering/mod.rs:755:9
[INFO] [stdout]     |
[INFO] [stdout] 755 |     let mut result = zeros(&[channels, height, width])?;
[INFO] [stdout]     |         ----^^^^^^
[INFO] [stdout]     |         |
[INFO] [stdout]     |         help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/ops/filtering/mod.rs:795:9
[INFO] [stdout]     |
[INFO] [stdout] 795 |     let mut result = zeros(&[channels, height, width])?;
[INFO] [stdout]     |         ----^^^^^^
[INFO] [stdout]     |         |
[INFO] [stdout]     |         help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/ops/filtering/mod.rs:871:9
[INFO] [stdout]     |
[INFO] [stdout] 871 |     let mut result = zeros(&[3, 3])?;
[INFO] [stdout]     |         ----^^^^^^
[INFO] [stdout]     |         |
[INFO] [stdout]     |         help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/ops/filtering/mod.rs:883:9
[INFO] [stdout]     |
[INFO] [stdout] 883 |     let mut result: Tensor<f32> = zeros(&dims)?;
[INFO] [stdout]     |         ----^^^^^^
[INFO] [stdout]     |         |
[INFO] [stdout]     |         help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/ops/filtering/mod.rs:915:9
[INFO] [stdout]     |
[INFO] [stdout] 915 |     let mut result: Tensor<f32> = zeros(&dims)?;
[INFO] [stdout]     |         ----^^^^^^
[INFO] [stdout]     |         |
[INFO] [stdout]     |         help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/ops/filtering/mod.rs:942:9
[INFO] [stdout]     |
[INFO] [stdout] 942 |     let mut result: Tensor<f32> = zeros(&dims)?;
[INFO] [stdout]     |         ----^^^^^^
[INFO] [stdout]     |         |
[INFO] [stdout]     |         help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/ops/filtering/mod.rs:999:9
[INFO] [stdout]     |
[INFO] [stdout] 999 |     let mut result: Tensor<f32> = zeros(&dims)?;
[INFO] [stdout]     |         ----^^^^^^
[INFO] [stdout]     |         |
[INFO] [stdout]     |         help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]     --> src/ops/filtering/mod.rs:1083:9
[INFO] [stdout]      |
[INFO] [stdout] 1083 |     let mut result: Tensor<f32> = zeros(&dims)?;
[INFO] [stdout]      |         ----^^^^^^
[INFO] [stdout]      |         |
[INFO] [stdout]      |         help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/ops/geometric/mod.rs:146:9
[INFO] [stdout]     |
[INFO] [stdout] 146 |     let mut output = zeros(&[channels, target_height, target_width]).unwrap();
[INFO] [stdout]     |         ----^^^^^^
[INFO] [stdout]     |         |
[INFO] [stdout]     |         help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/ops/geometric/mod.rs:188:9
[INFO] [stdout]     |
[INFO] [stdout] 188 |     let mut output = zeros(&[channels, target_height, target_width]).unwrap();
[INFO] [stdout]     |         ----^^^^^^
[INFO] [stdout]     |         |
[INFO] [stdout]     |         help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `channels`
[INFO] [stdout]    --> src/ops/geometric/mod.rs:227:10
[INFO] [stdout]     |
[INFO] [stdout] 227 |     let (channels, height, width) = utils::validate_image_tensor_3d(image)?;
[INFO] [stdout]     |          ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_channels`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `channels`
[INFO] [stdout]    --> src/ops/geometric/mod.rs:240:10
[INFO] [stdout]     |
[INFO] [stdout] 240 |     let (channels, height, width) = utils::validate_image_tensor_3d(image)?;
[INFO] [stdout]     |          ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_channels`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/ops/geometric/mod.rs:282:9
[INFO] [stdout]     |
[INFO] [stdout] 282 |     let mut output = zeros(&[channels, height, width]).unwrap();
[INFO] [stdout]     |         ----^^^^^^
[INFO] [stdout]     |         |
[INFO] [stdout]     |         help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/ops/geometric/mod.rs:301:9
[INFO] [stdout]     |
[INFO] [stdout] 301 |     let mut output = zeros(&[channels, height, width]).unwrap();
[INFO] [stdout]     |         ----^^^^^^
[INFO] [stdout]     |         |
[INFO] [stdout]     |         help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/ops/geometric/mod.rs:320:9
[INFO] [stdout]     |
[INFO] [stdout] 320 |     let mut output = zeros(&[channels, height, width]).unwrap();
[INFO] [stdout]     |         ----^^^^^^
[INFO] [stdout]     |         |
[INFO] [stdout]     |         help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/optimized_impl.rs:542:13
[INFO] [stdout]     |
[INFO] [stdout] 542 |         let mut tensor = torsh_tensor::creation::zeros(&[3, 32, 32]).unwrap();
[INFO] [stdout]     |             ----^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/optimized_impl.rs:570:13
[INFO] [stdout]     |
[INFO] [stdout] 570 |         let mut tensor = torsh_tensor::creation::zeros(&[3, 32, 32]).unwrap();
[INFO] [stdout]     |             ----^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `database_patches`
[INFO] [stdout]   --> src/spatial/distance.rs:43:9
[INFO] [stdout]    |
[INFO] [stdout] 43 |         database_patches: &Array2<f64>,
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_database_patches`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `metric`
[INFO] [stdout]    --> src/spatial/distance.rs:149:9
[INFO] [stdout]     |
[INFO] [stdout] 149 |         metric: &str,
[INFO] [stdout]     |         ^^^^^^ help: if this is intentional, prefix it with an underscore: `_metric`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `points`
[INFO] [stdout]   --> src/spatial/interpolation.rs:96:9
[INFO] [stdout]    |
[INFO] [stdout] 96 |         points: &Array2<f64>,
[INFO] [stdout]    |         ^^^^^^ help: if this is intentional, prefix it with an underscore: `_points`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `values`
[INFO] [stdout]   --> src/spatial/interpolation.rs:97:9
[INFO] [stdout]    |
[INFO] [stdout] 97 |         values: &Array1<f64>,
[INFO] [stdout]    |         ^^^^^^ help: if this is intentional, prefix it with an underscore: `_values`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `points`
[INFO] [stdout]    --> src/spatial/interpolation.rs:107:9
[INFO] [stdout]     |
[INFO] [stdout] 107 |         points: &Array2<f64>,
[INFO] [stdout]     |         ^^^^^^ help: if this is intentional, prefix it with an underscore: `_points`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `values`
[INFO] [stdout]    --> src/spatial/interpolation.rs:108:9
[INFO] [stdout]     |
[INFO] [stdout] 108 |         values: &Array1<f64>,
[INFO] [stdout]     |         ^^^^^^ help: if this is intentional, prefix it with an underscore: `_values`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `points`
[INFO] [stdout]    --> src/spatial/interpolation.rs:156:9
[INFO] [stdout]     |
[INFO] [stdout] 156 |         points: &Array2<f64>,
[INFO] [stdout]     |         ^^^^^^ help: if this is intentional, prefix it with an underscore: `_points`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `values`
[INFO] [stdout]    --> src/spatial/interpolation.rs:157:9
[INFO] [stdout]     |
[INFO] [stdout] 157 |         values: &Array1<f64>,
[INFO] [stdout]     |         ^^^^^^ help: if this is intentional, prefix it with an underscore: `_values`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `points`
[INFO] [stdout]    --> src/spatial/interpolation.rs:167:9
[INFO] [stdout]     |
[INFO] [stdout] 167 |         points: &Array2<f64>,
[INFO] [stdout]     |         ^^^^^^ help: if this is intentional, prefix it with an underscore: `_points`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `values`
[INFO] [stdout]    --> src/spatial/interpolation.rs:168:9
[INFO] [stdout]     |
[INFO] [stdout] 168 |         values: &Array1<f64>,
[INFO] [stdout]     |         ^^^^^^ help: if this is intentional, prefix it with an underscore: `_values`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `mask`
[INFO] [stdout]    --> src/spatial/interpolation.rs:176:58
[INFO] [stdout]     |
[INFO] [stdout] 176 |     pub fn interpolate_image_gaps(&self, image: &Tensor, mask: &Tensor) -> Result<Tensor> {
[INFO] [stdout]     |                                                          ^^^^ help: if this is intentional, prefix it with an underscore: `_mask`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `displacement_field`
[INFO] [stdout]    --> src/spatial/interpolation.rs:210:46
[INFO] [stdout]     |
[INFO] [stdout] 210 |     pub fn warp_image(&self, image: &Tensor, displacement_field: &Array2<f64>) -> Result<Tensor> {
[INFO] [stdout]     |                                              ^^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_displacement_field`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `distortion_coeffs`
[INFO] [stdout]    --> src/spatial/interpolation.rs:220:9
[INFO] [stdout]     |
[INFO] [stdout] 220 |         distortion_coeffs: &Array1<f64>,
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_distortion_coeffs`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `distortion_coeffs`
[INFO] [stdout]    --> src/spatial/interpolation.rs:230:9
[INFO] [stdout]     |
[INFO] [stdout] 230 |         distortion_coeffs: &Array1<f64>,
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_distortion_coeffs`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `i`
[INFO] [stdout]    --> src/spatial/matching.rs:306:22
[INFO] [stdout]     |
[INFO] [stdout] 306 |                 for (i, (&a, &b)) in desc1.iter().zip(desc2.iter()).enumerate() {
[INFO] [stdout]     |                      ^ help: if this is intentional, prefix it with an underscore: `_i`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `query_keypoints`
[INFO] [stdout]    --> src/spatial/matching.rs:327:9
[INFO] [stdout]     |
[INFO] [stdout] 327 |         query_keypoints: &[Keypoint],
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_query_keypoints`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `train_keypoints`
[INFO] [stdout]    --> src/spatial/matching.rs:328:9
[INFO] [stdout]     |
[INFO] [stdout] 328 |         train_keypoints: &[Keypoint],
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_train_keypoints`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `bbox`
[INFO] [stdout]    --> src/spatial/structures.rs:272:13
[INFO] [stdout]     |
[INFO] [stdout] 272 |         let bbox = BoundingBox::from_points(&self.points)?;
[INFO] [stdout]     |             ^^^^ help: if this is intentional, prefix it with an underscore: `_bbox`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `region_size`
[INFO] [stdout]    --> src/spatial/structures.rs:322:35
[INFO] [stdout]     |
[INFO] [stdout] 322 |     pub fn segment_regions(&self, region_size: f64) -> Result<Vec<Vec<PointId>>> {
[INFO] [stdout]     |                                   ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_region_size`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `dims`
[INFO] [stdout]    --> src/spatial/structures.rs:329:17
[INFO] [stdout]     |
[INFO] [stdout] 329 |             let dims = bbox.max.len();
[INFO] [stdout]     |                 ^^^^ help: if this is intentional, prefix it with an underscore: `_dims`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `rotation`
[INFO] [stdout]   --> src/spatial/transforms.rs:79:9
[INFO] [stdout]    |
[INFO] [stdout] 79 |         rotation: &Rotation,
[INFO] [stdout]    |         ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_rotation`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `points_3d`
[INFO] [stdout]    --> src/spatial/transforms.rs:248:9
[INFO] [stdout]     |
[INFO] [stdout] 248 |         points_3d: &Array2<f64>,
[INFO] [stdout]     |         ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_points_3d`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `transform_matrix`
[INFO] [stdout]    --> src/spatial/transforms.rs:292:9
[INFO] [stdout]     |
[INFO] [stdout] 292 |         transform_matrix: &Array2<f64>,
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_transform_matrix`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `homography`
[INFO] [stdout]    --> src/spatial/transforms.rs:300:49
[INFO] [stdout]     |
[INFO] [stdout] 300 |     pub fn rectify_image(&self, image: &Tensor, homography: &Array2<f64>) -> Result<Tensor> {
[INFO] [stdout]     |                                                 ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_homography`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `source`
[INFO] [stdout]    --> src/spatial/transforms.rs:327:9
[INFO] [stdout]     |
[INFO] [stdout] 327 |         source: &Array2<f64>,
[INFO] [stdout]     |         ^^^^^^ help: if this is intentional, prefix it with an underscore: `_source`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `target`
[INFO] [stdout]    --> src/spatial/transforms.rs:328:9
[INFO] [stdout]     |
[INFO] [stdout] 328 |         target: &Array2<f64>,
[INFO] [stdout]     |         ^^^^^^ help: if this is intentional, prefix it with an underscore: `_target`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `target`
[INFO] [stdout]    --> src/spatial.rs:230:9
[INFO] [stdout]     |
[INFO] [stdout] 230 |         target: &Array2<f64>,
[INFO] [stdout]     |         ^^^^^^ help: if this is intentional, prefix it with an underscore: `_target`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/transforms/augmentation.rs:384:13
[INFO] [stdout]     |
[INFO] [stdout] 384 |         let mut output = input.clone();
[INFO] [stdout]     |             ----^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/transforms/augmentation.rs:483:13
[INFO] [stdout]     |
[INFO] [stdout] 483 |         let mut output = input.clone();
[INFO] [stdout]     |             ----^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/transforms/mixing.rs:92:13
[INFO] [stdout]    |
[INFO] [stdout] 92 |         let mut mixed_labels = creation::zeros(&[num_classes]).unwrap();
[INFO] [stdout]    |             ----^^^^^^^^^^^^
[INFO] [stdout]    |             |
[INFO] [stdout]    |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/transforms/mixing.rs:141:13
[INFO] [stdout]     |
[INFO] [stdout] 141 |         let mut mixed_labels = creation::zeros(&[num_classes]).unwrap();
[INFO] [stdout]     |             ----^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/transforms/mixing.rs:279:13
[INFO] [stdout]     |
[INFO] [stdout] 279 |         let mut mixed_image = input1.clone();
[INFO] [stdout]     |             ----^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/transforms/mixing.rs:297:13
[INFO] [stdout]     |
[INFO] [stdout] 297 |         let mut mixed_labels = creation::zeros(&[num_classes]).unwrap();
[INFO] [stdout]     |             ----^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/transforms/mixing.rs:352:13
[INFO] [stdout]     |
[INFO] [stdout] 352 |         let mut mixed_image = input1.clone();
[INFO] [stdout]     |             ----^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/transforms/mixing.rs:370:13
[INFO] [stdout]     |
[INFO] [stdout] 370 |         let mut mixed_labels = creation::zeros(&[num_classes]).unwrap();
[INFO] [stdout]     |             ----^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `mixed_image`
[INFO] [stdout]    --> src/transforms/mixing.rs:452:14
[INFO] [stdout]     |
[INFO] [stdout] 452 |         let (mixed_image, mixed_labels) = result.unwrap();
[INFO] [stdout]     |              ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_mixed_image`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `DeviceType`
[INFO] [stdout]  --> tests/test_augmentation.rs:3:37
[INFO] [stdout]   |
[INFO] [stdout] 3 | use torsh_core::device::{CpuDevice, DeviceType};
[INFO] [stdout]   |                                     ^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: requested on the command line with `-W unused-imports`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/transforms/sophisticated.rs:117:13
[INFO] [stdout]     |
[INFO] [stdout] 117 |         let mut output = input.clone();
[INFO] [stdout]     |             ----^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/transforms/sophisticated.rs:173:13
[INFO] [stdout]     |
[INFO] [stdout] 173 |         let mut output = input.clone();
[INFO] [stdout]     |             ----^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/transforms/sophisticated.rs:312:13
[INFO] [stdout]     |
[INFO] [stdout] 312 |         let mut mask = creation::ones(&[height, width]).unwrap();
[INFO] [stdout]     |             ----^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/transforms/sophisticated.rs:350:13
[INFO] [stdout]     |
[INFO] [stdout] 350 |         let mut output = input.clone();
[INFO] [stdout]     |             ----^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/transforms/sophisticated.rs:420:13
[INFO] [stdout]     |
[INFO] [stdout] 420 |         let mut mosaic = creation::zeros(&[channels, target_height, target_width]).unwrap();
[INFO] [stdout]     |             ----^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `cpu_device`
[INFO] [stdout]   --> tests/test_augmentation.rs:32:9
[INFO] [stdout]    |
[INFO] [stdout] 32 |     let cpu_device = CpuDevice::new();
[INFO] [stdout]    |         ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_cpu_device`
[INFO] [stdout]    |
[INFO] [stdout]    = note: requested on the command line with `-W unused-variables`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `cpu_device`
[INFO] [stdout]   --> tests/test_augmentation.rs:51:9
[INFO] [stdout]    |
[INFO] [stdout] 51 |     let cpu_device = CpuDevice::new();
[INFO] [stdout]    |         ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_cpu_device`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `cpu_device`
[INFO] [stdout]   --> tests/test_augmentation.rs:69:9
[INFO] [stdout]    |
[INFO] [stdout] 69 |     let cpu_device = CpuDevice::new();
[INFO] [stdout]    |         ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_cpu_device`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `cpu_device`
[INFO] [stdout]   --> tests/test_augmentation.rs:84:9
[INFO] [stdout]    |
[INFO] [stdout] 84 |     let cpu_device = CpuDevice::new();
[INFO] [stdout]    |         ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_cpu_device`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `cpu_device`
[INFO] [stdout]   --> tests/test_augmentation.rs:96:9
[INFO] [stdout]    |
[INFO] [stdout] 96 |     let cpu_device = CpuDevice::new();
[INFO] [stdout]    |         ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_cpu_device`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `compose`
[INFO] [stdout]    --> src/transforms/unified.rs:736:29
[INFO] [stdout]     |
[INFO] [stdout] 736 |     pub fn analyze_pipeline(compose: &crate::transforms::Compose) -> String {
[INFO] [stdout]     |                             ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_compose`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `device_type`
[INFO] [stdout]    --> src/unified_transforms.rs:148:13
[INFO] [stdout]     |
[INFO] [stdout] 148 |         let device_type = DeviceType::Cpu;
[INFO] [stdout]     |             ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_device_type`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/utils/image_conversion.rs:130:17
[INFO] [stdout]     |
[INFO] [stdout] 130 |             let mut tensor = creation::zeros(&[3, height as usize, width as usize]).unwrap();
[INFO] [stdout]     |                 ----^^^^^^
[INFO] [stdout]     |                 |
[INFO] [stdout]     |                 help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/utils/image_conversion.rs:148:17
[INFO] [stdout]     |
[INFO] [stdout] 148 |             let mut tensor = creation::zeros(&[1, height as usize, width as usize]).unwrap();
[INFO] [stdout]     |                 ----^^^^^^
[INFO] [stdout]     |                 |
[INFO] [stdout]     |                 help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/utils/image_conversion.rs:164:17
[INFO] [stdout]     |
[INFO] [stdout] 164 |             let mut tensor = creation::zeros(&[3, height as usize, width as usize]).unwrap();
[INFO] [stdout]     |                 ----^^^^^^
[INFO] [stdout]     |                 |
[INFO] [stdout]     |                 help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/utils/image_conversion.rs:234:9
[INFO] [stdout]     |
[INFO] [stdout] 234 |     let mut output = tensor.clone();
[INFO] [stdout]     |         ----^^^^^^
[INFO] [stdout]     |         |
[INFO] [stdout]     |         help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/utils/image_processing.rs:116:9
[INFO] [stdout]     |
[INFO] [stdout] 116 |     let mut grayscale = creation::zeros(&[1, height, width]).unwrap();
[INFO] [stdout]     |         ----^^^^^^^^^
[INFO] [stdout]     |         |
[INFO] [stdout]     |         help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/utils/visualization.rs:85:9
[INFO] [stdout]    |
[INFO] [stdout] 85 |     let mut grid = creation::zeros(&[channels, grid_height, grid_width]).unwrap();
[INFO] [stdout]    |         ----^^^^
[INFO] [stdout]    |         |
[INFO] [stdout]    |         help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/video.rs:312:13
[INFO] [stdout]     |
[INFO] [stdout] 312 |         let mut flow_x = Tensor::zeros(&[height, width], self.device)?;
[INFO] [stdout]     |             ----^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/video.rs:313:13
[INFO] [stdout]     |
[INFO] [stdout] 313 |         let mut flow_y = Tensor::zeros(&[height, width], self.device)?;
[INFO] [stdout]     |             ----^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/video.rs:378:13
[INFO] [stdout]     |
[INFO] [stdout] 378 |         let mut output = Tensor::zeros(&[h, w], self.device)?;
[INFO] [stdout]     |             ----^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `in_channels`
[INFO] [stdout]    --> src/video.rs:481:26
[INFO] [stdout]     |
[INFO] [stdout] 481 |         let (batch_size, in_channels, time_steps, height, width) = (
[INFO] [stdout]     |                          ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_in_channels`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `batch_size`
[INFO] [stdout]    --> src/video.rs:526:14
[INFO] [stdout]     |
[INFO] [stdout] 526 |         let (batch_size, channels, _time_steps, height, width) = (
[INFO] [stdout]     |              ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_batch_size`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `channels`
[INFO] [stdout]    --> src/video.rs:526:26
[INFO] [stdout]     |
[INFO] [stdout] 526 |         let (batch_size, channels, _time_steps, height, width) = (
[INFO] [stdout]     |                          ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_channels`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `height`
[INFO] [stdout]    --> src/video.rs:526:49
[INFO] [stdout]     |
[INFO] [stdout] 526 |         let (batch_size, channels, _time_steps, height, width) = (
[INFO] [stdout]     |                                                 ^^^^^^ help: if this is intentional, prefix it with an underscore: `_height`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `width`
[INFO] [stdout]    --> src/video.rs:526:57
[INFO] [stdout]     |
[INFO] [stdout] 526 |         let (batch_size, channels, _time_steps, height, width) = (
[INFO] [stdout]     |                                                         ^^^^^ help: if this is intentional, prefix it with an underscore: `_width`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `i`
[INFO] [stdout]    --> src/viz3d.rs:285:13
[INFO] [stdout]     |
[INFO] [stdout] 285 |         for i in 0..num_points {
[INFO] [stdout]     |             ^ help: if this is intentional, prefix it with an underscore: `_i`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a shared reference to mutable static
[INFO] [stdout]    --> src/io.rs:530:9
[INFO] [stdout]     |
[INFO] [stdout] 530 |         GLOBAL_IO.as_ref().unwrap()
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^ shared reference to mutable static
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stdout]     = note: shared references to mutable statics are dangerous; it's undefined behavior if the static is mutated or if a mutable reference is created for it while the shared reference lives
[INFO] [stdout]     = note: `#[warn(static_mut_refs)]` (part of `#[warn(rust_2024_compatibility)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a shared reference to mutable static
[INFO] [stdout]    --> src/memory.rs:623:9
[INFO] [stdout]     |
[INFO] [stdout] 623 |         GLOBAL_MEMORY_MANAGER.as_ref().unwrap()
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ shared reference to mutable static
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stdout]     = note: shared references to mutable statics are dangerous; it's undefined behavior if the static is mutated or if a mutable reference is created for it while the shared reference lives
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 2m 50s
[INFO] running `Command { std: "docker" "inspect" "5c00ca44c8bd28e0c3eebc6103743756921423b803af3f976370863604dec673", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "5c00ca44c8bd28e0c3eebc6103743756921423b803af3f976370863604dec673", kill_on_drop: false }`
[INFO] [stdout] 5c00ca44c8bd28e0c3eebc6103743756921423b803af3f976370863604dec673
