[INFO] cloning repository https://github.com/seanchen1991/parallel-conway
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/seanchen1991/parallel-conway" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fseanchen1991%2Fparallel-conway", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fseanchen1991%2Fparallel-conway'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] 2a0f6882ba5a6bceeef9fa0ef3eedff17f98653c
[INFO] checking seanchen1991/parallel-conway/2a0f6882ba5a6bceeef9fa0ef3eedff17f98653c against master#f28ac764c36004fa6a6e098d15b4016a838c13c6 for pr-158320
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fseanchen1991%2Fparallel-conway" "/workspace/builds/worker-7-tc1/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-7-tc1/source'...
[INFO] [stderr] done.
[INFO] started tweaking git repo https://github.com/seanchen1991/parallel-conway
[INFO] finished tweaking git repo https://github.com/seanchen1991/parallel-conway
[INFO] tweaked toml for git repo https://github.com/seanchen1991/parallel-conway written to /workspace/builds/worker-7-tc1/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/seanchen1991/parallel-conway on toolchain f28ac764c36004fa6a6e098d15b4016a838c13c6
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+f28ac764c36004fa6a6e098d15b4016a838c13c6" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate git repo https://github.com/seanchen1991/parallel-conway 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" "+f28ac764c36004fa6a6e098d15b4016a838c13c6" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Updating crates.io index
[INFO] [stderr]      Locking 114 packages to latest compatible versions
[INFO] [stderr]       Adding addr2line v0.25.1
[INFO] [stderr]       Adding adler2 v2.0.1
[INFO] [stderr]       Adding adler32 v1.2.0
[INFO] [stderr]       Adding andrew v0.2.1
[INFO] [stderr]       Adding android_glue v0.2.3
[INFO] [stderr]       Adding approx v0.3.2
[INFO] [stderr]       Adding autocfg v1.5.1
[INFO] [stderr]       Adding backtrace v0.3.76
[INFO] [stderr]       Adding block v0.1.6
[INFO] [stderr]       Adding byteorder v1.5.0
[INFO] [stderr]       Adding cc v1.2.65
[INFO] [stderr]       Adding cfg-if v1.0.4
[INFO] [stderr]       Adding cgl v0.2.3
[INFO] [stderr]       Adding cocoa v0.18.5
[INFO] [stderr]       Adding color_quant v1.1.0
[INFO] [stderr]       Adding core-foundation v0.6.4
[INFO] [stderr]       Adding core-foundation-sys v0.6.2
[INFO] [stderr]       Adding core-graphics v0.17.3
[INFO] [stderr]       Adding deflate v0.7.20
[INFO] [stderr]       Adding dlib v0.4.2
[INFO] [stderr]       Adding downcast-rs v1.2.1
[INFO] [stderr]       Adding failure v0.1.8
[INFO] [stderr]       Adding failure_derive v0.1.8
[INFO] [stderr]       Adding find-msvc-tools v0.1.9
[INFO] [stderr]       Adding fnv v1.0.7
[INFO] [stderr]       Adding foreign-types v0.3.2
[INFO] [stderr]       Adding foreign-types-shared v0.1.1
[INFO] [stderr]       Adding gif v0.10.3
[INFO] [stderr]       Adding gimli v0.32.3
[INFO] [stderr]       Adding gl v0.11.0
[INFO] [stderr]       Adding gl_generator v0.10.0
[INFO] [stderr]       Adding gl_generator v0.13.1
[INFO] [stderr]       Adding gleam v0.6.19
[INFO] [stderr]       Adding glutin v0.19.0
[INFO] [stderr]       Adding image v0.20.1
[INFO] [stderr]       Adding inflate v0.4.5
[INFO] [stderr]       Adding interpolation v0.1.0
[INFO] [stderr]       Adding jpeg-decoder v0.1.22
[INFO] [stderr]       Adding khronos_api v2.2.0
[INFO] [stderr]       Adding khronos_api v3.1.0
[INFO] [stderr]     Updating libc v0.2.45 -> v0.2.186
[INFO] [stderr]       Adding libloading v0.6.7
[INFO] [stderr]       Adding line_drawing v0.7.0
[INFO] [stderr]       Adding lock_api v0.1.5
[INFO] [stderr]       Adding log v0.4.33
[INFO] [stderr]       Adding lzw v0.10.0
[INFO] [stderr]       Adding malloc_buf v0.0.6
[INFO] [stderr]       Adding maybe-uninit v2.0.0
[INFO] [stderr]       Adding memchr v2.8.2
[INFO] [stderr]       Adding memmap v0.7.0
[INFO] [stderr]       Adding miniz_oxide v0.8.9
[INFO] [stderr]       Adding nix v0.14.1
[INFO] [stderr]       Adding num-derive v0.2.5
[INFO] [stderr]       Adding num-integer v0.1.46
[INFO] [stderr]       Adding num-iter v0.1.45
[INFO] [stderr]       Adding num-rational v0.2.4
[INFO] [stderr]       Adding num-traits v0.2.19
[INFO] [stderr]       Adding objc v0.2.7
[INFO] [stderr]       Adding object v0.37.3
[INFO] [stderr]       Adding once_cell v1.21.4
[INFO] [stderr]       Adding ordered-float v1.1.1
[INFO] [stderr]       Adding osmesa-sys v0.1.2
[INFO] [stderr]       Adding owning_ref v0.4.1
[INFO] [stderr]       Adding parking_lot v0.7.1
[INFO] [stderr]       Adding parking_lot_core v0.4.0
[INFO] [stderr]       Adding percent-encoding v1.0.1
[INFO] [stderr]       Adding piston v0.39.0 (available: v1.0.0)
[INFO] [stderr]       Adding piston-float v0.3.0
[INFO] [stderr]       Adding piston-shaders_graphics2d v0.3.1
[INFO] [stderr]       Adding piston-texture v0.6.0
[INFO] [stderr]       Adding piston-viewport v0.5.0
[INFO] [stderr]       Adding piston2d-graphics v0.28.0 (available: v0.45.0)
[INFO] [stderr]       Adding piston2d-opengl_graphics v0.57.0 (available: v0.89.0)
[INFO] [stderr]       Adding pistoncore-event_loop v0.39.0
[INFO] [stderr]       Adding pistoncore-glutin_window v0.51.1 (available: v0.73.2)
[INFO] [stderr]       Adding pistoncore-input v0.23.0
[INFO] [stderr]       Adding pistoncore-window v0.34.0
[INFO] [stderr]       Adding pkg-config v0.3.33
[INFO] [stderr]       Adding png v0.12.0
[INFO] [stderr]       Adding proc-macro2 v1.0.106
[INFO] [stderr]       Adding quote v1.0.46
[INFO] [stderr]       Adding read_color v1.0.0
[INFO] [stderr]       Adding rustc-demangle v0.1.27
[INFO] [stderr]       Adding rusttype v0.7.9
[INFO] [stderr]       Adding rusttype v0.8.3
[INFO] [stderr]       Adding same-file v1.0.6
[INFO] [stderr]       Adding scoped_threadpool v0.1.9
[INFO] [stderr]       Adding shader_version v0.3.0
[INFO] [stderr]       Adding shared_library v0.1.9
[INFO] [stderr]       Adding shlex v2.0.1
[INFO] [stderr]       Adding smallvec v0.6.14
[INFO] [stderr]       Adding smithay-client-toolkit v0.4.6
[INFO] [stderr]       Adding stable_deref_trait v1.2.1
[INFO] [stderr]       Adding stb_truetype v0.3.1
[INFO] [stderr]       Adding syn v1.0.109
[INFO] [stderr]       Adding synstructure v0.12.6
[INFO] [stderr]       Adding tiff v0.2.2
[INFO] [stderr]       Adding unicode-ident v1.0.24
[INFO] [stderr]       Adding unicode-xid v0.2.6
[INFO] [stderr]       Adding vecmath v0.3.1
[INFO] [stderr]       Adding void v1.0.2
[INFO] [stderr]       Adding walkdir v2.5.0
[INFO] [stderr]       Adding wayland-client v0.21.13
[INFO] [stderr]       Adding wayland-commons v0.21.13
[INFO] [stderr]       Adding wayland-protocols v0.21.13
[INFO] [stderr]       Adding wayland-scanner v0.21.13
[INFO] [stderr]       Adding wayland-sys v0.21.13
[INFO] [stderr]       Adding winapi-util v0.1.11
[INFO] [stderr]       Adding windows-link v0.2.1
[INFO] [stderr]       Adding windows-sys v0.61.2
[INFO] [stderr]       Adding winit v0.18.1
[INFO] [stderr]       Adding x11-dl v2.21.0
[INFO] [stderr]       Adding xdg v2.5.2
[INFO] [stderr]       Adding xml-rs v0.8.28
[INFO] [stderr]  Downloading crates ...
[INFO] [stderr]   Downloaded serde_derive v1.0.82
[INFO] [stderr]   Downloaded redox_syscall v0.1.44
[INFO] [stderr]   Downloaded arrayvec v0.4.9
[INFO] [stderr]   Downloaded serde v1.0.82
[INFO] [stderr]   Downloaded winit v0.18.1
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-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:3a6becf2bc8dde7f3fa57ede90e4f284e72d296796fc446bbb1e2c7cc0530151" "sleep" "infinity", kill_on_drop: false }`
[INFO] [stdout] cd6ba0e9210056799234b8c0e786d0db55c886185ae89fbf865ca780360216ea
[INFO] running `Command { std: "docker" "start" "cd6ba0e9210056799234b8c0e786d0db55c886185ae89fbf865ca780360216ea", 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" "cd6ba0e9210056799234b8c0e786d0db55c886185ae89fbf865ca780360216ea" "/opt/rustwide/cargo-home/bin/cargo" "+f28ac764c36004fa6a6e098d15b4016a838c13c6" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "cd6ba0e9210056799234b8c0e786d0db55c886185ae89fbf865ca780360216ea", 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" "cd6ba0e9210056799234b8c0e786d0db55c886185ae89fbf865ca780360216ea" "/opt/rustwide/cargo-home/bin/cargo" "+f28ac764c36004fa6a6e098d15b4016a838c13c6" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stderr]    Compiling khronos_api v3.1.0
[INFO] [stderr]    Compiling log v0.4.33
[INFO] [stderr]    Compiling arrayvec v0.4.9
[INFO] [stderr]     Checking libloading v0.6.7
[INFO] [stderr]    Compiling nix v0.14.1
[INFO] [stderr]    Compiling serde v1.0.82
[INFO] [stderr]    Compiling parking_lot_core v0.4.0
[INFO] [stderr]    Compiling wayland-scanner v0.21.13
[INFO] [stderr]     Checking ordered-float v1.1.1
[INFO] [stderr]     Checking approx v0.3.2
[INFO] [stderr]     Checking stable_deref_trait v1.2.1
[INFO] [stderr]    Compiling serde_derive v1.0.82
[INFO] [stderr]     Checking rand v0.6.1
[INFO] [stderr]    Compiling x11-dl v2.21.0
[INFO] [stderr]     Checking line_drawing v0.7.0
[INFO] [stderr]     Checking num_cpus v1.9.0
[INFO] [stderr]     Checking owning_ref v0.4.1
[INFO] [stderr]     Checking xdg v2.5.2
[INFO] [stderr]     Checking dlib v0.4.2
[INFO] [stderr]     Checking xml-rs v0.8.28
[INFO] [stderr]    Compiling num-derive v0.2.5
[INFO] [stderr]     Checking lock_api v0.1.5
[INFO] [stderr]     Checking wayland-sys v0.21.13
[INFO] [stderr]    Compiling quote v1.0.46
[INFO] [stderr]     Checking rusttype v0.8.3
[INFO] [stderr]     Checking memmap v0.7.0
[INFO] [stderr]    Compiling num-rational v0.2.4
[INFO] [stderr]    Compiling object v0.37.3
[INFO] [stderr]     Checking deflate v0.7.20
[INFO] [stderr]     Checking rusttype v0.7.9
[INFO] [stderr]    Compiling gl_generator v0.10.0
[INFO] [stderr]     Checking num-iter v0.1.45
[INFO] [stderr]     Checking shared_library v0.1.9
[INFO] [stderr]    Compiling syn v1.0.109
[INFO] [stderr]     Checking gimli v0.32.3
[INFO] [stderr]     Checking memchr v2.8.2
[INFO] [stderr]     Checking gif v0.10.3
[INFO] [stderr]     Checking crossbeam-epoch v0.3.1
[INFO] [stderr]     Checking miniz_oxide v0.8.9
[INFO] [stderr]     Checking osmesa-sys v0.1.2
[INFO] [stderr]     Checking andrew v0.2.1
[INFO] [stderr]     Checking png v0.12.0
[INFO] [stderr]     Checking crossbeam-deque v0.2.0
[INFO] [stderr]     Checking rustc-demangle v0.1.27
[INFO] [stderr]     Checking rayon-core v1.4.1
[INFO] [stderr]     Checking piston2d-graphics v0.28.0
[INFO] [stderr]     Checking time v0.1.41
[INFO] [stderr]     Checking rayon v1.0.3
[INFO] [stderr]    Compiling gl v0.11.0
[INFO] [stderr]    Compiling glutin v0.19.0
[INFO] [stderr]    Compiling wayland-client v0.21.13
[INFO] [stderr]    Compiling wayland-protocols v0.21.13
[INFO] [stderr]     Checking parking_lot v0.7.1
[INFO] [stderr]     Checking tiff v0.2.2
[INFO] [stderr]     Checking wayland-commons v0.21.13
[INFO] [stderr]     Checking jpeg-decoder v0.1.22
[INFO] [stderr]     Checking addr2line v0.25.1
[INFO] [stderr]    Compiling synstructure v0.12.6
[INFO] [stderr]     Checking pistoncore-input v0.23.0
[INFO] [stderr]     Checking image v0.20.1
[INFO] [stderr]    Compiling failure_derive v0.1.8
[INFO] [stderr]     Checking pistoncore-window v0.34.0
[INFO] [stderr]     Checking pistoncore-event_loop v0.39.0
[INFO] [stderr]     Checking piston v0.39.0
[INFO] [stderr]     Checking piston2d-opengl_graphics v0.57.0
[INFO] [stderr]     Checking backtrace v0.3.76
[INFO] [stderr]     Checking failure v0.1.8
[INFO] [stderr]     Checking smithay-client-toolkit v0.4.6
[INFO] [stderr]     Checking winit v0.18.1
[INFO] [stderr]     Checking pistoncore-glutin_window v0.51.1
[INFO] [stderr]     Checking parallel-conway v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] error: expected pattern, found `let`
[INFO] [stdout]   --> src/main.rs:22:9
[INFO] [stdout]    |
[INFO] [stdout] 22 |     let let Err(error) = run() {
[INFO] [stdout]    |         ^^^
[INFO] [stdout]    |
[INFO] [stdout] help: remove the unnecessary `let` keyword
[INFO] [stdout]    |
[INFO] [stdout] 22 -     let let Err(error) = run() {
[INFO] [stdout] 22 +     let Err(error) = run() {
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: expected one of `.`, `;`, `?`, `else`, or an operator, found `{`
[INFO] [stdout]   --> src/main.rs:22:32
[INFO] [stdout]    |
[INFO] [stdout] 22 |     let let Err(error) = run() {
[INFO] [stdout]    |                                ^ expected one of `.`, `;`, `?`, `else`, or an operator
[INFO] [stdout]    |
[INFO] [stdout] help: you might have meant to use `if let`
[INFO] [stdout]    |
[INFO] [stdout] 22 |     if let let Err(error) = run() {
[INFO] [stdout]    |     ++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: expected expression, found `.`
[INFO] [stdout]   --> src/life.rs:73:22
[INFO] [stdout]    |
[INFO] [stdout] 73 |                 match.rng.gen() {
[INFO] [stdout]    |                 -----^ expected expression
[INFO] [stdout]    |                 |
[INFO] [stdout]    |                 while parsing this `match` expression
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0432]: unresolved import `sdl2_window`
[INFO] [stdout]  --> src/main.rs:7:5
[INFO] [stdout]   |
[INFO] [stdout] 7 | use sdl2_window::Sdl2Window as Window;
[INFO] [stdout]   |     ^^^^^^^^^^^ use of unresolved module or unlinked crate `sdl2_window`
[INFO] [stdout]   |
[INFO] [stdout]   = help: if you wanted to use a crate named `sdl2_window`, use `cargo add sdl2_window` to add it to your `Cargo.toml`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0424]: expected value, found module `self`
[INFO] [stdout]   --> src/life.rs:38:29
[INFO] [stdout]    |
[INFO] [stdout] 31 |     fn new_with_custom_rules(
[INFO] [stdout]    |        --------------------- this function doesn't have a `self` parameter
[INFO] [stdout] ...
[INFO] [stdout] 38 |         let new_cells = (0..self.len())
[INFO] [stdout]    |                             ^^^^ `self` value is a keyword only available in methods with a `self` parameter
[INFO] [stdout]    |
[INFO] [stdout] help: add a `self` receiver parameter to make the associated `fn` a method
[INFO] [stdout]    |
[INFO] [stdout] 32 |         &self, rows: usize,
[INFO] [stdout]    |         ++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `ResultExt`
[INFO] [stdout]  --> src/main.rs:1:22
[INFO] [stdout]   |
[INFO] [stdout] 1 | use failure::{Error, ResultExt};
[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: `piston::input::*`
[INFO] [stdout]  --> src/main.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | use piston::input::*;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `piston::event_loop::*`
[INFO] [stdout]  --> src/main.rs:5:5
[INFO] [stdout]   |
[INFO] [stdout] 5 | use piston::event_loop::*;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `piston::window::WindowSettings`
[INFO] [stdout]  --> src/main.rs:6:5
[INFO] [stdout]   |
[INFO] [stdout] 6 | use piston::window::WindowSettings;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::fmt`
[INFO] [stdout]  --> src/life.rs:3:5
[INFO] [stdout]   |
[INFO] [stdout] 3 | use std::fmt;
[INFO] [stdout]   |     ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::iter`
[INFO] [stdout]  --> src/life.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | use std::iter;
[INFO] [stdout]   |     ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Rng` and `thread_rng`
[INFO] [stdout]  --> src/life.rs:7:12
[INFO] [stdout]   |
[INFO] [stdout] 7 | use rand::{Rng, thread_rng};
[INFO] [stdout]   |            ^^^  ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: expected pattern, found `let`
[INFO] [stdout]   --> src/main.rs:22:9
[INFO] [stdout]    |
[INFO] [stdout] 22 |     let let Err(error) = run() {
[INFO] [stdout]    |         ^^^
[INFO] [stdout]    |
[INFO] [stdout] help: remove the unnecessary `let` keyword
[INFO] [stdout]    |
[INFO] [stdout] 22 -     let let Err(error) = run() {
[INFO] [stdout] 22 +     let Err(error) = run() {
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: expected one of `.`, `;`, `?`, `else`, or an operator, found `{`
[INFO] [stdout]   --> src/main.rs:22:32
[INFO] [stdout]    |
[INFO] [stdout] 22 |     let let Err(error) = run() {
[INFO] [stdout]    |                                ^ expected one of `.`, `;`, `?`, `else`, or an operator
[INFO] [stdout]    |
[INFO] [stdout] help: you might have meant to use `if let`
[INFO] [stdout]    |
[INFO] [stdout] 22 |     if let let Err(error) = run() {
[INFO] [stdout]    |     ++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: expected expression, found `.`
[INFO] [stdout]   --> src/life.rs:73:22
[INFO] [stdout]    |
[INFO] [stdout] 73 |                 match.rng.gen() {
[INFO] [stdout]    |                 -----^ expected expression
[INFO] [stdout]    |                 |
[INFO] [stdout]    |                 while parsing this `match` expression
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0432]: unresolved import `sdl2_window`
[INFO] [stdout]  --> src/main.rs:7:5
[INFO] [stdout]   |
[INFO] [stdout] 7 | use sdl2_window::Sdl2Window as Window;
[INFO] [stdout]   |     ^^^^^^^^^^^ use of unresolved module or unlinked crate `sdl2_window`
[INFO] [stdout]   |
[INFO] [stdout]   = help: if you wanted to use a crate named `sdl2_window`, use `cargo add sdl2_window` to add it to your `Cargo.toml`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0424]: expected value, found module `self`
[INFO] [stdout]   --> src/life.rs:38:29
[INFO] [stdout]    |
[INFO] [stdout] 31 |     fn new_with_custom_rules(
[INFO] [stdout]    |        --------------------- this function doesn't have a `self` parameter
[INFO] [stdout] ...
[INFO] [stdout] 38 |         let new_cells = (0..self.len())
[INFO] [stdout]    |                             ^^^^ `self` value is a keyword only available in methods with a `self` parameter
[INFO] [stdout]    |
[INFO] [stdout] help: add a `self` receiver parameter to make the associated `fn` a method
[INFO] [stdout]    |
[INFO] [stdout] 32 |         &self, rows: usize,
[INFO] [stdout]    |         ++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `ResultExt`
[INFO] [stdout]  --> src/main.rs:1:22
[INFO] [stdout]   |
[INFO] [stdout] 1 | use failure::{Error, ResultExt};
[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: `piston::input::*`
[INFO] [stdout]  --> src/main.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | use piston::input::*;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `piston::event_loop::*`
[INFO] [stdout]  --> src/main.rs:5:5
[INFO] [stdout]   |
[INFO] [stdout] 5 | use piston::event_loop::*;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `piston::window::WindowSettings`
[INFO] [stdout]  --> src/main.rs:6:5
[INFO] [stdout]   |
[INFO] [stdout] 6 | use piston::window::WindowSettings;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::fmt`
[INFO] [stdout]  --> src/life.rs:3:5
[INFO] [stdout]   |
[INFO] [stdout] 3 | use std::fmt;
[INFO] [stdout]   |     ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::iter`
[INFO] [stdout]  --> src/life.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | use std::iter;
[INFO] [stdout]   |     ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Rng` and `thread_rng`
[INFO] [stdout]  --> src/life.rs:7:12
[INFO] [stdout]   |
[INFO] [stdout] 7 | use rand::{Rng, thread_rng};
[INFO] [stdout]   |            ^^^  ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `into_par_iter` found for struct `std::ops::Range<Idx>` in the current scope
[INFO] [stdout]    --> src/life.rs:39:14
[INFO] [stdout]     |
[INFO] [stdout]  38 |           let new_cells = (0..self.len())
[INFO] [stdout]     |  _________________________-
[INFO] [stdout]  39 | |             .into_par_iter()
[INFO] [stdout]     | |_____________-^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/rayon-1.0.3/src/iter/mod.rs:211:8
[INFO] [stdout]     |
[INFO] [stdout] 211 |       fn into_par_iter(self) -> Self::Iter;
[INFO] [stdout]     |          ------------- the method is available for `std::ops::Range<{integer}>` here
[INFO] [stdout]     |
[INFO] [stdout]     = help: items from traits can only be used if the trait is in scope
[INFO] [stdout] help: trait `IntoParallelIterator` which provides `into_par_iter` is implemented but not in scope; perhaps you want to import it
[INFO] [stdout]     |
[INFO] [stdout]   3 + use rayon::iter::IntoParallelIterator;
[INFO] [stdout]     |
[INFO] [stdout] help: there is a method `into_iter` with a similar name
[INFO] [stdout]     |
[INFO] [stdout]  39 -             .into_par_iter()
[INFO] [stdout]  39 +             .into_iter()
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0560]: struct `Board` has no field named `width`
[INFO] [stdout]   --> src/life.rs:60:13
[INFO] [stdout]    |
[INFO] [stdout] 60 |             width: self.width,
[INFO] [stdout]    |             ^^^^^ `Board` does not have this field
[INFO] [stdout]    |
[INFO] [stdout]    = note: available fields are: `rows`, `cols`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0615]: attempted to take value of method `width` on type `&Board`
[INFO] [stdout]   --> src/life.rs:60:25
[INFO] [stdout]    |
[INFO] [stdout] 60 |             width: self.width,
[INFO] [stdout]    |                         ^^^^^ method, not a field
[INFO] [stdout]    |
[INFO] [stdout] help: use parentheses to call the method
[INFO] [stdout]    |
[INFO] [stdout] 60 |             width: self.width(),
[INFO] [stdout]    |                              ++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0560]: struct `Board` has no field named `height`
[INFO] [stdout]   --> src/life.rs:61:13
[INFO] [stdout]    |
[INFO] [stdout] 61 |             height: self.height,
[INFO] [stdout]    |             ^^^^^^ `Board` does not have this field
[INFO] [stdout]    |
[INFO] [stdout]    = note: available fields are: `rows`, `cols`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0615]: attempted to take value of method `height` on type `&Board`
[INFO] [stdout]   --> src/life.rs:61:26
[INFO] [stdout]    |
[INFO] [stdout] 61 |             height: self.height,
[INFO] [stdout]    |                          ^^^^^^ method, not a field
[INFO] [stdout]    |
[INFO] [stdout] help: use parentheses to call the method
[INFO] [stdout]    |
[INFO] [stdout] 61 |             height: self.height(),
[INFO] [stdout]    |                                ++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `into_par_iter` found for struct `std::ops::Range<Idx>` in the current scope
[INFO] [stdout]    --> src/life.rs:71:14
[INFO] [stdout]     |
[INFO] [stdout]  70 |           let new_cells = (0..self.len())
[INFO] [stdout]     |  _________________________-
[INFO] [stdout]  71 | |             .into_par_iter()
[INFO] [stdout]     | |_____________-^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/rayon-1.0.3/src/iter/mod.rs:211:8
[INFO] [stdout]     |
[INFO] [stdout] 211 |       fn into_par_iter(self) -> Self::Iter;
[INFO] [stdout]     |          ------------- the method is available for `std::ops::Range<usize>` here
[INFO] [stdout]     |
[INFO] [stdout]     = help: items from traits can only be used if the trait is in scope
[INFO] [stdout] help: trait `IntoParallelIterator` which provides `into_par_iter` is implemented but not in scope; perhaps you want to import it
[INFO] [stdout]     |
[INFO] [stdout]   3 + use rayon::iter::IntoParallelIterator;
[INFO] [stdout]     |
[INFO] [stdout] help: there is a method `into_iter` with a similar name
[INFO] [stdout]     |
[INFO] [stdout]  71 -             .into_par_iter()
[INFO] [stdout]  71 +             .into_iter()
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `into_par_iter` found for struct `std::ops::Range<Idx>` in the current scope
[INFO] [stdout]    --> src/life.rs:39:14
[INFO] [stdout]     |
[INFO] [stdout]  38 |           let new_cells = (0..self.len())
[INFO] [stdout]     |  _________________________-
[INFO] [stdout]  39 | |             .into_par_iter()
[INFO] [stdout]     | |_____________-^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/rayon-1.0.3/src/iter/mod.rs:211:8
[INFO] [stdout]     |
[INFO] [stdout] 211 |       fn into_par_iter(self) -> Self::Iter;
[INFO] [stdout]     |          ------------- the method is available for `std::ops::Range<{integer}>` here
[INFO] [stdout]     |
[INFO] [stdout]     = help: items from traits can only be used if the trait is in scope
[INFO] [stdout] help: trait `IntoParallelIterator` which provides `into_par_iter` is implemented but not in scope; perhaps you want to import it
[INFO] [stdout]     |
[INFO] [stdout]   3 + use rayon::iter::IntoParallelIterator;
[INFO] [stdout]     |
[INFO] [stdout] help: there is a method `into_iter` with a similar name
[INFO] [stdout]     |
[INFO] [stdout]  39 -             .into_par_iter()
[INFO] [stdout]  39 +             .into_iter()
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0560]: struct `Board` has no field named `width`
[INFO] [stdout]   --> src/life.rs:60:13
[INFO] [stdout]    |
[INFO] [stdout] 60 |             width: self.width,
[INFO] [stdout]    |             ^^^^^ `Board` does not have this field
[INFO] [stdout]    |
[INFO] [stdout]    = note: available fields are: `rows`, `cols`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0615]: attempted to take value of method `width` on type `&Board`
[INFO] [stdout]   --> src/life.rs:60:25
[INFO] [stdout]    |
[INFO] [stdout] 60 |             width: self.width,
[INFO] [stdout]    |                         ^^^^^ method, not a field
[INFO] [stdout]    |
[INFO] [stdout] help: use parentheses to call the method
[INFO] [stdout]    |
[INFO] [stdout] 60 |             width: self.width(),
[INFO] [stdout]    |                              ++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0560]: struct `Board` has no field named `height`
[INFO] [stdout]   --> src/life.rs:61:13
[INFO] [stdout]    |
[INFO] [stdout] 61 |             height: self.height,
[INFO] [stdout]    |             ^^^^^^ `Board` does not have this field
[INFO] [stdout]    |
[INFO] [stdout]    = note: available fields are: `rows`, `cols`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0615]: attempted to take value of method `height` on type `&Board`
[INFO] [stdout]   --> src/life.rs:61:26
[INFO] [stdout]    |
[INFO] [stdout] 61 |             height: self.height,
[INFO] [stdout]    |                          ^^^^^^ method, not a field
[INFO] [stdout]    |
[INFO] [stdout] help: use parentheses to call the method
[INFO] [stdout]    |
[INFO] [stdout] 61 |             height: self.height(),
[INFO] [stdout]    |                                ++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `into_par_iter` found for struct `std::ops::Range<Idx>` in the current scope
[INFO] [stdout]    --> src/life.rs:125:14
[INFO] [stdout]     |
[INFO] [stdout] 124 |           let new_cells = (0..self.len())
[INFO] [stdout]     |  _________________________-
[INFO] [stdout] 125 | |             .into_par_iter()
[INFO] [stdout]     | |_____________-^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/rayon-1.0.3/src/iter/mod.rs:211:8
[INFO] [stdout]     |
[INFO] [stdout] 211 |       fn into_par_iter(self) -> Self::Iter;
[INFO] [stdout]     |          ------------- the method is available for `std::ops::Range<usize>` here
[INFO] [stdout]     |
[INFO] [stdout]     = help: items from traits can only be used if the trait is in scope
[INFO] [stdout] help: trait `IntoParallelIterator` which provides `into_par_iter` is implemented but not in scope; perhaps you want to import it
[INFO] [stdout]     |
[INFO] [stdout]   3 + use rayon::iter::IntoParallelIterator;
[INFO] [stdout]     |
[INFO] [stdout] help: there is a method `into_iter` with a similar name
[INFO] [stdout]     |
[INFO] [stdout] 125 -             .into_par_iter()
[INFO] [stdout] 125 +             .into_iter()
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `into_par_iter` found for struct `std::ops::Range<Idx>` in the current scope
[INFO] [stdout]    --> src/life.rs:71:14
[INFO] [stdout]     |
[INFO] [stdout]  70 |           let new_cells = (0..self.len())
[INFO] [stdout]     |  _________________________-
[INFO] [stdout]  71 | |             .into_par_iter()
[INFO] [stdout]     | |_____________-^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/rayon-1.0.3/src/iter/mod.rs:211:8
[INFO] [stdout]     |
[INFO] [stdout] 211 |       fn into_par_iter(self) -> Self::Iter;
[INFO] [stdout]     |          ------------- the method is available for `std::ops::Range<usize>` here
[INFO] [stdout]     |
[INFO] [stdout]     = help: items from traits can only be used if the trait is in scope
[INFO] [stdout] help: trait `IntoParallelIterator` which provides `into_par_iter` is implemented but not in scope; perhaps you want to import it
[INFO] [stdout]     |
[INFO] [stdout]   3 + use rayon::iter::IntoParallelIterator;
[INFO] [stdout]     |
[INFO] [stdout] help: there is a method `into_iter` with a similar name
[INFO] [stdout]     |
[INFO] [stdout]  71 -             .into_par_iter()
[INFO] [stdout]  71 +             .into_iter()
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]   --> src/main.rs:36:13
[INFO] [stdout]    |
[INFO] [stdout] 36 | fn run() -> Result<(), Error> {
[INFO] [stdout]    |    ---      ^^^^^^^^^^^^^^^^^ expected `Result<(), Error>`, found `()`
[INFO] [stdout]    |    |
[INFO] [stdout]    |    implicitly returns `()` as its body has no tail or `return` expression
[INFO] [stdout]    |
[INFO] [stdout]    = note:   expected enum `Result<(), failure::Error>`
[INFO] [stdout]            found unit type `()`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] Some errors have detailed explanations: E0308, E0424, E0432, E0560, E0599, E0615.
[INFO] [stdout] 
[INFO] [stdout] For more information about an error, try `rustc --explain E0308`.
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `into_par_iter` found for struct `std::ops::Range<Idx>` in the current scope
[INFO] [stdout]    --> src/life.rs:125:14
[INFO] [stdout]     |
[INFO] [stdout] 124 |           let new_cells = (0..self.len())
[INFO] [stdout]     |  _________________________-
[INFO] [stdout] 125 | |             .into_par_iter()
[INFO] [stdout]     | |_____________-^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/rayon-1.0.3/src/iter/mod.rs:211:8
[INFO] [stdout]     |
[INFO] [stdout] 211 |       fn into_par_iter(self) -> Self::Iter;
[INFO] [stdout]     |          ------------- the method is available for `std::ops::Range<usize>` here
[INFO] [stdout]     |
[INFO] [stdout]     = help: items from traits can only be used if the trait is in scope
[INFO] [stdout] help: trait `IntoParallelIterator` which provides `into_par_iter` is implemented but not in scope; perhaps you want to import it
[INFO] [stdout]     |
[INFO] [stdout]   3 + use rayon::iter::IntoParallelIterator;
[INFO] [stdout]     |
[INFO] [stdout] help: there is a method `into_iter` with a similar name
[INFO] [stdout]     |
[INFO] [stdout] 125 -             .into_par_iter()
[INFO] [stdout] 125 +             .into_iter()
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]   --> src/main.rs:36:13
[INFO] [stdout]    |
[INFO] [stdout] 36 | fn run() -> Result<(), Error> {
[INFO] [stdout]    |    ---      ^^^^^^^^^^^^^^^^^ expected `Result<(), Error>`, found `()`
[INFO] [stdout]    |    |
[INFO] [stdout]    |    implicitly returns `()` as its body has no tail or `return` expression
[INFO] [stdout]    |
[INFO] [stdout]    = note:   expected enum `Result<(), failure::Error>`
[INFO] [stdout]            found unit type `()`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] Some errors have detailed explanations: E0308, E0424, E0432, E0560, E0599, E0615.
[INFO] [stdout] 
[INFO] [stdout] For more information about an error, try `rustc --explain E0308`.
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `parallel-conway` (bin "parallel-conway" test) due to 13 previous errors; 7 warnings emitted
[INFO] [stderr] warning: build failed, waiting for other jobs to finish...
[INFO] [stderr] error: could not compile `parallel-conway` (bin "parallel-conway") due to 13 previous errors; 7 warnings emitted
[INFO] running `Command { std: "docker" "inspect" "cd6ba0e9210056799234b8c0e786d0db55c886185ae89fbf865ca780360216ea", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "cd6ba0e9210056799234b8c0e786d0db55c886185ae89fbf865ca780360216ea", kill_on_drop: false }`
[INFO] [stdout] cd6ba0e9210056799234b8c0e786d0db55c886185ae89fbf865ca780360216ea
