[INFO] cloning repository https://github.com/DeadNikol/rust-nn [INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/DeadNikol/rust-nn" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FDeadNikol%2Frust-nn", kill_on_drop: false }` [INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FDeadNikol%2Frust-nn'... [INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }` [INFO] [stdout] c948cdfbbee400c762490925fa3d2adfec3209e9 [INFO] checking DeadNikol/rust-nn against 98fd715edd3a0a5aa8f2041d7e20a3143b0fc0d3 for pr-160235-1 [INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FDeadNikol%2Frust-nn" "/workspace/builds/worker-0-tc1/source", kill_on_drop: false }` [INFO] [stderr] Cloning into '/workspace/builds/worker-0-tc1/source'... [INFO] [stderr] done. [INFO] started tweaking git repo https://github.com/DeadNikol/rust-nn [INFO] finished tweaking git repo https://github.com/DeadNikol/rust-nn [INFO] tweaked toml for git repo https://github.com/DeadNikol/rust-nn written to /workspace/builds/worker-0-tc1/source/Cargo.toml [INFO] validating manifest of git repo https://github.com/DeadNikol/rust-nn on toolchain 98fd715edd3a0a5aa8f2041d7e20a3143b0fc0d3 [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+98fd715edd3a0a5aa8f2041d7e20a3143b0fc0d3" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] crate git repo https://github.com/DeadNikol/rust-nn 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" "+98fd715edd3a0a5aa8f2041d7e20a3143b0fc0d3" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] [stderr] warning: binary `NN` should have a kebab-case name [INFO] [stderr] | [INFO] [stderr] 1 | /workspace/builds/worker-0-tc1/source/target/.../NN [INFO] [stderr] | ^^ [INFO] [stderr] | [INFO] [stderr] = note: `cargo::non_kebab_case_bins` is set to `warn` by default [INFO] [stderr] help: to change the binary name to `nn`, convert `package.name` [INFO] [stderr] --> Cargo.toml:10:8 [INFO] [stderr] | [INFO] [stderr] 10 - name = "NN" [INFO] [stderr] 10 + name = "nn" [INFO] [stderr] | [INFO] [stderr] help: to change the binary name to `nn`, specify `bin.name` [INFO] [stderr] --> Cargo.toml:11:19 [INFO] [stderr] | [INFO] [stderr] 11 ~ version = "0.1.0" [INFO] [stderr] 12 + [[bin]] [INFO] [stderr] 13 + name = "nn" [INFO] [stderr] 14 + path = "src/main.rs" [INFO] [stderr] | [INFO] [stderr] warning: `NN` (manifest) generated 1 warning [INFO] [stderr] Blocking waiting for file lock on package cache [INFO] [stderr] Updating crates.io index [INFO] [stderr] Blocking waiting for file lock on package cache [INFO] [stderr] Downloading crates ... [INFO] [stderr] Downloaded plotters-bitmap v0.3.7 [INFO] [stderr] Downloaded libredox v0.1.17 [INFO] [stderr] Downloaded cc v1.2.63 [INFO] [stderr] Downloaded gif v0.12.0 [INFO] [stderr] Downloaded web-sys v0.3.99 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc1/target:/opt/rustwide/target:rw,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" "-m" "1610612736" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:8683fc1fc2eb5c9ac98e0d076ab094b2ffac7f99da555d2b6a2e27f346de2ec7" "sleep" "infinity", kill_on_drop: false }` [INFO] [stdout] 377c88d82afd3d0d96c7356471852b65947cd278eece38a01e741b762d9b3d19 [INFO] running `Command { std: "docker" "start" "377c88d82afd3d0d96c7356471852b65947cd278eece38a01e741b762d9b3d19", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "377c88d82afd3d0d96c7356471852b65947cd278eece38a01e741b762d9b3d19", kill_on_drop: false }` [INFO] running `Command { std: "docker" "exec" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-w" "/opt/rustwide/workdir" "--user" "0:0" "377c88d82afd3d0d96c7356471852b65947cd278eece38a01e741b762d9b3d19" "/opt/rustwide/cargo-home/bin/cargo" "+98fd715edd3a0a5aa8f2041d7e20a3143b0fc0d3" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "377c88d82afd3d0d96c7356471852b65947cd278eece38a01e741b762d9b3d19", kill_on_drop: false }` [INFO] running `Command { std: "docker" "exec" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-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" "-w" "/opt/rustwide/workdir" "--user" "0:0" "377c88d82afd3d0d96c7356471852b65947cd278eece38a01e741b762d9b3d19" "/opt/rustwide/cargo-home/bin/cargo" "+98fd715edd3a0a5aa8f2041d7e20a3143b0fc0d3" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }` [INFO] [stderr] warning: binary `NN` should have a kebab-case name [INFO] [stderr] | [INFO] [stderr] 1 | /opt/rustwide/target/.../NN [INFO] [stderr] | ^^ [INFO] [stderr] | [INFO] [stderr] = note: `cargo::non_kebab_case_bins` is set to `warn` by default [INFO] [stderr] help: to change the binary name to `nn`, convert `package.name` [INFO] [stderr] --> Cargo.toml:10:8 [INFO] [stderr] | [INFO] [stderr] 10 - name = "NN" [INFO] [stderr] 10 + name = "nn" [INFO] [stderr] | [INFO] [stderr] help: to change the binary name to `nn`, specify `bin.name` [INFO] [stderr] --> Cargo.toml:11:19 [INFO] [stderr] | [INFO] [stderr] 11 ~ version = "0.1.0" [INFO] [stderr] 12 + [[bin]] [INFO] [stderr] 13 + name = "nn" [INFO] [stderr] 14 + path = "src/main.rs" [INFO] [stderr] | [INFO] [stderr] warning: `NN` (manifest) generated 1 warning [INFO] [stderr] Compiling libc v0.2.186 [INFO] [stderr] Compiling pkg-config v0.3.33 [INFO] [stderr] Compiling shlex v2.0.1 [INFO] [stderr] Compiling semver v1.0.28 [INFO] [stderr] Checking simd-adler32 v0.3.9 [INFO] [stderr] Compiling autocfg v1.5.1 [INFO] [stderr] Checking adler2 v2.0.1 [INFO] [stderr] Checking libloading v0.8.9 [INFO] [stderr] Checking bitflags v1.3.2 [INFO] [stderr] Checking color_quant v1.1.0 [INFO] [stderr] Compiling cc v1.2.63 [INFO] [stderr] Checking dlib v0.5.3 [INFO] [stderr] Checking miniz_oxide v0.8.9 [INFO] [stderr] Compiling rustc_version v0.4.1 [INFO] [stderr] Checking fdeflate v0.3.7 [INFO] [stderr] Checking crossbeam-epoch v0.9.18 [INFO] [stderr] Compiling num-traits v0.2.19 [INFO] [stderr] Checking jpeg-decoder v0.3.2 [INFO] [stderr] Checking flate2 v1.1.9 [INFO] [stderr] Compiling pathfinder_simd v0.5.6 [INFO] [stderr] Checking plotters-backend v0.3.7 [INFO] [stderr] Compiling yeslogic-fontconfig-sys v6.0.1 [INFO] [stderr] Checking png v0.17.16 [INFO] [stderr] Checking log v0.4.29 [INFO] [stderr] Checking bytemuck v1.25.0 [INFO] [stderr] Compiling font-kit v0.14.3 [INFO] [stderr] Checking dirs-sys v0.5.0 [INFO] [stderr] Checking same-file v1.0.6 [INFO] [stderr] Checking weezl v0.1.12 [INFO] [stderr] Compiling rayon-core v1.13.0 [INFO] [stderr] Compiling serde_core v1.0.228 [INFO] [stderr] Checking rand_core v0.10.1 [INFO] [stderr] Checking walkdir v2.5.0 [INFO] [stderr] Checking pathfinder_geometry v0.5.1 [INFO] [stderr] Checking dirs v6.0.0 [INFO] [stderr] Checking crossbeam-deque v0.8.6 [INFO] [stderr] Checking float-ord v0.3.2 [INFO] [stderr] Checking memchr v2.8.0 [INFO] [stderr] Checking either v1.16.0 [INFO] [stderr] Checking bitflags v2.11.1 [INFO] [stderr] Checking chacha20 v0.10.0 [INFO] [stderr] Checking chrono v0.4.45 [INFO] [stderr] Checking image v0.24.9 [INFO] [stderr] Checking gif v0.12.0 [INFO] [stderr] Compiling freetype-sys v0.20.1 [INFO] [stderr] Checking getrandom v0.4.2 [INFO] [stderr] Checking plotters-svg v0.3.7 [INFO] [stderr] Checking ttf-parser v0.20.0 [INFO] [stderr] Checking rand v0.10.1 [INFO] [stderr] Checking csv-core v0.1.13 [INFO] [stderr] Checking itertools v0.14.0 [INFO] [stderr] Checking rayon v1.12.0 [INFO] [stderr] Checking plotters-bitmap v0.3.7 [INFO] [stderr] Checking plotters v0.3.7 [INFO] [stderr] Checking csv v1.4.0 [INFO] [stderr] Checking NN v0.1.0 (/opt/rustwide/workdir) [INFO] [stdout] warning: unused imports: `clone` and `env::current_exe` [INFO] [stdout] --> src/tensor.rs:8:5 [INFO] [stdout] | [INFO] [stdout] 8 | clone, [INFO] [stdout] | ^^^^^ [INFO] [stdout] 9 | env::current_exe, [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: `core::panic` [INFO] [stdout] --> src/main.rs:3:5 [INFO] [stdout] | [INFO] [stdout] 3 | use core::panic; [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `cell::RefCell`, `process::Output`, and `rc::Rc` [INFO] [stdout] --> src/main.rs:4:11 [INFO] [stdout] | [INFO] [stdout] 4 | use std::{cell::RefCell, process::Output, rc::Rc, time::Instant}; [INFO] [stdout] | ^^^^^^^^^^^^^ ^^^^^^^^^^^^^^^ ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `Itertools`, `Position::Last`, `iproduct`, and `max` [INFO] [stdout] --> src/main.rs:6:17 [INFO] [stdout] | [INFO] [stdout] 6 | use itertools::{Itertools, Position::Last, iproduct, max}; [INFO] [stdout] | ^^^^^^^^^ ^^^^^^^^^^^^^^ ^^^^^^^^ ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `plotters::style::TextStyle` [INFO] [stdout] --> src/main.rs:7:5 [INFO] [stdout] | [INFO] [stdout] 7 | use plotters::style::TextStyle; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `rand::RngExt` [INFO] [stdout] --> src/main.rs:8:5 [INFO] [stdout] | [INFO] [stdout] 8 | use rand::RngExt; [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `slice::ParallelSlice`, `vec`, and `yield_local` [INFO] [stdout] --> src/main.rs:9:37 [INFO] [stdout] | [INFO] [stdout] 9 | use rayon::{iter::ParallelIterator, slice::ParallelSlice, vec, yield_local}; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ ^^^ ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `Network` [INFO] [stdout] --> src/main.rs:12:28 [INFO] [stdout] | [INFO] [stdout] 12 | use crate::network::{Loss, Network}; [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `Operation` and `Tensor` [INFO] [stdout] --> src/graph.rs:4:21 [INFO] [stdout] | [INFO] [stdout] 4 | use crate::tensor::{Operation, Tensor, TensorData}; [INFO] [stdout] | ^^^^^^^^^ ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `self` [INFO] [stdout] --> src/network.rs:6:22 [INFO] [stdout] | [INFO] [stdout] 6 | batch_iterator::{self, BatchIterator}, [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `clone` and `env::current_exe` [INFO] [stdout] --> src/tensor.rs:8:5 [INFO] [stdout] | [INFO] [stdout] 8 | clone, [INFO] [stdout] | ^^^^^ [INFO] [stdout] 9 | env::current_exe, [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: `core::panic` [INFO] [stdout] --> src/main.rs:3:5 [INFO] [stdout] | [INFO] [stdout] 3 | use core::panic; [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `cell::RefCell`, `process::Output`, and `rc::Rc` [INFO] [stdout] --> src/main.rs:4:11 [INFO] [stdout] | [INFO] [stdout] 4 | use std::{cell::RefCell, process::Output, rc::Rc, time::Instant}; [INFO] [stdout] | ^^^^^^^^^^^^^ ^^^^^^^^^^^^^^^ ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `Itertools`, `Position::Last`, `iproduct`, and `max` [INFO] [stdout] --> src/main.rs:6:17 [INFO] [stdout] | [INFO] [stdout] 6 | use itertools::{Itertools, Position::Last, iproduct, max}; [INFO] [stdout] | ^^^^^^^^^ ^^^^^^^^^^^^^^ ^^^^^^^^ ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `plotters::style::TextStyle` [INFO] [stdout] --> src/main.rs:7:5 [INFO] [stdout] | [INFO] [stdout] 7 | use plotters::style::TextStyle; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `rand::RngExt` [INFO] [stdout] --> src/main.rs:8:5 [INFO] [stdout] | [INFO] [stdout] 8 | use rand::RngExt; [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `slice::ParallelSlice`, `vec`, and `yield_local` [INFO] [stdout] --> src/main.rs:9:37 [INFO] [stdout] | [INFO] [stdout] 9 | use rayon::{iter::ParallelIterator, slice::ParallelSlice, vec, yield_local}; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ ^^^ ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `Network` [INFO] [stdout] --> src/main.rs:12:28 [INFO] [stdout] | [INFO] [stdout] 12 | use crate::network::{Loss, Network}; [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `Operation` and `Tensor` [INFO] [stdout] --> src/graph.rs:4:21 [INFO] [stdout] | [INFO] [stdout] 4 | use crate::tensor::{Operation, Tensor, TensorData}; [INFO] [stdout] | ^^^^^^^^^ ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `self` [INFO] [stdout] --> src/network.rs:6:22 [INFO] [stdout] | [INFO] [stdout] 6 | batch_iterator::{self, BatchIterator}, [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `iter::ParallelIterator` [INFO] [stdout] --> src/main.rs:9:13 [INFO] [stdout] | [INFO] [stdout] 9 | use rayon::{iter::ParallelIterator, slice::ParallelSlice, vec, yield_local}; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `require_grad` [INFO] [stdout] --> src/tensor.rs:583:13 [INFO] [stdout] | [INFO] [stdout] 583 | let require_grad = { [INFO] [stdout] | ^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_require_grad` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `iter::ParallelIterator` [INFO] [stdout] --> src/main.rs:9:13 [INFO] [stdout] | [INFO] [stdout] 9 | use rayon::{iter::ParallelIterator, slice::ParallelSlice, vec, yield_local}; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `final_loss` [INFO] [stdout] --> src/main.rs:114:9 [INFO] [stdout] | [INFO] [stdout] 114 | let final_loss = output.mse(&y); [INFO] [stdout] | ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_final_loss` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `test_pooling` is never used [INFO] [stdout] --> src/main.rs:30:4 [INFO] [stdout] | [INFO] [stdout] 30 | fn test_pooling() { [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 `test_conv` is never used [INFO] [stdout] --> src/main.rs:47:4 [INFO] [stdout] | [INFO] [stdout] 47 | fn test_conv() { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `test_conv_network` is never used [INFO] [stdout] --> src/main.rs:70:4 [INFO] [stdout] | [INFO] [stdout] 70 | fn test_conv_network() { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variants `Conv2d`, `Padding`, `Reshape`, and `MaxPool` are never constructed [INFO] [stdout] --> src/tensor.rs:28:5 [INFO] [stdout] | [INFO] [stdout] 16 | pub enum Operation { [INFO] [stdout] | --------- variants in this enum [INFO] [stdout] ... [INFO] [stdout] 28 | Conv2d( [INFO] [stdout] | ^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 36 | Padding(usize, usize, usize, usize), [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] 37 | Reshape, [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] 38 | /// Содержит в себе значения `(kernel_shape.x, kernel_shape.y)`, `(stride.x, stride.y)` [INFO] [stdout] 39 | MaxPool((usize, usize), (usize, usize)), [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `Operation` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `stride`, `parents`, and `operation` are never read [INFO] [stdout] --> src/tensor.rs:49:9 [INFO] [stdout] | [INFO] [stdout] 43 | pub struct TensorData { [INFO] [stdout] | ---------- fields in this struct [INFO] [stdout] ... [INFO] [stdout] 49 | pub stride: Vec, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 53 | pub parents: Vec>>, // Вектор ссылок на родителей переменной, по которым нужна переменная. Когда мы нажмё... [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 57 | pub operation: Option, // Это операция, которая породила данный тензор. Если его только создали, то у него ни родител... [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `pad`, `grad`, `reshape`, `flatten`, and `max_pool` are never used [INFO] [stdout] --> src/tensor.rs:239:12 [INFO] [stdout] | [INFO] [stdout] 60 | impl TensorData { [INFO] [stdout] | --------------- methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 239 | pub fn pad(&self, padding: (usize, usize, usize, usize)) -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 399 | pub fn grad(&self) -> TensorData { [INFO] [stdout] | ^^^^ [INFO] [stdout] ... [INFO] [stdout] 427 | pub fn reshape(&self, new_shape: Vec) -> TensorData { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 438 | pub fn flatten(&self) -> TensorData { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 446 | pub fn max_pool(&self, kernel_shape: (usize, usize), stride: (usize, usize)) -> TensorData { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: multiple associated items are never used [INFO] [stdout] --> src/tensor.rs:702:12 [INFO] [stdout] | [INFO] [stdout] 498 | impl Tensor { [INFO] [stdout] | ----------- associated items in this implementation [INFO] [stdout] ... [INFO] [stdout] 702 | pub fn pad(&self, padding: (usize, usize, usize, usize)) -> Tensor { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 710 | pub fn grad(&self) -> Tensor { [INFO] [stdout] | ^^^^ [INFO] [stdout] ... [INFO] [stdout] 717 | pub fn conv2d(&self, kernel: &Tensor, stride: (usize, usize)) -> Tensor { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 843 | pub fn reshape(&self, new_shape: Vec) -> Tensor { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 852 | pub fn flatten(&self) -> Tensor { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 861 | pub fn max_pool(&self, kernel_shape: (usize, usize), stride: (usize, usize)) -> Tensor { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 869 | fn add_grad(parent: Rc>, new_grad: Vec) { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 880 | pub fn backward(&self) { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `BatchIterator` is never constructed [INFO] [stdout] --> src/batch_iterator.rs:9:12 [INFO] [stdout] | [INFO] [stdout] 9 | pub struct BatchIterator { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `new`, `reset_indices`, and `num_batches` are never used [INFO] [stdout] --> src/batch_iterator.rs:18:12 [INFO] [stdout] | [INFO] [stdout] 17 | impl BatchIterator { [INFO] [stdout] | ------------------ associated items in this implementation [INFO] [stdout] 18 | pub fn new( [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 35 | pub fn reset_indices(&mut self) { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 41 | pub fn num_batches(&self) -> usize { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Graph` is never constructed [INFO] [stdout] --> src/graph.rs:7:12 [INFO] [stdout] | [INFO] [stdout] 7 | pub struct Graph { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `new`, `build_topo`, and `dfs` are never used [INFO] [stdout] --> src/graph.rs:13:12 [INFO] [stdout] | [INFO] [stdout] 11 | impl Graph { [INFO] [stdout] | ---------- associated items in this implementation [INFO] [stdout] 12 | /// Возвращает новый граф с единственным значением внутри [INFO] [stdout] 13 | pub fn new(node: Rc>) -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 17 | pub fn build_topo(&self) -> Vec>> { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 27 | fn dfs( [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait `Operation` is never used [INFO] [stdout] --> src/layers.rs:3:11 [INFO] [stdout] | [INFO] [stdout] 3 | pub trait Operation { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait `ActivationFunction` is never used [INFO] [stdout] --> src/layers.rs:6:11 [INFO] [stdout] | [INFO] [stdout] 6 | pub trait ActivationFunction { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait `LossFunction` is never used [INFO] [stdout] --> src/layers.rs:9:11 [INFO] [stdout] | [INFO] [stdout] 9 | pub trait LossFunction { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Linear` is never constructed [INFO] [stdout] --> src/layers.rs:13:12 [INFO] [stdout] | [INFO] [stdout] 13 | pub struct Linear { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `new` is never used [INFO] [stdout] --> src/layers.rs:19:12 [INFO] [stdout] | [INFO] [stdout] 18 | impl Linear { [INFO] [stdout] | ----------- associated function in this implementation [INFO] [stdout] 19 | pub fn new(input_features: usize, output_features: usize) -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `ReLu` is never constructed [INFO] [stdout] --> src/layers.rs:33:12 [INFO] [stdout] | [INFO] [stdout] 33 | pub struct ReLu {} [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `new` is never used [INFO] [stdout] --> src/layers.rs:35:12 [INFO] [stdout] | [INFO] [stdout] 34 | impl ReLu { [INFO] [stdout] | --------- associated function in this implementation [INFO] [stdout] 35 | pub fn new() -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `MSE` is never constructed [INFO] [stdout] --> src/layers.rs:45:12 [INFO] [stdout] | [INFO] [stdout] 45 | pub struct MSE {} [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `new` is never used [INFO] [stdout] --> src/layers.rs:47:12 [INFO] [stdout] | [INFO] [stdout] 46 | impl MSE { [INFO] [stdout] | -------- associated function in this implementation [INFO] [stdout] 47 | pub fn new() -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: enum `Loss` is never used [INFO] [stdout] --> src/network.rs:11:10 [INFO] [stdout] | [INFO] [stdout] 11 | pub enum Loss { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Network` is never constructed [INFO] [stdout] --> src/network.rs:16:12 [INFO] [stdout] | [INFO] [stdout] 16 | pub struct Network { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `new`, `Linear`, `Conv2d`, `forward`, and `fit` are never used [INFO] [stdout] --> src/network.rs:21:12 [INFO] [stdout] | [INFO] [stdout] 20 | impl Network { [INFO] [stdout] | ------------ associated items in this implementation [INFO] [stdout] 21 | pub fn new() -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 25 | pub fn Linear(&mut self, n_input: usize, n_output: usize) -> (Tensor, Tensor) { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 44 | pub fn Conv2d( [INFO] [stdout] | ^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 61 | pub fn forward(&self, data: &Tensor, forward_fn: F) -> Tensor [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 68 | pub fn fit( [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `require_grad` [INFO] [stdout] --> src/tensor.rs:583:13 [INFO] [stdout] | [INFO] [stdout] 583 | let require_grad = { [INFO] [stdout] | ^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_require_grad` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `plot_losses` is never used [INFO] [stdout] --> src/network.rs:121:8 [INFO] [stdout] | [INFO] [stdout] 121 | pub fn plot_losses(losses: &[f32], output_path: &str) -> Result<(), Box> { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `SGD` is never constructed [INFO] [stdout] --> src/optims.rs:8:12 [INFO] [stdout] | [INFO] [stdout] 8 | pub struct SGD { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `new` and `backward_step` are never used [INFO] [stdout] --> src/optims.rs:16:12 [INFO] [stdout] | [INFO] [stdout] 15 | impl SGD { [INFO] [stdout] | -------- associated items in this implementation [INFO] [stdout] 16 | pub fn new(parametres: Vec>>, lr: f32, momentum: f32) -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 30 | pub fn backward_step(&mut self) { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `Linear` should have a snake case name [INFO] [stdout] --> src/network.rs:25:12 [INFO] [stdout] | [INFO] [stdout] 25 | pub fn Linear(&mut self, n_input: usize, n_output: usize) -> (Tensor, Tensor) { [INFO] [stdout] | ^^^^^^ help: convert the identifier to snake case: `linear` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(non_snake_case)]` (part of `#[warn(nonstandard_style)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `Conv2d` should have a snake case name [INFO] [stdout] --> src/network.rs:44:12 [INFO] [stdout] | [INFO] [stdout] 44 | pub fn Conv2d( [INFO] [stdout] | ^^^^^^ help: convert the identifier to snake case (notice the capitalization): `conv2d` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `final_loss` [INFO] [stdout] --> src/main.rs:114:9 [INFO] [stdout] | [INFO] [stdout] 114 | let final_loss = output.mse(&y); [INFO] [stdout] | ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_final_loss` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `test_pooling` is never used [INFO] [stdout] --> src/main.rs:30:4 [INFO] [stdout] | [INFO] [stdout] 30 | fn test_pooling() { [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 `test_conv` is never used [INFO] [stdout] --> src/main.rs:47:4 [INFO] [stdout] | [INFO] [stdout] 47 | fn test_conv() { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `test_conv_network` is never used [INFO] [stdout] --> src/main.rs:70:4 [INFO] [stdout] | [INFO] [stdout] 70 | fn test_conv_network() { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variants `Conv2d`, `Padding`, `Reshape`, and `MaxPool` are never constructed [INFO] [stdout] --> src/tensor.rs:28:5 [INFO] [stdout] | [INFO] [stdout] 16 | pub enum Operation { [INFO] [stdout] | --------- variants in this enum [INFO] [stdout] ... [INFO] [stdout] 28 | Conv2d( [INFO] [stdout] | ^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 36 | Padding(usize, usize, usize, usize), [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] 37 | Reshape, [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] 38 | /// Содержит в себе значения `(kernel_shape.x, kernel_shape.y)`, `(stride.x, stride.y)` [INFO] [stdout] 39 | MaxPool((usize, usize), (usize, usize)), [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `Operation` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `stride` is never read [INFO] [stdout] --> src/tensor.rs:49:9 [INFO] [stdout] | [INFO] [stdout] 43 | pub struct TensorData { [INFO] [stdout] | ---------- field in this struct [INFO] [stdout] ... [INFO] [stdout] 49 | pub stride: Vec, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `pad`, `grad`, `reshape`, `flatten`, and `max_pool` are never used [INFO] [stdout] --> src/tensor.rs:239:12 [INFO] [stdout] | [INFO] [stdout] 60 | impl TensorData { [INFO] [stdout] | --------------- methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 239 | pub fn pad(&self, padding: (usize, usize, usize, usize)) -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 399 | pub fn grad(&self) -> TensorData { [INFO] [stdout] | ^^^^ [INFO] [stdout] ... [INFO] [stdout] 427 | pub fn reshape(&self, new_shape: Vec) -> TensorData { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 438 | pub fn flatten(&self) -> TensorData { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 446 | pub fn max_pool(&self, kernel_shape: (usize, usize), stride: (usize, usize)) -> TensorData { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `pad`, `grad`, `conv2d`, `reshape`, `flatten`, and `max_pool` are never used [INFO] [stdout] --> src/tensor.rs:702:12 [INFO] [stdout] | [INFO] [stdout] 498 | impl Tensor { [INFO] [stdout] | ----------- methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 702 | pub fn pad(&self, padding: (usize, usize, usize, usize)) -> Tensor { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 710 | pub fn grad(&self) -> Tensor { [INFO] [stdout] | ^^^^ [INFO] [stdout] ... [INFO] [stdout] 717 | pub fn conv2d(&self, kernel: &Tensor, stride: (usize, usize)) -> Tensor { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 843 | pub fn reshape(&self, new_shape: Vec) -> Tensor { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 852 | pub fn flatten(&self) -> Tensor { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 861 | pub fn max_pool(&self, kernel_shape: (usize, usize), stride: (usize, usize)) -> Tensor { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `num_batches` is never used [INFO] [stdout] --> src/batch_iterator.rs:41:12 [INFO] [stdout] | [INFO] [stdout] 17 | impl BatchIterator { [INFO] [stdout] | ------------------ method in this implementation [INFO] [stdout] ... [INFO] [stdout] 41 | pub fn num_batches(&self) -> usize { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait `Operation` is never used [INFO] [stdout] --> src/layers.rs:3:11 [INFO] [stdout] | [INFO] [stdout] 3 | pub trait Operation { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait `ActivationFunction` is never used [INFO] [stdout] --> src/layers.rs:6:11 [INFO] [stdout] | [INFO] [stdout] 6 | pub trait ActivationFunction { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait `LossFunction` is never used [INFO] [stdout] --> src/layers.rs:9:11 [INFO] [stdout] | [INFO] [stdout] 9 | pub trait LossFunction { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Linear` is never constructed [INFO] [stdout] --> src/layers.rs:13:12 [INFO] [stdout] | [INFO] [stdout] 13 | pub struct Linear { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `new` is never used [INFO] [stdout] --> src/layers.rs:19:12 [INFO] [stdout] | [INFO] [stdout] 18 | impl Linear { [INFO] [stdout] | ----------- associated function in this implementation [INFO] [stdout] 19 | pub fn new(input_features: usize, output_features: usize) -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `ReLu` is never constructed [INFO] [stdout] --> src/layers.rs:33:12 [INFO] [stdout] | [INFO] [stdout] 33 | pub struct ReLu {} [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `new` is never used [INFO] [stdout] --> src/layers.rs:35:12 [INFO] [stdout] | [INFO] [stdout] 34 | impl ReLu { [INFO] [stdout] | --------- associated function in this implementation [INFO] [stdout] 35 | pub fn new() -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `MSE` is never constructed [INFO] [stdout] --> src/layers.rs:45:12 [INFO] [stdout] | [INFO] [stdout] 45 | pub struct MSE {} [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `new` is never used [INFO] [stdout] --> src/layers.rs:47:12 [INFO] [stdout] | [INFO] [stdout] 46 | impl MSE { [INFO] [stdout] | -------- associated function in this implementation [INFO] [stdout] 47 | pub fn new() -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `Conv2d` is never used [INFO] [stdout] --> src/network.rs:44:12 [INFO] [stdout] | [INFO] [stdout] 20 | impl Network { [INFO] [stdout] | ------------ method in this implementation [INFO] [stdout] ... [INFO] [stdout] 44 | pub fn Conv2d( [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `Linear` should have a snake case name [INFO] [stdout] --> src/network.rs:25:12 [INFO] [stdout] | [INFO] [stdout] 25 | pub fn Linear(&mut self, n_input: usize, n_output: usize) -> (Tensor, Tensor) { [INFO] [stdout] | ^^^^^^ help: convert the identifier to snake case: `linear` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(non_snake_case)]` (part of `#[warn(nonstandard_style)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `Conv2d` should have a snake case name [INFO] [stdout] --> src/network.rs:44:12 [INFO] [stdout] | [INFO] [stdout] 44 | pub fn Conv2d( [INFO] [stdout] | ^^^^^^ help: convert the identifier to snake case (notice the capitalization): `conv2d` [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] warning: unused dependency `csv` [INFO] [stderr] --> Cargo.toml:2:1 [INFO] [stderr] | [INFO] [stderr] 2 | csv = "1.4.0" [INFO] [stderr] | ^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `cargo::unused_dependencies` is set to `warn` by default [INFO] [stderr] help: consider removing the dependency on `csv` [INFO] [stderr] warning: `NN` (manifest) generated 1 warning [INFO] [stderr] Finished `dev` profile [unoptimized + debuginfo] target(s) in 20.20s [INFO] running `Command { std: "docker" "inspect" "377c88d82afd3d0d96c7356471852b65947cd278eece38a01e741b762d9b3d19", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "377c88d82afd3d0d96c7356471852b65947cd278eece38a01e741b762d9b3d19", kill_on_drop: false }` [INFO] [stdout] 377c88d82afd3d0d96c7356471852b65947cd278eece38a01e741b762d9b3d19