[INFO] crate juice 0.2.3 is already in cache [INFO] testing juice-0.2.3 against 1.38.0 for beta-1.39-1 [INFO] extracting crate juice 0.2.3 into work/builds/worker-0/source [INFO] validating manifest of crates.io crate juice 0.2.3 on toolchain 1.38.0 [INFO] running `"/big/crater/work/cargo-home/bin/cargo" "+1.38.0" "read-manifest" "--manifest-path" "Cargo.toml"` [INFO] started tweaking crates.io crate juice 0.2.3 [INFO] finished tweaking crates.io crate juice 0.2.3 [INFO] tweaked toml for crates.io crate juice 0.2.3 written to work/builds/worker-0/source/Cargo.toml [INFO] running `"/big/crater/work/cargo-home/bin/cargo" "+1.38.0" "generate-lockfile" "--manifest-path" "Cargo.toml" "-Zno-index-update"` [INFO] [stderr] Blocking waiting for file lock on package cache [INFO] running `"/big/crater/work/cargo-home/bin/cargo" "+1.38.0" "fetch" "--locked" "--manifest-path" "Cargo.toml"` [INFO] [stderr] Blocking waiting for file lock on package cache [INFO] running `"docker" "create" "-v" "/big/crater/work/builds/worker-0/target:/opt/rustwide/target:rw,Z" "-v" "/big/crater/work/builds/worker-0/source:/opt/rustwide/workdir:ro,Z" "-v" "/big/crater/work/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/big/crater/work/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "MAP_USER_ID=1000" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=warn" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--network" "none" "rustops/crates-build-env" "/opt/rustwide/cargo-home/bin/cargo" "+1.38.0" "build" "--frozen"` [INFO] [stdout] 6f9bff7e168c9376f0bb0099b67b8c9d26f1257dee3517636420a5ff49e3c364 [INFO] running `"docker" "start" "-a" "6f9bff7e168c9376f0bb0099b67b8c9d26f1257dee3517636420a5ff49e3c364"` [INFO] [stderr] Compiling rblas v0.0.13 [INFO] [stderr] Compiling byteorder v0.4.2 [INFO] [stderr] Compiling capnp v0.8.17 [INFO] [stderr] Compiling timeit v0.1.2 [INFO] [stderr] Compiling coaster v0.1.0 [INFO] [stderr] Compiling capnpc v0.8.9 [INFO] [stderr] Compiling coaster-nn v0.4.1 [INFO] [stderr] Compiling coaster-blas v0.2.0 [INFO] [stderr] Compiling juice v0.2.3 (/opt/rustwide/workdir) [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/layer.rs:38:21 [INFO] [stderr] | [INFO] [stderr] 38 | pub worker: Box>, [INFO] [stderr] | ^^^^^^^^^ help: use `dyn`: `dyn ILayer` [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(bare_trait_objects)]` on by default [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/layer.rs:226:29 [INFO] [stderr] | [INFO] [stderr] 226 | let backend: Rc> = self.backend.clone(); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn IBackend` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/layer.rs:252:25 [INFO] [stderr] | [INFO] [stderr] 252 | let backend: Rc> = self.backend.clone(); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn IBackend` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/layer.rs:926:72 [INFO] [stderr] | [INFO] [stderr] 926 | fn worker_from_config(backend: Rc, config: &LayerConfig) -> Box> { [INFO] [stderr] | ^^^^^^^^^ help: use `dyn`: `dyn ILayer` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/layer.rs:1271:34 [INFO] [stderr] | [INFO] [stderr] 1271 | impl fmt::Debug for ILayer { [INFO] [stderr] | ^^^^^^^^^ help: use `dyn`: `dyn ILayer` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/layers/container/sequential.rs:168:30 [INFO] [stderr] | [INFO] [stderr] 168 | let ibackend: Rc> = backend; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn IBackend` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/solver/mod.rs:25:21 [INFO] [stderr] | [INFO] [stderr] 25 | pub worker: Box>, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn ISolver` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/solver/mod.rs:133:66 [INFO] [stderr] | [INFO] [stderr] 133 | impl> ::std::fmt::Debug for ISolver { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn ISolver` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/solver/mod.rs:342:17 [INFO] [stderr] | [INFO] [stderr] 342 | -> Box> { [INFO] [stderr] | ^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn ISolver` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/solver/mod.rs:363:17 [INFO] [stderr] | [INFO] [stderr] 363 | -> Box> { [INFO] [stderr] | ^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn ISolver` [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'juice_capnp::layer::Builder::<'a>::borrow': use reborrow() instead [INFO] [stderr] --> src/layer.rs:845:44 [INFO] [stderr] | [INFO] [stderr] 845 | let mut layer_config = builder.borrow().init_config(); [INFO] [stderr] | ^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(deprecated)]` on by default [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'juice_capnp::layer::Builder::<'a>::borrow': use reborrow() instead [INFO] [stderr] --> src/layer.rs:850:39 [INFO] [stderr] | [INFO] [stderr] 850 | let mut weights = builder.borrow().init_weights_data(self.learnable_weights_names().len() as u32); [INFO] [stderr] | ^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'capnp::struct_list::Builder::<'a, T>::borrow': use reborrow() instead [INFO] [stderr] --> src/layer.rs:855:48 [INFO] [stderr] | [INFO] [stderr] 855 | let mut capnp_weight = weights.borrow().get(i as u32); [INFO] [stderr] | ^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'juice_capnp::tensor::Builder::<'a>::borrow': use reborrow() instead [INFO] [stderr] --> src/layer.rs:862:51 [INFO] [stderr] | [INFO] [stderr] 862 | let mut tensor_shape = tensor.borrow().init_shape(weight_lock.desc().len() as u32); [INFO] [stderr] | ^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'juice_capnp::tensor::Builder::<'a>::borrow': use reborrow() instead [INFO] [stderr] --> src/layer.rs:870:50 [INFO] [stderr] | [INFO] [stderr] 870 | let mut tensor_data = tensor.borrow().init_data(native_slice.len() as u32); [INFO] [stderr] | ^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'juice_capnp::layer_config::layer_type::Builder::<'a>::borrow': use reborrow() instead [INFO] [stderr] --> src/layer.rs:1360:46 [INFO] [stderr] | [INFO] [stderr] 1360 | let ref mut config = builder.borrow().init_linear(); [INFO] [stderr] | ^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'juice_capnp::layer_config::layer_type::Builder::<'a>::borrow': use reborrow() instead [INFO] [stderr] --> src/layer.rs:1365:46 [INFO] [stderr] | [INFO] [stderr] 1365 | let ref mut config = builder.borrow().init_sequential(); [INFO] [stderr] | ^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'juice_capnp::layer_config::layer_type::Builder::<'a>::borrow': use reborrow() instead [INFO] [stderr] --> src/layer.rs:1373:46 [INFO] [stderr] | [INFO] [stderr] 1373 | let ref mut config = builder.borrow().init_negative_log_likelihood(); [INFO] [stderr] | ^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'juice_capnp::layer_config::layer_type::Builder::<'a>::borrow': use reborrow() instead [INFO] [stderr] --> src/layer.rs:1377:46 [INFO] [stderr] | [INFO] [stderr] 1377 | let ref mut config = builder.borrow().init_reshape(); [INFO] [stderr] | ^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'juice_capnp::layer_config::layer_type::Builder::<'a>::borrow': use reborrow() instead [INFO] [stderr] --> src/layer.rs:1381:46 [INFO] [stderr] | [INFO] [stderr] 1381 | let ref mut config = builder.borrow().init_convolution(); [INFO] [stderr] | ^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'juice_capnp::layer_config::layer_type::Builder::<'a>::borrow': use reborrow() instead [INFO] [stderr] --> src/layer.rs:1385:46 [INFO] [stderr] | [INFO] [stderr] 1385 | let ref mut config = builder.borrow().init_pooling(); [INFO] [stderr] | ^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'juice_capnp::layer_config::Builder::<'a>::borrow': use reborrow() instead [INFO] [stderr] --> src/layer.rs:1508:42 [INFO] [stderr] | [INFO] [stderr] 1508 | let mut layer_type = builder.borrow().init_layer_type(); [INFO] [stderr] | ^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'juice_capnp::layer_config::Builder::<'a>::borrow': use reborrow() instead [INFO] [stderr] --> src/layer.rs:1512:39 [INFO] [stderr] | [INFO] [stderr] 1512 | let mut outputs = builder.borrow().init_outputs(self.outputs.len() as u32); [INFO] [stderr] | ^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'juice_capnp::layer_config::Builder::<'a>::borrow': use reborrow() instead [INFO] [stderr] --> src/layer.rs:1518:38 [INFO] [stderr] | [INFO] [stderr] 1518 | let mut inputs = builder.borrow().init_inputs(self.inputs.len() as u32); [INFO] [stderr] | ^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'juice_capnp::layer_config::Builder::<'a>::borrow': use reborrow() instead [INFO] [stderr] --> src/layer.rs:1524:38 [INFO] [stderr] | [INFO] [stderr] 1524 | let mut params = builder.borrow().init_params(self.params.len() as u32); [INFO] [stderr] | ^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'capnp::struct_list::Builder::<'a, T>::borrow': use reborrow() instead [INFO] [stderr] --> src/layer.rs:1526:50 [INFO] [stderr] | [INFO] [stderr] 1526 | let ref mut capnp_param = params.borrow().get(i as u32); [INFO] [stderr] | ^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'juice_capnp::layer_config::Builder::<'a>::borrow': use reborrow() instead [INFO] [stderr] --> src/layer.rs:1531:46 [INFO] [stderr] | [INFO] [stderr] 1531 | let mut propagate_down = builder.borrow().init_propagate_down(self.propagate_down.len() as u32); [INFO] [stderr] | ^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'juice_capnp::convolution_config::Builder::<'a>::borrow': use reborrow() instead [INFO] [stderr] --> src/layers/common/convolution.rs:271:17 [INFO] [stderr] | [INFO] [stderr] 271 | builder.borrow().set_num_output(self.num_output as u64); [INFO] [stderr] | ^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'juice_capnp::convolution_config::Builder::<'a>::borrow': use reborrow() instead [INFO] [stderr] --> src/layers/common/convolution.rs:273:44 [INFO] [stderr] | [INFO] [stderr] 273 | let mut filter_shape = builder.borrow().init_filter_shape(self.filter_shape.len() as u32); [INFO] [stderr] | ^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'juice_capnp::convolution_config::Builder::<'a>::borrow': use reborrow() instead [INFO] [stderr] --> src/layers/common/convolution.rs:279:38 [INFO] [stderr] | [INFO] [stderr] 279 | let mut stride = builder.borrow().init_stride(self.stride.len() as u32); [INFO] [stderr] | ^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'juice_capnp::convolution_config::Builder::<'a>::borrow': use reborrow() instead [INFO] [stderr] --> src/layers/common/convolution.rs:285:39 [INFO] [stderr] | [INFO] [stderr] 285 | let mut padding = builder.borrow().init_padding(self.padding.len() as u32); [INFO] [stderr] | ^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'juice_capnp::linear_config::Builder::<'a>::borrow': use reborrow() instead [INFO] [stderr] --> src/layers/common/linear.rs:204:17 [INFO] [stderr] | [INFO] [stderr] 204 | builder.borrow().set_output_size(self.output_size as u64); [INFO] [stderr] | ^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'juice_capnp::pooling_config::Builder::<'a>::borrow': use reborrow() instead [INFO] [stderr] --> src/layers/common/pooling.rs:197:17 [INFO] [stderr] | [INFO] [stderr] 197 | builder.borrow().set_mode(self.mode.to_capnp()); [INFO] [stderr] | ^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'juice_capnp::pooling_config::Builder::<'a>::borrow': use reborrow() instead [INFO] [stderr] --> src/layers/common/pooling.rs:199:44 [INFO] [stderr] | [INFO] [stderr] 199 | let mut filter_shape = builder.borrow().init_filter_shape(self.filter_shape.len() as u32); [INFO] [stderr] | ^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'juice_capnp::pooling_config::Builder::<'a>::borrow': use reborrow() instead [INFO] [stderr] --> src/layers/common/pooling.rs:205:38 [INFO] [stderr] | [INFO] [stderr] 205 | let mut stride = builder.borrow().init_stride(self.stride.len() as u32); [INFO] [stderr] | ^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'juice_capnp::pooling_config::Builder::<'a>::borrow': use reborrow() instead [INFO] [stderr] --> src/layers/common/pooling.rs:211:39 [INFO] [stderr] | [INFO] [stderr] 211 | let mut padding = builder.borrow().init_padding(self.padding.len() as u32); [INFO] [stderr] | ^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'juice_capnp::reshape_config::Builder::<'a>::borrow': use reborrow() instead [INFO] [stderr] --> src/layers/utility/reshape.rs:105:33 [INFO] [stderr] | [INFO] [stderr] 105 | let mut shape = builder.borrow().init_shape(self.shape.len() as u32); [INFO] [stderr] | ^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'juice_capnp::shaped_input::Builder::<'a>::borrow': use reborrow() instead [INFO] [stderr] --> src/layers/container/sequential.rs:413:38 [INFO] [stderr] | [INFO] [stderr] 413 | let mut dimensions = builder.borrow().init_shape(shape.len() as u32); [INFO] [stderr] | ^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'juice_capnp::sequential_config::Builder::<'a>::borrow': use reborrow() instead [INFO] [stderr] --> src/layers/container/sequential.rs:426:38 [INFO] [stderr] | [INFO] [stderr] 426 | let mut layers = builder.borrow().init_layers(self.layers.len() as u32); [INFO] [stderr] | ^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'capnp::struct_list::Builder::<'a, T>::borrow': use reborrow() instead [INFO] [stderr] --> src/layers/container/sequential.rs:428:47 [INFO] [stderr] | [INFO] [stderr] 428 | let mut layer_config = layers.borrow().get(i as u32); [INFO] [stderr] | ^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'juice_capnp::sequential_config::Builder::<'a>::borrow': use reborrow() instead [INFO] [stderr] --> src/layers/container/sequential.rs:433:38 [INFO] [stderr] | [INFO] [stderr] 433 | let mut inputs = builder.borrow().init_inputs(self.inputs.len() as u32); [INFO] [stderr] | ^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'capnp::struct_list::Builder::<'a, T>::borrow': use reborrow() instead [INFO] [stderr] --> src/layers/container/sequential.rs:435:47 [INFO] [stderr] | [INFO] [stderr] 435 | let mut shaped_input = inputs.borrow().get(i as u32); [INFO] [stderr] | ^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'juice_capnp::weight_config::Builder::<'a>::borrow': use reborrow() instead [INFO] [stderr] --> src/weight.rs:119:17 [INFO] [stderr] | [INFO] [stderr] 119 | builder.borrow().set_name(&self.name); [INFO] [stderr] | ^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unreachable pattern [INFO] [stderr] --> src/layers/common/pooling.rs:135:13 [INFO] [stderr] | [INFO] [stderr] 135 | _ => panic!("Unknown Parameter {:?} for PoolingMode", self.mode), [INFO] [stderr] | ^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unreachable_patterns)]` on by default [INFO] [stderr] [INFO] [stderr] warning: unreachable pattern [INFO] [stderr] --> src/layers/common/pooling.rs:166:13 [INFO] [stderr] | [INFO] [stderr] 166 | _ => panic!("Unknown parameter {:?} for PoolingMode", self.mode), [INFO] [stderr] | ^ [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/layer.rs:739:21 [INFO] [stderr] | [INFO] [stderr] 739 | let mut native_slice = weight_lock.write_only(native_backend.device()).unwrap().as_mut_slice::(); [INFO] [stderr] | ----^^^^^^^^^^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_mut)]` on by default [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/layer.rs:1010:13 [INFO] [stderr] | [INFO] [stderr] 1010 | let mut out = &mut out_ref.iter().map(|b| b.write().unwrap()).collect::>(); [INFO] [stderr] | ----^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/layer.rs:1011:13 [INFO] [stderr] | [INFO] [stderr] 1011 | let mut output_w = &mut out.iter_mut().map(|a| a).collect::>(); [INFO] [stderr] | ----^^^^^^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/layer.rs:1041:13 [INFO] [stderr] | [INFO] [stderr] 1041 | let mut btm_gradient = &mut btm_gradient_ref.iter().map(|b| b.write().unwrap()).collect::>(); [INFO] [stderr] | ----^^^^^^^^^^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/layer.rs:1042:13 [INFO] [stderr] | [INFO] [stderr] 1042 | let mut input_gradient = &mut btm_gradient.iter_mut().map(|a| a).collect::>(); [INFO] [stderr] | ----^^^^^^^^^^^^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/layer.rs:1075:13 [INFO] [stderr] | [INFO] [stderr] 1075 | let mut wgt_gradient = &mut wgt_gradient_ref.iter().map(|b| b.write().unwrap()).collect::>(); [INFO] [stderr] | ----^^^^^^^^^^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/layer.rs:1076:13 [INFO] [stderr] | [INFO] [stderr] 1076 | let mut weights_gradient = &mut wgt_gradient.iter_mut().map(|a| a).collect::>(); [INFO] [stderr] | ----^^^^^^^^^^^^^^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/util.rs:30:9 [INFO] [stderr] | [INFO] [stderr] 30 | let mut mem_buffer = mem.as_mut_slice::(); [INFO] [stderr] | ----^^^^^^^^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] [INFO] [stderr] warning: missing documentation for macro [INFO] [stderr] --> src/layers/activation/mod.rs:25:1 [INFO] [stderr] | [INFO] [stderr] 25 | macro_rules! impl_ilayer_activation { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] note: lint level defined here [INFO] [stderr] --> src/lib.rs:98:9 [INFO] [stderr] | [INFO] [stderr] 98 | #![deny(missing_docs, [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: missing documentation for macro [INFO] [stderr] --> src/layers/common/mod.rs:6:1 [INFO] [stderr] | [INFO] [stderr] 6 | macro_rules! impl_ilayer_common { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: missing documentation for macro [INFO] [stderr] --> src/layers/loss/mod.rs:5:1 [INFO] [stderr] | [INFO] [stderr] 5 | macro_rules! impl_ilayer_loss { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] Finished dev [unoptimized + debuginfo] target(s) in 5.98s [INFO] running `"docker" "inspect" "6f9bff7e168c9376f0bb0099b67b8c9d26f1257dee3517636420a5ff49e3c364"` [INFO] running `"docker" "rm" "-f" "6f9bff7e168c9376f0bb0099b67b8c9d26f1257dee3517636420a5ff49e3c364"` [INFO] [stdout] 6f9bff7e168c9376f0bb0099b67b8c9d26f1257dee3517636420a5ff49e3c364 [INFO] running `"docker" "create" "-v" "/big/crater/work/builds/worker-0/target:/opt/rustwide/target:rw,Z" "-v" "/big/crater/work/builds/worker-0/source:/opt/rustwide/workdir:ro,Z" "-v" "/big/crater/work/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/big/crater/work/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "MAP_USER_ID=1000" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=warn" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--network" "none" "rustops/crates-build-env" "/opt/rustwide/cargo-home/bin/cargo" "+1.38.0" "test" "--frozen" "--no-run"` [INFO] [stdout] 3a2c52317e10018872d4177cd1878569508186a2cb0a3b0bff401a861850e3b0 [INFO] running `"docker" "start" "-a" "3a2c52317e10018872d4177cd1878569508186a2cb0a3b0bff401a861850e3b0"` [INFO] [stderr] Compiling juice v0.2.3 (/opt/rustwide/workdir) [INFO] [stderr] error[E0463]: can't find crate for `leaf` [INFO] [stderr] --> tests/solver_specs.rs:1:1 [INFO] [stderr] | [INFO] [stderr] 1 | extern crate leaf; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ can't find crate [INFO] [stderr] [INFO] [stderr] error[E0463]: can't find crate for `leaf` [INFO] [stderr] --> tests/layer_specs.rs:1:1 [INFO] [stderr] | [INFO] [stderr] 1 | extern crate leaf; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ can't find crate [INFO] [stderr] [INFO] [stderr] error: aborting due to previous error [INFO] [stderr] error: aborting due to previous error [INFO] [stderr] [INFO] [stderr] For more information about this error, try `rustc --explain E0463`. [INFO] [stderr] [INFO] [stderr] For more information about this error, try `rustc --explain E0463`. [INFO] [stderr] error: Could not compile `juice`. [INFO] [stderr] warning: build failed, waiting for other jobs to finish... [INFO] [stderr] error: Could not compile `juice`. [INFO] [stderr] warning: build failed, waiting for other jobs to finish... [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/layer.rs:38:21 [INFO] [stderr] | [INFO] [stderr] 38 | pub worker: Box>, [INFO] [stderr] | ^^^^^^^^^ help: use `dyn`: `dyn ILayer` [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(bare_trait_objects)]` on by default [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/layer.rs:226:29 [INFO] [stderr] | [INFO] [stderr] 226 | let backend: Rc> = self.backend.clone(); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn IBackend` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/layer.rs:252:25 [INFO] [stderr] | [INFO] [stderr] 252 | let backend: Rc> = self.backend.clone(); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn IBackend` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/layer.rs:926:72 [INFO] [stderr] | [INFO] [stderr] 926 | fn worker_from_config(backend: Rc, config: &LayerConfig) -> Box> { [INFO] [stderr] | ^^^^^^^^^ help: use `dyn`: `dyn ILayer` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/layer.rs:1271:34 [INFO] [stderr] | [INFO] [stderr] 1271 | impl fmt::Debug for ILayer { [INFO] [stderr] | ^^^^^^^^^ help: use `dyn`: `dyn ILayer` [INFO] [stderr] [INFO] [stderr] warning: unused imports: `ConvolutionConfig`, `Convolution` [INFO] [stderr] --> src/layers/common/convolution.rs:326:17 [INFO] [stderr] | [INFO] [stderr] 326 | use super::{Convolution, ConvolutionConfig}; [INFO] [stderr] | ^^^^^^^^^^^ ^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_imports)]` on by default [INFO] [stderr] [INFO] [stderr] warning: unused import: `super::super::FilterLayer` [INFO] [stderr] --> src/layers/common/convolution.rs:327:9 [INFO] [stderr] | [INFO] [stderr] 327 | use super::super::FilterLayer; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `co::*` [INFO] [stderr] --> src/layers/common/convolution.rs:328:9 [INFO] [stderr] | [INFO] [stderr] 328 | use co::*; [INFO] [stderr] | ^^^^^ [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/layers/container/sequential.rs:168:30 [INFO] [stderr] | [INFO] [stderr] 168 | let ibackend: Rc> = backend; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn IBackend` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/solver/mod.rs:25:21 [INFO] [stderr] | [INFO] [stderr] 25 | pub worker: Box>, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn ISolver` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/solver/mod.rs:133:66 [INFO] [stderr] | [INFO] [stderr] 133 | impl> ::std::fmt::Debug for ISolver { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn ISolver` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/solver/mod.rs:342:17 [INFO] [stderr] | [INFO] [stderr] 342 | -> Box> { [INFO] [stderr] | ^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn ISolver` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/solver/mod.rs:363:17 [INFO] [stderr] | [INFO] [stderr] 363 | -> Box> { [INFO] [stderr] | ^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn ISolver` [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'juice_capnp::layer::Builder::<'a>::borrow': use reborrow() instead [INFO] [stderr] --> src/layer.rs:845:44 [INFO] [stderr] | [INFO] [stderr] 845 | let mut layer_config = builder.borrow().init_config(); [INFO] [stderr] | ^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(deprecated)]` on by default [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'juice_capnp::layer::Builder::<'a>::borrow': use reborrow() instead [INFO] [stderr] --> src/layer.rs:850:39 [INFO] [stderr] | [INFO] [stderr] 850 | let mut weights = builder.borrow().init_weights_data(self.learnable_weights_names().len() as u32); [INFO] [stderr] | ^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'capnp::struct_list::Builder::<'a, T>::borrow': use reborrow() instead [INFO] [stderr] --> src/layer.rs:855:48 [INFO] [stderr] | [INFO] [stderr] 855 | let mut capnp_weight = weights.borrow().get(i as u32); [INFO] [stderr] | ^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'juice_capnp::tensor::Builder::<'a>::borrow': use reborrow() instead [INFO] [stderr] --> src/layer.rs:862:51 [INFO] [stderr] | [INFO] [stderr] 862 | let mut tensor_shape = tensor.borrow().init_shape(weight_lock.desc().len() as u32); [INFO] [stderr] | ^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'juice_capnp::tensor::Builder::<'a>::borrow': use reborrow() instead [INFO] [stderr] --> src/layer.rs:870:50 [INFO] [stderr] | [INFO] [stderr] 870 | let mut tensor_data = tensor.borrow().init_data(native_slice.len() as u32); [INFO] [stderr] | ^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'juice_capnp::layer_config::layer_type::Builder::<'a>::borrow': use reborrow() instead [INFO] [stderr] --> src/layer.rs:1360:46 [INFO] [stderr] | [INFO] [stderr] 1360 | let ref mut config = builder.borrow().init_linear(); [INFO] [stderr] | ^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'juice_capnp::layer_config::layer_type::Builder::<'a>::borrow': use reborrow() instead [INFO] [stderr] --> src/layer.rs:1365:46 [INFO] [stderr] | [INFO] [stderr] 1365 | let ref mut config = builder.borrow().init_sequential(); [INFO] [stderr] | ^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'juice_capnp::layer_config::layer_type::Builder::<'a>::borrow': use reborrow() instead [INFO] [stderr] --> src/layer.rs:1373:46 [INFO] [stderr] | [INFO] [stderr] 1373 | let ref mut config = builder.borrow().init_negative_log_likelihood(); [INFO] [stderr] | ^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'juice_capnp::layer_config::layer_type::Builder::<'a>::borrow': use reborrow() instead [INFO] [stderr] --> src/layer.rs:1377:46 [INFO] [stderr] | [INFO] [stderr] 1377 | let ref mut config = builder.borrow().init_reshape(); [INFO] [stderr] | ^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'juice_capnp::layer_config::layer_type::Builder::<'a>::borrow': use reborrow() instead [INFO] [stderr] --> src/layer.rs:1381:46 [INFO] [stderr] | [INFO] [stderr] 1381 | let ref mut config = builder.borrow().init_convolution(); [INFO] [stderr] | ^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'juice_capnp::layer_config::layer_type::Builder::<'a>::borrow': use reborrow() instead [INFO] [stderr] --> src/layer.rs:1385:46 [INFO] [stderr] | [INFO] [stderr] 1385 | let ref mut config = builder.borrow().init_pooling(); [INFO] [stderr] | ^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'juice_capnp::layer_config::Builder::<'a>::borrow': use reborrow() instead [INFO] [stderr] --> src/layer.rs:1508:42 [INFO] [stderr] | [INFO] [stderr] 1508 | let mut layer_type = builder.borrow().init_layer_type(); [INFO] [stderr] | ^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'juice_capnp::layer_config::Builder::<'a>::borrow': use reborrow() instead [INFO] [stderr] --> src/layer.rs:1512:39 [INFO] [stderr] | [INFO] [stderr] 1512 | let mut outputs = builder.borrow().init_outputs(self.outputs.len() as u32); [INFO] [stderr] | ^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'juice_capnp::layer_config::Builder::<'a>::borrow': use reborrow() instead [INFO] [stderr] --> src/layer.rs:1518:38 [INFO] [stderr] | [INFO] [stderr] 1518 | let mut inputs = builder.borrow().init_inputs(self.inputs.len() as u32); [INFO] [stderr] | ^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'juice_capnp::layer_config::Builder::<'a>::borrow': use reborrow() instead [INFO] [stderr] --> src/layer.rs:1524:38 [INFO] [stderr] | [INFO] [stderr] 1524 | let mut params = builder.borrow().init_params(self.params.len() as u32); [INFO] [stderr] | ^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'capnp::struct_list::Builder::<'a, T>::borrow': use reborrow() instead [INFO] [stderr] --> src/layer.rs:1526:50 [INFO] [stderr] | [INFO] [stderr] 1526 | let ref mut capnp_param = params.borrow().get(i as u32); [INFO] [stderr] | ^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'juice_capnp::layer_config::Builder::<'a>::borrow': use reborrow() instead [INFO] [stderr] --> src/layer.rs:1531:46 [INFO] [stderr] | [INFO] [stderr] 1531 | let mut propagate_down = builder.borrow().init_propagate_down(self.propagate_down.len() as u32); [INFO] [stderr] | ^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'juice_capnp::convolution_config::Builder::<'a>::borrow': use reborrow() instead [INFO] [stderr] --> src/layers/common/convolution.rs:271:17 [INFO] [stderr] | [INFO] [stderr] 271 | builder.borrow().set_num_output(self.num_output as u64); [INFO] [stderr] | ^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'juice_capnp::convolution_config::Builder::<'a>::borrow': use reborrow() instead [INFO] [stderr] --> src/layers/common/convolution.rs:273:44 [INFO] [stderr] | [INFO] [stderr] 273 | let mut filter_shape = builder.borrow().init_filter_shape(self.filter_shape.len() as u32); [INFO] [stderr] | ^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'juice_capnp::convolution_config::Builder::<'a>::borrow': use reborrow() instead [INFO] [stderr] --> src/layers/common/convolution.rs:279:38 [INFO] [stderr] | [INFO] [stderr] 279 | let mut stride = builder.borrow().init_stride(self.stride.len() as u32); [INFO] [stderr] | ^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'juice_capnp::convolution_config::Builder::<'a>::borrow': use reborrow() instead [INFO] [stderr] --> src/layers/common/convolution.rs:285:39 [INFO] [stderr] | [INFO] [stderr] 285 | let mut padding = builder.borrow().init_padding(self.padding.len() as u32); [INFO] [stderr] | ^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'juice_capnp::linear_config::Builder::<'a>::borrow': use reborrow() instead [INFO] [stderr] --> src/layers/common/linear.rs:204:17 [INFO] [stderr] | [INFO] [stderr] 204 | builder.borrow().set_output_size(self.output_size as u64); [INFO] [stderr] | ^^^^^^ [INFO] [stderr] [INFO] [stderr] error[E0463]: can't find crate for `leaf` [INFO] [stderr] --> examples/benchmarks.rs:6:1 [INFO] [stderr] | [INFO] [stderr] 6 | extern crate leaf; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ can't find crate [INFO] [stderr] [INFO] [stderr] error: aborting due to previous error [INFO] [stderr] [INFO] [stderr] For more information about this error, try `rustc --explain E0463`. [INFO] [stderr] error: Could not compile `juice`. [INFO] [stderr] warning: build failed, waiting for other jobs to finish... [INFO] [stderr] warning: use of deprecated item 'juice_capnp::pooling_config::Builder::<'a>::borrow': use reborrow() instead [INFO] [stderr] --> src/layers/common/pooling.rs:197:17 [INFO] [stderr] | [INFO] [stderr] 197 | builder.borrow().set_mode(self.mode.to_capnp()); [INFO] [stderr] | ^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'juice_capnp::pooling_config::Builder::<'a>::borrow': use reborrow() instead [INFO] [stderr] --> src/layers/common/pooling.rs:199:44 [INFO] [stderr] | [INFO] [stderr] 199 | let mut filter_shape = builder.borrow().init_filter_shape(self.filter_shape.len() as u32); [INFO] [stderr] | ^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'juice_capnp::pooling_config::Builder::<'a>::borrow': use reborrow() instead [INFO] [stderr] --> src/layers/common/pooling.rs:205:38 [INFO] [stderr] | [INFO] [stderr] 205 | let mut stride = builder.borrow().init_stride(self.stride.len() as u32); [INFO] [stderr] | ^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'juice_capnp::pooling_config::Builder::<'a>::borrow': use reborrow() instead [INFO] [stderr] --> src/layers/common/pooling.rs:211:39 [INFO] [stderr] | [INFO] [stderr] 211 | let mut padding = builder.borrow().init_padding(self.padding.len() as u32); [INFO] [stderr] | ^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'juice_capnp::reshape_config::Builder::<'a>::borrow': use reborrow() instead [INFO] [stderr] --> src/layers/utility/reshape.rs:105:33 [INFO] [stderr] | [INFO] [stderr] 105 | let mut shape = builder.borrow().init_shape(self.shape.len() as u32); [INFO] [stderr] | ^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'juice_capnp::shaped_input::Builder::<'a>::borrow': use reborrow() instead [INFO] [stderr] --> src/layers/container/sequential.rs:413:38 [INFO] [stderr] | [INFO] [stderr] 413 | let mut dimensions = builder.borrow().init_shape(shape.len() as u32); [INFO] [stderr] | ^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'juice_capnp::sequential_config::Builder::<'a>::borrow': use reborrow() instead [INFO] [stderr] --> src/layers/container/sequential.rs:426:38 [INFO] [stderr] | [INFO] [stderr] 426 | let mut layers = builder.borrow().init_layers(self.layers.len() as u32); [INFO] [stderr] | ^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'capnp::struct_list::Builder::<'a, T>::borrow': use reborrow() instead [INFO] [stderr] --> src/layers/container/sequential.rs:428:47 [INFO] [stderr] | [INFO] [stderr] 428 | let mut layer_config = layers.borrow().get(i as u32); [INFO] [stderr] | ^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'juice_capnp::sequential_config::Builder::<'a>::borrow': use reborrow() instead [INFO] [stderr] --> src/layers/container/sequential.rs:433:38 [INFO] [stderr] | [INFO] [stderr] 433 | let mut inputs = builder.borrow().init_inputs(self.inputs.len() as u32); [INFO] [stderr] | ^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'capnp::struct_list::Builder::<'a, T>::borrow': use reborrow() instead [INFO] [stderr] --> src/layers/container/sequential.rs:435:47 [INFO] [stderr] | [INFO] [stderr] 435 | let mut shaped_input = inputs.borrow().get(i as u32); [INFO] [stderr] | ^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'juice_capnp::weight_config::Builder::<'a>::borrow': use reborrow() instead [INFO] [stderr] --> src/weight.rs:119:17 [INFO] [stderr] | [INFO] [stderr] 119 | builder.borrow().set_name(&self.name); [INFO] [stderr] | ^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unreachable pattern [INFO] [stderr] --> src/layers/common/pooling.rs:135:13 [INFO] [stderr] | [INFO] [stderr] 135 | _ => panic!("Unknown Parameter {:?} for PoolingMode", self.mode), [INFO] [stderr] | ^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unreachable_patterns)]` on by default [INFO] [stderr] [INFO] [stderr] warning: unreachable pattern [INFO] [stderr] --> src/layers/common/pooling.rs:166:13 [INFO] [stderr] | [INFO] [stderr] 166 | _ => panic!("Unknown parameter {:?} for PoolingMode", self.mode), [INFO] [stderr] | ^ [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/layer.rs:739:21 [INFO] [stderr] | [INFO] [stderr] 739 | let mut native_slice = weight_lock.write_only(native_backend.device()).unwrap().as_mut_slice::(); [INFO] [stderr] | ----^^^^^^^^^^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_mut)]` on by default [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/layer.rs:1010:13 [INFO] [stderr] | [INFO] [stderr] 1010 | let mut out = &mut out_ref.iter().map(|b| b.write().unwrap()).collect::>(); [INFO] [stderr] | ----^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/layer.rs:1011:13 [INFO] [stderr] | [INFO] [stderr] 1011 | let mut output_w = &mut out.iter_mut().map(|a| a).collect::>(); [INFO] [stderr] | ----^^^^^^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/layer.rs:1041:13 [INFO] [stderr] | [INFO] [stderr] 1041 | let mut btm_gradient = &mut btm_gradient_ref.iter().map(|b| b.write().unwrap()).collect::>(); [INFO] [stderr] | ----^^^^^^^^^^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/layer.rs:1042:13 [INFO] [stderr] | [INFO] [stderr] 1042 | let mut input_gradient = &mut btm_gradient.iter_mut().map(|a| a).collect::>(); [INFO] [stderr] | ----^^^^^^^^^^^^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/layer.rs:1075:13 [INFO] [stderr] | [INFO] [stderr] 1075 | let mut wgt_gradient = &mut wgt_gradient_ref.iter().map(|b| b.write().unwrap()).collect::>(); [INFO] [stderr] | ----^^^^^^^^^^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/layer.rs:1076:13 [INFO] [stderr] | [INFO] [stderr] 1076 | let mut weights_gradient = &mut wgt_gradient.iter_mut().map(|a| a).collect::>(); [INFO] [stderr] | ----^^^^^^^^^^^^^^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/util.rs:30:9 [INFO] [stderr] | [INFO] [stderr] 30 | let mut mem_buffer = mem.as_mut_slice::(); [INFO] [stderr] | ----^^^^^^^^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] [INFO] [stderr] warning: missing documentation for macro [INFO] [stderr] --> src/layers/activation/mod.rs:25:1 [INFO] [stderr] | [INFO] [stderr] 25 | macro_rules! impl_ilayer_activation { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] note: lint level defined here [INFO] [stderr] --> src/lib.rs:98:9 [INFO] [stderr] | [INFO] [stderr] 98 | #![deny(missing_docs, [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: missing documentation for macro [INFO] [stderr] --> src/layers/common/mod.rs:6:1 [INFO] [stderr] | [INFO] [stderr] 6 | macro_rules! impl_ilayer_common { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: missing documentation for macro [INFO] [stderr] --> src/layers/loss/mod.rs:5:1 [INFO] [stderr] | [INFO] [stderr] 5 | macro_rules! impl_ilayer_loss { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] error: linking with `cc` failed: exit code: 1 [INFO] [stderr] | [INFO] [stderr] = note: "cc" "-Wl,--as-needed" "-Wl,-z,noexecstack" "-m64" "-L" "/opt/rustwide/rustup-home/toolchains/1.38.0-x86_64-unknown-linux-gnu/lib/rustlib/x86_64-unknown-linux-gnu/lib" "/opt/rustwide/target/debug/deps/juice-f5adae06e90ea57f.juice.bqazc57i-cgu.0.rcgu.o" "/opt/rustwide/target/debug/deps/juice-f5adae06e90ea57f.juice.bqazc57i-cgu.1.rcgu.o" "/opt/rustwide/target/debug/deps/juice-f5adae06e90ea57f.juice.bqazc57i-cgu.2.rcgu.o" "/opt/rustwide/target/debug/deps/juice-f5adae06e90ea57f.juice.bqazc57i-cgu.3.rcgu.o" "/opt/rustwide/target/debug/deps/juice-f5adae06e90ea57f.juice.bqazc57i-cgu.4.rcgu.o" "/opt/rustwide/target/debug/deps/juice-f5adae06e90ea57f.juice.bqazc57i-cgu.5.rcgu.o" "/opt/rustwide/target/debug/deps/juice-f5adae06e90ea57f.juice.bqazc57i-cgu.6.rcgu.o" "/opt/rustwide/target/debug/deps/juice-f5adae06e90ea57f.juice.bqazc57i-cgu.7.rcgu.o" "/opt/rustwide/target/debug/deps/juice-f5adae06e90ea57f.juice.bqazc57i-cgu.8.rcgu.o" "-o" "/opt/rustwide/target/debug/deps/juice-f5adae06e90ea57f" "/opt/rustwide/target/debug/deps/juice-f5adae06e90ea57f.upovqnxioeiiukq.rcgu.o" "-Wl,--gc-sections" "-pie" "-Wl,-zrelro" "-Wl,-znow" "-nodefaultlibs" "-L" "/opt/rustwide/target/debug/deps" "-L" "/opt/rustwide/rustup-home/toolchains/1.38.0-x86_64-unknown-linux-gnu/lib/rustlib/x86_64-unknown-linux-gnu/lib" "-Wl,-Bstatic" "/opt/rustwide/rustup-home/toolchains/1.38.0-x86_64-unknown-linux-gnu/lib/rustlib/x86_64-unknown-linux-gnu/lib/libtest-8b6fbd25e1766083.rlib" "/opt/rustwide/rustup-home/toolchains/1.38.0-x86_64-unknown-linux-gnu/lib/rustlib/x86_64-unknown-linux-gnu/lib/libterm-bd8f21e3bdd6cbdc.rlib" "/opt/rustwide/rustup-home/toolchains/1.38.0-x86_64-unknown-linux-gnu/lib/rustlib/x86_64-unknown-linux-gnu/lib/libgetopts-bfcad117c6a632af.rlib" "/opt/rustwide/rustup-home/toolchains/1.38.0-x86_64-unknown-linux-gnu/lib/rustlib/x86_64-unknown-linux-gnu/lib/libunicode_width-79a1f91e8ce4eb83.rlib" "/opt/rustwide/target/debug/deps/libcoaster_nn-7f9cbc2493d1dd9e.rlib" "/opt/rustwide/target/debug/deps/libcoaster_blas-bf15ca4685114faa.rlib" "/opt/rustwide/target/debug/deps/librblas-135cf1555e0df984.rlib" "/opt/rustwide/target/debug/deps/libcoaster-78aedbf88dfeadf3.rlib" "/opt/rustwide/target/debug/deps/libbyteorder-9dfadd34663603d5.rlib" "/opt/rustwide/target/debug/deps/liblazy_static-39731e027eca32c2.rlib" "/opt/rustwide/target/debug/deps/libenum_primitive-71d2b74906539517.rlib" "/opt/rustwide/target/debug/deps/libnum_traits-a03a7c7129e5b483.rlib" "/opt/rustwide/target/debug/deps/libbitflags-4eb9b86262574863.rlib" "/opt/rustwide/target/debug/deps/libcapnp-e420db13bc9e9163.rlib" "/opt/rustwide/target/debug/deps/libbyteorder-f584045056e081f3.rlib" "/opt/rustwide/target/debug/deps/libnum-2f2488239b13fbdd.rlib" "/opt/rustwide/target/debug/deps/libnum_rational-89e848ee8ea36e78.rlib" "/opt/rustwide/target/debug/deps/libnum_bigint-8e800f48bb43d415.rlib" "/opt/rustwide/target/debug/deps/libnum_complex-d9fb93378866e854.rlib" "/opt/rustwide/target/debug/deps/librustc_serialize-32acd8f7efa22e3e.rlib" "/opt/rustwide/target/debug/deps/libnum_iter-bbf34e9632c3a30c.rlib" "/opt/rustwide/target/debug/deps/libnum_integer-dbac7e428283a153.rlib" "/opt/rustwide/target/debug/deps/libnum_traits-a4ff9b7e87bbd905.rlib" "/opt/rustwide/target/debug/deps/librand-df37cf038f4c3201.rlib" "/opt/rustwide/target/debug/deps/librand-250eafcf18e8ca2a.rlib" "/opt/rustwide/target/debug/deps/liblog-1818c57ccc56e23e.rlib" "/opt/rustwide/target/debug/deps/liblog-e50aa4e61ffd3b64.rlib" "/opt/rustwide/target/debug/deps/libcfg_if-da99d89e98e4f9e7.rlib" "/opt/rustwide/target/debug/deps/libtimeit-0a5a497519489e55.rlib" "/opt/rustwide/target/debug/deps/libtime-0837f709e880efd3.rlib" "/opt/rustwide/target/debug/deps/liblibc-a3b13f6b27abcc70.rlib" "-Wl,--start-group" "/opt/rustwide/rustup-home/toolchains/1.38.0-x86_64-unknown-linux-gnu/lib/rustlib/x86_64-unknown-linux-gnu/lib/libstd-12ce12f1efc08aa3.rlib" "/opt/rustwide/rustup-home/toolchains/1.38.0-x86_64-unknown-linux-gnu/lib/rustlib/x86_64-unknown-linux-gnu/lib/libpanic_unwind-5d3cd1b3ddab72e4.rlib" "/opt/rustwide/rustup-home/toolchains/1.38.0-x86_64-unknown-linux-gnu/lib/rustlib/x86_64-unknown-linux-gnu/lib/libbacktrace-f8222943dfd167e2.rlib" "/opt/rustwide/rustup-home/toolchains/1.38.0-x86_64-unknown-linux-gnu/lib/rustlib/x86_64-unknown-linux-gnu/lib/libbacktrace_sys-0cd00b2d3108cd48.rlib" "/opt/rustwide/rustup-home/toolchains/1.38.0-x86_64-unknown-linux-gnu/lib/rustlib/x86_64-unknown-linux-gnu/lib/librustc_demangle-485c05ba6ce1b438.rlib" "/opt/rustwide/rustup-home/toolchains/1.38.0-x86_64-unknown-linux-gnu/lib/rustlib/x86_64-unknown-linux-gnu/lib/libhashbrown-63e6b1072426ba59.rlib" "/opt/rustwide/rustup-home/toolchains/1.38.0-x86_64-unknown-linux-gnu/lib/rustlib/x86_64-unknown-linux-gnu/lib/librustc_std_workspace_alloc-a421aff1d43911ee.rlib" "/opt/rustwide/rustup-home/toolchains/1.38.0-x86_64-unknown-linux-gnu/lib/rustlib/x86_64-unknown-linux-gnu/lib/libunwind-3deef8ef4fe80dff.rlib" "/opt/rustwide/rustup-home/toolchains/1.38.0-x86_64-unknown-linux-gnu/lib/rustlib/x86_64-unknown-linux-gnu/lib/libcfg_if-f65a176f0586269e.rlib" "/opt/rustwide/rustup-home/toolchains/1.38.0-x86_64-unknown-linux-gnu/lib/rustlib/x86_64-unknown-linux-gnu/lib/liblibc-ad46d4080f4d7e57.rlib" "/opt/rustwide/rustup-home/toolchains/1.38.0-x86_64-unknown-linux-gnu/lib/rustlib/x86_64-unknown-linux-gnu/lib/liballoc-da6c590582bf0885.rlib" "/opt/rustwide/rustup-home/toolchains/1.38.0-x86_64-unknown-linux-gnu/lib/rustlib/x86_64-unknown-linux-gnu/lib/librustc_std_workspace_core-837ca740df32db0a.rlib" "/opt/rustwide/rustup-home/toolchains/1.38.0-x86_64-unknown-linux-gnu/lib/rustlib/x86_64-unknown-linux-gnu/lib/libcore-db27c965e824589f.rlib" "-Wl,--end-group" "/opt/rustwide/rustup-home/toolchains/1.38.0-x86_64-unknown-linux-gnu/lib/rustlib/x86_64-unknown-linux-gnu/lib/libcompiler_builtins-68a4f8466685ed76.rlib" "-Wl,-Bdynamic" "-lblas" "-lOpenCL" "-lOpenCL" "-lcuda" "-lutil" "-lutil" "-ldl" "-lrt" "-lpthread" "-lgcc_s" "-lc" "-lm" "-lrt" "-lpthread" "-lutil" "-lutil" [INFO] [stderr] = note: /usr/bin/ld: cannot find -lOpenCL [INFO] [stderr] /usr/bin/ld: cannot find -lOpenCL [INFO] [stderr] /usr/bin/ld: cannot find -lcuda [INFO] [stderr] collect2: error: ld returned 1 exit status [INFO] [stderr] [INFO] [stderr] [INFO] [stderr] error: aborting due to previous error [INFO] [stderr] [INFO] [stderr] error: Could not compile `juice`. [INFO] [stderr] [INFO] [stderr] To learn more, run the command again with --verbose. [INFO] running `"docker" "inspect" "3a2c52317e10018872d4177cd1878569508186a2cb0a3b0bff401a861850e3b0"` [INFO] running `"docker" "rm" "-f" "3a2c52317e10018872d4177cd1878569508186a2cb0a3b0bff401a861850e3b0"` [INFO] [stdout] 3a2c52317e10018872d4177cd1878569508186a2cb0a3b0bff401a861850e3b0