[INFO] fetching crate ahuvista-nn 0.1.1... [INFO] checking ahuvista-nn-0.1.1 against master#377656d3dd3f9c23a9c8713e163f4365a5261a84 for pr-146470-3 [INFO] extracting crate ahuvista-nn 0.1.1 into /workspace/builds/worker-5-tc1/source [INFO] started tweaking crates.io crate ahuvista-nn 0.1.1 [INFO] removed 0 missing tests [INFO] finished tweaking crates.io crate ahuvista-nn 0.1.1 [INFO] tweaked toml for crates.io crate ahuvista-nn 0.1.1 written to /workspace/builds/worker-5-tc1/source/Cargo.toml [INFO] validating manifest of crates.io crate ahuvista-nn 0.1.1 on toolchain 377656d3dd3f9c23a9c8713e163f4365a5261a84 [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+377656d3dd3f9c23a9c8713e163f4365a5261a84" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] crate crates.io crate ahuvista-nn 0.1.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" "+377656d3dd3f9c23a9c8713e163f4365a5261a84" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] [stderr] Updating crates.io index [INFO] [stderr] Blocking waiting for file lock on package cache [INFO] [stderr] Downloading crates ... [INFO] [stderr] Downloaded fax_derive v0.2.0 [INFO] [stderr] Downloaded aligned-vec v0.6.4 [INFO] [stderr] Downloaded zune-jpeg v0.4.21 [INFO] [stderr] Downloaded flate2 v1.1.4 [INFO] [stderr] Downloaded zune-core v0.4.12 [INFO] [stderr] Downloaded moxcms v0.7.7 [INFO] [stderr] Downloaded avif-serialize v0.8.6 [INFO] [stderr] Downloaded fax v0.2.6 [INFO] [stderr] Downloaded arg_enum_proc_macro v0.3.4 [INFO] [stderr] Downloaded built v0.7.7 [INFO] [stderr] Downloaded maybe-rayon v0.1.1 [INFO] [stderr] Downloaded equator-macro v0.4.2 [INFO] [stderr] Downloaded half v2.7.0 [INFO] [stderr] Downloaded exr v1.73.0 [INFO] [stderr] Downloaded byteorder-lite v0.1.0 [INFO] [stderr] Downloaded png v0.18.0 [INFO] [stderr] Downloaded image-webp v0.2.4 [INFO] [stderr] Downloaded simd_helpers v0.1.0 [INFO] [stderr] Downloaded interpolate_name v0.2.4 [INFO] [stderr] Downloaded lebe v0.5.3 [INFO] [stderr] Downloaded bit_field v0.10.3 [INFO] [stderr] Downloaded tiff v0.10.3 [INFO] [stderr] Downloaded noop_proc_macro v0.3.0 [INFO] [stderr] Downloaded gif v0.13.3 [INFO] [stderr] Downloaded equator v0.4.2 [INFO] [stderr] Downloaded qoi v0.4.1 [INFO] [stderr] Downloaded libfuzzer-sys v0.4.10 [INFO] [stderr] Downloaded rav1e v0.7.1 [INFO] [stderr] Downloaded quick-error v2.0.1 [INFO] [stderr] Downloaded profiling v1.0.17 [INFO] [stderr] Downloaded ravif v0.11.20 [INFO] [stderr] Downloaded av1-grain v0.2.4 [INFO] [stderr] Downloaded bitstream-io v2.6.0 [INFO] [stderr] Downloaded profiling-procmacros v1.0.17 [INFO] [stderr] Downloaded v_frame v0.3.9 [INFO] [stderr] Downloaded loop9 v0.1.5 [INFO] [stderr] Downloaded image v0.25.8 [INFO] [stderr] Downloaded pxfm v0.1.25 [INFO] [stderr] Downloaded imgref v1.12.0 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:845e597a41426bbf2703be69acdb67d10b6de511142d05cba7bbe119c898b2c7" "/opt/rustwide/cargo-home/bin/cargo" "+377656d3dd3f9c23a9c8713e163f4365a5261a84" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] 9c1307699fbf3011eaeada3485690fbb02233dde47dc46d5a45823bc55eacc7f [INFO] running `Command { std: "docker" "start" "-a" "9c1307699fbf3011eaeada3485690fbb02233dde47dc46d5a45823bc55eacc7f", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "9c1307699fbf3011eaeada3485690fbb02233dde47dc46d5a45823bc55eacc7f", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "9c1307699fbf3011eaeada3485690fbb02233dde47dc46d5a45823bc55eacc7f", kill_on_drop: false }` [INFO] [stdout] 9c1307699fbf3011eaeada3485690fbb02233dde47dc46d5a45823bc55eacc7f [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:845e597a41426bbf2703be69acdb67d10b6de511142d05cba7bbe119c898b2c7" "/opt/rustwide/cargo-home/bin/cargo" "+377656d3dd3f9c23a9c8713e163f4365a5261a84" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] cb756c5f74f5e296f2e81dafcf6c939b532d4617ce4648b46ea928c8ba76932b [INFO] running `Command { std: "docker" "start" "-a" "cb756c5f74f5e296f2e81dafcf6c939b532d4617ce4648b46ea928c8ba76932b", kill_on_drop: false }` [INFO] [stderr] Compiling quote v1.0.41 [INFO] [stderr] Compiling unicode-ident v1.0.19 [INFO] [stderr] Compiling libm v0.2.15 [INFO] [stderr] Compiling libc v0.2.177 [INFO] [stderr] Compiling zerocopy v0.8.27 [INFO] [stderr] Checking simd-adler32 v0.3.7 [INFO] [stderr] Compiling num-traits v0.2.19 [INFO] [stderr] Compiling serde_core v1.0.228 [INFO] [stderr] Compiling typenum v1.19.0 [INFO] [stderr] Compiling crc32fast v1.5.0 [INFO] [stderr] Checking log v0.4.28 [INFO] [stderr] Compiling generic-array v0.14.9 [INFO] [stderr] Checking adler2 v2.0.1 [INFO] [stderr] Checking minimal-lexical v0.2.1 [INFO] [stderr] Compiling built v0.7.7 [INFO] [stderr] Checking arrayvec v0.7.6 [INFO] [stderr] Compiling proc-macro2 v1.0.101 [INFO] [stderr] Checking tracing-core v0.1.34 [INFO] [stderr] Checking quick-error v2.0.1 [INFO] [stderr] Checking maybe-rayon v0.1.1 [INFO] [stderr] Checking itertools v0.12.1 [INFO] [stderr] Checking miniz_oxide v0.8.9 [INFO] [stderr] Compiling matrixmultiply v0.3.10 [INFO] [stderr] Checking zune-core v0.4.12 [INFO] [stderr] Compiling serde_json v1.0.145 [INFO] [stderr] Compiling noop_proc_macro v0.3.0 [INFO] [stderr] Checking nom v7.1.3 [INFO] [stderr] Checking imgref v1.12.0 [INFO] [stderr] Checking weezl v0.1.10 [INFO] [stderr] Checking anstyle v1.0.13 [INFO] [stderr] Checking bitstream-io v2.6.0 [INFO] [stderr] Checking is_terminal_polyfill v1.70.2 [INFO] [stderr] Checking zune-jpeg v0.4.21 [INFO] [stderr] Checking avif-serialize v0.8.6 [INFO] [stderr] Checking loop9 v0.1.5 [INFO] [stderr] Checking zune-inflate v0.2.54 [INFO] [stderr] Compiling rav1e v0.7.1 [INFO] [stderr] Checking fdeflate v0.3.7 [INFO] [stderr] Checking anstream v0.6.21 [INFO] [stderr] Checking bytemuck v1.24.0 [INFO] [stderr] Checking clap_lex v0.7.6 [INFO] [stderr] Checking lebe v0.5.3 [INFO] [stderr] Checking byteorder-lite v0.1.0 [INFO] [stderr] Checking rgb v0.8.52 [INFO] [stderr] Checking bit_field v0.10.3 [INFO] [stderr] Checking bitflags v2.9.4 [INFO] [stderr] Compiling syn v2.0.106 [INFO] [stderr] Compiling simd_helpers v0.1.0 [INFO] [stderr] Compiling virtue v0.0.18 [INFO] [stderr] Checking clap_builder v4.5.51 [INFO] [stderr] Checking flate2 v1.1.4 [INFO] [stderr] Checking qoi v0.4.1 [INFO] [stderr] Checking gif v0.13.3 [INFO] [stderr] Checking image-webp v0.2.4 [INFO] [stderr] Checking tracing-log v0.2.0 [INFO] [stderr] Checking csv-core v0.1.12 [INFO] [stderr] Checking thread_local v1.1.9 [INFO] [stderr] Checking unty v0.0.4 [INFO] [stderr] Checking nu-ansi-term v0.50.3 [INFO] [stderr] Checking iana-time-zone v0.1.64 [INFO] [stderr] Checking png v0.18.0 [INFO] [stderr] Compiling bincode_derive v2.0.1 [INFO] [stderr] Checking getrandom v0.3.3 [INFO] [stderr] Checking block-buffer v0.10.4 [INFO] [stderr] Checking crypto-common v0.1.6 [INFO] [stderr] Checking digest v0.10.7 [INFO] [stderr] Checking rand_core v0.9.3 [INFO] [stderr] Checking num-integer v0.1.46 [INFO] [stderr] Checking pxfm v0.1.25 [INFO] [stderr] Checking num-complex v0.4.6 [INFO] [stderr] Checking sha2 v0.10.9 [INFO] [stderr] Checking bincode v2.0.1 [INFO] [stderr] Checking num-bigint v0.4.6 [INFO] [stderr] Checking ndarray v0.15.6 [INFO] [stderr] Checking num-rational v0.4.2 [INFO] [stderr] Checking moxcms v0.7.7 [INFO] [stderr] Compiling zerocopy-derive v0.8.27 [INFO] [stderr] Compiling equator-macro v0.4.2 [INFO] [stderr] Compiling serde_derive v1.0.228 [INFO] [stderr] Compiling profiling-procmacros v1.0.17 [INFO] [stderr] Compiling thiserror-impl v1.0.69 [INFO] [stderr] Compiling fax_derive v0.2.0 [INFO] [stderr] Compiling num-derive v0.4.2 [INFO] [stderr] Compiling arg_enum_proc_macro v0.3.4 [INFO] [stderr] Compiling tracing-attributes v0.1.30 [INFO] [stderr] Compiling clap_derive v4.5.49 [INFO] [stderr] Checking profiling v1.0.17 [INFO] [stderr] Checking fax v0.2.6 [INFO] [stderr] Checking equator v0.4.2 [INFO] [stderr] Checking aligned-vec v0.6.4 [INFO] [stderr] Checking v_frame v0.3.9 [INFO] [stderr] Checking tracing v0.1.41 [INFO] [stderr] Checking thiserror v1.0.69 [INFO] [stderr] Checking av1-grain v0.2.4 [INFO] [stderr] Checking clap v4.5.51 [INFO] [stderr] Checking serde v1.0.228 [INFO] [stderr] Checking ppv-lite86 v0.2.21 [INFO] [stderr] Checking half v2.7.0 [INFO] [stderr] Checking tracing-serde v0.2.0 [INFO] [stderr] Checking chrono v0.4.42 [INFO] [stderr] Checking csv v1.3.1 [INFO] [stderr] Checking tracing-subscriber v0.3.20 [INFO] [stderr] Checking tiff v0.10.3 [INFO] [stderr] Checking exr v1.73.0 [INFO] [stderr] Checking rand_chacha v0.9.0 [INFO] [stderr] Checking rand v0.9.2 [INFO] [stderr] Checking rand_distr v0.5.1 [INFO] [stderr] Checking ravif v0.11.20 [INFO] [stderr] Checking image v0.25.8 [INFO] [stderr] Checking ahuvista-nn v0.1.1 (/opt/rustwide/workdir) [INFO] [stdout] warning: unused import: `AppError` [INFO] [stdout] --> src/core/fusion.rs:4:27 [INFO] [stdout] | [INFO] [stdout] 4 | use crate::utils::error::{AppError, AppResult}; [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `ArrayBase` [INFO] [stdout] --> src/core/fusion.rs:5:23 [INFO] [stdout] | [INFO] [stdout] 5 | use ndarray::{Array3, ArrayBase}; [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `DynamicImage`, `ImageBuffer`, and `Rgb` [INFO] [stdout] --> src/data/image.rs:7:13 [INFO] [stdout] | [INFO] [stdout] 7 | use image::{DynamicImage, GenericImageView, ImageBuffer, ImageReader, Rgb}; [INFO] [stdout] | ^^^^^^^^^^^^ ^^^^^^^^^^^ ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::fs::File` [INFO] [stdout] --> src/data/image.rs:9:5 [INFO] [stdout] | [INFO] [stdout] 9 | use std::fs::File; [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `Read` [INFO] [stdout] --> src/data/image.rs:10:21 [INFO] [stdout] | [INFO] [stdout] 10 | use std::io::{self, Read}; [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `HashSet` [INFO] [stdout] --> src/data/text.rs:7:33 [INFO] [stdout] | [INFO] [stdout] 7 | use std::collections::{HashMap, HashSet}; [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `BufRead` and `BufReader` [INFO] [stdout] --> src/data/text.rs:9:21 [INFO] [stdout] | [INFO] [stdout] 9 | use std::io::{self, BufRead, BufReader, Read}; [INFO] [stdout] | ^^^^^^^ ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `Axis` [INFO] [stdout] --> src/models/image.rs:2:49 [INFO] [stdout] | [INFO] [stdout] 2 | use ndarray::{s, Array, Array1, Array3, Array4, Axis}; [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `Array1` [INFO] [stdout] --> src/training/balancing.rs:9:15 [INFO] [stdout] | [INFO] [stdout] 9 | use ndarray::{Array1, Array3}; [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::collections::HashMap` [INFO] [stdout] --> src/training/training_loop.rs:12:5 [INFO] [stdout] | [INFO] [stdout] 12 | use std::collections::HashMap; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `AppError` [INFO] [stdout] --> src/core/fusion.rs:4:27 [INFO] [stdout] | [INFO] [stdout] 4 | use crate::utils::error::{AppError, AppResult}; [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `ArrayBase` [INFO] [stdout] --> src/core/fusion.rs:5:23 [INFO] [stdout] | [INFO] [stdout] 5 | use ndarray::{Array3, ArrayBase}; [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `DynamicImage`, `ImageBuffer`, and `Rgb` [INFO] [stdout] --> src/data/image.rs:7:13 [INFO] [stdout] | [INFO] [stdout] 7 | use image::{DynamicImage, GenericImageView, ImageBuffer, ImageReader, Rgb}; [INFO] [stdout] | ^^^^^^^^^^^^ ^^^^^^^^^^^ ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::fs::File` [INFO] [stdout] --> src/data/image.rs:9:5 [INFO] [stdout] | [INFO] [stdout] 9 | use std::fs::File; [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `Read` [INFO] [stdout] --> src/data/image.rs:10:21 [INFO] [stdout] | [INFO] [stdout] 10 | use std::io::{self, Read}; [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `HashSet` [INFO] [stdout] --> src/data/text.rs:7:33 [INFO] [stdout] | [INFO] [stdout] 7 | use std::collections::{HashMap, HashSet}; [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `BufRead` and `BufReader` [INFO] [stdout] --> src/data/text.rs:9:21 [INFO] [stdout] | [INFO] [stdout] 9 | use std::io::{self, BufRead, BufReader, Read}; [INFO] [stdout] | ^^^^^^^ ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `Axis` [INFO] [stdout] --> src/models/image.rs:2:49 [INFO] [stdout] | [INFO] [stdout] 2 | use ndarray::{s, Array, Array1, Array3, Array4, Axis}; [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `Array1` [INFO] [stdout] --> src/training/balancing.rs:9:15 [INFO] [stdout] | [INFO] [stdout] 9 | use ndarray::{Array1, Array3}; [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::collections::HashMap` [INFO] [stdout] --> src/training/training_loop.rs:12:5 [INFO] [stdout] | [INFO] [stdout] 12 | use std::collections::HashMap; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated function `rand::thread_rng`: Renamed to `rng` [INFO] [stdout] --> src/core/feature_importance.rs:5:11 [INFO] [stdout] | [INFO] [stdout] 5 | use rand::thread_rng; [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(deprecated)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated function `rand::thread_rng`: Renamed to `rng` [INFO] [stdout] --> src/core/feature_importance.rs:22:37 [INFO] [stdout] | [INFO] [stdout] 22 | feature_column.shuffle(&mut thread_rng()); [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated function `rand::thread_rng`: Renamed to `rng` [INFO] [stdout] --> src/models/image.rs:56:29 [INFO] [stdout] | [INFO] [stdout] 56 | let mut rng = rand::thread_rng(); [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated function `rand::thread_rng`: Renamed to `rng` [INFO] [stdout] --> src/models/temporal.rs:45:29 [INFO] [stdout] | [INFO] [stdout] 45 | let mut rng = rand::thread_rng(); [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated function `rand::thread_rng`: Renamed to `rng` [INFO] [stdout] --> src/models/text.rs:33:29 [INFO] [stdout] | [INFO] [stdout] 33 | let mut rng = rand::thread_rng(); [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated function `rand::thread_rng`: Renamed to `rng` [INFO] [stdout] --> src/core/feature_importance.rs:5:11 [INFO] [stdout] | [INFO] [stdout] 5 | use rand::thread_rng; [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(deprecated)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated function `rand::thread_rng`: Renamed to `rng` [INFO] [stdout] --> src/core/feature_importance.rs:22:37 [INFO] [stdout] | [INFO] [stdout] 22 | feature_column.shuffle(&mut thread_rng()); [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated function `rand::thread_rng`: Renamed to `rng` [INFO] [stdout] --> src/models/image.rs:56:29 [INFO] [stdout] | [INFO] [stdout] 56 | let mut rng = rand::thread_rng(); [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated function `rand::thread_rng`: Renamed to `rng` [INFO] [stdout] --> src/models/temporal.rs:45:29 [INFO] [stdout] | [INFO] [stdout] 45 | let mut rng = rand::thread_rng(); [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated function `rand::thread_rng`: Renamed to `rng` [INFO] [stdout] --> src/models/text.rs:33:29 [INFO] [stdout] | [INFO] [stdout] 33 | let mut rng = rand::thread_rng(); [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated method `rand::Rng::gen_range`: Renamed to `random_range` [INFO] [stdout] --> src/models/text.rs:42:30 [INFO] [stdout] | [INFO] [stdout] 42 | .map(|_| rng.gen_range(-scale..scale)) [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated method `rand::Rng::gen_range`: Renamed to `random_range` [INFO] [stdout] --> src/models/text.rs:42:30 [INFO] [stdout] | [INFO] [stdout] 42 | .map(|_| rng.gen_range(-scale..scale)) [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `rand::Rng` [INFO] [stdout] --> src/core/recurrent_layers.rs:3:5 [INFO] [stdout] | [INFO] [stdout] 3 | use rand::Rng; [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `GenericImageView` [INFO] [stdout] --> src/data/image.rs:7:27 [INFO] [stdout] | [INFO] [stdout] 7 | use image::{DynamicImage, GenericImageView, ImageBuffer, ImageReader, Rgb}; [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `rand::Rng` [INFO] [stdout] --> src/core/recurrent_layers.rs:3:5 [INFO] [stdout] | [INFO] [stdout] 3 | use rand::Rng; [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `GenericImageView` [INFO] [stdout] --> src/data/image.rs:7:27 [INFO] [stdout] | [INFO] [stdout] 7 | use image::{DynamicImage, GenericImageView, ImageBuffer, ImageReader, Rgb}; [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `input` [INFO] [stdout] --> src/core/recurrent_layers.rs:190:13 [INFO] [stdout] | [INFO] [stdout] 190 | let input = self.cached_inputs.pop().unwrap(); [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_input` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `input` [INFO] [stdout] --> src/core/recurrent_layers.rs:190:13 [INFO] [stdout] | [INFO] [stdout] 190 | let input = self.cached_inputs.pop().unwrap(); [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_input` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `config` [INFO] [stdout] --> src/data/loader.rs:428:44 [INFO] [stdout] | [INFO] [stdout] 428 | fn merge_temporal_files(files: &[PathBuf], config: &DataConfig) -> AppResult { [INFO] [stdout] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_config` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `config` [INFO] [stdout] --> src/data/loader.rs:428:44 [INFO] [stdout] | [INFO] [stdout] 428 | fn merge_temporal_files(files: &[PathBuf], config: &DataConfig) -> AppResult { [INFO] [stdout] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_config` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `i` [INFO] [stdout] --> src/data/tabular.rs:241:14 [INFO] [stdout] | [INFO] [stdout] 241 | for (i, (name, value)) in feature_names.iter().zip(row.iter()).enumerate() { [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_i` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `num_categories` [INFO] [stdout] --> src/data/tabular.rs:246:21 [INFO] [stdout] | [INFO] [stdout] 246 | let num_categories = mapping.len(); [INFO] [stdout] | ^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_num_categories` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `i` [INFO] [stdout] --> src/data/tabular.rs:241:14 [INFO] [stdout] | [INFO] [stdout] 241 | for (i, (name, value)) in feature_names.iter().zip(row.iter()).enumerate() { [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_i` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `num_categories` [INFO] [stdout] --> src/data/tabular.rs:246:21 [INFO] [stdout] | [INFO] [stdout] 246 | let num_categories = mapping.len(); [INFO] [stdout] | ^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_num_categories` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `padded_height` [INFO] [stdout] --> src/models/image.rs:188:13 [INFO] [stdout] | [INFO] [stdout] 188 | let padded_height = padded_input.shape()[1]; [INFO] [stdout] | ^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_padded_height` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `padded_width` [INFO] [stdout] --> src/models/image.rs:189:13 [INFO] [stdout] | [INFO] [stdout] 189 | let padded_width = padded_input.shape()[2]; [INFO] [stdout] | ^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_padded_width` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/models/image.rs:243:13 [INFO] [stdout] | [INFO] [stdout] 243 | let mut grad_pre_activation = &grad_output * &relu_grad; [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: unused variable: `output_size` [INFO] [stdout] --> src/models/image.rs:528:13 [INFO] [stdout] | [INFO] [stdout] 528 | let output_size = 128; [INFO] [stdout] | ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_output_size` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `padded_height` [INFO] [stdout] --> src/models/image.rs:188:13 [INFO] [stdout] | [INFO] [stdout] 188 | let padded_height = padded_input.shape()[1]; [INFO] [stdout] | ^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_padded_height` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `padded_width` [INFO] [stdout] --> src/models/image.rs:189:13 [INFO] [stdout] | [INFO] [stdout] 189 | let padded_width = padded_input.shape()[2]; [INFO] [stdout] | ^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_padded_width` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/models/image.rs:243:13 [INFO] [stdout] | [INFO] [stdout] 243 | let mut grad_pre_activation = &grad_output * &relu_grad; [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: unused variable: `output_size` [INFO] [stdout] --> src/models/image.rs:528:13 [INFO] [stdout] | [INFO] [stdout] 528 | let output_size = 128; [INFO] [stdout] | ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_output_size` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `predictions` [INFO] [stdout] --> src/training/metrics.rs:111:24 [INFO] [stdout] | [INFO] [stdout] 111 | pub fn calculate_auroc(predictions: &[f32], targets: &[f32]) -> f32 { [INFO] [stdout] | ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_predictions` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `targets` [INFO] [stdout] --> src/training/metrics.rs:111:45 [INFO] [stdout] | [INFO] [stdout] 111 | pub fn calculate_auroc(predictions: &[f32], targets: &[f32]) -> f32 { [INFO] [stdout] | ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_targets` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `model` [INFO] [stdout] --> src/training/metrics.rs:121:5 [INFO] [stdout] | [INFO] [stdout] 121 | model: &mut impl Module, [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_model` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `validation_data` [INFO] [stdout] --> src/training/metrics.rs:122:5 [INFO] [stdout] | [INFO] [stdout] 122 | validation_data: &mut MultiModalBatch, [INFO] [stdout] | ^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_validation_data` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `predictions` [INFO] [stdout] --> src/training/metrics.rs:111:24 [INFO] [stdout] | [INFO] [stdout] 111 | pub fn calculate_auroc(predictions: &[f32], targets: &[f32]) -> f32 { [INFO] [stdout] | ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_predictions` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `targets` [INFO] [stdout] --> src/training/metrics.rs:111:45 [INFO] [stdout] | [INFO] [stdout] 111 | pub fn calculate_auroc(predictions: &[f32], targets: &[f32]) -> f32 { [INFO] [stdout] | ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_targets` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `model` [INFO] [stdout] --> src/training/metrics.rs:121:5 [INFO] [stdout] | [INFO] [stdout] 121 | model: &mut impl Module, [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_model` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `validation_data` [INFO] [stdout] --> src/training/metrics.rs:122:5 [INFO] [stdout] | [INFO] [stdout] 122 | validation_data: &mut MultiModalBatch, [INFO] [stdout] | ^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_validation_data` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `tabular_output_size`, `temporal_output_size`, `text_output_size`, and `image_output_size` are never read [INFO] [stdout] --> src/core/fusion.rs:106:5 [INFO] [stdout] | [INFO] [stdout] 77 | pub struct LateFusionNet { [INFO] [stdout] | ------------- fields in this struct [INFO] [stdout] ... [INFO] [stdout] 106 | tabular_output_size: usize, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 107 | temporal_output_size: usize, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 108 | text_output_size: usize, [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] 109 | image_output_size: usize, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `LateFusionNet` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `k_neighbors` is never read [INFO] [stdout] --> src/training/balancing.rs:161:5 [INFO] [stdout] | [INFO] [stdout] 159 | pub struct SmoteSynthesizer { [INFO] [stdout] | ---------------- field in this struct [INFO] [stdout] 160 | /// Number of nearest neighbors to consider [INFO] [stdout] 161 | k_neighbors: usize, [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `tabular_output_size`, `temporal_output_size`, `text_output_size`, and `image_output_size` are never read [INFO] [stdout] --> src/core/fusion.rs:106:5 [INFO] [stdout] | [INFO] [stdout] 77 | pub struct LateFusionNet { [INFO] [stdout] | ------------- fields in this struct [INFO] [stdout] ... [INFO] [stdout] 106 | tabular_output_size: usize, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 107 | temporal_output_size: usize, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 108 | text_output_size: usize, [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] 109 | image_output_size: usize, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `LateFusionNet` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `k_neighbors` is never read [INFO] [stdout] --> src/training/balancing.rs:161:5 [INFO] [stdout] | [INFO] [stdout] 159 | pub struct SmoteSynthesizer { [INFO] [stdout] | ---------------- field in this struct [INFO] [stdout] 160 | /// Number of nearest neighbors to consider [INFO] [stdout] 161 | k_neighbors: usize, [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::path::PathBuf` [INFO] [stdout] --> tests/data_tests.rs:9:5 [INFO] [stdout] | [INFO] [stdout] 9 | use std::path::PathBuf; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `tracing::info` [INFO] [stdout] --> tests/core_tests.rs:199:9 [INFO] [stdout] | [INFO] [stdout] 199 | use tracing::info; [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `ahuvista_nn::training::*` [INFO] [stdout] --> tests/processing_tests.rs:4:5 [INFO] [stdout] | [INFO] [stdout] 4 | use ahuvista_nn::training::*; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `ahuvista_nn::core::Layer` [INFO] [stdout] --> tests/processing_tests.rs:187:9 [INFO] [stdout] | [INFO] [stdout] 187 | use ahuvista_nn::core::Layer; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `super::*` [INFO] [stdout] --> tests/processing_tests.rs:369:9 [INFO] [stdout] | [INFO] [stdout] 369 | use super::*; [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `output` [INFO] [stdout] --> tests/core_tests.rs:31:13 [INFO] [stdout] | [INFO] [stdout] 31 | let output = neuron.forward(inputs.clone()); [INFO] [stdout] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_output` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `outputs` [INFO] [stdout] --> tests/core_tests.rs:245:13 [INFO] [stdout] | [INFO] [stdout] 245 | let outputs = network.forward(inputs.clone()); [INFO] [stdout] | ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_outputs` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `engine` [INFO] [stdout] --> tests/core_tests.rs:443:13 [INFO] [stdout] | [INFO] [stdout] 443 | let engine = PrivacyEngine::new(1.0, 1e-5, 1000, 32, 10); [INFO] [stdout] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_engine` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `l2_norm` [INFO] [stdout] --> tests/core_tests.rs:476:13 [INFO] [stdout] | [INFO] [stdout] 476 | let l2_norm = gradients.iter().map(|g| g.powi(2)).sum::().sqrt(); [INFO] [stdout] | ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_l2_norm` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `AppError` [INFO] [stdout] --> src/core/fusion.rs:4:27 [INFO] [stdout] | [INFO] [stdout] 4 | use crate::utils::error::{AppError, AppResult}; [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `ArrayBase` [INFO] [stdout] --> src/core/fusion.rs:5:23 [INFO] [stdout] | [INFO] [stdout] 5 | use ndarray::{Array3, ArrayBase}; [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `fusion::*` [INFO] [stdout] --> src/core/mod.rs:10:9 [INFO] [stdout] | [INFO] [stdout] 10 | pub use fusion::*; [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `feature_importance::*` [INFO] [stdout] --> src/core/mod.rs:16:9 [INFO] [stdout] | [INFO] [stdout] 16 | pub use feature_importance::*; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `DynamicImage`, `ImageBuffer`, and `Rgb` [INFO] [stdout] --> src/data/image.rs:7:13 [INFO] [stdout] | [INFO] [stdout] 7 | use image::{DynamicImage, GenericImageView, ImageBuffer, ImageReader, Rgb}; [INFO] [stdout] | ^^^^^^^^^^^^ ^^^^^^^^^^^ ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::fs::File` [INFO] [stdout] --> src/data/image.rs:9:5 [INFO] [stdout] | [INFO] [stdout] 9 | use std::fs::File; [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `Read` [INFO] [stdout] --> src/data/image.rs:10:21 [INFO] [stdout] | [INFO] [stdout] 10 | use std::io::{self, Read}; [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `HashSet` [INFO] [stdout] --> src/data/text.rs:7:33 [INFO] [stdout] | [INFO] [stdout] 7 | use std::collections::{HashMap, HashSet}; [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `BufRead` and `BufReader` [INFO] [stdout] --> src/data/text.rs:9:21 [INFO] [stdout] | [INFO] [stdout] 9 | use std::io::{self, BufRead, BufReader, Read}; [INFO] [stdout] | ^^^^^^^ ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `Axis` [INFO] [stdout] --> src/models/image.rs:2:49 [INFO] [stdout] | [INFO] [stdout] 2 | use ndarray::{s, Array, Array1, Array3, Array4, Axis}; [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `Array1` [INFO] [stdout] --> src/training/balancing.rs:9:15 [INFO] [stdout] | [INFO] [stdout] 9 | use ndarray::{Array1, Array3}; [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::collections::HashMap` [INFO] [stdout] --> src/training/training_loop.rs:12:5 [INFO] [stdout] | [INFO] [stdout] 12 | use std::collections::HashMap; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `warn` [INFO] [stdout] --> src/main.rs:21:28 [INFO] [stdout] | [INFO] [stdout] 21 | use tracing::{error, info, warn}; [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `AppConfig`, `evaluate_by_cause`, and `evaluate_model_with_calibration` [INFO] [stdout] --> src/main.rs:26:14 [INFO] [stdout] | [INFO] [stdout] 26 | config::{AppConfig, ModalityConfig, Settings}, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 38 | evaluate_by_cause, evaluate_model_with_calibration, train_model_with_weights, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `AppError` [INFO] [stdout] --> src/core/fusion.rs:4:27 [INFO] [stdout] | [INFO] [stdout] 4 | use crate::utils::error::{AppError, AppResult}; [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `ArrayBase` [INFO] [stdout] --> src/core/fusion.rs:5:23 [INFO] [stdout] | [INFO] [stdout] 5 | use ndarray::{Array3, ArrayBase}; [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `fusion::*` [INFO] [stdout] --> src/core/mod.rs:10:9 [INFO] [stdout] | [INFO] [stdout] 10 | pub use fusion::*; [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `feature_importance::*` [INFO] [stdout] --> src/core/mod.rs:16:9 [INFO] [stdout] | [INFO] [stdout] 16 | pub use feature_importance::*; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `DynamicImage`, `ImageBuffer`, and `Rgb` [INFO] [stdout] --> src/data/image.rs:7:13 [INFO] [stdout] | [INFO] [stdout] 7 | use image::{DynamicImage, GenericImageView, ImageBuffer, ImageReader, Rgb}; [INFO] [stdout] | ^^^^^^^^^^^^ ^^^^^^^^^^^ ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::fs::File` [INFO] [stdout] --> src/data/image.rs:9:5 [INFO] [stdout] | [INFO] [stdout] 9 | use std::fs::File; [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `Read` [INFO] [stdout] --> src/data/image.rs:10:21 [INFO] [stdout] | [INFO] [stdout] 10 | use std::io::{self, Read}; [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `HashSet` [INFO] [stdout] --> src/data/text.rs:7:33 [INFO] [stdout] | [INFO] [stdout] 7 | use std::collections::{HashMap, HashSet}; [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `BufRead` and `BufReader` [INFO] [stdout] --> src/data/text.rs:9:21 [INFO] [stdout] | [INFO] [stdout] 9 | use std::io::{self, BufRead, BufReader, Read}; [INFO] [stdout] | ^^^^^^^ ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `Axis` [INFO] [stdout] --> src/models/image.rs:2:49 [INFO] [stdout] | [INFO] [stdout] 2 | use ndarray::{s, Array, Array1, Array3, Array4, Axis}; [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `Array1` [INFO] [stdout] --> src/training/balancing.rs:9:15 [INFO] [stdout] | [INFO] [stdout] 9 | use ndarray::{Array1, Array3}; [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::collections::HashMap` [INFO] [stdout] --> src/training/training_loop.rs:12:5 [INFO] [stdout] | [INFO] [stdout] 12 | use std::collections::HashMap; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `warn` [INFO] [stdout] --> src/main.rs:21:28 [INFO] [stdout] | [INFO] [stdout] 21 | use tracing::{error, info, warn}; [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `AppConfig`, `evaluate_by_cause`, and `evaluate_model_with_calibration` [INFO] [stdout] --> src/main.rs:26:14 [INFO] [stdout] | [INFO] [stdout] 26 | config::{AppConfig, ModalityConfig, Settings}, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 38 | evaluate_by_cause, evaluate_model_with_calibration, train_model_with_weights, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated function `rand::thread_rng`: Renamed to `rng` [INFO] [stdout] --> src/core/feature_importance.rs:5:11 [INFO] [stdout] | [INFO] [stdout] 5 | use rand::thread_rng; [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(deprecated)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated function `rand::thread_rng`: Renamed to `rng` [INFO] [stdout] --> src/core/feature_importance.rs:22:37 [INFO] [stdout] | [INFO] [stdout] 22 | feature_column.shuffle(&mut thread_rng()); [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated function `rand::thread_rng`: Renamed to `rng` [INFO] [stdout] --> src/models/image.rs:56:29 [INFO] [stdout] | [INFO] [stdout] 56 | let mut rng = rand::thread_rng(); [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated function `rand::thread_rng`: Renamed to `rng` [INFO] [stdout] --> src/models/temporal.rs:45:29 [INFO] [stdout] | [INFO] [stdout] 45 | let mut rng = rand::thread_rng(); [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated function `rand::thread_rng`: Renamed to `rng` [INFO] [stdout] --> src/models/text.rs:33:29 [INFO] [stdout] | [INFO] [stdout] 33 | let mut rng = rand::thread_rng(); [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated function `rand::thread_rng`: Renamed to `rng` [INFO] [stdout] --> src/core/feature_importance.rs:5:11 [INFO] [stdout] | [INFO] [stdout] 5 | use rand::thread_rng; [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(deprecated)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated function `rand::thread_rng`: Renamed to `rng` [INFO] [stdout] --> src/core/feature_importance.rs:22:37 [INFO] [stdout] | [INFO] [stdout] 22 | feature_column.shuffle(&mut thread_rng()); [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated function `rand::thread_rng`: Renamed to `rng` [INFO] [stdout] --> src/models/image.rs:56:29 [INFO] [stdout] | [INFO] [stdout] 56 | let mut rng = rand::thread_rng(); [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated function `rand::thread_rng`: Renamed to `rng` [INFO] [stdout] --> src/models/temporal.rs:45:29 [INFO] [stdout] | [INFO] [stdout] 45 | let mut rng = rand::thread_rng(); [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated function `rand::thread_rng`: Renamed to `rng` [INFO] [stdout] --> src/models/text.rs:33:29 [INFO] [stdout] | [INFO] [stdout] 33 | let mut rng = rand::thread_rng(); [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `cal` [INFO] [stdout] --> src/predict.rs:151:17 [INFO] [stdout] | [INFO] [stdout] 151 | if let Some(ref cal) = calibrator { [INFO] [stdout] | ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_cal` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `cal` [INFO] [stdout] --> src/predict.rs:151:17 [INFO] [stdout] | [INFO] [stdout] 151 | if let Some(ref cal) = calibrator { [INFO] [stdout] | ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_cal` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `model` [INFO] [stdout] --> src/predict.rs:518:5 [INFO] [stdout] | [INFO] [stdout] 518 | model: &LateFusionNet, [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_model` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `model` [INFO] [stdout] --> src/predict.rs:518:5 [INFO] [stdout] | [INFO] [stdout] 518 | model: &LateFusionNet, [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_model` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated method `rand::Rng::gen_range`: Renamed to `random_range` [INFO] [stdout] --> src/models/text.rs:42:30 [INFO] [stdout] | [INFO] [stdout] 42 | .map(|_| rng.gen_range(-scale..scale)) [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated method `rand::Rng::gen_range`: Renamed to `random_range` [INFO] [stdout] --> src/models/text.rs:42:30 [INFO] [stdout] | [INFO] [stdout] 42 | .map(|_| rng.gen_range(-scale..scale)) [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `rand::Rng` [INFO] [stdout] --> src/core/recurrent_layers.rs:3:5 [INFO] [stdout] | [INFO] [stdout] 3 | use rand::Rng; [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `GenericImageView` [INFO] [stdout] --> src/data/image.rs:7:27 [INFO] [stdout] | [INFO] [stdout] 7 | use image::{DynamicImage, GenericImageView, ImageBuffer, ImageReader, Rgb}; [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `rand::Rng` [INFO] [stdout] --> src/core/recurrent_layers.rs:3:5 [INFO] [stdout] | [INFO] [stdout] 3 | use rand::Rng; [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `GenericImageView` [INFO] [stdout] --> src/data/image.rs:7:27 [INFO] [stdout] | [INFO] [stdout] 7 | use image::{DynamicImage, GenericImageView, ImageBuffer, ImageReader, Rgb}; [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `input` [INFO] [stdout] --> src/core/recurrent_layers.rs:190:13 [INFO] [stdout] | [INFO] [stdout] 190 | let input = self.cached_inputs.pop().unwrap(); [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_input` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `input` [INFO] [stdout] --> src/core/recurrent_layers.rs:190:13 [INFO] [stdout] | [INFO] [stdout] 190 | let input = self.cached_inputs.pop().unwrap(); [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_input` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `config` [INFO] [stdout] --> src/data/loader.rs:428:44 [INFO] [stdout] | [INFO] [stdout] 428 | fn merge_temporal_files(files: &[PathBuf], config: &DataConfig) -> AppResult { [INFO] [stdout] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_config` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `i` [INFO] [stdout] --> src/data/tabular.rs:241:14 [INFO] [stdout] | [INFO] [stdout] 241 | for (i, (name, value)) in feature_names.iter().zip(row.iter()).enumerate() { [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_i` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `num_categories` [INFO] [stdout] --> src/data/tabular.rs:246:21 [INFO] [stdout] | [INFO] [stdout] 246 | let num_categories = mapping.len(); [INFO] [stdout] | ^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_num_categories` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `config` [INFO] [stdout] --> src/data/loader.rs:428:44 [INFO] [stdout] | [INFO] [stdout] 428 | fn merge_temporal_files(files: &[PathBuf], config: &DataConfig) -> AppResult { [INFO] [stdout] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_config` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `i` [INFO] [stdout] --> src/data/tabular.rs:241:14 [INFO] [stdout] | [INFO] [stdout] 241 | for (i, (name, value)) in feature_names.iter().zip(row.iter()).enumerate() { [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_i` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `num_categories` [INFO] [stdout] --> src/data/tabular.rs:246:21 [INFO] [stdout] | [INFO] [stdout] 246 | let num_categories = mapping.len(); [INFO] [stdout] | ^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_num_categories` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `padded_height` [INFO] [stdout] --> src/models/image.rs:188:13 [INFO] [stdout] | [INFO] [stdout] 188 | let padded_height = padded_input.shape()[1]; [INFO] [stdout] | ^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_padded_height` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `padded_width` [INFO] [stdout] --> src/models/image.rs:189:13 [INFO] [stdout] | [INFO] [stdout] 189 | let padded_width = padded_input.shape()[2]; [INFO] [stdout] | ^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_padded_width` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/models/image.rs:243:13 [INFO] [stdout] | [INFO] [stdout] 243 | let mut grad_pre_activation = &grad_output * &relu_grad; [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: unused variable: `output_size` [INFO] [stdout] --> src/models/image.rs:528:13 [INFO] [stdout] | [INFO] [stdout] 528 | let output_size = 128; [INFO] [stdout] | ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_output_size` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `padded_height` [INFO] [stdout] --> src/models/image.rs:188:13 [INFO] [stdout] | [INFO] [stdout] 188 | let padded_height = padded_input.shape()[1]; [INFO] [stdout] | ^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_padded_height` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `padded_width` [INFO] [stdout] --> src/models/image.rs:189:13 [INFO] [stdout] | [INFO] [stdout] 189 | let padded_width = padded_input.shape()[2]; [INFO] [stdout] | ^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_padded_width` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/models/image.rs:243:13 [INFO] [stdout] | [INFO] [stdout] 243 | let mut grad_pre_activation = &grad_output * &relu_grad; [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: unused variable: `output_size` [INFO] [stdout] --> src/models/image.rs:528:13 [INFO] [stdout] | [INFO] [stdout] 528 | let output_size = 128; [INFO] [stdout] | ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_output_size` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `predictions` [INFO] [stdout] --> src/training/metrics.rs:111:24 [INFO] [stdout] | [INFO] [stdout] 111 | pub fn calculate_auroc(predictions: &[f32], targets: &[f32]) -> f32 { [INFO] [stdout] | ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_predictions` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `targets` [INFO] [stdout] --> src/training/metrics.rs:111:45 [INFO] [stdout] | [INFO] [stdout] 111 | pub fn calculate_auroc(predictions: &[f32], targets: &[f32]) -> f32 { [INFO] [stdout] | ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_targets` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `model` [INFO] [stdout] --> src/training/metrics.rs:121:5 [INFO] [stdout] | [INFO] [stdout] 121 | model: &mut impl Module, [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_model` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `validation_data` [INFO] [stdout] --> src/training/metrics.rs:122:5 [INFO] [stdout] | [INFO] [stdout] 122 | validation_data: &mut MultiModalBatch, [INFO] [stdout] | ^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_validation_data` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `predictions` [INFO] [stdout] --> src/training/metrics.rs:111:24 [INFO] [stdout] | [INFO] [stdout] 111 | pub fn calculate_auroc(predictions: &[f32], targets: &[f32]) -> f32 { [INFO] [stdout] | ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_predictions` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `targets` [INFO] [stdout] --> src/training/metrics.rs:111:45 [INFO] [stdout] | [INFO] [stdout] 111 | pub fn calculate_auroc(predictions: &[f32], targets: &[f32]) -> f32 { [INFO] [stdout] | ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_targets` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `model` [INFO] [stdout] --> src/training/metrics.rs:121:5 [INFO] [stdout] | [INFO] [stdout] 121 | model: &mut impl Module, [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_model` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `validation_data` [INFO] [stdout] --> src/training/metrics.rs:122:5 [INFO] [stdout] | [INFO] [stdout] 122 | validation_data: &mut MultiModalBatch, [INFO] [stdout] | ^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_validation_data` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `new` is never used [INFO] [stdout] --> src/config.rs:29:12 [INFO] [stdout] | [INFO] [stdout] 27 | impl Settings { [INFO] [stdout] | ------------- associated function in this implementation [INFO] [stdout] 28 | /// Creates a new builder for constructing a `Settings` instance. [INFO] [stdout] 29 | pub fn new() -> SettingsBuilder { [INFO] [stdout] | ^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `SettingsBuilder` is never constructed [INFO] [stdout] --> src/config.rs:256:12 [INFO] [stdout] | [INFO] [stdout] 256 | pub struct SettingsBuilder { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: multiple methods are never used [INFO] [stdout] --> src/config.rs:270:12 [INFO] [stdout] | [INFO] [stdout] 268 | impl SettingsBuilder { [INFO] [stdout] | -------------------- methods in this implementation [INFO] [stdout] 269 | /// Sets the data directory. Default: "datasets". [INFO] [stdout] 270 | pub fn data_dir(mut self, data_dir: impl Into) -> Self { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 276 | pub fn patient_id_column(mut self, patient_id_column: impl Into) -> Self { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 282 | pub fn epochs(mut self, epochs: usize) -> Self { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 288 | pub fn batch_size(mut self, batch_size: usize) -> Self { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 294 | pub fn learning_rate(mut self, learning_rate: f32) -> Self { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 300 | pub fn tabular_hidden_sizes(mut self, tabular_hidden_sizes: Vec) -> Self { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 306 | pub fn temporal_hidden_size(mut self, temporal_hidden_size: usize) -> Self { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 312 | pub fn text_embedding_dim(mut self, text_embedding_dim: usize) -> Self { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 318 | pub fn modality_config(mut self, modality_config: ModalityConfig) -> Self { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 325 | pub fn build(self) -> Settings { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: static `SETTINGS` is never used [INFO] [stdout] --> src/config.rs:342:12 [INFO] [stdout] | [INFO] [stdout] 342 | pub static SETTINGS: LazyLock = LazyLock::new(|| SettingsBuilder::default().build()); [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `tabular_output_size`, `temporal_output_size`, `text_output_size`, and `image_output_size` are never read [INFO] [stdout] --> src/core/fusion.rs:106:5 [INFO] [stdout] | [INFO] [stdout] 77 | pub struct LateFusionNet { [INFO] [stdout] | ------------- fields in this struct [INFO] [stdout] ... [INFO] [stdout] 106 | tabular_output_size: usize, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 107 | temporal_output_size: usize, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 108 | text_output_size: usize, [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] 109 | image_output_size: usize, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `LateFusionNet` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `config`, `is_enabled`, `load`, and `set_all_parameters` are never used [INFO] [stdout] --> src/core/fusion.rs:332:12 [INFO] [stdout] | [INFO] [stdout] 112 | impl LateFusionNet { [INFO] [stdout] | ------------------ methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 332 | pub fn config(&self) -> &ModalityConfig { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 337 | pub fn is_enabled(&self, modality: &str) -> bool { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 419 | pub fn load(&mut self, path: &str) -> AppResult<()> { [INFO] [stdout] | ^^^^ [INFO] [stdout] ... [INFO] [stdout] 512 | fn set_all_parameters(&mut self, params: &[f32]) -> Result<(), Box> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `set_parameters` is never used [INFO] [stdout] --> src/core/layer.rs:42:12 [INFO] [stdout] | [INFO] [stdout] 13 | impl Layer { [INFO] [stdout] | ---------- method in this implementation [INFO] [stdout] ... [INFO] [stdout] 42 | pub fn set_parameters(&mut self, params: &[f32]) -> Result> { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `set_parameters`, `input_size`, and `output_size` are never used [INFO] [stdout] --> src/core/network.rs:65:12 [INFO] [stdout] | [INFO] [stdout] 16 | impl Network { [INFO] [stdout] | ------------ methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 65 | pub fn set_parameters(&mut self, params: &[f32]) -> Result> { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 75 | pub fn input_size(&self) -> usize { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 84 | pub fn output_size(&self) -> usize { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `I8` is never constructed [INFO] [stdout] --> src/core/neuron.rs:7:5 [INFO] [stdout] | [INFO] [stdout] 5 | pub enum WeightType { [INFO] [stdout] | ---------- variant in this enum [INFO] [stdout] 6 | F32(Vec), [INFO] [stdout] 7 | I8 { [INFO] [stdout] | ^^ [INFO] [stdout] | [INFO] [stdout] = note: `WeightType` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `set_parameters` is never used [INFO] [stdout] --> src/core/neuron.rs:107:12 [INFO] [stdout] | [INFO] [stdout] 64 | impl Neuron { [INFO] [stdout] | ----------- method in this implementation [INFO] [stdout] ... [INFO] [stdout] 107 | pub fn set_parameters(&mut self, params: &[f32]) -> Result> { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `set_parameters` is never used [INFO] [stdout] --> src/core/recurrent_layers.rs:70:12 [INFO] [stdout] | [INFO] [stdout] 31 | impl LSTMLayer { [INFO] [stdout] | -------------- method in this implementation [INFO] [stdout] ... [INFO] [stdout] 70 | pub fn set_parameters(&mut self, params: &[f32]) -> Result> { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `calculate_permutation_importance` is never used [INFO] [stdout] --> src/core/feature_importance.rs:9:8 [INFO] [stdout] | [INFO] [stdout] 9 | pub fn calculate_permutation_importance( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `channel_means` and `channel_stds` are never read [INFO] [stdout] --> src/data/image.rs:25:9 [INFO] [stdout] | [INFO] [stdout] 14 | pub struct ImageData { [INFO] [stdout] | --------- fields in this struct [INFO] [stdout] ... [INFO] [stdout] 25 | pub channel_means: Vec, [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 28 | pub channel_stds: Vec, [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `new` and `preprocess_image` are never used [INFO] [stdout] --> src/data/image.rs:36:12 [INFO] [stdout] | [INFO] [stdout] 34 | impl ImageData { [INFO] [stdout] | -------------- associated items in this implementation [INFO] [stdout] 35 | /// Create a new empty ImageData instance [INFO] [stdout] 36 | pub fn new() -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 178 | pub fn preprocess_image>(&self, path: P) -> io::Result> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `is_empty` is never used [INFO] [stdout] --> src/data/loader.rs:25:8 [INFO] [stdout] | [INFO] [stdout] 14 | pub trait DataLoader { [INFO] [stdout] | ---------- method in this trait [INFO] [stdout] ... [INFO] [stdout] 25 | fn is_empty(&self) -> bool { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `load_image_data` is never used [INFO] [stdout] --> src/data/loader.rs:539:8 [INFO] [stdout] | [INFO] [stdout] 539 | pub fn load_image_data>(dir_path: P) -> io::Result { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `feature_names` and `categorical_features` are never read [INFO] [stdout] --> src/data/tabular.rs:19:9 [INFO] [stdout] | [INFO] [stdout] 14 | pub struct TabularData { [INFO] [stdout] | ----------- fields in this struct [INFO] [stdout] ... [INFO] [stdout] 19 | pub feature_names: Vec, [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 28 | pub categorical_features: Vec, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `new` and `preprocess_row` are never used [INFO] [stdout] --> src/data/tabular.rs:36:12 [INFO] [stdout] | [INFO] [stdout] 34 | impl TabularData { [INFO] [stdout] | ---------------- associated items in this implementation [INFO] [stdout] 35 | /// Create a new empty TabularData instance [INFO] [stdout] 36 | pub fn new() -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 280 | pub fn preprocess_row(&self, row: &[String]) -> Vec { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `max_seq_length` is never read [INFO] [stdout] --> src/data/temporal.rs:25:9 [INFO] [stdout] | [INFO] [stdout] 14 | pub struct TemporalData { [INFO] [stdout] | ------------ field in this struct [INFO] [stdout] ... [INFO] [stdout] 25 | pub max_seq_length: usize, [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `new`, `from_csv_files`, `pad_sequences`, and `preprocess_sequence` are never used [INFO] [stdout] --> src/data/temporal.rs:33:12 [INFO] [stdout] | [INFO] [stdout] 31 | impl TemporalData { [INFO] [stdout] | ----------------- associated items in this implementation [INFO] [stdout] 32 | /// Create a new empty TemporalData instance [INFO] [stdout] 33 | pub fn new() -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 52 | pub fn from_csv_files>( [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 430 | pub fn pad_sequences(&mut self) { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 454 | pub fn preprocess_sequence(&self, sequence: Vec>) -> Vec> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `new`, `from_files`, `pad_sequences`, and `truncate_sequences` are never used [INFO] [stdout] --> src/data/text.rs:35:12 [INFO] [stdout] | [INFO] [stdout] 33 | impl TextData { [INFO] [stdout] | ------------- associated items in this implementation [INFO] [stdout] 34 | /// Create a new empty TextData instance [INFO] [stdout] 35 | pub fn new() -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 54 | pub fn from_files>(paths: &[P], max_vocab_size: usize) -> io::Result { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 174 | pub fn pad_sequences(&mut self) { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 184 | pub fn truncate_sequences(&mut self, max_length: usize) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `set_parameters` is never used [INFO] [stdout] --> src/models/image.rs:90:12 [INFO] [stdout] | [INFO] [stdout] 40 | impl Conv2DLayer { [INFO] [stdout] | ---------------- method in this implementation [INFO] [stdout] ... [INFO] [stdout] 90 | pub fn set_parameters(&mut self, params: &[f32]) -> Result> { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `set_parameters` is never used [INFO] [stdout] --> src/models/image.rs:555:12 [INFO] [stdout] | [INFO] [stdout] 505 | impl ImageNet { [INFO] [stdout] | ------------- method in this implementation [INFO] [stdout] ... [INFO] [stdout] 555 | pub fn set_parameters(&mut self, params: &[f32]) -> Result> { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `set_parameters` and `output_size` are never used [INFO] [stdout] --> src/models/tabular.rs:36:12 [INFO] [stdout] | [INFO] [stdout] 12 | impl TabularNet { [INFO] [stdout] | --------------- methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 36 | pub fn set_parameters(&mut self, params: &[f32]) -> Result> { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 41 | pub fn output_size(&self) -> usize { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `set_parameters` is never used [INFO] [stdout] --> src/models/temporal.rs:79:12 [INFO] [stdout] | [INFO] [stdout] 38 | impl SimpleRnnCell { [INFO] [stdout] | ------------------ method in this implementation [INFO] [stdout] ... [INFO] [stdout] 79 | pub fn set_parameters(&mut self, params: &[f32]) -> Result> { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `set_parameters` is never used [INFO] [stdout] --> src/models/temporal.rs:180:12 [INFO] [stdout] | [INFO] [stdout] 163 | impl TemporalNet { [INFO] [stdout] | ---------------- method in this implementation [INFO] [stdout] ... [INFO] [stdout] 180 | pub fn set_parameters(&mut self, params: &[f32]) -> Result> { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `set_parameters` is never used [INFO] [stdout] --> src/models/text.rs:56:12 [INFO] [stdout] | [INFO] [stdout] 26 | impl EmbeddingLayer { [INFO] [stdout] | ------------------- method in this implementation [INFO] [stdout] ... [INFO] [stdout] 56 | pub fn set_parameters(&mut self, params: &[f32]) -> Result> { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `set_parameters`, `build_vocab`, `tokenize`, and `output_size` are never used [INFO] [stdout] --> src/models/text.rs:135:12 [INFO] [stdout] | [INFO] [stdout] 107 | impl TextNet { [INFO] [stdout] | ------------ associated items in this implementation [INFO] [stdout] ... [INFO] [stdout] 135 | pub fn set_parameters(&mut self, params: &[f32]) -> Result> { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 150 | pub fn build_vocab(texts: &[String], max_vocab_size: usize) -> HashMap { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 186 | pub fn tokenize(&self, text: &str) -> Vec { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 196 | pub fn output_size(&self) -> usize { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `apply_weight_to_loss` is never used [INFO] [stdout] --> src/training/balancing.rs:92:8 [INFO] [stdout] | [INFO] [stdout] 92 | pub fn apply_weight_to_loss(loss: f32, weight: f32) -> f32 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `apply_weight_to_gradient` is never used [INFO] [stdout] --> src/training/balancing.rs:104:8 [INFO] [stdout] | [INFO] [stdout] 104 | pub fn apply_weight_to_gradient(grad: f32, weight: f32) -> f32 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `k_neighbors` is never read [INFO] [stdout] --> src/training/balancing.rs:161:5 [INFO] [stdout] | [INFO] [stdout] 159 | pub struct SmoteSynthesizer { [INFO] [stdout] | ---------------- field in this struct [INFO] [stdout] 160 | /// Number of nearest neighbors to consider [INFO] [stdout] 161 | k_neighbors: usize, [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `generate_synthetic_samples` and `generate_synthetic_tabular` are never used [INFO] [stdout] --> src/training/balancing.rs:189:12 [INFO] [stdout] | [INFO] [stdout] 164 | impl SmoteSynthesizer { [INFO] [stdout] | --------------------- methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 189 | pub fn generate_synthetic_samples( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 254 | fn generate_synthetic_tabular( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `binary_cross_entropy` is never used [INFO] [stdout] --> src/training/loss.rs:15:8 [INFO] [stdout] | [INFO] [stdout] 15 | pub fn binary_cross_entropy(prediction: f32, target: f32) -> f32 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `binary_cross_entropy_gradient` is never used [INFO] [stdout] --> src/training/loss.rs:30:8 [INFO] [stdout] | [INFO] [stdout] 30 | pub fn binary_cross_entropy_gradient(prediction: f32, target: f32) -> f32 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `mean_squared_error` is never used [INFO] [stdout] --> src/training/loss.rs:46:8 [INFO] [stdout] | [INFO] [stdout] 46 | pub fn mean_squared_error(predictions: &[f32], targets: &[f32]) -> f32 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `mean_squared_error_gradient` is never used [INFO] [stdout] --> src/training/loss.rs:70:8 [INFO] [stdout] | [INFO] [stdout] 70 | pub fn mean_squared_error_gradient(predictions: &[f32], targets: &[f32]) -> Vec { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `binary_accuracy` is never used [INFO] [stdout] --> src/training/loss.rs:93:8 [INFO] [stdout] | [INFO] [stdout] 93 | pub fn binary_accuracy(predictions: &[f32], targets: &[f32], threshold: f32) -> f32 { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `ppv`, `npv`, `sensitivity`, `specificity`, and `auroc` are never read [INFO] [stdout] --> src/training/metrics.rs:58:9 [INFO] [stdout] | [INFO] [stdout] 55 | pub struct EvaluationMetrics { [INFO] [stdout] | ----------------- fields in this struct [INFO] [stdout] ... [INFO] [stdout] 58 | pub ppv: f32, [INFO] [stdout] | ^^^ [INFO] [stdout] 59 | pub npv: f32, [INFO] [stdout] | ^^^ [INFO] [stdout] 60 | pub sensitivity: f32, // Also known as Recall or True Positive Rate [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] 61 | pub specificity: f32, // True Negative Rate [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] 62 | pub auroc: f32, [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `EvaluationMetrics` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `evalute_auroc` is never used [INFO] [stdout] --> src/training/metrics.rs:120:8 [INFO] [stdout] | [INFO] [stdout] 120 | pub fn evalute_auroc( [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `evaluate_by_cause` is never used [INFO] [stdout] --> src/training/training_loop.rs:261:8 [INFO] [stdout] | [INFO] [stdout] 261 | pub fn evaluate_by_cause( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `initialize_weights` is never used [INFO] [stdout] --> src/utils/mod.rs:23:8 [INFO] [stdout] | [INFO] [stdout] 23 | pub fn initialize_weights(num_weights: usize) -> Vec { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variants `Config` and `ModelError` are never constructed [INFO] [stdout] --> src/utils/error.rs:5:5 [INFO] [stdout] | [INFO] [stdout] 4 | pub enum AppError { [INFO] [stdout] | -------- variants in this enum [INFO] [stdout] 5 | Config(String), [INFO] [stdout] | ^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 8 | ModelError(String), [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `AppError` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `new` is never used [INFO] [stdout] --> src/config.rs:29:12 [INFO] [stdout] | [INFO] [stdout] 27 | impl Settings { [INFO] [stdout] | ------------- associated function in this implementation [INFO] [stdout] 28 | /// Creates a new builder for constructing a `Settings` instance. [INFO] [stdout] 29 | pub fn new() -> SettingsBuilder { [INFO] [stdout] | ^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `SettingsBuilder` is never constructed [INFO] [stdout] --> src/config.rs:256:12 [INFO] [stdout] | [INFO] [stdout] 256 | pub struct SettingsBuilder { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: multiple methods are never used [INFO] [stdout] --> src/config.rs:270:12 [INFO] [stdout] | [INFO] [stdout] 268 | impl SettingsBuilder { [INFO] [stdout] | -------------------- methods in this implementation [INFO] [stdout] 269 | /// Sets the data directory. Default: "datasets". [INFO] [stdout] 270 | pub fn data_dir(mut self, data_dir: impl Into) -> Self { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 276 | pub fn patient_id_column(mut self, patient_id_column: impl Into) -> Self { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 282 | pub fn epochs(mut self, epochs: usize) -> Self { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 288 | pub fn batch_size(mut self, batch_size: usize) -> Self { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 294 | pub fn learning_rate(mut self, learning_rate: f32) -> Self { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 300 | pub fn tabular_hidden_sizes(mut self, tabular_hidden_sizes: Vec) -> Self { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 306 | pub fn temporal_hidden_size(mut self, temporal_hidden_size: usize) -> Self { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 312 | pub fn text_embedding_dim(mut self, text_embedding_dim: usize) -> Self { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 318 | pub fn modality_config(mut self, modality_config: ModalityConfig) -> Self { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 325 | pub fn build(self) -> Settings { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: static `SETTINGS` is never used [INFO] [stdout] --> src/config.rs:342:12 [INFO] [stdout] | [INFO] [stdout] 342 | pub static SETTINGS: LazyLock = LazyLock::new(|| SettingsBuilder::default().build()); [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `tabular_output_size`, `temporal_output_size`, `text_output_size`, and `image_output_size` are never read [INFO] [stdout] --> src/core/fusion.rs:106:5 [INFO] [stdout] | [INFO] [stdout] 77 | pub struct LateFusionNet { [INFO] [stdout] | ------------- fields in this struct [INFO] [stdout] ... [INFO] [stdout] 106 | tabular_output_size: usize, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 107 | temporal_output_size: usize, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 108 | text_output_size: usize, [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] 109 | image_output_size: usize, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `LateFusionNet` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `config`, `is_enabled`, `load`, and `set_all_parameters` are never used [INFO] [stdout] --> src/core/fusion.rs:332:12 [INFO] [stdout] | [INFO] [stdout] 112 | impl LateFusionNet { [INFO] [stdout] | ------------------ methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 332 | pub fn config(&self) -> &ModalityConfig { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 337 | pub fn is_enabled(&self, modality: &str) -> bool { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 419 | pub fn load(&mut self, path: &str) -> AppResult<()> { [INFO] [stdout] | ^^^^ [INFO] [stdout] ... [INFO] [stdout] 512 | fn set_all_parameters(&mut self, params: &[f32]) -> Result<(), Box> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `set_parameters` is never used [INFO] [stdout] --> src/core/layer.rs:42:12 [INFO] [stdout] | [INFO] [stdout] 13 | impl Layer { [INFO] [stdout] | ---------- method in this implementation [INFO] [stdout] ... [INFO] [stdout] 42 | pub fn set_parameters(&mut self, params: &[f32]) -> Result> { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `set_parameters`, `input_size`, and `output_size` are never used [INFO] [stdout] --> src/core/network.rs:65:12 [INFO] [stdout] | [INFO] [stdout] 16 | impl Network { [INFO] [stdout] | ------------ methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 65 | pub fn set_parameters(&mut self, params: &[f32]) -> Result> { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 75 | pub fn input_size(&self) -> usize { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 84 | pub fn output_size(&self) -> usize { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `I8` is never constructed [INFO] [stdout] --> src/core/neuron.rs:7:5 [INFO] [stdout] | [INFO] [stdout] 5 | pub enum WeightType { [INFO] [stdout] | ---------- variant in this enum [INFO] [stdout] 6 | F32(Vec), [INFO] [stdout] 7 | I8 { [INFO] [stdout] | ^^ [INFO] [stdout] | [INFO] [stdout] = note: `WeightType` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `set_parameters` is never used [INFO] [stdout] --> src/core/neuron.rs:107:12 [INFO] [stdout] | [INFO] [stdout] 64 | impl Neuron { [INFO] [stdout] | ----------- method in this implementation [INFO] [stdout] ... [INFO] [stdout] 107 | pub fn set_parameters(&mut self, params: &[f32]) -> Result> { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `set_parameters` is never used [INFO] [stdout] --> src/core/recurrent_layers.rs:70:12 [INFO] [stdout] | [INFO] [stdout] 31 | impl LSTMLayer { [INFO] [stdout] | -------------- method in this implementation [INFO] [stdout] ... [INFO] [stdout] 70 | pub fn set_parameters(&mut self, params: &[f32]) -> Result> { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `calculate_permutation_importance` is never used [INFO] [stdout] --> src/core/feature_importance.rs:9:8 [INFO] [stdout] | [INFO] [stdout] 9 | pub fn calculate_permutation_importance( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `channel_means` and `channel_stds` are never read [INFO] [stdout] --> src/data/image.rs:25:9 [INFO] [stdout] | [INFO] [stdout] 14 | pub struct ImageData { [INFO] [stdout] | --------- fields in this struct [INFO] [stdout] ... [INFO] [stdout] 25 | pub channel_means: Vec, [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 28 | pub channel_stds: Vec, [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `new` and `preprocess_image` are never used [INFO] [stdout] --> src/data/image.rs:36:12 [INFO] [stdout] | [INFO] [stdout] 34 | impl ImageData { [INFO] [stdout] | -------------- associated items in this implementation [INFO] [stdout] 35 | /// Create a new empty ImageData instance [INFO] [stdout] 36 | pub fn new() -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 178 | pub fn preprocess_image>(&self, path: P) -> io::Result> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `is_empty` is never used [INFO] [stdout] --> src/data/loader.rs:25:8 [INFO] [stdout] | [INFO] [stdout] 14 | pub trait DataLoader { [INFO] [stdout] | ---------- method in this trait [INFO] [stdout] ... [INFO] [stdout] 25 | fn is_empty(&self) -> bool { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `load_image_data` is never used [INFO] [stdout] --> src/data/loader.rs:539:8 [INFO] [stdout] | [INFO] [stdout] 539 | pub fn load_image_data>(dir_path: P) -> io::Result { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `feature_names` and `categorical_features` are never read [INFO] [stdout] --> src/data/tabular.rs:19:9 [INFO] [stdout] | [INFO] [stdout] 14 | pub struct TabularData { [INFO] [stdout] | ----------- fields in this struct [INFO] [stdout] ... [INFO] [stdout] 19 | pub feature_names: Vec, [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 28 | pub categorical_features: Vec, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `new` and `preprocess_row` are never used [INFO] [stdout] --> src/data/tabular.rs:36:12 [INFO] [stdout] | [INFO] [stdout] 34 | impl TabularData { [INFO] [stdout] | ---------------- associated items in this implementation [INFO] [stdout] 35 | /// Create a new empty TabularData instance [INFO] [stdout] 36 | pub fn new() -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 280 | pub fn preprocess_row(&self, row: &[String]) -> Vec { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `max_seq_length` is never read [INFO] [stdout] --> src/data/temporal.rs:25:9 [INFO] [stdout] | [INFO] [stdout] 14 | pub struct TemporalData { [INFO] [stdout] | ------------ field in this struct [INFO] [stdout] ... [INFO] [stdout] 25 | pub max_seq_length: usize, [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `new`, `from_csv_files`, `pad_sequences`, and `preprocess_sequence` are never used [INFO] [stdout] --> src/data/temporal.rs:33:12 [INFO] [stdout] | [INFO] [stdout] 31 | impl TemporalData { [INFO] [stdout] | ----------------- associated items in this implementation [INFO] [stdout] 32 | /// Create a new empty TemporalData instance [INFO] [stdout] 33 | pub fn new() -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 52 | pub fn from_csv_files>( [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 430 | pub fn pad_sequences(&mut self) { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 454 | pub fn preprocess_sequence(&self, sequence: Vec>) -> Vec> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `new`, `from_files`, `pad_sequences`, and `truncate_sequences` are never used [INFO] [stdout] --> src/data/text.rs:35:12 [INFO] [stdout] | [INFO] [stdout] 33 | impl TextData { [INFO] [stdout] | ------------- associated items in this implementation [INFO] [stdout] 34 | /// Create a new empty TextData instance [INFO] [stdout] 35 | pub fn new() -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 54 | pub fn from_files>(paths: &[P], max_vocab_size: usize) -> io::Result { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 174 | pub fn pad_sequences(&mut self) { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 184 | pub fn truncate_sequences(&mut self, max_length: usize) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `set_parameters` is never used [INFO] [stdout] --> src/models/image.rs:90:12 [INFO] [stdout] | [INFO] [stdout] 40 | impl Conv2DLayer { [INFO] [stdout] | ---------------- method in this implementation [INFO] [stdout] ... [INFO] [stdout] 90 | pub fn set_parameters(&mut self, params: &[f32]) -> Result> { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `set_parameters` is never used [INFO] [stdout] --> src/models/image.rs:555:12 [INFO] [stdout] | [INFO] [stdout] 505 | impl ImageNet { [INFO] [stdout] | ------------- method in this implementation [INFO] [stdout] ... [INFO] [stdout] 555 | pub fn set_parameters(&mut self, params: &[f32]) -> Result> { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `set_parameters` and `output_size` are never used [INFO] [stdout] --> src/models/tabular.rs:36:12 [INFO] [stdout] | [INFO] [stdout] 12 | impl TabularNet { [INFO] [stdout] | --------------- methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 36 | pub fn set_parameters(&mut self, params: &[f32]) -> Result> { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 41 | pub fn output_size(&self) -> usize { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `set_parameters` is never used [INFO] [stdout] --> src/models/temporal.rs:79:12 [INFO] [stdout] | [INFO] [stdout] 38 | impl SimpleRnnCell { [INFO] [stdout] | ------------------ method in this implementation [INFO] [stdout] ... [INFO] [stdout] 79 | pub fn set_parameters(&mut self, params: &[f32]) -> Result> { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `set_parameters` is never used [INFO] [stdout] --> src/models/temporal.rs:180:12 [INFO] [stdout] | [INFO] [stdout] 163 | impl TemporalNet { [INFO] [stdout] | ---------------- method in this implementation [INFO] [stdout] ... [INFO] [stdout] 180 | pub fn set_parameters(&mut self, params: &[f32]) -> Result> { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `set_parameters` is never used [INFO] [stdout] --> src/models/text.rs:56:12 [INFO] [stdout] | [INFO] [stdout] 26 | impl EmbeddingLayer { [INFO] [stdout] | ------------------- method in this implementation [INFO] [stdout] ... [INFO] [stdout] 56 | pub fn set_parameters(&mut self, params: &[f32]) -> Result> { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `set_parameters`, `build_vocab`, `tokenize`, and `output_size` are never used [INFO] [stdout] --> src/models/text.rs:135:12 [INFO] [stdout] | [INFO] [stdout] 107 | impl TextNet { [INFO] [stdout] | ------------ associated items in this implementation [INFO] [stdout] ... [INFO] [stdout] 135 | pub fn set_parameters(&mut self, params: &[f32]) -> Result> { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 150 | pub fn build_vocab(texts: &[String], max_vocab_size: usize) -> HashMap { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 186 | pub fn tokenize(&self, text: &str) -> Vec { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 196 | pub fn output_size(&self) -> usize { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `apply_weight_to_loss` is never used [INFO] [stdout] --> src/training/balancing.rs:92:8 [INFO] [stdout] | [INFO] [stdout] 92 | pub fn apply_weight_to_loss(loss: f32, weight: f32) -> f32 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `apply_weight_to_gradient` is never used [INFO] [stdout] --> src/training/balancing.rs:104:8 [INFO] [stdout] | [INFO] [stdout] 104 | pub fn apply_weight_to_gradient(grad: f32, weight: f32) -> f32 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `k_neighbors` is never read [INFO] [stdout] --> src/training/balancing.rs:161:5 [INFO] [stdout] | [INFO] [stdout] 159 | pub struct SmoteSynthesizer { [INFO] [stdout] | ---------------- field in this struct [INFO] [stdout] 160 | /// Number of nearest neighbors to consider [INFO] [stdout] 161 | k_neighbors: usize, [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `generate_synthetic_samples` and `generate_synthetic_tabular` are never used [INFO] [stdout] --> src/training/balancing.rs:189:12 [INFO] [stdout] | [INFO] [stdout] 164 | impl SmoteSynthesizer { [INFO] [stdout] | --------------------- methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 189 | pub fn generate_synthetic_samples( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 254 | fn generate_synthetic_tabular( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `binary_cross_entropy` is never used [INFO] [stdout] --> src/training/loss.rs:15:8 [INFO] [stdout] | [INFO] [stdout] 15 | pub fn binary_cross_entropy(prediction: f32, target: f32) -> f32 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `binary_cross_entropy_gradient` is never used [INFO] [stdout] --> src/training/loss.rs:30:8 [INFO] [stdout] | [INFO] [stdout] 30 | pub fn binary_cross_entropy_gradient(prediction: f32, target: f32) -> f32 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `mean_squared_error` is never used [INFO] [stdout] --> src/training/loss.rs:46:8 [INFO] [stdout] | [INFO] [stdout] 46 | pub fn mean_squared_error(predictions: &[f32], targets: &[f32]) -> f32 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `mean_squared_error_gradient` is never used [INFO] [stdout] --> src/training/loss.rs:70:8 [INFO] [stdout] | [INFO] [stdout] 70 | pub fn mean_squared_error_gradient(predictions: &[f32], targets: &[f32]) -> Vec { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `binary_accuracy` is never used [INFO] [stdout] --> src/training/loss.rs:93:8 [INFO] [stdout] | [INFO] [stdout] 93 | pub fn binary_accuracy(predictions: &[f32], targets: &[f32], threshold: f32) -> f32 { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `ppv`, `npv`, `sensitivity`, `specificity`, and `auroc` are never read [INFO] [stdout] --> src/training/metrics.rs:58:9 [INFO] [stdout] | [INFO] [stdout] 55 | pub struct EvaluationMetrics { [INFO] [stdout] | ----------------- fields in this struct [INFO] [stdout] ... [INFO] [stdout] 58 | pub ppv: f32, [INFO] [stdout] | ^^^ [INFO] [stdout] 59 | pub npv: f32, [INFO] [stdout] | ^^^ [INFO] [stdout] 60 | pub sensitivity: f32, // Also known as Recall or True Positive Rate [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] 61 | pub specificity: f32, // True Negative Rate [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] 62 | pub auroc: f32, [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `EvaluationMetrics` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `evalute_auroc` is never used [INFO] [stdout] --> src/training/metrics.rs:120:8 [INFO] [stdout] | [INFO] [stdout] 120 | pub fn evalute_auroc( [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `evaluate_by_cause` is never used [INFO] [stdout] --> src/training/training_loop.rs:261:8 [INFO] [stdout] | [INFO] [stdout] 261 | pub fn evaluate_by_cause( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `initialize_weights` is never used [INFO] [stdout] --> src/utils/mod.rs:23:8 [INFO] [stdout] | [INFO] [stdout] 23 | pub fn initialize_weights(num_weights: usize) -> Vec { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variants `Config` and `ModelError` are never constructed [INFO] [stdout] --> src/utils/error.rs:5:5 [INFO] [stdout] | [INFO] [stdout] 4 | pub enum AppError { [INFO] [stdout] | -------- variants in this enum [INFO] [stdout] 5 | Config(String), [INFO] [stdout] | ^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 8 | ModelError(String), [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `AppError` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished `dev` profile [unoptimized + debuginfo] target(s) in 47.36s [INFO] running `Command { std: "docker" "inspect" "cb756c5f74f5e296f2e81dafcf6c939b532d4617ce4648b46ea928c8ba76932b", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "cb756c5f74f5e296f2e81dafcf6c939b532d4617ce4648b46ea928c8ba76932b", kill_on_drop: false }` [INFO] [stdout] cb756c5f74f5e296f2e81dafcf6c939b532d4617ce4648b46ea928c8ba76932b