[INFO] cloning repository https://github.com/LinusThorsell/rustensor
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/LinusThorsell/rustensor" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FLinusThorsell%2Frustensor", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FLinusThorsell%2Frustensor'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] 12e60d25db8437dff12dea329d215733b0153f55
[INFO] checking LinusThorsell/rustensor against e3d12f3322cb00126b2208c6b9df3ac4467951f5 for pr-159706
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FLinusThorsell%2Frustensor" "/workspace/builds/worker-4-tc2/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-4-tc2/source'...
[INFO] [stderr] done.
[INFO] removed /workspace/builds/worker-4-tc2/source/rust-toolchain.toml
[INFO] started tweaking git repo https://github.com/LinusThorsell/rustensor
[INFO] finished tweaking git repo https://github.com/LinusThorsell/rustensor
[INFO] tweaked toml for git repo https://github.com/LinusThorsell/rustensor written to /workspace/builds/worker-4-tc2/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/LinusThorsell/rustensor on toolchain e3d12f3322cb00126b2208c6b9df3ac4467951f5
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+e3d12f3322cb00126b2208c6b9df3ac4467951f5" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate git repo https://github.com/LinusThorsell/rustensor 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" "+e3d12f3322cb00126b2208c6b9df3ac4467951f5" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Blocking waiting for file lock on package cache
[INFO] [stderr]     Blocking waiting for file lock on package cache
[ERROR] error running command: no output for 300 seconds
[INFO] checking LinusThorsell/rustensor against e3d12f3322cb00126b2208c6b9df3ac4467951f5 for pr-159706
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FLinusThorsell%2Frustensor" "/workspace/builds/worker-4-tc2/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-4-tc2/source'...
[INFO] [stderr] done.
[INFO] removed /workspace/builds/worker-4-tc2/source/rust-toolchain.toml
[INFO] started tweaking git repo https://github.com/LinusThorsell/rustensor
[INFO] finished tweaking git repo https://github.com/LinusThorsell/rustensor
[INFO] tweaked toml for git repo https://github.com/LinusThorsell/rustensor written to /workspace/builds/worker-4-tc2/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/LinusThorsell/rustensor on toolchain e3d12f3322cb00126b2208c6b9df3ac4467951f5
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+e3d12f3322cb00126b2208c6b9df3ac4467951f5" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate git repo https://github.com/LinusThorsell/rustensor 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" "+e3d12f3322cb00126b2208c6b9df3ac4467951f5" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Blocking waiting for file lock on package cache
[INFO] [stderr]     Blocking waiting for file lock on package cache
[INFO] [stderr]  Downloading crates ...
[INFO] [stderr]   Downloaded syn v2.0.95
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc2/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:00c5645b54fe3ce5dae1417175e3c7fb6a6646c021d554ecd63a097b8b9f3602" "sleep" "infinity", kill_on_drop: false }`
[INFO] [stdout] 02389fccb2f915b276097f386f9658700cf1ff6c1770fb8a9571900b602a57b3
[INFO] running `Command { std: "docker" "start" "02389fccb2f915b276097f386f9658700cf1ff6c1770fb8a9571900b602a57b3", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "02389fccb2f915b276097f386f9658700cf1ff6c1770fb8a9571900b602a57b3", 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" "02389fccb2f915b276097f386f9658700cf1ff6c1770fb8a9571900b602a57b3" "/opt/rustwide/cargo-home/bin/cargo" "+e3d12f3322cb00126b2208c6b9df3ac4467951f5" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "02389fccb2f915b276097f386f9658700cf1ff6c1770fb8a9571900b602a57b3", 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" "02389fccb2f915b276097f386f9658700cf1ff6c1770fb8a9571900b602a57b3" "/opt/rustwide/cargo-home/bin/cargo" "+e3d12f3322cb00126b2208c6b9df3ac4467951f5" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stderr]    Compiling proc-macro2 v1.0.92
[INFO] [stderr]    Compiling libc v0.2.169
[INFO] [stderr]     Checking getrandom v0.2.15
[INFO] [stderr]    Compiling quote v1.0.38
[INFO] [stderr]     Checking rand_core v0.6.4
[INFO] [stderr]    Compiling syn v2.0.95
[INFO] [stderr]    Compiling zerocopy-derive v0.7.35
[INFO] [stderr]     Checking zerocopy v0.7.35
[INFO] [stderr]     Checking ppv-lite86 v0.2.20
[INFO] [stderr]     Checking rand_chacha v0.3.1
[INFO] [stderr]     Checking rand v0.8.5
[INFO] [stderr]     Checking rustensor v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unused import: `Linear`
[INFO] [stdout]  --> src/main.rs:1:50
[INFO] [stdout]   |
[INFO] [stdout] 1 | use rustensor::activations::{ActivationFunction, Linear, ReLU};
[INFO] [stdout]   |                                                  ^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0782]: expected a type, found a trait
[INFO] [stdout]   --> src/main.rs:36:70
[INFO] [stdout]    |
[INFO] [stdout] 36 |     fn backprop_hidden<U: ActivationFunction>(&mut self, next_layer: Layer<Dense<U>>);
[INFO] [stdout]    |                                                                      ^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `Layer<Dense<U>>` is dyn-incompatible, otherwise a trait object could be used
[INFO] [stdout] help: use a new generic type parameter, constrained by `Layer<Dense<U>>`
[INFO] [stdout]    |
[INFO] [stdout] 36 -     fn backprop_hidden<U: ActivationFunction>(&mut self, next_layer: Layer<Dense<U>>);
[INFO] [stdout] 36 +     fn backprop_hidden<U: ActivationFunction, T: Layer<Dense<U>>>(&mut self, next_layer: T);
[INFO] [stdout]    |
[INFO] [stdout] help: you can also use an opaque type, but users won't be able to specify the type parameter when calling the `fn`, having to rely exclusively on type inference
[INFO] [stdout]    |
[INFO] [stdout] 36 |     fn backprop_hidden<U: ActivationFunction>(&mut self, next_layer: impl Layer<Dense<U>>);
[INFO] [stdout]    |                                                                      ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0782]: expected a type, found a trait
[INFO] [stdout]   --> src/main.rs:92:71
[INFO] [stdout]    |
[INFO] [stdout] 92 |     fn backprop_hidden<U: ActivationFunction>(&mut self, next_layer: &Layer<Dense<U>>) {
[INFO] [stdout]    |                                                                       ^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `Layer<Dense<U>>` is dyn-incompatible, otherwise a trait object could be used
[INFO] [stdout] help: use a new generic type parameter, constrained by `Layer<Dense<U>>`
[INFO] [stdout]    |
[INFO] [stdout] 92 -     fn backprop_hidden<U: ActivationFunction>(&mut self, next_layer: &Layer<Dense<U>>) {
[INFO] [stdout] 92 +     fn backprop_hidden<U: ActivationFunction, T: Layer<Dense<U>>>(&mut self, next_layer: &T) {
[INFO] [stdout]    |
[INFO] [stdout] help: you can also use an opaque type, but users won't be able to specify the type parameter when calling the `fn`, having to rely exclusively on type inference
[INFO] [stdout]    |
[INFO] [stdout] 92 |     fn backprop_hidden<U: ActivationFunction>(&mut self, next_layer: &impl Layer<Dense<U>>) {
[INFO] [stdout]    |                                                                       ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Linear`
[INFO] [stdout]  --> src/main.rs:1:50
[INFO] [stdout]   |
[INFO] [stdout] 1 | use rustensor::activations::{ActivationFunction, Linear, ReLU};
[INFO] [stdout]   |                                                  ^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0782]: expected a type, found a trait
[INFO] [stdout]   --> src/main.rs:36:70
[INFO] [stdout]    |
[INFO] [stdout] 36 |     fn backprop_hidden<U: ActivationFunction>(&mut self, next_layer: Layer<Dense<U>>);
[INFO] [stdout]    |                                                                      ^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `Layer<Dense<U>>` is dyn-incompatible, otherwise a trait object could be used
[INFO] [stdout] help: use a new generic type parameter, constrained by `Layer<Dense<U>>`
[INFO] [stdout]    |
[INFO] [stdout] 36 -     fn backprop_hidden<U: ActivationFunction>(&mut self, next_layer: Layer<Dense<U>>);
[INFO] [stdout] 36 +     fn backprop_hidden<U: ActivationFunction, T: Layer<Dense<U>>>(&mut self, next_layer: T);
[INFO] [stdout]    |
[INFO] [stdout] help: you can also use an opaque type, but users won't be able to specify the type parameter when calling the `fn`, having to rely exclusively on type inference
[INFO] [stdout]    |
[INFO] [stdout] 36 |     fn backprop_hidden<U: ActivationFunction>(&mut self, next_layer: impl Layer<Dense<U>>);
[INFO] [stdout]    |                                                                      ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0782]: expected a type, found a trait
[INFO] [stdout]   --> src/main.rs:92:71
[INFO] [stdout]    |
[INFO] [stdout] 92 |     fn backprop_hidden<U: ActivationFunction>(&mut self, next_layer: &Layer<Dense<U>>) {
[INFO] [stdout]    |                                                                       ^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `Layer<Dense<U>>` is dyn-incompatible, otherwise a trait object could be used
[INFO] [stdout] help: use a new generic type parameter, constrained by `Layer<Dense<U>>`
[INFO] [stdout]    |
[INFO] [stdout] 92 -     fn backprop_hidden<U: ActivationFunction>(&mut self, next_layer: &Layer<Dense<U>>) {
[INFO] [stdout] 92 +     fn backprop_hidden<U: ActivationFunction, T: Layer<Dense<U>>>(&mut self, next_layer: &T) {
[INFO] [stdout]    |
[INFO] [stdout] help: you can also use an opaque type, but users won't be able to specify the type parameter when calling the `fn`, having to rely exclusively on type inference
[INFO] [stdout]    |
[INFO] [stdout] 92 |     fn backprop_hidden<U: ActivationFunction>(&mut self, next_layer: &impl Layer<Dense<U>>) {
[INFO] [stdout]    |                                                                       ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `input_layer`
[INFO] [stdout]    --> src/main.rs:178:9
[INFO] [stdout]     |
[INFO] [stdout] 178 |     let input_layer = Dense::new(1, 2, ReLU);
[INFO] [stdout]     |         ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_input_layer`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `hidden_layer_1`
[INFO] [stdout]    --> src/main.rs:179:9
[INFO] [stdout]     |
[INFO] [stdout] 179 |     let hidden_layer_1 = Dense::new(2, 2, ReLU);
[INFO] [stdout]     |         ^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_hidden_layer_1`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `hidden_layer_2`
[INFO] [stdout]    --> src/main.rs:180:9
[INFO] [stdout]     |
[INFO] [stdout] 180 |     let hidden_layer_2 = Dense::new(2, 2, ReLU);
[INFO] [stdout]     |         ^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_hidden_layer_2`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `output_layer`
[INFO] [stdout]    --> src/main.rs:181:9
[INFO] [stdout]     |
[INFO] [stdout] 181 |     let output_layer = Dense::new(2, 1, ReLU);
[INFO] [stdout]     |         ^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_output_layer`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `learning_rate`
[INFO] [stdout]    --> src/main.rs:190:9
[INFO] [stdout]     |
[INFO] [stdout] 190 |     let learning_rate = 0.001;
[INFO] [stdout]     |         ^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_learning_rate`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `epochs`
[INFO] [stdout]    --> src/main.rs:191:9
[INFO] [stdout]     |
[INFO] [stdout] 191 |     let epochs = 250;
[INFO] [stdout]     |         ^^^^^^ help: if this is intentional, prefix it with an underscore: `_epochs`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `inputs`
[INFO] [stdout]    --> src/main.rs:193:9
[INFO] [stdout]     |
[INFO] [stdout] 193 |     let inputs = vec![vec![0.0], vec![1.0], vec![2.0], vec![3.0], vec![4.0], vec![5.0], vec![6.0], vec![7.0], vec![8.0], vec![9.0]];
[INFO] [stdout]     |         ^^^^^^ help: if this is intentional, prefix it with an underscore: `_inputs`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `outputs`
[INFO] [stdout]    --> src/main.rs:194:9
[INFO] [stdout]     |
[INFO] [stdout] 194 |     let outputs = vec![vec![3.0], vec![7.0], vec![11.0], vec![15.0], vec![19.0], vec![23.0], vec![27.0], vec![31.0], vec![35.0], ve...
[INFO] [stdout]     |         ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_outputs`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] For more information about this error, try `rustc --explain E0782`.
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `rustensor` (bin "rustensor" test) due to 2 previous errors; 9 warnings emitted
[INFO] [stderr] warning: build failed, waiting for other jobs to finish...
[INFO] [stdout] warning: unused variable: `input_layer`
[INFO] [stdout]    --> src/main.rs:178:9
[INFO] [stdout]     |
[INFO] [stdout] 178 |     let input_layer = Dense::new(1, 2, ReLU);
[INFO] [stdout]     |         ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_input_layer`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `hidden_layer_1`
[INFO] [stdout]    --> src/main.rs:179:9
[INFO] [stdout]     |
[INFO] [stdout] 179 |     let hidden_layer_1 = Dense::new(2, 2, ReLU);
[INFO] [stdout]     |         ^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_hidden_layer_1`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `hidden_layer_2`
[INFO] [stdout]    --> src/main.rs:180:9
[INFO] [stdout]     |
[INFO] [stdout] 180 |     let hidden_layer_2 = Dense::new(2, 2, ReLU);
[INFO] [stdout]     |         ^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_hidden_layer_2`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `output_layer`
[INFO] [stdout]    --> src/main.rs:181:9
[INFO] [stdout]     |
[INFO] [stdout] 181 |     let output_layer = Dense::new(2, 1, ReLU);
[INFO] [stdout]     |         ^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_output_layer`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `learning_rate`
[INFO] [stdout]    --> src/main.rs:190:9
[INFO] [stdout]     |
[INFO] [stdout] 190 |     let learning_rate = 0.001;
[INFO] [stdout]     |         ^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_learning_rate`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `epochs`
[INFO] [stdout]    --> src/main.rs:191:9
[INFO] [stdout]     |
[INFO] [stdout] 191 |     let epochs = 250;
[INFO] [stdout]     |         ^^^^^^ help: if this is intentional, prefix it with an underscore: `_epochs`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `inputs`
[INFO] [stdout]    --> src/main.rs:193:9
[INFO] [stdout]     |
[INFO] [stdout] 193 |     let inputs = vec![vec![0.0], vec![1.0], vec![2.0], vec![3.0], vec![4.0], vec![5.0], vec![6.0], vec![7.0], vec![8.0], vec![9.0]];
[INFO] [stdout]     |         ^^^^^^ help: if this is intentional, prefix it with an underscore: `_inputs`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `outputs`
[INFO] [stdout]    --> src/main.rs:194:9
[INFO] [stdout]     |
[INFO] [stdout] 194 |     let outputs = vec![vec![3.0], vec![7.0], vec![11.0], vec![15.0], vec![19.0], vec![23.0], vec![27.0], vec![31.0], vec![35.0], ve...
[INFO] [stdout]     |         ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_outputs`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] For more information about this error, try `rustc --explain E0782`.
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `rustensor` (bin "rustensor") due to 2 previous errors; 9 warnings emitted
[INFO] running `Command { std: "docker" "inspect" "02389fccb2f915b276097f386f9658700cf1ff6c1770fb8a9571900b602a57b3", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "02389fccb2f915b276097f386f9658700cf1ff6c1770fb8a9571900b602a57b3", kill_on_drop: false }`
[INFO] [stdout] 02389fccb2f915b276097f386f9658700cf1ff6c1770fb8a9571900b602a57b3
