[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 try#ddcf048784667508cd676fef4667f88ae15628a3 for pr-148271
[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 ddcf048784667508cd676fef4667f88ae15628a3
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+ddcf048784667508cd676fef4667f88ae15628a3" "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" "+ddcf048784667508cd676fef4667f88ae15628a3" "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] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-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" "+ddcf048784667508cd676fef4667f88ae15628a3" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] bca6c7ac1e349f4cc5436081069b5834ae3ad23ba83225316253575e479ed4df
[INFO] running `Command { std: "docker" "start" "-a" "bca6c7ac1e349f4cc5436081069b5834ae3ad23ba83225316253575e479ed4df", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "bca6c7ac1e349f4cc5436081069b5834ae3ad23ba83225316253575e479ed4df", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "bca6c7ac1e349f4cc5436081069b5834ae3ad23ba83225316253575e479ed4df", kill_on_drop: false }`
[INFO] [stdout] bca6c7ac1e349f4cc5436081069b5834ae3ad23ba83225316253575e479ed4df
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-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" "+ddcf048784667508cd676fef4667f88ae15628a3" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] bced21b701def957f0cf268c9f4de67f5f42beb2d02558683d5a6deae2e739af
[INFO] running `Command { std: "docker" "start" "-a" "bced21b701def957f0cf268c9f4de67f5f42beb2d02558683d5a6deae2e739af", kill_on_drop: false }`
[INFO] [stderr]    Compiling proc-macro2 v1.0.92
[INFO] [stderr]    Compiling unicode-ident v1.0.14
[INFO] [stderr]    Compiling libc v0.2.169
[INFO] [stderr]    Compiling quote v1.0.38
[INFO] [stderr]     Checking getrandom v0.2.15
[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 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], vec![39....
[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 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], vec![39....
[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" "bced21b701def957f0cf268c9f4de67f5f42beb2d02558683d5a6deae2e739af", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "bced21b701def957f0cf268c9f4de67f5f42beb2d02558683d5a6deae2e739af", kill_on_drop: false }`
[INFO] [stdout] bced21b701def957f0cf268c9f4de67f5f42beb2d02558683d5a6deae2e739af
