[INFO] cloning repository https://github.com/TuckerBMorgan/can-t [INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/TuckerBMorgan/can-t" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FTuckerBMorgan%2Fcan-t", kill_on_drop: false }` [INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FTuckerBMorgan%2Fcan-t'... [INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }` [INFO] [stdout] 5c0dcb6c12f1312feae324a93a824577e90961c2 [INFO] building TuckerBMorgan/can-t against try#d79d87d4c0f7f0d0785ad6e493cf8cf718ed89a6 for pr-146237-1 [INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FTuckerBMorgan%2Fcan-t" "/workspace/builds/worker-1-tc2/source", kill_on_drop: false }` [INFO] [stderr] Cloning into '/workspace/builds/worker-1-tc2/source'... [INFO] [stderr] done. [INFO] started tweaking git repo https://github.com/TuckerBMorgan/can-t [INFO] finished tweaking git repo https://github.com/TuckerBMorgan/can-t [INFO] tweaked toml for git repo https://github.com/TuckerBMorgan/can-t written to /workspace/builds/worker-1-tc2/source/Cargo.toml [INFO] validating manifest of git repo https://github.com/TuckerBMorgan/can-t on toolchain d79d87d4c0f7f0d0785ad6e493cf8cf718ed89a6 [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+d79d87d4c0f7f0d0785ad6e493cf8cf718ed89a6" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] crate git repo https://github.com/TuckerBMorgan/can-t 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" "+d79d87d4c0f7f0d0785ad6e493cf8cf718ed89a6" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:e90291280db7d1fac5b66fc6dad9f9662629e7365a55743daf9bdf73ebc4ea79" "/opt/rustwide/cargo-home/bin/cargo" "+d79d87d4c0f7f0d0785ad6e493cf8cf718ed89a6" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] 7ae9b9e10907be99fe0a837ee48a5cbe6737ce1febaaf842463721db8619d931 [INFO] running `Command { std: "docker" "start" "-a" "7ae9b9e10907be99fe0a837ee48a5cbe6737ce1febaaf842463721db8619d931", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "7ae9b9e10907be99fe0a837ee48a5cbe6737ce1febaaf842463721db8619d931", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "7ae9b9e10907be99fe0a837ee48a5cbe6737ce1febaaf842463721db8619d931", kill_on_drop: false }` [INFO] [stdout] 7ae9b9e10907be99fe0a837ee48a5cbe6737ce1febaaf842463721db8619d931 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:e90291280db7d1fac5b66fc6dad9f9662629e7365a55743daf9bdf73ebc4ea79" "/opt/rustwide/cargo-home/bin/cargo" "+d79d87d4c0f7f0d0785ad6e493cf8cf718ed89a6" "build" "--frozen" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] ba8fcc43e7d73cd730647742728e092cf44bfc281433924ae9d12a590665858b [INFO] running `Command { std: "docker" "start" "-a" "ba8fcc43e7d73cd730647742728e092cf44bfc281433924ae9d12a590665858b", kill_on_drop: false }` [INFO] [stderr] Compiling libc v0.2.172 [INFO] [stderr] Compiling cc v1.2.29 [INFO] [stderr] Compiling serde v1.0.219 [INFO] [stderr] Compiling zerocopy v0.8.25 [INFO] [stderr] Compiling libm v0.2.15 [INFO] [stderr] Compiling syn v2.0.101 [INFO] [stderr] Compiling crossbeam-epoch v0.9.18 [INFO] [stderr] Compiling either v1.15.0 [INFO] [stderr] Compiling num-traits v0.2.19 [INFO] [stderr] Compiling aho-corasick v1.1.3 [INFO] [stderr] Compiling ahash v0.8.12 [INFO] [stderr] Compiling crossbeam-deque v0.8.6 [INFO] [stderr] Compiling rustversion v1.0.22 [INFO] [stderr] Compiling rayon-core v1.12.1 [INFO] [stderr] Compiling matrixmultiply v0.3.9 [INFO] [stderr] Compiling serde_json v1.0.140 [INFO] [stderr] Compiling rayon v1.10.0 [INFO] [stderr] Compiling libz-sys v1.1.22 [INFO] [stderr] Compiling openssl-sys v0.9.109 [INFO] [stderr] Compiling getrandom v0.3.3 [INFO] [stderr] Compiling curl-sys v0.4.82+curl-8.14.1 [INFO] [stderr] Compiling regex-automata v0.4.9 [INFO] [stderr] Compiling ppv-lite86 v0.2.21 [INFO] [stderr] Compiling onig_sys v69.9.1 [INFO] [stderr] Compiling getrandom v0.2.16 [INFO] [stderr] Compiling portable-atomic v1.11.1 [INFO] [stderr] Compiling rand_core v0.6.4 [INFO] [stderr] Compiling rand_core v0.9.3 [INFO] [stderr] Compiling esaxx-rs v0.1.10 [INFO] [stderr] Compiling smallvec v1.15.1 [INFO] [stderr] Compiling adler2 v2.0.1 [INFO] [stderr] Compiling bit-vec v0.6.3 [INFO] [stderr] Compiling thiserror v2.0.14 [INFO] [stderr] Compiling rawpointer v0.2.1 [INFO] [stderr] Compiling curl v0.4.48 [INFO] [stderr] Compiling unicode-width v0.2.1 [INFO] [stderr] Compiling console v0.15.11 [INFO] [stderr] Compiling bit-set v0.5.3 [INFO] [stderr] Compiling castaway v0.2.4 [INFO] [stderr] Compiling tinyvec v1.9.0 [INFO] [stderr] Compiling miniz_oxide v0.8.9 [INFO] [stderr] Compiling unicode-normalization-alignments v0.1.12 [INFO] [stderr] Compiling darling_core v0.20.11 [INFO] [stderr] Compiling rand_chacha v0.9.0 [INFO] [stderr] Compiling rand_chacha v0.3.1 [INFO] [stderr] Compiling regex v1.11.1 [INFO] [stderr] Compiling num-integer v0.1.46 [INFO] [stderr] Compiling num-complex v0.4.6 [INFO] [stderr] Compiling socket2 v0.5.9 [INFO] [stderr] Compiling itertools v0.14.0 [INFO] [stderr] Compiling crossbeam-channel v0.5.15 [INFO] [stderr] Compiling csv-core v0.1.12 [INFO] [stderr] Compiling number_prefix v0.4.0 [INFO] [stderr] Compiling serde_derive v1.0.219 [INFO] [stderr] Compiling monostate-impl v0.1.14 [INFO] [stderr] Compiling thiserror-impl v2.0.14 [INFO] [stderr] Compiling thiserror-impl v1.0.69 [INFO] [stderr] Compiling rust_tokenizers v8.1.1 [INFO] [stderr] Compiling openssl-probe v0.1.6 [INFO] [stderr] Compiling macro_rules_attribute-proc_macro v0.2.2 [INFO] [stderr] Compiling onig v6.5.1 [INFO] [stderr] Compiling macro_rules_attribute v0.2.2 [INFO] [stderr] Compiling pbr v1.1.1 [INFO] [stderr] Compiling thiserror v1.0.69 [INFO] [stderr] Compiling indicatif v0.17.11 [INFO] [stderr] Compiling flate2 v1.1.2 [INFO] [stderr] Compiling ndarray v0.15.6 [INFO] [stderr] Compiling rayon-cond v0.4.0 [INFO] [stderr] Compiling darling_macro v0.20.11 [INFO] [stderr] Compiling rand v0.8.5 [INFO] [stderr] Compiling fancy-regex v0.13.0 [INFO] [stderr] Compiling bstr v1.12.0 [INFO] [stderr] Compiling darling v0.20.11 [INFO] [stderr] Compiling derive_builder_core v0.20.2 [INFO] [stderr] Compiling rand v0.9.2 [INFO] [stderr] Compiling unicode-normalization v0.1.24 [INFO] [stderr] Compiling anyhow v1.0.98 [INFO] [stderr] Compiling protobuf v2.28.0 [INFO] [stderr] Compiling derive_builder_macro v0.20.2 [INFO] [stderr] Compiling itertools v0.11.0 [INFO] [stderr] Compiling derive_builder v0.20.2 [INFO] [stderr] Compiling unicode_categories v0.1.1 [INFO] [stderr] Compiling log v0.4.27 [INFO] [stderr] Compiling mnist v0.5.0 [INFO] [stderr] Compiling tiktoken-rs v0.7.0 [INFO] [stderr] Compiling rand_distr v0.4.3 [INFO] [stderr] Compiling cant_cpu v0.1.0 (/opt/rustwide/workdir/crates/cant_cpu) [INFO] [stderr] Compiling compact_str v0.9.0 [INFO] [stderr] Compiling monostate v0.1.14 [INFO] [stderr] Compiling csv v1.3.1 [INFO] [stderr] Compiling spm_precompiled v0.1.4 [INFO] [stderr] Compiling dary_heap v0.3.7 [INFO] [stderr] Compiling hashbrown v0.14.5 [INFO] [stderr] Compiling tokenizers v0.21.4 [INFO] [stderr] Compiling cant v0.1.0 (/opt/rustwide/workdir) [INFO] [stdout] warning: unused import: `ndarray::prelude::*` [INFO] [stdout] --> src/central/cross_entropy_op.rs:2:5 [INFO] [stdout] | [INFO] [stdout] 2 | use ndarray::prelude::*; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `super::backward_for_matmul` [INFO] [stdout] --> src/central/equation.rs:3:5 [INFO] [stdout] | [INFO] [stdout] 3 | use super::backward_for_matmul; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `cross_entropy_op` [INFO] [stdout] --> src/central/equation.rs:5:50 [INFO] [stdout] | [INFO] [stdout] 5 | InternalTensor, Operation, TensorID, add_op, cross_entropy_op, log, matmul_op, mean_op, mul_op, [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `IndexMut` and `Index` [INFO] [stdout] --> src/central/index.rs:2:16 [INFO] [stdout] | [INFO] [stdout] 2 | use std::ops::{Index, IndexMut}; [INFO] [stdout] | ^^^^^ ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `utils::padding_dimenions_to_four` [INFO] [stdout] --> src/central/mean_op.rs:1:25 [INFO] [stdout] | [INFO] [stdout] 1 | use crate::{central::*, utils::padding_dimenions_to_four}; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::collections::HashSet` [INFO] [stdout] --> src/central/mean_op.rs:3:5 [INFO] [stdout] | [INFO] [stdout] 3 | use std::collections::HashSet; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `equation` [INFO] [stdout] --> src/central/select_op.rs:1:47 [INFO] [stdout] | [INFO] [stdout] 1 | use crate::central::{Shape, Tensor, TensorID, equation, get_equation}; [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::collections::HashSet` [INFO] [stdout] --> src/central/std_op.rs:3:5 [INFO] [stdout] | [INFO] [stdout] 3 | use std::collections::HashSet; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `ndarray::prelude::*` [INFO] [stdout] --> src/central/masked_fill.rs:2:5 [INFO] [stdout] | [INFO] [stdout] 2 | use ndarray::prelude::*; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `add_op::*` [INFO] [stdout] --> src/central/mod.rs:23:9 [INFO] [stdout] | [INFO] [stdout] 23 | pub use add_op::*; [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `cross_entropy_op::*` [INFO] [stdout] --> src/central/mod.rs:24:9 [INFO] [stdout] | [INFO] [stdout] 24 | pub use cross_entropy_op::*; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `index::*` [INFO] [stdout] --> src/central/mod.rs:26:9 [INFO] [stdout] | [INFO] [stdout] 26 | pub use index::*; [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `log::*` [INFO] [stdout] --> src/central/mod.rs:28:9 [INFO] [stdout] | [INFO] [stdout] 28 | pub use log::*; [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `mean_op::*` [INFO] [stdout] --> src/central/mod.rs:30:9 [INFO] [stdout] | [INFO] [stdout] 30 | pub use mean_op::*; [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `mul_op::*` [INFO] [stdout] --> src/central/mod.rs:31:9 [INFO] [stdout] | [INFO] [stdout] 31 | pub use mul_op::*; [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `pow_op::*` [INFO] [stdout] --> src/central/mod.rs:33:9 [INFO] [stdout] | [INFO] [stdout] 33 | pub use pow_op::*; [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `relu_op::*` [INFO] [stdout] --> src/central/mod.rs:34:9 [INFO] [stdout] | [INFO] [stdout] 34 | pub use relu_op::*; [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `reshape::*` [INFO] [stdout] --> src/central/mod.rs:35:9 [INFO] [stdout] | [INFO] [stdout] 35 | pub use reshape::*; [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `select_op::*` [INFO] [stdout] --> src/central/mod.rs:36:9 [INFO] [stdout] | [INFO] [stdout] 36 | pub use select_op::*; [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `softmax_op::*` [INFO] [stdout] --> src/central/mod.rs:38:9 [INFO] [stdout] | [INFO] [stdout] 38 | pub use softmax_op::*; [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std_op::*` [INFO] [stdout] --> src/central/mod.rs:40:9 [INFO] [stdout] | [INFO] [stdout] 40 | pub use std_op::*; [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `sum_op::*` [INFO] [stdout] --> src/central/mod.rs:41:9 [INFO] [stdout] | [INFO] [stdout] 41 | pub use sum_op::*; [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `tanh_op::*` [INFO] [stdout] --> src/central/mod.rs:42:9 [INFO] [stdout] | [INFO] [stdout] 42 | pub use tanh_op::*; [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `transpose_op::*` [INFO] [stdout] --> src/central/mod.rs:44:9 [INFO] [stdout] | [INFO] [stdout] 44 | pub use transpose_op::*; [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `ndarray::Axis` [INFO] [stdout] --> src/nn/multihead_attention.rs:4:5 [INFO] [stdout] | [INFO] [stdout] 4 | use ndarray::Axis; [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::nn::*` [INFO] [stdout] --> src/nn/scaled_dot_project_attention.rs:4:5 [INFO] [stdout] | [INFO] [stdout] 4 | use crate::nn::*; [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::utils::GGUFFile` [INFO] [stdout] --> src/nn/embedding.rs:3:5 [INFO] [stdout] | [INFO] [stdout] 3 | use crate::utils::GGUFFile; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `Gpt2Tokenizer` and `Tokenizer` [INFO] [stdout] --> src/nn/gpt2.rs:5:34 [INFO] [stdout] | [INFO] [stdout] 5 | use rust_tokenizers::tokenizer::{Gpt2Tokenizer, Tokenizer}; [INFO] [stdout] | ^^^^^^^^^^^^^ ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::collections::HashSet` [INFO] [stdout] --> src/nn/bpe_tokenizer.rs:2:5 [INFO] [stdout] | [INFO] [stdout] 2 | use std::collections::HashSet; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::hash::Hash` [INFO] [stdout] --> src/nn/bpe_tokenizer.rs:4:5 [INFO] [stdout] | [INFO] [stdout] 4 | use std::hash::Hash; [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::io` [INFO] [stdout] --> src/nn/bpe_tokenizer.rs:5:5 [INFO] [stdout] | [INFO] [stdout] 5 | use std::io; [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `relu::*` [INFO] [stdout] --> src/nn/mod.rs:20:9 [INFO] [stdout] | [INFO] [stdout] 20 | pub use relu::*; [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `tanh::*` [INFO] [stdout] --> src/nn/mod.rs:22:9 [INFO] [stdout] | [INFO] [stdout] 22 | pub use tanh::*; [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `bpe_tokenizer::*` [INFO] [stdout] --> src/nn/mod.rs:29:9 [INFO] [stdout] | [INFO] [stdout] 29 | pub use bpe_tokenizer::*; [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::hash::Hash` [INFO] [stdout] --> src/utils/gguf.rs:5:5 [INFO] [stdout] | [INFO] [stdout] 5 | use std::hash::Hash; [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::central::*` [INFO] [stdout] --> src/lib.rs:6:9 [INFO] [stdout] | [INFO] [stdout] 6 | use crate::central::*; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] help: if this is a test module, consider adding a `#[cfg(test)]` to the containing module [INFO] [stdout] --> src/lib.rs:5:1 [INFO] [stdout] | [INFO] [stdout] 5 | mod tests { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::central::Shape` [INFO] [stdout] --> src/lib.rs:165:9 [INFO] [stdout] | [INFO] [stdout] 165 | use crate::central::Shape; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] help: if this is a test module, consider adding a `#[cfg(test)]` to the containing module [INFO] [stdout] --> src/lib.rs:5:1 [INFO] [stdout] | [INFO] [stdout] 5 | mod tests { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::central::Tensor` [INFO] [stdout] --> src/lib.rs:166:9 [INFO] [stdout] | [INFO] [stdout] 166 | use crate::central::Tensor; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] help: if this is a test module, consider adding a `#[cfg(test)]` to the containing module [INFO] [stdout] --> src/lib.rs:5:1 [INFO] [stdout] | [INFO] [stdout] 5 | mod tests { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::utils::GGUFFile` [INFO] [stdout] --> src/lib.rs:167:9 [INFO] [stdout] | [INFO] [stdout] 167 | use crate::utils::GGUFFile; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] help: if this is a test module, consider adding a `#[cfg(test)]` to the containing module [INFO] [stdout] --> src/lib.rs:5:1 [INFO] [stdout] | [INFO] [stdout] 5 | mod tests { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `count` [INFO] [stdout] --> src/nn/bpe_tokenizer.rs:22:17 [INFO] [stdout] | [INFO] [stdout] 22 | let mut count = 0; [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_count` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `i` [INFO] [stdout] --> src/nn/gpt2.rs:141:14 [INFO] [stdout] | [INFO] [stdout] 141 | for (i, block) in self.blocks.iter_mut().enumerate() { [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_i` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/nn/linear.rs:45:13 [INFO] [stdout] | [INFO] [stdout] 45 | let mut weights = Tensor::from_gguf_file(weight_tensor_name, gguf_file); [INFO] [stdout] | ----^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/nn/bpe_tokenizer.rs:22:13 [INFO] [stdout] | [INFO] [stdout] 22 | let mut count = 0; [INFO] [stdout] | ----^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `value` [INFO] [stdout] --> src/central/masked_fill.rs:35:47 [INFO] [stdout] | [INFO] [stdout] 35 | if let Operation::MaskFill(source, mask , value) = packet.operation { [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_value` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `zero_all_grads` is never used [INFO] [stdout] --> src/central/mod.rs:67:8 [INFO] [stdout] | [INFO] [stdout] 67 | pub fn zero_all_grads() { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `update_parameters` is never used [INFO] [stdout] --> src/central/mod.rs:83:8 [INFO] [stdout] | [INFO] [stdout] 83 | pub fn update_parameters(learning_rate: f32) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `causal_mask` is never used [INFO] [stdout] --> src/nn/gpt_block.rs:7:8 [INFO] [stdout] | [INFO] [stdout] 7 | pub fn causal_mask(seq_len: usize) -> Tensor { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `GPT2Block` is never constructed [INFO] [stdout] --> src/nn/gpt_block.rs:21:12 [INFO] [stdout] | [INFO] [stdout] 21 | pub struct GPT2Block { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated functions `new` and `from_gguf_file` are never used [INFO] [stdout] --> src/nn/gpt_block.rs:29:12 [INFO] [stdout] | [INFO] [stdout] 28 | impl GPT2Block { [INFO] [stdout] | -------------- associated functions in this implementation [INFO] [stdout] 29 | pub fn new(config: GPT2Config) -> GPT2Block { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 44 | pub fn from_gguf_file(gguf_file: &mut GGUFFile, block_count: i64, gpt_config: &GPT2Config) -> GPT2Block{ [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `forward` and `get_parameters` are never used [INFO] [stdout] --> src/nn/layer.rs:4:8 [INFO] [stdout] | [INFO] [stdout] 3 | pub trait Layer { [INFO] [stdout] | ----- methods in this trait [INFO] [stdout] 4 | fn forward(&mut self, inputs: Tensor) -> Tensor; [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] 5 | fn get_parameters(&self) -> Vec; [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Linear` is never constructed [INFO] [stdout] --> src/nn/linear.rs:5:12 [INFO] [stdout] | [INFO] [stdout] 5 | pub struct Linear { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated functions `new`, `from_tensors`, and `from_gguf_file` are never used [INFO] [stdout] --> src/nn/linear.rs:11:12 [INFO] [stdout] | [INFO] [stdout] 10 | impl Linear { [INFO] [stdout] | ----------- associated functions in this implementation [INFO] [stdout] 11 | pub fn new(in_features: usize, out_features: usize, has_bias: bool) -> Linear { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 24 | pub fn from_tensors(mut weights: Tensor, mut bias: Option) -> Linear { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 40 | pub fn from_gguf_file( [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `id` is never read [INFO] [stdout] --> src/central/tensor.rs:15:9 [INFO] [stdout] | [INFO] [stdout] 14 | pub struct InternalTensor { [INFO] [stdout] | -------------- field in this struct [INFO] [stdout] 15 | pub id: TensorID, // the unique id for this tensor, it is used by the equation to look up the data [INFO] [stdout] | ^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `operation` is never read [INFO] [stdout] --> src/central/tensor.rs:109:5 [INFO] [stdout] | [INFO] [stdout] 106 | pub struct Tensor { [INFO] [stdout] | ------ field in this struct [INFO] [stdout] ... [INFO] [stdout] 109 | operation: Operation, // The operation that created this Tensor(Nop for basic allocations) [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `Tensor` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `LayerNorm` is never constructed [INFO] [stdout] --> src/nn/layer_norm.rs:5:12 [INFO] [stdout] | [INFO] [stdout] 5 | pub struct LayerNorm { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `GPT2Config` is never constructed [INFO] [stdout] --> src/nn/gpt2.rs:10:12 [INFO] [stdout] | [INFO] [stdout] 10 | pub struct GPT2Config { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated functions `gpt2_small` and `from_gguf_file` are never used [INFO] [stdout] --> src/nn/gpt2.rs:21:12 [INFO] [stdout] | [INFO] [stdout] 20 | impl GPT2Config { [INFO] [stdout] | --------------- associated functions in this implementation [INFO] [stdout] 21 | pub fn gpt2_small() -> GPT2Config { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 33 | pub fn from_gguf_file(gguf_file: &mut GGUFFile) -> GPT2Config { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `sinusoidal_position_encoding` is never used [INFO] [stdout] --> src/nn/gpt2.rs:49:8 [INFO] [stdout] | [INFO] [stdout] 49 | pub fn sinusoidal_position_encoding(seq_len: usize, d_model: usize) -> Tensor { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `GPT2` is never constructed [INFO] [stdout] --> src/nn/gpt2.rs:65:12 [INFO] [stdout] | [INFO] [stdout] 65 | pub struct GPT2 { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated functions `new` and `from_gguf_file` are never used [INFO] [stdout] --> src/nn/gpt2.rs:75:12 [INFO] [stdout] | [INFO] [stdout] 74 | impl GPT2 { [INFO] [stdout] | --------- associated functions in this implementation [INFO] [stdout] 75 | pub fn new(config: GPT2Config) -> GPT2 { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 88 | pub fn from_gguf_file(gguf_file: &mut GGUFFile) -> GPT2{ [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `BPETokenizer` is never constructed [INFO] [stdout] --> src/nn/bpe_tokenizer.rs:8:12 [INFO] [stdout] | [INFO] [stdout] 8 | pub struct BPETokenizer { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `new` is never used [INFO] [stdout] --> src/nn/bpe_tokenizer.rs:16:12 [INFO] [stdout] | [INFO] [stdout] 12 | impl BPETokenizer { [INFO] [stdout] | ----------------- associated function in this implementation [INFO] [stdout] ... [INFO] [stdout] 16 | pub fn new(input: String) -> HashMap, u8> { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `name` is never read [INFO] [stdout] --> src/utils/gguf.rs:180:5 [INFO] [stdout] | [INFO] [stdout] 179 | pub struct TensorMetaData { [INFO] [stdout] | -------------- field in this struct [INFO] [stdout] 180 | name: String, [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `TensorMetaData` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `approx_equal` is never used [INFO] [stdout] --> src/lib.rs:8:8 [INFO] [stdout] | [INFO] [stdout] 8 | fn approx_equal(a: f32, b: f32, epsilon: f32) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `build_batch_norm_dataset_from_subset` is never used [INFO] [stdout] --> src/lib.rs:116:8 [INFO] [stdout] | [INFO] [stdout] 116 | fn build_batch_norm_dataset_from_subset( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `build_dataset_from_subset` is never used [INFO] [stdout] --> src/lib.rs:134:8 [INFO] [stdout] | [INFO] [stdout] 134 | fn build_dataset_from_subset( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `read_lines` is never used [INFO] [stdout] --> src/lib.rs:156:8 [INFO] [stdout] | [INFO] [stdout] 156 | fn read_lines(filename: &str) -> Vec { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `ReLU` is never constructed [INFO] [stdout] --> src/nn/relu.rs:4:12 [INFO] [stdout] | [INFO] [stdout] 4 | pub struct ReLU {} [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `new` is never used [INFO] [stdout] --> src/nn/relu.rs:7:12 [INFO] [stdout] | [INFO] [stdout] 6 | impl ReLU { [INFO] [stdout] | --------- associated function in this implementation [INFO] [stdout] 7 | pub fn new() -> ReLU { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `layers` is never read [INFO] [stdout] --> src/nn/sequential.rs:5:9 [INFO] [stdout] | [INFO] [stdout] 4 | pub struct Sequential { [INFO] [stdout] | ---------- field in this struct [INFO] [stdout] 5 | pub layers: Vec>, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated functions `new` and `from_gguf_file` are never used [INFO] [stdout] --> src/nn/layer_norm.rs:11:12 [INFO] [stdout] | [INFO] [stdout] 10 | impl LayerNorm { [INFO] [stdout] | -------------- associated functions in this implementation [INFO] [stdout] 11 | pub fn new(num_features: usize) -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 21 | pub fn from_gguf_file(gguf_file: &mut GGUFFile, weight_name: String, bias_name: String) -> LayerNorm { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `MultiHeadAttention` is never constructed [INFO] [stdout] --> src/nn/multihead_attention.rs:6:12 [INFO] [stdout] | [INFO] [stdout] 6 | pub struct MultiHeadAttention { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `new`, `from_gguf_file`, and `set_mask` are never used [INFO] [stdout] --> src/nn/multihead_attention.rs:26:12 [INFO] [stdout] | [INFO] [stdout] 25 | impl MultiHeadAttention { [INFO] [stdout] | ----------------------- associated items in this implementation [INFO] [stdout] 26 | pub fn new(embed_dim: usize, number_of_heads: usize, mask: Option) -> MultiHeadAttention { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 46 | pub fn from_gguf_file(gguf_file: &mut GGUFFile, block_count: i64, config: &GPT2Config) -> MultiHeadAttention { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 135 | pub fn set_mask(&mut self, mask: Tensor) { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `ScaledDotProductAttention` is never constructed [INFO] [stdout] --> src/nn/scaled_dot_project_attention.rs:7:12 [INFO] [stdout] | [INFO] [stdout] 7 | pub struct ScaledDotProductAttention { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `new` and `forward` are never used [INFO] [stdout] --> src/nn/scaled_dot_project_attention.rs:13:12 [INFO] [stdout] | [INFO] [stdout] 12 | impl ScaledDotProductAttention { [INFO] [stdout] | ------------------------------ associated items in this implementation [INFO] [stdout] 13 | pub fn new(scale: f32) -> ScaledDotProductAttention { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 19 | pub fn forward(&self, query: Tensor, key: Tensor, value: Tensor, mask: Option) -> Tensor { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Embedding` is never constructed [INFO] [stdout] --> src/nn/embedding.rs:5:12 [INFO] [stdout] | [INFO] [stdout] 5 | pub struct Embedding { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated functions `new` and `from_tensor` are never used [INFO] [stdout] --> src/nn/embedding.rs:10:12 [INFO] [stdout] | [INFO] [stdout] 9 | impl Embedding { [INFO] [stdout] | -------------- associated functions in this implementation [INFO] [stdout] 10 | pub fn new(vocab_size: usize, embeding_dimensions: usize) -> Embedding { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 19 | pub fn from_tensor(mut weights: Tensor) -> Embedding { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `GELU` is never constructed [INFO] [stdout] --> src/nn/gelu.rs:5:12 [INFO] [stdout] | [INFO] [stdout] 5 | pub struct GELU; [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `new` is never used [INFO] [stdout] --> src/nn/gelu.rs:8:12 [INFO] [stdout] | [INFO] [stdout] 7 | impl GELU { [INFO] [stdout] | --------- associated function in this implementation [INFO] [stdout] 8 | pub fn new() -> Self { Self } [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `TanhLayer` is never constructed [INFO] [stdout] --> src/nn/tanh.rs:4:12 [INFO] [stdout] | [INFO] [stdout] 4 | pub struct TanhLayer {} [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `new` is never used [INFO] [stdout] --> src/nn/tanh.rs:7:12 [INFO] [stdout] | [INFO] [stdout] 6 | impl TanhLayer { [INFO] [stdout] | -------------- associated function in this implementation [INFO] [stdout] 7 | pub fn new() -> TanhLayer { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait `Model` is never used [INFO] [stdout] --> src/nn/model.rs:3:11 [INFO] [stdout] | [INFO] [stdout] 3 | pub trait Model { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `add_vector`, `zero_grad`, `update_parameters`, `compact_tensor_store`, and `garbage_collect` are never used [INFO] [stdout] --> src/central/equation.rs:250:12 [INFO] [stdout] | [INFO] [stdout] 63 | impl Equation { [INFO] [stdout] | ------------- methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 250 | pub fn add_vector(&self, a: &[f32], b: &[f32]) -> Vec { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 599 | pub fn zero_grad(&mut self) { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 609 | pub fn update_parameters(&mut self, learning_rate: f32) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 645 | pub fn compact_tensor_store(&mut self) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 679 | pub fn garbage_collect(&mut self) { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: type `GgmlType` is more private than the item `TensorMetaData::new` [INFO] [stdout] --> src/utils/gguf.rs:187:5 [INFO] [stdout] | [INFO] [stdout] 187 | pub fn new(name: String, dimensions: Vec, offset: u64, data_type: GgmlType) -> TensorMetaData { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ associated function `TensorMetaData::new` is reachable at visibility `pub` [INFO] [stdout] | [INFO] [stdout] note: but type `GgmlType` is only usable at visibility `pub(self)` [INFO] [stdout] --> src/utils/gguf.rs:9:1 [INFO] [stdout] | [INFO] [stdout] 9 | enum GgmlType { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] = note: `#[warn(private_interfaces)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/utils/gguf.rs:70:5 [INFO] [stdout] | [INFO] [stdout] 70 | f.read_exact(&mut u8_buffer); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] = note: `#[warn(unused_must_use)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 70 | let _ = f.read_exact(&mut u8_buffer); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/utils/gguf.rs:76:5 [INFO] [stdout] | [INFO] [stdout] 76 | f.read_exact(&mut u8_buffer); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 76 | let _ = f.read_exact(&mut u8_buffer); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/utils/gguf.rs:82:5 [INFO] [stdout] | [INFO] [stdout] 82 | f.read_exact(&mut u8_buffer); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 82 | let _ = f.read_exact(&mut u8_buffer); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/utils/gguf.rs:88:5 [INFO] [stdout] | [INFO] [stdout] 88 | f.read_exact(&mut u8_buffer); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 88 | let _ = f.read_exact(&mut u8_buffer); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/utils/gguf.rs:94:5 [INFO] [stdout] | [INFO] [stdout] 94 | f.read_exact(&mut u8_buffer); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 94 | let _ = f.read_exact(&mut u8_buffer); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/utils/gguf.rs:100:5 [INFO] [stdout] | [INFO] [stdout] 100 | f.read_exact(&mut u8_buffer); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 100 | let _ = f.read_exact(&mut u8_buffer); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/utils/gguf.rs:106:5 [INFO] [stdout] | [INFO] [stdout] 106 | f.read_exact(&mut u8_buffer); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 106 | let _ = f.read_exact(&mut u8_buffer); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/utils/gguf.rs:112:5 [INFO] [stdout] | [INFO] [stdout] 112 | f.read_exact(&mut u8_buffer); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 112 | let _ = f.read_exact(&mut u8_buffer); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/utils/gguf.rs:118:5 [INFO] [stdout] | [INFO] [stdout] 118 | f.read_exact(&mut u8_buffer); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 118 | let _ = f.read_exact(&mut u8_buffer); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/utils/gguf.rs:124:5 [INFO] [stdout] | [INFO] [stdout] 124 | f.read_exact(&mut string_size); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 124 | let _ = f.read_exact(&mut string_size); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/utils/gguf.rs:127:5 [INFO] [stdout] | [INFO] [stdout] 127 | f.read_exact(&mut string_buffer); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 127 | let _ = f.read_exact(&mut string_buffer); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/utils/gguf.rs:299:9 [INFO] [stdout] | [INFO] [stdout] 299 | f.seek_relative(padding as i64); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 299 | let _ = f.seek_relative(padding as i64); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished `dev` profile [unoptimized + debuginfo] target(s) in 1m 58s [INFO] running `Command { std: "docker" "inspect" "ba8fcc43e7d73cd730647742728e092cf44bfc281433924ae9d12a590665858b", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "ba8fcc43e7d73cd730647742728e092cf44bfc281433924ae9d12a590665858b", kill_on_drop: false }` [INFO] [stdout] ba8fcc43e7d73cd730647742728e092cf44bfc281433924ae9d12a590665858b [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:e90291280db7d1fac5b66fc6dad9f9662629e7365a55743daf9bdf73ebc4ea79" "/opt/rustwide/cargo-home/bin/cargo" "+d79d87d4c0f7f0d0785ad6e493cf8cf718ed89a6" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] 27befc1269eb8809dedf0d71d1e4f326bf494b2891fd75a5ad9e0b52f27bfcf7 [INFO] running `Command { std: "docker" "start" "-a" "27befc1269eb8809dedf0d71d1e4f326bf494b2891fd75a5ad9e0b52f27bfcf7", kill_on_drop: false }` [INFO] [stdout] warning: unused import: `ndarray::prelude::*` [INFO] [stdout] --> src/central/cross_entropy_op.rs:2:5 [INFO] [stdout] | [INFO] [stdout] 2 | use ndarray::prelude::*; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `super::backward_for_matmul` [INFO] [stdout] --> src/central/equation.rs:3:5 [INFO] [stdout] | [INFO] [stdout] 3 | use super::backward_for_matmul; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `cross_entropy_op` [INFO] [stdout] --> src/central/equation.rs:5:50 [INFO] [stdout] | [INFO] [stdout] 5 | InternalTensor, Operation, TensorID, add_op, cross_entropy_op, log, matmul_op, mean_op, mul_op, [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `IndexMut` and `Index` [INFO] [stdout] --> src/central/index.rs:2:16 [INFO] [stdout] | [INFO] [stdout] 2 | use std::ops::{Index, IndexMut}; [INFO] [stdout] | ^^^^^ ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `utils::padding_dimenions_to_four` [INFO] [stdout] --> src/central/mean_op.rs:1:25 [INFO] [stdout] | [INFO] [stdout] 1 | use crate::{central::*, utils::padding_dimenions_to_four}; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::collections::HashSet` [INFO] [stdout] --> src/central/mean_op.rs:3:5 [INFO] [stdout] | [INFO] [stdout] 3 | use std::collections::HashSet; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `equation` [INFO] [stdout] --> src/central/select_op.rs:1:47 [INFO] [stdout] | [INFO] [stdout] 1 | use crate::central::{Shape, Tensor, TensorID, equation, get_equation}; [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::collections::HashSet` [INFO] [stdout] --> src/central/std_op.rs:3:5 [INFO] [stdout] | [INFO] [stdout] 3 | use std::collections::HashSet; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `ndarray::prelude::*` [INFO] [stdout] --> src/central/masked_fill.rs:2:5 [INFO] [stdout] | [INFO] [stdout] 2 | use ndarray::prelude::*; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `add_op::*` [INFO] [stdout] --> src/central/mod.rs:23:9 [INFO] [stdout] | [INFO] [stdout] 23 | pub use add_op::*; [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `cross_entropy_op::*` [INFO] [stdout] --> src/central/mod.rs:24:9 [INFO] [stdout] | [INFO] [stdout] 24 | pub use cross_entropy_op::*; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `index::*` [INFO] [stdout] --> src/central/mod.rs:26:9 [INFO] [stdout] | [INFO] [stdout] 26 | pub use index::*; [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `log::*` [INFO] [stdout] --> src/central/mod.rs:28:9 [INFO] [stdout] | [INFO] [stdout] 28 | pub use log::*; [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `mean_op::*` [INFO] [stdout] --> src/central/mod.rs:30:9 [INFO] [stdout] | [INFO] [stdout] 30 | pub use mean_op::*; [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `mul_op::*` [INFO] [stdout] --> src/central/mod.rs:31:9 [INFO] [stdout] | [INFO] [stdout] 31 | pub use mul_op::*; [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `pow_op::*` [INFO] [stdout] --> src/central/mod.rs:33:9 [INFO] [stdout] | [INFO] [stdout] 33 | pub use pow_op::*; [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `relu_op::*` [INFO] [stdout] --> src/central/mod.rs:34:9 [INFO] [stdout] | [INFO] [stdout] 34 | pub use relu_op::*; [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `reshape::*` [INFO] [stdout] --> src/central/mod.rs:35:9 [INFO] [stdout] | [INFO] [stdout] 35 | pub use reshape::*; [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `select_op::*` [INFO] [stdout] --> src/central/mod.rs:36:9 [INFO] [stdout] | [INFO] [stdout] 36 | pub use select_op::*; [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `softmax_op::*` [INFO] [stdout] --> src/central/mod.rs:38:9 [INFO] [stdout] | [INFO] [stdout] 38 | pub use softmax_op::*; [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std_op::*` [INFO] [stdout] --> src/central/mod.rs:40:9 [INFO] [stdout] | [INFO] [stdout] 40 | pub use std_op::*; [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `sum_op::*` [INFO] [stdout] --> src/central/mod.rs:41:9 [INFO] [stdout] | [INFO] [stdout] 41 | pub use sum_op::*; [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `tanh_op::*` [INFO] [stdout] --> src/central/mod.rs:42:9 [INFO] [stdout] | [INFO] [stdout] 42 | pub use tanh_op::*; [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `transpose_op::*` [INFO] [stdout] --> src/central/mod.rs:44:9 [INFO] [stdout] | [INFO] [stdout] 44 | pub use transpose_op::*; [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `ndarray::Axis` [INFO] [stdout] --> src/nn/multihead_attention.rs:4:5 [INFO] [stdout] | [INFO] [stdout] 4 | use ndarray::Axis; [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::nn::*` [INFO] [stdout] --> src/nn/scaled_dot_project_attention.rs:4:5 [INFO] [stdout] | [INFO] [stdout] 4 | use crate::nn::*; [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::utils::GGUFFile` [INFO] [stdout] --> src/nn/embedding.rs:3:5 [INFO] [stdout] | [INFO] [stdout] 3 | use crate::utils::GGUFFile; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `Gpt2Tokenizer` and `Tokenizer` [INFO] [stdout] --> src/nn/gpt2.rs:5:34 [INFO] [stdout] | [INFO] [stdout] 5 | use rust_tokenizers::tokenizer::{Gpt2Tokenizer, Tokenizer}; [INFO] [stdout] | ^^^^^^^^^^^^^ ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::collections::HashSet` [INFO] [stdout] --> src/nn/bpe_tokenizer.rs:2:5 [INFO] [stdout] | [INFO] [stdout] 2 | use std::collections::HashSet; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::hash::Hash` [INFO] [stdout] --> src/nn/bpe_tokenizer.rs:4:5 [INFO] [stdout] | [INFO] [stdout] 4 | use std::hash::Hash; [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::io` [INFO] [stdout] --> src/nn/bpe_tokenizer.rs:5:5 [INFO] [stdout] | [INFO] [stdout] 5 | use std::io; [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `relu::*` [INFO] [stdout] --> src/nn/mod.rs:20:9 [INFO] [stdout] | [INFO] [stdout] 20 | pub use relu::*; [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `tanh::*` [INFO] [stdout] --> src/nn/mod.rs:22:9 [INFO] [stdout] | [INFO] [stdout] 22 | pub use tanh::*; [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `bpe_tokenizer::*` [INFO] [stdout] --> src/nn/mod.rs:29:9 [INFO] [stdout] | [INFO] [stdout] 29 | pub use bpe_tokenizer::*; [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::hash::Hash` [INFO] [stdout] --> src/utils/gguf.rs:5:5 [INFO] [stdout] | [INFO] [stdout] 5 | use std::hash::Hash; [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::central::*` [INFO] [stdout] --> src/lib.rs:6:9 [INFO] [stdout] | [INFO] [stdout] 6 | use crate::central::*; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] help: if this is a test module, consider adding a `#[cfg(test)]` to the containing module [INFO] [stdout] --> src/lib.rs:5:1 [INFO] [stdout] | [INFO] [stdout] 5 | mod tests { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::central::Shape` [INFO] [stdout] --> src/lib.rs:165:9 [INFO] [stdout] | [INFO] [stdout] 165 | use crate::central::Shape; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] help: if this is a test module, consider adding a `#[cfg(test)]` to the containing module [INFO] [stdout] --> src/lib.rs:5:1 [INFO] [stdout] | [INFO] [stdout] 5 | mod tests { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::central::Tensor` [INFO] [stdout] --> src/lib.rs:166:9 [INFO] [stdout] | [INFO] [stdout] 166 | use crate::central::Tensor; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] help: if this is a test module, consider adding a `#[cfg(test)]` to the containing module [INFO] [stdout] --> src/lib.rs:5:1 [INFO] [stdout] | [INFO] [stdout] 5 | mod tests { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::utils::GGUFFile` [INFO] [stdout] --> src/lib.rs:167:9 [INFO] [stdout] | [INFO] [stdout] 167 | use crate::utils::GGUFFile; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] help: if this is a test module, consider adding a `#[cfg(test)]` to the containing module [INFO] [stdout] --> src/lib.rs:5:1 [INFO] [stdout] | [INFO] [stdout] 5 | mod tests { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `count` [INFO] [stdout] --> src/nn/bpe_tokenizer.rs:22:17 [INFO] [stdout] | [INFO] [stdout] 22 | let mut count = 0; [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_count` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `i` [INFO] [stdout] --> src/nn/gpt2.rs:141:14 [INFO] [stdout] | [INFO] [stdout] 141 | for (i, block) in self.blocks.iter_mut().enumerate() { [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_i` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/nn/linear.rs:45:13 [INFO] [stdout] | [INFO] [stdout] 45 | let mut weights = Tensor::from_gguf_file(weight_tensor_name, gguf_file); [INFO] [stdout] | ----^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/nn/bpe_tokenizer.rs:22:13 [INFO] [stdout] | [INFO] [stdout] 22 | let mut count = 0; [INFO] [stdout] | ----^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `value` [INFO] [stdout] --> src/central/masked_fill.rs:35:47 [INFO] [stdout] | [INFO] [stdout] 35 | if let Operation::MaskFill(source, mask , value) = packet.operation { [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_value` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `zero_all_grads` is never used [INFO] [stdout] --> src/central/mod.rs:67:8 [INFO] [stdout] | [INFO] [stdout] 67 | pub fn zero_all_grads() { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `update_parameters` is never used [INFO] [stdout] --> src/central/mod.rs:83:8 [INFO] [stdout] | [INFO] [stdout] 83 | pub fn update_parameters(learning_rate: f32) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `causal_mask` is never used [INFO] [stdout] --> src/nn/gpt_block.rs:7:8 [INFO] [stdout] | [INFO] [stdout] 7 | pub fn causal_mask(seq_len: usize) -> Tensor { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `GPT2Block` is never constructed [INFO] [stdout] --> src/nn/gpt_block.rs:21:12 [INFO] [stdout] | [INFO] [stdout] 21 | pub struct GPT2Block { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated functions `new` and `from_gguf_file` are never used [INFO] [stdout] --> src/nn/gpt_block.rs:29:12 [INFO] [stdout] | [INFO] [stdout] 28 | impl GPT2Block { [INFO] [stdout] | -------------- associated functions in this implementation [INFO] [stdout] 29 | pub fn new(config: GPT2Config) -> GPT2Block { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 44 | pub fn from_gguf_file(gguf_file: &mut GGUFFile, block_count: i64, gpt_config: &GPT2Config) -> GPT2Block{ [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `forward` and `get_parameters` are never used [INFO] [stdout] --> src/nn/layer.rs:4:8 [INFO] [stdout] | [INFO] [stdout] 3 | pub trait Layer { [INFO] [stdout] | ----- methods in this trait [INFO] [stdout] 4 | fn forward(&mut self, inputs: Tensor) -> Tensor; [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] 5 | fn get_parameters(&self) -> Vec; [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Linear` is never constructed [INFO] [stdout] --> src/nn/linear.rs:5:12 [INFO] [stdout] | [INFO] [stdout] 5 | pub struct Linear { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated functions `new`, `from_tensors`, and `from_gguf_file` are never used [INFO] [stdout] --> src/nn/linear.rs:11:12 [INFO] [stdout] | [INFO] [stdout] 10 | impl Linear { [INFO] [stdout] | ----------- associated functions in this implementation [INFO] [stdout] 11 | pub fn new(in_features: usize, out_features: usize, has_bias: bool) -> Linear { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 24 | pub fn from_tensors(mut weights: Tensor, mut bias: Option) -> Linear { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 40 | pub fn from_gguf_file( [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `id` is never read [INFO] [stdout] --> src/central/tensor.rs:15:9 [INFO] [stdout] | [INFO] [stdout] 14 | pub struct InternalTensor { [INFO] [stdout] | -------------- field in this struct [INFO] [stdout] 15 | pub id: TensorID, // the unique id for this tensor, it is used by the equation to look up the data [INFO] [stdout] | ^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `operation` is never read [INFO] [stdout] --> src/central/tensor.rs:109:5 [INFO] [stdout] | [INFO] [stdout] 106 | pub struct Tensor { [INFO] [stdout] | ------ field in this struct [INFO] [stdout] ... [INFO] [stdout] 109 | operation: Operation, // The operation that created this Tensor(Nop for basic allocations) [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `Tensor` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `LayerNorm` is never constructed [INFO] [stdout] --> src/nn/layer_norm.rs:5:12 [INFO] [stdout] | [INFO] [stdout] 5 | pub struct LayerNorm { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `GPT2Config` is never constructed [INFO] [stdout] --> src/nn/gpt2.rs:10:12 [INFO] [stdout] | [INFO] [stdout] 10 | pub struct GPT2Config { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated functions `gpt2_small` and `from_gguf_file` are never used [INFO] [stdout] --> src/nn/gpt2.rs:21:12 [INFO] [stdout] | [INFO] [stdout] 20 | impl GPT2Config { [INFO] [stdout] | --------------- associated functions in this implementation [INFO] [stdout] 21 | pub fn gpt2_small() -> GPT2Config { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 33 | pub fn from_gguf_file(gguf_file: &mut GGUFFile) -> GPT2Config { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `sinusoidal_position_encoding` is never used [INFO] [stdout] --> src/nn/gpt2.rs:49:8 [INFO] [stdout] | [INFO] [stdout] 49 | pub fn sinusoidal_position_encoding(seq_len: usize, d_model: usize) -> Tensor { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `GPT2` is never constructed [INFO] [stdout] --> src/nn/gpt2.rs:65:12 [INFO] [stdout] | [INFO] [stdout] 65 | pub struct GPT2 { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated functions `new` and `from_gguf_file` are never used [INFO] [stdout] --> src/nn/gpt2.rs:75:12 [INFO] [stdout] | [INFO] [stdout] 74 | impl GPT2 { [INFO] [stdout] | --------- associated functions in this implementation [INFO] [stdout] 75 | pub fn new(config: GPT2Config) -> GPT2 { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 88 | pub fn from_gguf_file(gguf_file: &mut GGUFFile) -> GPT2{ [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `BPETokenizer` is never constructed [INFO] [stdout] --> src/nn/bpe_tokenizer.rs:8:12 [INFO] [stdout] | [INFO] [stdout] 8 | pub struct BPETokenizer { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `new` is never used [INFO] [stdout] --> src/nn/bpe_tokenizer.rs:16:12 [INFO] [stdout] | [INFO] [stdout] 12 | impl BPETokenizer { [INFO] [stdout] | ----------------- associated function in this implementation [INFO] [stdout] ... [INFO] [stdout] 16 | pub fn new(input: String) -> HashMap, u8> { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `name` is never read [INFO] [stdout] --> src/utils/gguf.rs:180:5 [INFO] [stdout] | [INFO] [stdout] 179 | pub struct TensorMetaData { [INFO] [stdout] | -------------- field in this struct [INFO] [stdout] 180 | name: String, [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `TensorMetaData` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `approx_equal` is never used [INFO] [stdout] --> src/lib.rs:8:8 [INFO] [stdout] | [INFO] [stdout] 8 | fn approx_equal(a: f32, b: f32, epsilon: f32) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `build_batch_norm_dataset_from_subset` is never used [INFO] [stdout] --> src/lib.rs:116:8 [INFO] [stdout] | [INFO] [stdout] 116 | fn build_batch_norm_dataset_from_subset( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `build_dataset_from_subset` is never used [INFO] [stdout] --> src/lib.rs:134:8 [INFO] [stdout] | [INFO] [stdout] 134 | fn build_dataset_from_subset( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `read_lines` is never used [INFO] [stdout] --> src/lib.rs:156:8 [INFO] [stdout] | [INFO] [stdout] 156 | fn read_lines(filename: &str) -> Vec { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `ReLU` is never constructed [INFO] [stdout] --> src/nn/relu.rs:4:12 [INFO] [stdout] | [INFO] [stdout] 4 | pub struct ReLU {} [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `new` is never used [INFO] [stdout] --> src/nn/relu.rs:7:12 [INFO] [stdout] | [INFO] [stdout] 6 | impl ReLU { [INFO] [stdout] | --------- associated function in this implementation [INFO] [stdout] 7 | pub fn new() -> ReLU { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `layers` is never read [INFO] [stdout] --> src/nn/sequential.rs:5:9 [INFO] [stdout] | [INFO] [stdout] 4 | pub struct Sequential { [INFO] [stdout] | ---------- field in this struct [INFO] [stdout] 5 | pub layers: Vec>, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated functions `new` and `from_gguf_file` are never used [INFO] [stdout] --> src/nn/layer_norm.rs:11:12 [INFO] [stdout] | [INFO] [stdout] 10 | impl LayerNorm { [INFO] [stdout] | -------------- associated functions in this implementation [INFO] [stdout] 11 | pub fn new(num_features: usize) -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 21 | pub fn from_gguf_file(gguf_file: &mut GGUFFile, weight_name: String, bias_name: String) -> LayerNorm { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `MultiHeadAttention` is never constructed [INFO] [stdout] --> src/nn/multihead_attention.rs:6:12 [INFO] [stdout] | [INFO] [stdout] 6 | pub struct MultiHeadAttention { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `new`, `from_gguf_file`, and `set_mask` are never used [INFO] [stdout] --> src/nn/multihead_attention.rs:26:12 [INFO] [stdout] | [INFO] [stdout] 25 | impl MultiHeadAttention { [INFO] [stdout] | ----------------------- associated items in this implementation [INFO] [stdout] 26 | pub fn new(embed_dim: usize, number_of_heads: usize, mask: Option) -> MultiHeadAttention { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 46 | pub fn from_gguf_file(gguf_file: &mut GGUFFile, block_count: i64, config: &GPT2Config) -> MultiHeadAttention { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 135 | pub fn set_mask(&mut self, mask: Tensor) { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `ScaledDotProductAttention` is never constructed [INFO] [stdout] --> src/nn/scaled_dot_project_attention.rs:7:12 [INFO] [stdout] | [INFO] [stdout] 7 | pub struct ScaledDotProductAttention { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `new` and `forward` are never used [INFO] [stdout] --> src/nn/scaled_dot_project_attention.rs:13:12 [INFO] [stdout] | [INFO] [stdout] 12 | impl ScaledDotProductAttention { [INFO] [stdout] | ------------------------------ associated items in this implementation [INFO] [stdout] 13 | pub fn new(scale: f32) -> ScaledDotProductAttention { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 19 | pub fn forward(&self, query: Tensor, key: Tensor, value: Tensor, mask: Option) -> Tensor { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Embedding` is never constructed [INFO] [stdout] --> src/nn/embedding.rs:5:12 [INFO] [stdout] | [INFO] [stdout] 5 | pub struct Embedding { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated functions `new` and `from_tensor` are never used [INFO] [stdout] --> src/nn/embedding.rs:10:12 [INFO] [stdout] | [INFO] [stdout] 9 | impl Embedding { [INFO] [stdout] | -------------- associated functions in this implementation [INFO] [stdout] 10 | pub fn new(vocab_size: usize, embeding_dimensions: usize) -> Embedding { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 19 | pub fn from_tensor(mut weights: Tensor) -> Embedding { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `GELU` is never constructed [INFO] [stdout] --> src/nn/gelu.rs:5:12 [INFO] [stdout] | [INFO] [stdout] 5 | pub struct GELU; [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `new` is never used [INFO] [stdout] --> src/nn/gelu.rs:8:12 [INFO] [stdout] | [INFO] [stdout] 7 | impl GELU { [INFO] [stdout] | --------- associated function in this implementation [INFO] [stdout] 8 | pub fn new() -> Self { Self } [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `TanhLayer` is never constructed [INFO] [stdout] --> src/nn/tanh.rs:4:12 [INFO] [stdout] | [INFO] [stdout] 4 | pub struct TanhLayer {} [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `new` is never used [INFO] [stdout] --> src/nn/tanh.rs:7:12 [INFO] [stdout] | [INFO] [stdout] 6 | impl TanhLayer { [INFO] [stdout] | -------------- associated function in this implementation [INFO] [stdout] 7 | pub fn new() -> TanhLayer { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait `Model` is never used [INFO] [stdout] --> src/nn/model.rs:3:11 [INFO] [stdout] | [INFO] [stdout] 3 | pub trait Model { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `add_vector`, `zero_grad`, `update_parameters`, `compact_tensor_store`, and `garbage_collect` are never used [INFO] [stdout] --> src/central/equation.rs:250:12 [INFO] [stdout] | [INFO] [stdout] 63 | impl Equation { [INFO] [stdout] | ------------- methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 250 | pub fn add_vector(&self, a: &[f32], b: &[f32]) -> Vec { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 599 | pub fn zero_grad(&mut self) { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 609 | pub fn update_parameters(&mut self, learning_rate: f32) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 645 | pub fn compact_tensor_store(&mut self) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 679 | pub fn garbage_collect(&mut self) { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: type `GgmlType` is more private than the item `TensorMetaData::new` [INFO] [stdout] --> src/utils/gguf.rs:187:5 [INFO] [stdout] | [INFO] [stdout] 187 | pub fn new(name: String, dimensions: Vec, offset: u64, data_type: GgmlType) -> TensorMetaData { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ associated function `TensorMetaData::new` is reachable at visibility `pub` [INFO] [stdout] | [INFO] [stdout] note: but type `GgmlType` is only usable at visibility `pub(self)` [INFO] [stdout] --> src/utils/gguf.rs:9:1 [INFO] [stdout] | [INFO] [stdout] 9 | enum GgmlType { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] = note: `#[warn(private_interfaces)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/utils/gguf.rs:70:5 [INFO] [stdout] | [INFO] [stdout] 70 | f.read_exact(&mut u8_buffer); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] = note: `#[warn(unused_must_use)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 70 | let _ = f.read_exact(&mut u8_buffer); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/utils/gguf.rs:76:5 [INFO] [stdout] | [INFO] [stdout] 76 | f.read_exact(&mut u8_buffer); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 76 | let _ = f.read_exact(&mut u8_buffer); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/utils/gguf.rs:82:5 [INFO] [stdout] | [INFO] [stdout] 82 | f.read_exact(&mut u8_buffer); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 82 | let _ = f.read_exact(&mut u8_buffer); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/utils/gguf.rs:88:5 [INFO] [stdout] | [INFO] [stdout] 88 | f.read_exact(&mut u8_buffer); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 88 | let _ = f.read_exact(&mut u8_buffer); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/utils/gguf.rs:94:5 [INFO] [stdout] | [INFO] [stdout] 94 | f.read_exact(&mut u8_buffer); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 94 | let _ = f.read_exact(&mut u8_buffer); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/utils/gguf.rs:100:5 [INFO] [stdout] | [INFO] [stdout] 100 | f.read_exact(&mut u8_buffer); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 100 | let _ = f.read_exact(&mut u8_buffer); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/utils/gguf.rs:106:5 [INFO] [stdout] | [INFO] [stdout] 106 | f.read_exact(&mut u8_buffer); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 106 | let _ = f.read_exact(&mut u8_buffer); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/utils/gguf.rs:112:5 [INFO] [stdout] | [INFO] [stdout] 112 | f.read_exact(&mut u8_buffer); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 112 | let _ = f.read_exact(&mut u8_buffer); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/utils/gguf.rs:118:5 [INFO] [stdout] | [INFO] [stdout] 118 | f.read_exact(&mut u8_buffer); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 118 | let _ = f.read_exact(&mut u8_buffer); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/utils/gguf.rs:124:5 [INFO] [stdout] | [INFO] [stdout] 124 | f.read_exact(&mut string_size); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 124 | let _ = f.read_exact(&mut string_size); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Compiling cant v0.1.0 (/opt/rustwide/workdir) [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/utils/gguf.rs:127:5 [INFO] [stdout] | [INFO] [stdout] 127 | f.read_exact(&mut string_buffer); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 127 | let _ = f.read_exact(&mut string_buffer); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/utils/gguf.rs:299:9 [INFO] [stdout] | [INFO] [stdout] 299 | f.seek_relative(padding as i64); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 299 | let _ = f.seek_relative(padding as i64); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `ndarray::prelude::*` [INFO] [stdout] --> src/central/cross_entropy_op.rs:2:5 [INFO] [stdout] | [INFO] [stdout] 2 | use ndarray::prelude::*; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `super::backward_for_matmul` [INFO] [stdout] --> src/central/equation.rs:3:5 [INFO] [stdout] | [INFO] [stdout] 3 | use super::backward_for_matmul; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `cross_entropy_op` [INFO] [stdout] --> src/central/equation.rs:5:50 [INFO] [stdout] | [INFO] [stdout] 5 | InternalTensor, Operation, TensorID, add_op, cross_entropy_op, log, matmul_op, mean_op, mul_op, [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `IndexMut` and `Index` [INFO] [stdout] --> src/central/index.rs:2:16 [INFO] [stdout] | [INFO] [stdout] 2 | use std::ops::{Index, IndexMut}; [INFO] [stdout] | ^^^^^ ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `utils::padding_dimenions_to_four` [INFO] [stdout] --> src/central/mean_op.rs:1:25 [INFO] [stdout] | [INFO] [stdout] 1 | use crate::{central::*, utils::padding_dimenions_to_four}; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::collections::HashSet` [INFO] [stdout] --> src/central/mean_op.rs:3:5 [INFO] [stdout] | [INFO] [stdout] 3 | use std::collections::HashSet; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `equation` [INFO] [stdout] --> src/central/select_op.rs:1:47 [INFO] [stdout] | [INFO] [stdout] 1 | use crate::central::{Shape, Tensor, TensorID, equation, get_equation}; [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::collections::HashSet` [INFO] [stdout] --> src/central/std_op.rs:3:5 [INFO] [stdout] | [INFO] [stdout] 3 | use std::collections::HashSet; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `get_equation` [INFO] [stdout] --> src/central/std_op.rs:175:52 [INFO] [stdout] | [INFO] [stdout] 175 | use crate::central::{Operation, Shape, Tensor, get_equation}; [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `ndarray::prelude::*` [INFO] [stdout] --> src/central/masked_fill.rs:2:5 [INFO] [stdout] | [INFO] [stdout] 2 | use ndarray::prelude::*; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `add_op::*` [INFO] [stdout] --> src/central/mod.rs:23:9 [INFO] [stdout] | [INFO] [stdout] 23 | pub use add_op::*; [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `cross_entropy_op::*` [INFO] [stdout] --> src/central/mod.rs:24:9 [INFO] [stdout] | [INFO] [stdout] 24 | pub use cross_entropy_op::*; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `index::*` [INFO] [stdout] --> src/central/mod.rs:26:9 [INFO] [stdout] | [INFO] [stdout] 26 | pub use index::*; [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `log::*` [INFO] [stdout] --> src/central/mod.rs:28:9 [INFO] [stdout] | [INFO] [stdout] 28 | pub use log::*; [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `mean_op::*` [INFO] [stdout] --> src/central/mod.rs:30:9 [INFO] [stdout] | [INFO] [stdout] 30 | pub use mean_op::*; [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `mul_op::*` [INFO] [stdout] --> src/central/mod.rs:31:9 [INFO] [stdout] | [INFO] [stdout] 31 | pub use mul_op::*; [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `pow_op::*` [INFO] [stdout] --> src/central/mod.rs:33:9 [INFO] [stdout] | [INFO] [stdout] 33 | pub use pow_op::*; [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `relu_op::*` [INFO] [stdout] --> src/central/mod.rs:34:9 [INFO] [stdout] | [INFO] [stdout] 34 | pub use relu_op::*; [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `reshape::*` [INFO] [stdout] --> src/central/mod.rs:35:9 [INFO] [stdout] | [INFO] [stdout] 35 | pub use reshape::*; [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `select_op::*` [INFO] [stdout] --> src/central/mod.rs:36:9 [INFO] [stdout] | [INFO] [stdout] 36 | pub use select_op::*; [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `softmax_op::*` [INFO] [stdout] --> src/central/mod.rs:38:9 [INFO] [stdout] | [INFO] [stdout] 38 | pub use softmax_op::*; [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std_op::*` [INFO] [stdout] --> src/central/mod.rs:40:9 [INFO] [stdout] | [INFO] [stdout] 40 | pub use std_op::*; [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `sum_op::*` [INFO] [stdout] --> src/central/mod.rs:41:9 [INFO] [stdout] | [INFO] [stdout] 41 | pub use sum_op::*; [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `tanh_op::*` [INFO] [stdout] --> src/central/mod.rs:42:9 [INFO] [stdout] | [INFO] [stdout] 42 | pub use tanh_op::*; [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `transpose_op::*` [INFO] [stdout] --> src/central/mod.rs:44:9 [INFO] [stdout] | [INFO] [stdout] 44 | pub use transpose_op::*; [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around closure body [INFO] [stdout] --> src/nn/layer_norm.rs:985:68 [INFO] [stdout] | [INFO] [stdout] 985 | let input_data: Vec = (0..batch_size * 3).map(|i| (i as f32 + 1.0)).collect(); [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_parens)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 985 - let input_data: Vec = (0..batch_size * 3).map(|i| (i as f32 + 1.0)).collect(); [INFO] [stdout] 985 + let input_data: Vec = (0..batch_size * 3).map(|i| i as f32 + 1.0).collect(); [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `ndarray::Axis` [INFO] [stdout] --> src/nn/multihead_attention.rs:4:5 [INFO] [stdout] | [INFO] [stdout] 4 | use ndarray::Axis; [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::utils::GGUFFile` [INFO] [stdout] --> src/nn/embedding.rs:3:5 [INFO] [stdout] | [INFO] [stdout] 3 | use crate::utils::GGUFFile; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `Gpt2Tokenizer` and `Tokenizer` [INFO] [stdout] --> src/nn/gpt2.rs:5:34 [INFO] [stdout] | [INFO] [stdout] 5 | use rust_tokenizers::tokenizer::{Gpt2Tokenizer, Tokenizer}; [INFO] [stdout] | ^^^^^^^^^^^^^ ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `GPT2Config` [INFO] [stdout] --> src/nn/gpt2.rs:169:21 [INFO] [stdout] | [INFO] [stdout] 169 | use crate::nn::{GPT2Config, Model, GPT2}; [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `ndarray::Axis` [INFO] [stdout] --> src/nn/gpt2.rs:172:9 [INFO] [stdout] | [INFO] [stdout] 172 | use ndarray::Axis; [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `EncodeInput` [INFO] [stdout] --> src/nn/gpt2.rs:225:52 [INFO] [stdout] | [INFO] [stdout] 225 | use tokenizers::tokenizer::{Result, Tokenizer, EncodeInput}; [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::collections::HashSet` [INFO] [stdout] --> src/nn/bpe_tokenizer.rs:2:5 [INFO] [stdout] | [INFO] [stdout] 2 | use std::collections::HashSet; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::hash::Hash` [INFO] [stdout] --> src/nn/bpe_tokenizer.rs:4:5 [INFO] [stdout] | [INFO] [stdout] 4 | use std::hash::Hash; [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::io` [INFO] [stdout] --> src/nn/bpe_tokenizer.rs:5:5 [INFO] [stdout] | [INFO] [stdout] 5 | use std::io; [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::nn::BPETokenizer` [INFO] [stdout] --> src/nn/bpe_tokenizer.rs:105:9 [INFO] [stdout] | [INFO] [stdout] 105 | use crate::nn::BPETokenizer; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::hash::Hash` [INFO] [stdout] --> src/utils/gguf.rs:5:5 [INFO] [stdout] | [INFO] [stdout] 5 | use std::hash::Hash; [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unreachable expression [INFO] [stdout] --> src/nn/layer_norm.rs:842:9 [INFO] [stdout] | [INFO] [stdout] 841 | return; [INFO] [stdout] | ------ any code following this expression is unreachable [INFO] [stdout] 842 | / for i in 0..3 { [INFO] [stdout] 843 | | // Bias gradient should be non-zero and finite [INFO] [stdout] 844 | | assert!(bias_grad[[i]].is_finite()); [INFO] [stdout] 845 | | assert!(bias_grad[[i]].abs() > 1e-8, "Bias gradient should be non-zero"); [INFO] [stdout] ... | [INFO] [stdout] 849 | | assert!(weight_grad[[i]].abs() > 1e-8, "Weight gradient should be non-zero"); [INFO] [stdout] 850 | | } [INFO] [stdout] | |_________^ unreachable expression [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unreachable_code)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::nn` [INFO] [stdout] --> src/nn/scaled_dot_project_attention.rs:4:5 [INFO] [stdout] | [INFO] [stdout] 4 | use crate::nn::*; [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `pytorch_input` [INFO] [stdout] --> src/nn/layer_norm.rs:1470:13 [INFO] [stdout] | [INFO] [stdout] 1470 | let pytorch_input = Tensor::from_gguf_file(String::from("layer_norm_forward_multiple_calls_input"), &mut gguf_file); [INFO] [stdout] | ^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_pytorch_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: `pytorch_weight` [INFO] [stdout] --> src/nn/layer_norm.rs:1473:13 [INFO] [stdout] | [INFO] [stdout] 1473 | let pytorch_weight = Tensor::from_gguf_file(String::from("layer_norm_forward_multiple_calls_weight"), &mut gguf_file); [INFO] [stdout] | ^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_pytorch_weight` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `pytorch_bias` [INFO] [stdout] --> src/nn/layer_norm.rs:1474:13 [INFO] [stdout] | [INFO] [stdout] 1474 | let pytorch_bias = Tensor::from_gguf_file(String::from("layer_norm_forward_multiple_calls_bias"), &mut gguf_file); [INFO] [stdout] | ^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_pytorch_bias` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/nn/linear.rs:45:13 [INFO] [stdout] | [INFO] [stdout] 45 | let mut weights = Tensor::from_gguf_file(weight_tensor_name, gguf_file); [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: `pytorch_input` [INFO] [stdout] --> src/nn/layer_norm.rs:1583:13 [INFO] [stdout] | [INFO] [stdout] 1583 | let pytorch_input = Tensor::from_gguf_file(String::from("layer_norm_backward_parameter_gradients_input"), &mut gguf_file); [INFO] [stdout] | ^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_pytorch_input` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `pytorch_weight` [INFO] [stdout] --> src/nn/layer_norm.rs:1586:13 [INFO] [stdout] | [INFO] [stdout] 1586 | let pytorch_weight = Tensor::from_gguf_file(String::from("layer_norm_backward_parameter_gradients_weight"), &mut gguf_file); [INFO] [stdout] | ^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_pytorch_weight` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `pytorch_bias` [INFO] [stdout] --> src/nn/layer_norm.rs:1587:13 [INFO] [stdout] | [INFO] [stdout] 1587 | let pytorch_bias = Tensor::from_gguf_file(String::from("layer_norm_backward_parameter_gradients_bias"), &mut gguf_file); [INFO] [stdout] | ^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_pytorch_bias` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `pytorch_input_grad` [INFO] [stdout] --> src/nn/layer_norm.rs:1588:13 [INFO] [stdout] | [INFO] [stdout] 1588 | let pytorch_input_grad = Tensor::from_gguf_file(String::from("layer_norm_backward_parameter_gradients_input_grad"), &mut gguf_file); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_pytorch_input_grad` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `value` [INFO] [stdout] --> src/central/masked_fill.rs:35:47 [INFO] [stdout] | [INFO] [stdout] 35 | if let Operation::MaskFill(source, mask , value) = packet.operation { [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_value` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `has_zero_grads` [INFO] [stdout] --> src/nn/linear.rs:545:13 [INFO] [stdout] | [INFO] [stdout] 545 | let has_zero_grads = layer1_weight_grad.iter().any(|&g| g == 0.0); [INFO] [stdout] | ^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_has_zero_grads` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `indices` [INFO] [stdout] --> src/central/masked_fill.rs:291:21 [INFO] [stdout] | [INFO] [stdout] 291 | let indices: Vec = (0..shape.len()) [INFO] [stdout] | ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_indices` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `grad_diff` [INFO] [stdout] --> src/nn/layer_norm.rs:801:13 [INFO] [stdout] | [INFO] [stdout] 801 | let grad_diff = (input1_grad[[0, 0]] - input2_grad[[0, 0]]).abs(); [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] help: if this is intentional, prefix it with an underscore [INFO] [stdout] | [INFO] [stdout] 801 | let _grad_diff = (input1_grad[[0, 0]] - input2_grad[[0, 0]]).abs(); [INFO] [stdout] | + [INFO] [stdout] help: you might have meant to pattern match on the similarly named constant `EPS` [INFO] [stdout] | [INFO] [stdout] 801 - let grad_diff = (input1_grad[[0, 0]] - input2_grad[[0, 0]]).abs(); [INFO] [stdout] 801 + let central::pow_op::backward_for_pow::EPS = (input1_grad[[0, 0]] - input2_grad[[0, 0]]).abs(); [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `i` [INFO] [stdout] --> src/nn/gpt2.rs:141:14 [INFO] [stdout] | [INFO] [stdout] 141 | for (i, block) in self.blocks.iter_mut().enumerate() { [INFO] [stdout] | ^ [INFO] [stdout] | [INFO] [stdout] help: if this is intentional, prefix it with an underscore [INFO] [stdout] | [INFO] [stdout] 141 | for (_i, block) in self.blocks.iter_mut().enumerate() { [INFO] [stdout] | + [INFO] [stdout] help: you might have meant to pattern match on the similarly named constant `BATCH_SIZE` [INFO] [stdout] | [INFO] [stdout] 141 - for (i, block) in self.blocks.iter_mut().enumerate() { [INFO] [stdout] 141 + for (tests::batch_norm_simple_test::BATCH_SIZE, block) in self.blocks.iter_mut().enumerate() { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `bnvar_inv` [INFO] [stdout] --> src/lib.rs:274:21 [INFO] [stdout] | [INFO] [stdout] 274 | let bnvar_inv = (bnvari + 1e-5).pow(-0.5); [INFO] [stdout] | ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_bnvar_inv` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `weight_grad` [INFO] [stdout] --> src/nn/layer_norm.rs:836:13 [INFO] [stdout] | [INFO] [stdout] 836 | let weight_grad = layer_norm.weight.grad(); [INFO] [stdout] | ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_weight_grad` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `bias_grad` [INFO] [stdout] --> src/nn/layer_norm.rs:837:13 [INFO] [stdout] | [INFO] [stdout] 837 | let bias_grad = layer_norm.bias.grad(); [INFO] [stdout] | ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_bias_grad` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `test_text` [INFO] [stdout] --> src/nn/gpt2.rs:183:13 [INFO] [stdout] | [INFO] [stdout] 183 | let test_text = "A"; [INFO] [stdout] | ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_test_text` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `grad` [INFO] [stdout] --> src/nn/layer_norm.rs:952:14 [INFO] [stdout] | [INFO] [stdout] 952 | for &grad in input_grad.iter() { [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] help: if this is intentional, prefix it with an underscore [INFO] [stdout] | [INFO] [stdout] 952 | for &_grad in input_grad.iter() { [INFO] [stdout] | + [INFO] [stdout] help: you might have meant to pattern match on the similarly named constant `EPS` [INFO] [stdout] | [INFO] [stdout] 952 - for &grad in input_grad.iter() { [INFO] [stdout] 952 + for ¢ral::pow_op::backward_for_pow::EPS in input_grad.iter() { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `weight_grad` [INFO] [stdout] --> src/nn/layer_norm.rs:958:13 [INFO] [stdout] | [INFO] [stdout] 958 | let weight_grad = layer_norm.weight.grad(); [INFO] [stdout] | ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_weight_grad` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `bias_grad` [INFO] [stdout] --> src/nn/layer_norm.rs:959:13 [INFO] [stdout] | [INFO] [stdout] 959 | let bias_grad = layer_norm.bias.grad(); [INFO] [stdout] | ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_bias_grad` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `i` [INFO] [stdout] --> src/nn/layer_norm.rs:961:13 [INFO] [stdout] | [INFO] [stdout] 961 | for i in 0..3 { [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_i` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `epoch` [INFO] [stdout] --> src/lib.rs:354:13 [INFO] [stdout] | [INFO] [stdout] 354 | for epoch in 0..100 { [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_epoch` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/nn/gpt2.rs:236:13 [INFO] [stdout] | [INFO] [stdout] 236 | let mut tokenizer = Tokenizer::new(bpe); [INFO] [stdout] | ----^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `count` [INFO] [stdout] --> src/nn/bpe_tokenizer.rs:22:17 [INFO] [stdout] | [INFO] [stdout] 22 | let mut count = 0; [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_count` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/lib.rs:423:13 [INFO] [stdout] | [INFO] [stdout] 423 | let mut y_true = Tensor::zeros(Shape::new(vec![batch_size, num_classes])); [INFO] [stdout] | ----^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `gguf_file` [INFO] [stdout] --> src/lib.rs:528:17 [INFO] [stdout] | [INFO] [stdout] 528 | let mut gguf_file = GGUFFile::new(String::from("./models/tests/gpt2/Gpt2-124M-F16.gguf")); [INFO] [stdout] | ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_gguf_file` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/lib.rs:528:13 [INFO] [stdout] | [INFO] [stdout] 528 | let mut gguf_file = GGUFFile::new(String::from("./models/tests/gpt2/Gpt2-124M-F16.gguf")); [INFO] [stdout] | ----^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/nn/bpe_tokenizer.rs:22:13 [INFO] [stdout] | [INFO] [stdout] 22 | let mut count = 0; [INFO] [stdout] | ----^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `batch_size` [INFO] [stdout] --> src/nn/sequential.rs:518:13 [INFO] [stdout] | [INFO] [stdout] 518 | let batch_size = 128; [INFO] [stdout] | ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_batch_size` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `image_size` [INFO] [stdout] --> src/nn/sequential.rs:519:13 [INFO] [stdout] | [INFO] [stdout] 519 | let image_size = 64; [INFO] [stdout] | ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_image_size` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `number_of_channels` [INFO] [stdout] --> src/nn/sequential.rs:520:13 [INFO] [stdout] | [INFO] [stdout] 520 | let number_of_channels = 3; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_number_of_channels` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `size_of_latent_z_vector` [INFO] [stdout] --> src/nn/sequential.rs:521:13 [INFO] [stdout] | [INFO] [stdout] 521 | let size_of_latent_z_vector = 100; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_size_of_latent_z_vector` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `number_of_feature_maps_generator` [INFO] [stdout] --> src/nn/sequential.rs:522:13 [INFO] [stdout] | [INFO] [stdout] 522 | let number_of_feature_maps_generator = 64; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_number_of_feature_maps_generator` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `number_of_feature_maps_discriminator` [INFO] [stdout] --> src/nn/sequential.rs:523:13 [INFO] [stdout] | [INFO] [stdout] 523 | let number_of_feature_maps_discriminator = 64; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_number_of_feature_maps_discriminator` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `number_of_training_epochs` [INFO] [stdout] --> src/nn/sequential.rs:524:13 [INFO] [stdout] | [INFO] [stdout] 524 | let number_of_training_epochs = 5; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_number_of_training_epochs` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `learning_rate` [INFO] [stdout] --> src/nn/sequential.rs:525:13 [INFO] [stdout] | [INFO] [stdout] 525 | let learning_rate = 0.0020; [INFO] [stdout] | ^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_learning_rate` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `beta_1` [INFO] [stdout] --> src/nn/sequential.rs:526:13 [INFO] [stdout] | [INFO] [stdout] 526 | let beta_1 = 0.5; [INFO] [stdout] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_beta_1` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `pytorch_input` [INFO] [stdout] --> src/nn/layer_norm.rs:1392:13 [INFO] [stdout] | [INFO] [stdout] 1392 | let pytorch_input = Tensor::from_gguf_file(String::from("layer_norm_forward_different_feature_sizes_input"), &mut gguf_file); [INFO] [stdout] | ^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_pytorch_input` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `pytorch_weight` [INFO] [stdout] --> src/nn/layer_norm.rs:1394:13 [INFO] [stdout] | [INFO] [stdout] 1394 | let pytorch_weight = Tensor::from_gguf_file(String::from("layer_norm_forward_different_feature_sizes_weight"), &mut gguf_file); [INFO] [stdout] | ^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_pytorch_weight` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `pytorch_bias` [INFO] [stdout] --> src/nn/layer_norm.rs:1395:13 [INFO] [stdout] | [INFO] [stdout] 1395 | let pytorch_bias = Tensor::from_gguf_file(String::from("layer_norm_forward_different_feature_sizes_bias"), &mut gguf_file); [INFO] [stdout] | ^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_pytorch_bias` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `axis` [INFO] [stdout] --> src/central/softmax_op.rs:115:51 [INFO] [stdout] | [INFO] [stdout] 115 | fn assert_softmax_properties(tensor: &Tensor, axis: usize) { [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] help: if this is intentional, prefix it with an underscore [INFO] [stdout] | [INFO] [stdout] 115 | fn assert_softmax_properties(tensor: &Tensor, _axis: usize) { [INFO] [stdout] | + [INFO] [stdout] help: you might have meant to pattern match on the similarly named constant `BATCH_SIZE` [INFO] [stdout] | [INFO] [stdout] 115 - fn assert_softmax_properties(tensor: &Tensor, axis: usize) { [INFO] [stdout] 115 + fn assert_softmax_properties(tensor: &Tensor, tests::batch_norm_simple_test::BATCH_SIZE: usize) { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: type `GgmlType` is more private than the item `TensorMetaData::new` [INFO] [stdout] --> src/utils/gguf.rs:187:5 [INFO] [stdout] | [INFO] [stdout] 187 | pub fn new(name: String, dimensions: Vec, offset: u64, data_type: GgmlType) -> TensorMetaData { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ associated function `TensorMetaData::new` is reachable at visibility `pub` [INFO] [stdout] | [INFO] [stdout] note: but type `GgmlType` is only usable at visibility `pub(self)` [INFO] [stdout] --> src/utils/gguf.rs:9:1 [INFO] [stdout] | [INFO] [stdout] 9 | enum GgmlType { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] = note: `#[warn(private_interfaces)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/utils/gguf.rs:70:5 [INFO] [stdout] | [INFO] [stdout] 70 | f.read_exact(&mut u8_buffer); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] = note: `#[warn(unused_must_use)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 70 | let _ = f.read_exact(&mut u8_buffer); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/utils/gguf.rs:76:5 [INFO] [stdout] | [INFO] [stdout] 76 | f.read_exact(&mut u8_buffer); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 76 | let _ = f.read_exact(&mut u8_buffer); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/utils/gguf.rs:82:5 [INFO] [stdout] | [INFO] [stdout] 82 | f.read_exact(&mut u8_buffer); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 82 | let _ = f.read_exact(&mut u8_buffer); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/utils/gguf.rs:88:5 [INFO] [stdout] | [INFO] [stdout] 88 | f.read_exact(&mut u8_buffer); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 88 | let _ = f.read_exact(&mut u8_buffer); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/utils/gguf.rs:94:5 [INFO] [stdout] | [INFO] [stdout] 94 | f.read_exact(&mut u8_buffer); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 94 | let _ = f.read_exact(&mut u8_buffer); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/utils/gguf.rs:100:5 [INFO] [stdout] | [INFO] [stdout] 100 | f.read_exact(&mut u8_buffer); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 100 | let _ = f.read_exact(&mut u8_buffer); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/utils/gguf.rs:106:5 [INFO] [stdout] | [INFO] [stdout] 106 | f.read_exact(&mut u8_buffer); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 106 | let _ = f.read_exact(&mut u8_buffer); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/utils/gguf.rs:112:5 [INFO] [stdout] | [INFO] [stdout] 112 | f.read_exact(&mut u8_buffer); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 112 | let _ = f.read_exact(&mut u8_buffer); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/utils/gguf.rs:118:5 [INFO] [stdout] | [INFO] [stdout] 118 | f.read_exact(&mut u8_buffer); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 118 | let _ = f.read_exact(&mut u8_buffer); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/utils/gguf.rs:124:5 [INFO] [stdout] | [INFO] [stdout] 124 | f.read_exact(&mut string_size); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 124 | let _ = f.read_exact(&mut string_size); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/utils/gguf.rs:127:5 [INFO] [stdout] | [INFO] [stdout] 127 | f.read_exact(&mut string_buffer); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 127 | let _ = f.read_exact(&mut string_buffer); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/utils/gguf.rs:299:9 [INFO] [stdout] | [INFO] [stdout] 299 | f.seek_relative(padding as i64); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 299 | let _ = f.seek_relative(padding as i64); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `approx_equal` is never used [INFO] [stdout] --> src/nn/scaled_dot_project_attention.rs:109:12 [INFO] [stdout] | [INFO] [stdout] 109 | fn approx_equal(a: f32, b: f32, epsilon: f32) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `from_gguf_file` is never used [INFO] [stdout] --> src/nn/gpt2.rs:33:12 [INFO] [stdout] | [INFO] [stdout] 20 | impl GPT2Config { [INFO] [stdout] | --------------- associated function in this implementation [INFO] [stdout] ... [INFO] [stdout] 33 | pub fn from_gguf_file(gguf_file: &mut GGUFFile) -> GPT2Config { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `sinusoidal_position_encoding` is never used [INFO] [stdout] --> src/nn/gpt2.rs:49:8 [INFO] [stdout] | [INFO] [stdout] 49 | pub fn sinusoidal_position_encoding(seq_len: usize, d_model: usize) -> Tensor { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `config` is never read [INFO] [stdout] --> src/nn/gpt2.rs:66:5 [INFO] [stdout] | [INFO] [stdout] 65 | pub struct GPT2 { [INFO] [stdout] | ---- field in this struct [INFO] [stdout] 66 | config: GPT2Config, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `new` is never used [INFO] [stdout] --> src/nn/gpt2.rs:75:12 [INFO] [stdout] | [INFO] [stdout] 74 | impl GPT2 { [INFO] [stdout] | --------- associated function in this implementation [INFO] [stdout] 75 | pub fn new(config: GPT2Config) -> GPT2 { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `BPETokenizer` is never constructed [INFO] [stdout] --> src/nn/bpe_tokenizer.rs:8:12 [INFO] [stdout] | [INFO] [stdout] 8 | pub struct BPETokenizer { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `new` is never used [INFO] [stdout] --> src/nn/bpe_tokenizer.rs:16:12 [INFO] [stdout] | [INFO] [stdout] 12 | impl BPETokenizer { [INFO] [stdout] | ----------------- associated function in this implementation [INFO] [stdout] ... [INFO] [stdout] 16 | pub fn new(input: String) -> HashMap, u8> { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `name` is never read [INFO] [stdout] --> src/utils/gguf.rs:180:5 [INFO] [stdout] | [INFO] [stdout] 179 | pub struct TensorMetaData { [INFO] [stdout] | -------------- field in this struct [INFO] [stdout] 180 | name: String, [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `TensorMetaData` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `build_dataset_from_subset` is never used [INFO] [stdout] --> src/lib.rs:134:8 [INFO] [stdout] | [INFO] [stdout] 134 | fn build_dataset_from_subset( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `add_vector` is never used [INFO] [stdout] --> src/central/equation.rs:250:12 [INFO] [stdout] | [INFO] [stdout] 63 | impl Equation { [INFO] [stdout] | ------------- method in this implementation [INFO] [stdout] ... [INFO] [stdout] 250 | pub fn add_vector(&self, a: &[f32], b: &[f32]) -> Vec { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `first` is never used [INFO] [stdout] --> src/central/transpose_op.rs:127:8 [INFO] [stdout] | [INFO] [stdout] 127 | fn first() { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `show` is never used [INFO] [stdout] --> src/central/transpose_op.rs:133:8 [INFO] [stdout] | [INFO] [stdout] 133 | fn show(list:&mut Vec) { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `operation` is never read [INFO] [stdout] --> src/central/tensor.rs:109:5 [INFO] [stdout] | [INFO] [stdout] 106 | pub struct Tensor { [INFO] [stdout] | ------ field in this struct [INFO] [stdout] ... [INFO] [stdout] 109 | operation: Operation, // The operation that created this Tensor(Nop for basic allocations) [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `Tensor` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished `test` profile [unoptimized + debuginfo] target(s) in 7.40s [INFO] running `Command { std: "docker" "inspect" "27befc1269eb8809dedf0d71d1e4f326bf494b2891fd75a5ad9e0b52f27bfcf7", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "27befc1269eb8809dedf0d71d1e4f326bf494b2891fd75a5ad9e0b52f27bfcf7", kill_on_drop: false }` [INFO] [stdout] 27befc1269eb8809dedf0d71d1e4f326bf494b2891fd75a5ad9e0b52f27bfcf7