[INFO] cloning repository https://github.com/JettTech/rust-async-workshop
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/JettTech/rust-async-workshop" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FJettTech%2Frust-async-workshop", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FJettTech%2Frust-async-workshop'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] 81ee361f04c4fe1a3b7a0a1eb644a2f1a2cb1fc0
[INFO] checking JettTech/rust-async-workshop against beta-2021-10-15 for beta-1.56-3
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FJettTech%2Frust-async-workshop" "/workspace/builds/worker-93/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-93/source'...
[INFO] [stderr] done.
[INFO] [stderr] Updating files:  27% (1754/6349)
Updating files:  28% (1778/6349)
Updating files:  29% (1842/6349)
Updating files:  30% (1905/6349)
Updating files:  31% (1969/6349)
Updating files:  32% (2032/6349)
Updating files:  33% (2096/6349)
Updating files:  34% (2159/6349)
Updating files:  35% (2223/6349)
Updating files:  36% (2286/6349)
Updating files:  37% (2350/6349)
Updating files:  38% (2413/6349)
Updating files:  39% (2477/6349)
Updating files:  40% (2540/6349)
Updating files:  41% (2604/6349)
Updating files:  42% (2667/6349)
Updating files:  43% (2731/6349)
Updating files:  44% (2794/6349)
Updating files:  45% (2858/6349)
Updating files:  46% (2921/6349)
Updating files:  46% (2951/6349)
Updating files:  47% (2985/6349)
Updating files:  48% (3048/6349)
Updating files:  49% (3112/6349)
Updating files:  50% (3175/6349)
Updating files:  51% (3238/6349)
Updating files:  52% (3302/6349)
Updating files:  53% (3365/6349)
Updating files:  54% (3429/6349)
Updating files:  55% (3492/6349)
Updating files:  56% (3556/6349)
Updating files:  57% (3619/6349)
Updating files:  58% (3683/6349)
Updating files:  59% (3746/6349)
Updating files:  60% (3810/6349)
Updating files:  61% (3873/6349)
Updating files:  62% (3937/6349)
Updating files:  63% (4000/6349)
Updating files:  64% (4064/6349)
Updating files:  65% (4127/6349)
Updating files:  66% (4191/6349)
Updating files:  67% (4254/6349)
Updating files:  68% (4318/6349)
Updating files:  69% (4381/6349)
Updating files:  70% (4445/6349)
Updating files:  71% (4508/6349)
Updating files:  72% (4572/6349)
Updating files:  73% (4635/6349)
Updating files:  74% (4699/6349)
Updating files:  75% (4762/6349)
Updating files:  76% (4826/6349)
Updating files:  77% (4889/6349)
Updating files:  78% (4953/6349)
Updating files:  79% (5016/6349)
Updating files:  80% (5080/6349)
Updating files:  81% (5143/6349)
Updating files:  82% (5207/6349)
Updating files:  83% (5270/6349)
Updating files:  84% (5334/6349)
Updating files:  85% (5397/6349)
Updating files:  86% (5461/6349)
Updating files:  87% (5524/6349)
Updating files:  88% (5588/6349)
Updating files:  89% (5651/6349)
Updating files:  90% (5715/6349)
Updating files:  91% (5778/6349)
Updating files:  92% (5842/6349)
Updating files:  93% (5905/6349)
Updating files:  94% (5969/6349)
Updating files:  95% (6032/6349)
Updating files:  96% (6096/6349)
Updating files:  97% (6159/6349)
Updating files:  98% (6223/6349)
Updating files:  99% (6286/6349)
Updating files: 100% (6349/6349)
Updating files: 100% (6349/6349), done.
[INFO] validating manifest of git repo https://github.com/JettTech/rust-async-workshop on toolchain beta-2021-10-15
[INFO] running `Command { std: "/workspace/cargo-home/bin/cargo" "+beta-2021-10-15" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] removed /workspace/builds/worker-93/source/.cargo/config
[INFO] removed /workspace/builds/worker-93/source/rust-toolchain
[INFO] started tweaking git repo https://github.com/JettTech/rust-async-workshop
[INFO] finished tweaking git repo https://github.com/JettTech/rust-async-workshop
[INFO] tweaked toml for git repo https://github.com/JettTech/rust-async-workshop written to /workspace/builds/worker-93/source/Cargo.toml
[INFO] crate git repo https://github.com/JettTech/rust-async-workshop already has a lockfile, it will not be regenerated
[INFO] running `Command { std: "/workspace/cargo-home/bin/cargo" "+beta-2021-10-15" "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-93/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-93/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:a89201d6b5b9fd45c15d5952ece0a0129e7e80cb26ec023fd59cf09bc26f1604" "/opt/rustwide/cargo-home/bin/cargo" "+beta-2021-10-15" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] cb7372c819cad6492131bb22c90985ae8fb3219b44ea5c584c2a4b069fd8c683
[INFO] running `Command { std: "docker" "start" "-a" "cb7372c819cad6492131bb22c90985ae8fb3219b44ea5c584c2a4b069fd8c683", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "cb7372c819cad6492131bb22c90985ae8fb3219b44ea5c584c2a4b069fd8c683", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "cb7372c819cad6492131bb22c90985ae8fb3219b44ea5c584c2a4b069fd8c683", kill_on_drop: false }`
[INFO] [stdout] cb7372c819cad6492131bb22c90985ae8fb3219b44ea5c584c2a4b069fd8c683
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-93/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-93/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=warn" "-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:a89201d6b5b9fd45c15d5952ece0a0129e7e80cb26ec023fd59cf09bc26f1604" "/opt/rustwide/cargo-home/bin/cargo" "+beta-2021-10-15" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 238bbb76c51cf5324e66a229429230c53a699b063cf10244de878f5fd8bb450a
[INFO] running `Command { std: "docker" "start" "-a" "238bbb76c51cf5324e66a229429230c53a699b063cf10244de878f5fd8bb450a", kill_on_drop: false }`
[INFO] [stderr]    Compiling libc v0.2.62
[INFO] [stderr]    Compiling autocfg v0.1.6
[INFO] [stderr]    Compiling proc-macro2 v1.0.3
[INFO] [stderr]    Compiling syn v1.0.5
[INFO] [stderr]     Checking rand_core v0.4.2
[INFO] [stderr]     Checking futures-core-preview v0.3.0-alpha.18
[INFO] [stderr]    Compiling arrayvec v0.4.11
[INFO] [stderr]     Checking scopeguard v1.0.0
[INFO] [stderr]     Checking futures v0.1.29
[INFO] [stderr]     Checking futures-io-preview v0.3.0-alpha.18
[INFO] [stderr]    Compiling pin-project-internal v0.4.0-alpha.11
[INFO] [stderr]     Checking unicode-width v0.1.6
[INFO] [stderr]     Checking regex-syntax v0.6.12
[INFO] [stderr]     Checking utf8-ranges v1.0.4
[INFO] [stderr]     Checking lazy_static v1.4.0
[INFO] [stderr]    Compiling heck v0.3.1
[INFO] [stderr]     Checking log v0.4.8
[INFO] [stderr]     Checking lock_api v0.1.5
[INFO] [stderr]    Compiling memoffset v0.5.1
[INFO] [stderr]    Compiling parking_lot_core v0.6.2
[INFO] [stderr]    Compiling parking_lot v0.9.0
[INFO] [stderr]     Checking aho-corasick v0.7.6
[INFO] [stderr]    Compiling parking_lot_core v0.4.0
[INFO] [stderr]     Checking lock_api v0.3.1
[INFO] [stderr]     Checking rand_core v0.3.1
[INFO] [stderr]     Checking rand_jitter v0.1.4
[INFO] [stderr]     Checking textwrap v0.11.0
[INFO] [stderr]     Checking futures-sink-preview v0.3.0-alpha.18
[INFO] [stderr]     Checking crossbeam-utils v0.6.6
[INFO] [stderr]     Checking tracing-core v0.1.6
[INFO] [stderr]     Checking thread_local v0.3.6
[INFO] [stderr]    Compiling rand_pcg v0.1.2
[INFO] [stderr]    Compiling rand_chacha v0.1.1
[INFO] [stderr]    Compiling rand v0.6.5
[INFO] [stderr]    Compiling num-traits v0.2.8
[INFO] [stderr]    Compiling num-integer v0.1.41
[INFO] [stderr]     Checking futures-channel-preview v0.3.0-alpha.18
[INFO] [stderr]     Checking rand_isaac v0.1.1
[INFO] [stderr]     Checking rand_hc v0.1.0
[INFO] [stderr]     Checking rand_xorshift v0.1.1
[INFO] [stderr]     Checking tokio-sync v0.1.6
[INFO] [stderr]     Checking crossbeam-queue v0.1.2
[INFO] [stderr]     Checking tokio-executor v0.1.8
[INFO] [stderr]     Checking crossbeam-channel v0.3.9
[INFO] [stderr]     Checking tracing-log v0.1.0
[INFO] [stderr]     Checking futures-util-preview v0.3.0-alpha.18
[INFO] [stderr]     Checking crossbeam-epoch v0.7.2
[INFO] [stderr]     Checking iovec v0.1.2
[INFO] [stderr]     Checking num_cpus v1.10.1
[INFO] [stderr]     Checking net2 v0.2.33
[INFO] [stderr]     Checking rand_os v0.1.3
[INFO] [stderr]     Checking atty v0.2.13
[INFO] [stderr]     Checking time v0.1.42
[INFO] [stderr]    Compiling quote v1.0.2
[INFO] [stderr]     Checking tokio-current-thread v0.1.6
[INFO] [stderr]     Checking tokio-timer v0.2.11
[INFO] [stderr]     Checking crossbeam-deque v0.7.1
[INFO] [stderr]     Checking clap v2.33.0
[INFO] [stderr]     Checking bytes v0.4.12
[INFO] [stderr]     Checking regex-automata v0.1.8
[INFO] [stderr]     Checking regex v1.3.1
[INFO] [stderr]     Checking mio v0.6.19
[INFO] [stderr]     Checking tokio-io v0.1.12
[INFO] [stderr]     Checking matchers v0.0.1
[INFO] [stderr]     Checking tokio-threadpool v0.1.15
[INFO] [stderr]     Checking mio-uds v0.6.7
[INFO] [stderr]     Checking tokio-codec v0.1.1
[INFO] [stderr]     Checking parking_lot v0.7.1
[INFO] [stderr]     Checking chrono v0.4.9
[INFO] [stderr]     Checking tokio-fs v0.1.6
[INFO] [stderr]     Checking tokio-sync v0.2.0-alpha.5
[INFO] [stderr]     Checking futures-executor-preview v0.3.0-alpha.18
[INFO] [stderr]     Checking tokio-reactor v0.1.9
[INFO] [stderr]     Checking futures-preview v0.3.0-alpha.18
[INFO] [stderr]     Checking tokio-udp v0.1.5
[INFO] [stderr]     Checking tokio-tcp v0.1.3
[INFO] [stderr]     Checking tokio-uds v0.2.5
[INFO] [stderr]    Compiling proc-macro-error v0.2.6
[INFO] [stderr]     Checking tokio v0.1.22
[INFO] [stderr]     Checking tracing-subscriber v0.1.3
[INFO] [stderr]    Compiling tracing-attributes v0.1.3
[INFO] [stderr]    Compiling tokio-macros v0.2.0-alpha.5
[INFO] [stderr]    Compiling structopt-derive v0.3.2
[INFO] [stderr]     Checking tracing v0.1.9
[INFO] [stderr]     Checking tokio-executor v0.2.0-alpha.5
[INFO] [stderr]     Checking pin-project v0.4.0-alpha.11
[INFO] [stderr]     Checking tokio-io v0.2.0-alpha.5
[INFO] [stderr]     Checking structopt v0.3.2
[INFO] [stderr]     Checking tokio-codec v0.2.0-alpha.5
[INFO] [stderr]     Checking tokio-fs v0.2.0-alpha.5
[INFO] [stderr]     Checking tokio-timer v0.3.0-alpha.5
[INFO] [stderr]     Checking tokio-net v0.2.0-alpha.5
[INFO] [stderr]     Checking tokio v0.2.0-alpha.5
[INFO] [stderr]     Checking tracing-futures v0.0.1-alpha.2 (https://github.com/tokio-rs/tracing?rev=9f1126a00d105ff85f5b65fc6457699430b1bed4#9f1126a0)
[INFO] [stderr]     Checking client v0.0.0 (/opt/rustwide/workdir/client)
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> client/src/../solutions/client.rs:10:39
[INFO] [stdout]    |
[INFO] [stdout] 10 | pub async fn run_client(user: String, mut stream: TcpStream) -> Result<(), Error> {
[INFO] [stdout]    |                                       ----^^^^^^
[INFO] [stdout]    |                                       |
[INFO] [stdout]    |                                       help: remove this `mut`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_mut)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> client/src/../solutions/client.rs:10:39
[INFO] [stdout]    |
[INFO] [stdout] 10 | pub async fn run_client(user: String, mut stream: TcpStream) -> Result<(), Error> {
[INFO] [stdout]    |                                       ----^^^^^^
[INFO] [stdout]    |                                       |
[INFO] [stdout]    |                                       help: remove this `mut`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_mut)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Checking server v0.0.0 (/opt/rustwide/workdir/server)
[INFO] [stdout] error[E0277]: the `?` operator can only be used in an async block that returns `Result` or `Option` (or another type that implements `FromResidual`)
[INFO] [stdout]    --> client/src/main.rs:31:48
[INFO] [stdout]     |
[INFO] [stdout] 25  | #[tokio::main]
[INFO] [stdout]     | -------------- this function should return `Result` or `Option` to accept `?`
[INFO] [stdout] ...
[INFO] [stdout] 31  |     let conn = TcpStream::connect(server).await?;
[INFO] [stdout]     |                                                ^ cannot use the `?` operator in an async block that returns `()`
[INFO] [stdout]     |
[INFO] [stdout]     = help: the trait `FromResidual<Result<Infallible, std::io::Error>>` is not implemented for `()`
[INFO] [stdout] note: required by `from_residual`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the `?` operator can only be used in an async block that returns `Result` or `Option` (or another type that implements `FromResidual`)
[INFO] [stdout]    --> client/src/main.rs:31:48
[INFO] [stdout]     |
[INFO] [stdout] 25  | #[tokio::main]
[INFO] [stdout]     | -------------- this function should return `Result` or `Option` to accept `?`
[INFO] [stdout] ...
[INFO] [stdout] 31  |     let conn = TcpStream::connect(server).await?;
[INFO] [stdout]     |                                                ^ cannot use the `?` operator in an async block that returns `()`
[INFO] [stdout]     |
[INFO] [stdout]     = help: the trait `FromResidual<Result<Infallible, std::io::Error>>` is not implemented for `()`
[INFO] [stdout] note: required by `from_residual`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]   --> client/src/main.rs:25:1
[INFO] [stdout]    |
[INFO] [stdout] 25 | #[tokio::main]
[INFO] [stdout]    | ^^^^^^^^^^^^^^
[INFO] [stdout]    | |
[INFO] [stdout]    | expected enum `Result`, found `()`
[INFO] [stdout]    | help: try using a variant of the expected enum: `Ok(#[tokio::main])`
[INFO] [stdout] 26 | async fn main() -> Result<(), client::Error> {
[INFO] [stdout]    |                    ------------------------- expected `Result<(), Box<(dyn std::error::Error + 'static)>>` because of return type
[INFO] [stdout]    |
[INFO] [stdout]    = note:   expected enum `Result<(), Box<(dyn std::error::Error + 'static)>>`
[INFO] [stdout]            found unit type `()`
[INFO] [stdout]    = note: this error originates in the attribute macro `tokio::main` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: aborting due to 2 previous errors; 1 warning emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]   --> client/src/main.rs:25:1
[INFO] [stdout]    |
[INFO] [stdout] 25 | #[tokio::main]
[INFO] [stdout]    | ^^^^^^^^^^^^^^
[INFO] [stdout]    | |
[INFO] [stdout]    | expected enum `Result`, found `()`
[INFO] [stdout]    | help: try using a variant of the expected enum: `Ok(#[tokio::main])`
[INFO] [stdout] 26 | async fn main() -> Result<(), client::Error> {
[INFO] [stdout]    |                    ------------------------- expected `Result<(), Box<(dyn std::error::Error + 'static)>>` because of return type
[INFO] [stdout]    |
[INFO] [stdout]    = note:   expected enum `Result<(), Box<(dyn std::error::Error + 'static)>>`
[INFO] [stdout]            found unit type `()`
[INFO] [stdout]    = note: this error originates in the attribute macro `tokio::main` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] Some errors have detailed explanations: E0277, E0308.
[INFO] [stdout] 
[INFO] [stdout] error: aborting due to 2 previous errors; 1 warning emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] Some errors have detailed explanations: E0277, E0308.
[INFO] [stdout] 
[INFO] [stdout] For more information about an error, try `rustc --explain E0277`.
[INFO] [stdout] 
[INFO] [stdout] For more information about an error, try `rustc --explain E0277`.
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `client` due to 3 previous errors; 1 warning emitted
[INFO] [stderr] warning: build failed, waiting for other jobs to finish...
[INFO] [stderr] error: build failed
[INFO] running `Command { std: "docker" "inspect" "238bbb76c51cf5324e66a229429230c53a699b063cf10244de878f5fd8bb450a", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "238bbb76c51cf5324e66a229429230c53a699b063cf10244de878f5fd8bb450a", kill_on_drop: false }`
[INFO] [stdout] 238bbb76c51cf5324e66a229429230c53a699b063cf10244de878f5fd8bb450a
