[INFO] cloning repository https://github.com/HotelCalifornia/riirc
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/HotelCalifornia/riirc" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FHotelCalifornia%2Friirc", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FHotelCalifornia%2Friirc'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] 9b6981ad12165b9fcaca7176030418223b10569c
[INFO] testing HotelCalifornia/riirc against beta-2023-04-20 for beta-1.70-1
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FHotelCalifornia%2Friirc" "/workspace/builds/worker-5-tc2/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-5-tc2/source'...
[INFO] [stderr] done.
[INFO] validating manifest of git repo https://github.com/HotelCalifornia/riirc on toolchain beta-2023-04-20
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+beta-2023-04-20" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] started tweaking git repo https://github.com/HotelCalifornia/riirc
[INFO] finished tweaking git repo https://github.com/HotelCalifornia/riirc
[INFO] tweaked toml for git repo https://github.com/HotelCalifornia/riirc written to /workspace/builds/worker-5-tc2/source/Cargo.toml
[INFO] crate git repo https://github.com/HotelCalifornia/riirc 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" "+beta-2023-04-20" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]  Downloading crates ...
[INFO] [stderr]   Downloaded derivative v2.0.2
[INFO] [stderr]   Downloaded proc-macro-hack v0.5.12
[INFO] [stderr]   Downloaded proc-macro-crate v0.1.4
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:5ff2268d62e97bff2cde7d5815dd6ed5b47097566f13b8d0ca110b04b60e07ed" "/opt/rustwide/cargo-home/bin/cargo" "+beta-2023-04-20" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] bd9f589d0b8c065b4640de4091dff58cd7402e1f4ff4be4b4f6945b6ddc4a964
[INFO] running `Command { std: "docker" "start" "-a" "bd9f589d0b8c065b4640de4091dff58cd7402e1f4ff4be4b4f6945b6ddc4a964", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "bd9f589d0b8c065b4640de4091dff58cd7402e1f4ff4be4b4f6945b6ddc4a964", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "bd9f589d0b8c065b4640de4091dff58cd7402e1f4ff4be4b4f6945b6ddc4a964", kill_on_drop: false }`
[INFO] [stdout] bd9f589d0b8c065b4640de4091dff58cd7402e1f4ff4be4b4f6945b6ddc4a964
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=warn" "-e" "RUSTDOCFLAGS=--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:5ff2268d62e97bff2cde7d5815dd6ed5b47097566f13b8d0ca110b04b60e07ed" "/opt/rustwide/cargo-home/bin/cargo" "+beta-2023-04-20" "build" "--frozen" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 3ef6fca957a3eb6e14db40248c0b523f215a4bbe5a5b316eadc102cb396f822e
[INFO] running `Command { std: "docker" "start" "-a" "3ef6fca957a3eb6e14db40248c0b523f215a4bbe5a5b316eadc102cb396f822e", kill_on_drop: false }`
[INFO] [stderr]    Compiling proc-macro2 v1.0.9
[INFO] [stderr]    Compiling unicode-xid v0.2.0
[INFO] [stderr]    Compiling syn v1.0.16
[INFO] [stderr]    Compiling libc v0.2.68
[INFO] [stderr]    Compiling slab v0.4.2
[INFO] [stderr]    Compiling memchr v2.3.3
[INFO] [stderr]    Compiling cfg-if v0.1.10
[INFO] [stderr]    Compiling serde v1.0.105
[INFO] [stderr]    Compiling log v0.4.8
[INFO] [stderr]    Compiling futures-core v0.3.4
[INFO] [stderr]    Compiling futures-sink v0.3.4
[INFO] [stderr]    Compiling proc-macro-nested v0.1.4
[INFO] [stderr]    Compiling futures-task v0.3.4
[INFO] [stderr]    Compiling pin-utils v0.1.0-alpha.4
[INFO] [stderr]    Compiling arc-swap v0.4.4
[INFO] [stderr]    Compiling futures-io v0.3.4
[INFO] [stderr]    Compiling lazy_static v1.4.0
[INFO] [stderr]    Compiling pin-project-lite v0.1.4
[INFO] [stderr]    Compiling bytes v0.5.4
[INFO] [stderr]    Compiling futures-channel v0.3.4
[INFO] [stderr]    Compiling fnv v1.0.6
[INFO] [stderr]    Compiling quote v1.0.3
[INFO] [stderr]    Compiling iovec v0.1.4
[INFO] [stderr]    Compiling net2 v0.2.33
[INFO] [stderr]    Compiling signal-hook-registry v1.2.0
[INFO] [stderr]    Compiling num_cpus v1.12.0
[INFO] [stderr]    Compiling mio v0.6.21
[INFO] [stderr]    Compiling mio-uds v0.6.7
[INFO] [stderr]    Compiling toml v0.5.6
[INFO] [stderr]    Compiling proc-macro-crate v0.1.4
[INFO] [stderr]    Compiling proc-macro-hack v0.5.12
[INFO] [stderr]    Compiling tokio-macros v0.2.5
[INFO] [stderr]    Compiling derivative v2.0.2
[INFO] [stderr]    Compiling num_enum_derive v0.4.3
[INFO] [stderr]    Compiling tokio v0.2.13
[INFO] [stderr]    Compiling futures-macro v0.3.4
[INFO] [stderr]    Compiling num_enum v0.4.3
[INFO] [stderr]    Compiling futures-util v0.3.4
[INFO] [stderr]    Compiling futures-executor v0.3.4
[INFO] [stderr]    Compiling futures v0.3.4
[INFO] [stderr]    Compiling tokio-util v0.3.1
[INFO] [stderr]    Compiling riirc v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] error[E0428]: the name `Command` is defined multiple times
[INFO] [stdout]    --> src/irc/proto.rs:313:1
[INFO] [stdout]     |
[INFO] [stdout] 28  | pub enum Command {
[INFO] [stdout]     | ---------------- previous definition of the type `Command` here
[INFO] [stdout] ...
[INFO] [stdout] 313 | pub enum Command {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^ `Command` redefined here
[INFO] [stdout]     |
[INFO] [stdout]     = note: `Command` must be defined only once in the type namespace of this module
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `ready`
[INFO] [stdout]  --> src/irc/transport.rs:1:15
[INFO] [stdout]   |
[INFO] [stdout] 1 | use futures::{ready, Stream, task::Poll};
[INFO] [stdout]   |               ^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `tokio_util::codec::Framed`
[INFO] [stdout]  --> src/irc/transport.rs:3:5
[INFO] [stdout]   |
[INFO] [stdout] 3 | use tokio_util::codec::Framed;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::time`
[INFO] [stdout]  --> src/irc/transport.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | use std::time;
[INFO] [stdout]   |     ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `impl futures::Future<Output = Result<tokio::net::TcpStream, std::io::Error>>: tokio::io::AsyncRead` is not satisfied
[INFO] [stdout]    --> src/irc/mod.rs:17:66
[INFO] [stdout]     |
[INFO] [stdout] 17  |         let stream = codec::ServerMessageCodec::default().framed(TcpStream::connect(addr));
[INFO] [stdout]     |                                                           ------ ^^^^^^^^^^^^^^^^^^^^^^^^ the trait `tokio::io::AsyncRead` is not implemented for `impl futures::Future<Output = Result<tokio::net::TcpStream, std::io::Error>>`
[INFO] [stdout]     |                                                           |
[INFO] [stdout]     |                                                           required by a bound introduced by this call
[INFO] [stdout]     |
[INFO] [stdout]     = help: the following other types implement trait `tokio::io::AsyncRead`:
[INFO] [stdout]               &[u8]
[INFO] [stdout]               &mut T
[INFO] [stdout]               Box<T>
[INFO] [stdout]               BufStream<RW>
[INFO] [stdout]               Pin<P>
[INFO] [stdout]               PollEvented<E>
[INFO] [stdout]               Transport
[INFO] [stdout]               std::io::Cursor<T>
[INFO] [stdout]             and 15 others
[INFO] [stdout] note: required by a bound in `framed`
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-6f17d22bba15001f/tokio-util-0.3.1/src/codec/decoder.rs:159:18
[INFO] [stdout]     |
[INFO] [stdout] 159 |     fn framed<T: AsyncRead + AsyncWrite + Sized>(self, io: T) -> Framed<T, Self>
[INFO] [stdout]     |                  ^^^^^^^^^ required by this bound in `Decoder::framed`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `impl futures::Future<Output = Result<tokio::net::TcpStream, std::io::Error>>: tokio::io::AsyncWrite` is not satisfied
[INFO] [stdout]    --> src/irc/mod.rs:17:66
[INFO] [stdout]     |
[INFO] [stdout] 17  |         let stream = codec::ServerMessageCodec::default().framed(TcpStream::connect(addr));
[INFO] [stdout]     |                                                           ------ ^^^^^^^^^^^^^^^^^^^^^^^^ the trait `tokio::io::AsyncWrite` is not implemented for `impl futures::Future<Output = Result<tokio::net::TcpStream, std::io::Error>>`
[INFO] [stdout]     |                                                           |
[INFO] [stdout]     |                                                           required by a bound introduced by this call
[INFO] [stdout]     |
[INFO] [stdout]     = help: the following other types implement trait `tokio::io::AsyncWrite`:
[INFO] [stdout]               &mut T
[INFO] [stdout]               Box<T>
[INFO] [stdout]               BufStream<RW>
[INFO] [stdout]               Pin<P>
[INFO] [stdout]               PollEvented<E>
[INFO] [stdout]               Transport
[INFO] [stdout]               Vec<u8>
[INFO] [stdout]               std::io::Cursor<&mut Vec<u8>>
[INFO] [stdout]             and 15 others
[INFO] [stdout] note: required by a bound in `framed`
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-6f17d22bba15001f/tokio-util-0.3.1/src/codec/decoder.rs:159:30
[INFO] [stdout]     |
[INFO] [stdout] 159 |     fn framed<T: AsyncRead + AsyncWrite + Sized>(self, io: T) -> Framed<T, Self>
[INFO] [stdout]     |                              ^^^^^^^^^^ required by this bound in `Decoder::framed`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: the method `split` exists for struct `Framed<impl Future<Output = Result<TcpStream, Error>>, ServerMessageCodec>`, but its trait bounds were not satisfied
[INFO] [stdout]   --> src/irc/mod.rs:18:37
[INFO] [stdout]    |
[INFO] [stdout] 18 |           let (sink, stream) = stream.split();
[INFO] [stdout]    |                                       ^^^^^ method cannot be called due to unsatisfied trait bounds
[INFO] [stdout]    |
[INFO] [stdout]   ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-6f17d22bba15001f/tokio-util-0.3.1/src/codec/framed.rs:20:1
[INFO] [stdout]    |
[INFO] [stdout] 20 | / pin_project! {
[INFO] [stdout] 21 | |     /// A unified [`Stream`] and [`Sink`] interface to an underlying I/O object, using
[INFO] [stdout] 22 | |     /// the `Encoder` and `Decoder` traits to encode and decode frames.
[INFO] [stdout] 23 | |     ///
[INFO] [stdout] ...  |
[INFO] [stdout] 34 | |     }
[INFO] [stdout] 35 | | }
[INFO] [stdout]    | | -
[INFO] [stdout]    | | |
[INFO] [stdout]    | |_doesn't satisfy `_: StreamExt`
[INFO] [stdout]    |   doesn't satisfy `_: Stream`
[INFO] [stdout]    |
[INFO] [stdout]    = note: the following trait bounds were not satisfied:
[INFO] [stdout]            `Framed<impl futures::Future<Output = Result<tokio::net::TcpStream, std::io::Error>>, ServerMessageCodec>: Stream`
[INFO] [stdout]            which is required by `Framed<impl futures::Future<Output = Result<tokio::net::TcpStream, std::io::Error>>, ServerMessageCodec>: futures::StreamExt`
[INFO] [stdout]            `&Framed<impl futures::Future<Output = Result<tokio::net::TcpStream, std::io::Error>>, ServerMessageCodec>: Stream`
[INFO] [stdout]            which is required by `&Framed<impl futures::Future<Output = Result<tokio::net::TcpStream, std::io::Error>>, ServerMessageCodec>: futures::StreamExt`
[INFO] [stdout]            `&mut Framed<impl futures::Future<Output = Result<tokio::net::TcpStream, std::io::Error>>, ServerMessageCodec>: Stream`
[INFO] [stdout]            which is required by `&mut Framed<impl futures::Future<Output = Result<tokio::net::TcpStream, std::io::Error>>, ServerMessageCodec>: futures::StreamExt`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no variant or associated item named `Cmd` found for enum `proto::Command` in the current scope
[INFO] [stdout]   --> src/irc/mod.rs:22:64
[INFO] [stdout]    |
[INFO] [stdout] 22 |             if let Ok(proto::Message {command: proto::Command::Cmd("PING"), params: params, ..}) = message {
[INFO] [stdout]    |                                                                ^^^ variant or associated item not found in `Command`
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/irc/proto.rs:28:1
[INFO] [stdout]    |
[INFO] [stdout] 28 | pub enum Command {
[INFO] [stdout]    | ---------------- variant or associated item `Cmd` not found for this enum
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0507]: cannot move out of `self.user.nick` which is behind a mutable reference
[INFO] [stdout]   --> src/irc/mod.rs:62:26
[INFO] [stdout]    |
[INFO] [stdout] 62 |             params: vec![self.user.nick],
[INFO] [stdout]    |                          ^^^^^^^^^^^^^^ move occurs because `self.user.nick` has type `String`, which does not implement the `Copy` trait
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0505]: cannot move out of `self.user.nick` because it is borrowed
[INFO] [stdout]   --> src/irc/mod.rs:62:26
[INFO] [stdout]    |
[INFO] [stdout] 58 | /         self.send(proto::Message {
[INFO] [stdout] 59 | |             tags: std::collections::HashMap::new(),
[INFO] [stdout] 60 | |             prefix: None,
[INFO] [stdout] 61 | |             command: proto::Command::from(String::from("NICK")),
[INFO] [stdout] 62 | |             params: vec![self.user.nick],
[INFO] [stdout]    | |                          ^^^^^^^^^^^^^^ move out of `self.user.nick` occurs here
[INFO] [stdout] 63 | |         }).await?;
[INFO] [stdout]    | |__________- borrow of `*self` occurs here
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0507]: cannot move out of `self.user.name` which is behind a mutable reference
[INFO] [stdout]   --> src/irc/mod.rs:68:26
[INFO] [stdout]    |
[INFO] [stdout] 68 | ...: vec![self.user.name.ok_or(self.user.nick)?, String::from("0"), String::from("*"), self.user.real_name.ok_or("Anonymous")?],
[INFO] [stdout]    |           ^^^^^^^^^^^^^^ --------------------- `self.user.name` moved due to this method call
[INFO] [stdout]    |           |
[INFO] [stdout]    |           help: consider calling `.as_ref()` or `.as_mut()` to borrow the type's contents
[INFO] [stdout]    |           move occurs because `self.user.name` has type `Option<String>`, which does not implement the `Copy` trait
[INFO] [stdout]    |
[INFO] [stdout] note: `Option::<T>::ok_or` takes ownership of the receiver `self`, which moves `self.user.name`
[INFO] [stdout]   --> /rustc/1b7dd2252b99671ce5d1cb9664c5f8636329436d/library/core/src/option.rs:1221:27
[INFO] [stdout] help: you can `clone` the value and consume it, but this might not be your desired behavior
[INFO] [stdout]    |
[INFO] [stdout] 68 |             params: vec![self.user.name.clone().ok_or(self.user.nick)?, String::from("0"), String::from("*"), self.user.real_name.ok_or("Anonymous")?],
[INFO] [stdout]    |                                         ++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0505]: cannot move out of `self.user.name` because it is borrowed
[INFO] [stdout]   --> src/irc/mod.rs:68:26
[INFO] [stdout]    |
[INFO] [stdout] 64 | / ...   self.send(proto::Message {
[INFO] [stdout] 65 | | ...       tags: std::collections::HashMap::new(),
[INFO] [stdout] 66 | | ...       prefix: None,
[INFO] [stdout] 67 | | ...       command: proto::Command::from(String::from("USER")),
[INFO] [stdout] 68 | | ...       params: vec![self.user.name.ok_or(self.user.nick)?, String::from("0"), String::from("*"), self.user.real_name.ok_or("Anonymous"...
[INFO] [stdout]    | |                        ^^^^^^^^^^^^^^ move out of `self.user.name` occurs here
[INFO] [stdout] 69 | | ...   }).await?;
[INFO] [stdout]    | |________- borrow of `*self` occurs here
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0507]: cannot move out of `self.user.nick` which is behind a mutable reference
[INFO] [stdout]   --> src/irc/mod.rs:68:47
[INFO] [stdout]    |
[INFO] [stdout] 68 | ...name.ok_or(self.user.nick)?, String::from("0"), String::from("*"), self.user.real_name.ok_or("Anonymous")?],
[INFO] [stdout]    |               ^^^^^^^^^^^^^^ move occurs because `self.user.nick` has type `String`, which does not implement the `Copy` trait
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0505]: cannot move out of `self.user.nick` because it is borrowed
[INFO] [stdout]   --> src/irc/mod.rs:68:47
[INFO] [stdout]    |
[INFO] [stdout] 64 | / ...   self.send(proto::Message {
[INFO] [stdout] 65 | | ...       tags: std::collections::HashMap::new(),
[INFO] [stdout] 66 | | ...       prefix: None,
[INFO] [stdout] 67 | | ...       command: proto::Command::from(String::from("USER")),
[INFO] [stdout] 68 | | ...       params: vec![self.user.name.ok_or(self.user.nick)?, String::from("0"), String::from("*"), self.user.real_name.ok_or("Anonymous"...
[INFO] [stdout]    | |                                             ^^^^^^^^^^^^^^ move out of `self.user.nick` occurs here
[INFO] [stdout] 69 | | ...   }).await?;
[INFO] [stdout]    | |________- borrow of `*self` occurs here
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0507]: cannot move out of `self.user.real_name` which is behind a mutable reference
[INFO] [stdout]   --> src/irc/mod.rs:68:103
[INFO] [stdout]    |
[INFO] [stdout] 68 | ... String::from("0"), String::from("*"), self.user.real_name.ok_or("Anonymous")?],
[INFO] [stdout]    |                                           ^^^^^^^^^^^^^^^^^^^ ------------------ `self.user.real_name` moved due to this method call
[INFO] [stdout]    |                                           |
[INFO] [stdout]    |                                           help: consider calling `.as_ref()` or `.as_mut()` to borrow the type's contents
[INFO] [stdout]    |                                           move occurs because `self.user.real_name` has type `Option<String>`, which does not implement the `Copy` trait
[INFO] [stdout]    |
[INFO] [stdout] help: you can `clone` the value and consume it, but this might not be your desired behavior
[INFO] [stdout]    |
[INFO] [stdout] 68 |             params: vec![self.user.name.ok_or(self.user.nick)?, String::from("0"), String::from("*"), self.user.real_name.clone().ok_or("Anonymous")?],
[INFO] [stdout]    |                                                                                                                           ++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0505]: cannot move out of `self.user.real_name` because it is borrowed
[INFO] [stdout]   --> src/irc/mod.rs:68:103
[INFO] [stdout]    |
[INFO] [stdout] 64 | /         self.send(proto::Message {
[INFO] [stdout] 65 | |             tags: std::collections::HashMap::new(),
[INFO] [stdout] 66 | |             prefix: None,
[INFO] [stdout] 67 | |             command: proto::Command::from(String::from("USER")),
[INFO] [stdout] 68 | |             params: vec![self.user.name.ok_or(self.user.nick)?, String::from("0"), String::from("*"), self.user.real_name.ok_or("Anonymou...
[INFO] [stdout]    | |                                                                                                       ^^^^^^^^^^^^^^^^^^^ move out of `self.user.real_name` occurs here
[INFO] [stdout] 69 | |         }).await?;
[INFO] [stdout]    | |__________- borrow of `*self` occurs here
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no variant or associated item named `Cmd` found for enum `proto::Command` in the current scope
[INFO] [stdout]    --> src/irc/proto.rs:314:5
[INFO] [stdout]     |
[INFO] [stdout] 28  | pub enum Command {
[INFO] [stdout]     | ---------------- variant or associated item `Cmd` not found for this enum
[INFO] [stdout] ...
[INFO] [stdout] 314 |     Cmd(String),
[INFO] [stdout]     |     ^^^^^^^^^^^ variant or associated item not found in `Command`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no variant or associated item named `Response` found for enum `proto::Command` in the current scope
[INFO] [stdout]    --> src/irc/proto.rs:315:5
[INFO] [stdout]     |
[INFO] [stdout] 28  | pub enum Command {
[INFO] [stdout]     | ---------------- variant or associated item `Response` not found for this enum
[INFO] [stdout] ...
[INFO] [stdout] 315 |     Response(Reply),
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^ variant or associated item not found in `Command`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no variant or associated item named `Cmd` found for enum `proto::Command` in the current scope
[INFO] [stdout]    --> src/irc/proto.rs:312:10
[INFO] [stdout]     |
[INFO] [stdout] 28  | pub enum Command {
[INFO] [stdout]     | ---------------- variant or associated item `Cmd` not found for this enum
[INFO] [stdout] ...
[INFO] [stdout] 312 | #[derive(Clone, Debug)]
[INFO] [stdout]     |          ^^^^^ variant or associated item not found in `Command`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no variant or associated item named `Response` found for enum `proto::Command` in the current scope
[INFO] [stdout]    --> src/irc/proto.rs:312:10
[INFO] [stdout]     |
[INFO] [stdout] 28  | pub enum Command {
[INFO] [stdout]     | ---------------- variant or associated item `Response` not found for this enum
[INFO] [stdout] ...
[INFO] [stdout] 312 | #[derive(Clone, Debug)]
[INFO] [stdout]     |          ^^^^^ variant or associated item not found in `Command`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no variant or associated item named `Response` found for enum `proto::Command` in the current scope
[INFO] [stdout]    --> src/irc/proto.rs:321:37
[INFO] [stdout]     |
[INFO] [stdout] 28  | pub enum Command {
[INFO] [stdout]     | ---------------- variant or associated item `Response` not found for this enum
[INFO] [stdout] ...
[INFO] [stdout] 321 |             b'0'..=b'9' => Command::Response(Reply::from(String::from_utf8(src.to_vec()).unwrap().parse::<u16>().unwrap())),
[INFO] [stdout]     |                                     ^^^^^^^^ variant or associated item not found in `Command`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no variant or associated item named `Cmd` found for enum `proto::Command` in the current scope
[INFO] [stdout]    --> src/irc/proto.rs:322:27
[INFO] [stdout]     |
[INFO] [stdout] 28  | pub enum Command {
[INFO] [stdout]     | ---------------- variant or associated item `Cmd` not found for this enum
[INFO] [stdout] ...
[INFO] [stdout] 322 |             _ => Command::Cmd(String::from_utf8(src.to_vec()).unwrap()),
[INFO] [stdout]     |                           ^^^ variant or associated item not found in `Command`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no variant or associated item named `Response` found for enum `proto::Command` in the current scope
[INFO] [stdout]    --> src/irc/proto.rs:330:31
[INFO] [stdout]     |
[INFO] [stdout] 28  | pub enum Command {
[INFO] [stdout]     | ---------------- variant or associated item `Response` not found for this enum
[INFO] [stdout] ...
[INFO] [stdout] 330 |             Ok(n) => Command::Response(Reply::from(n)),
[INFO] [stdout]     |                               ^^^^^^^^ variant or associated item not found in `Command`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no variant or associated item named `Cmd` found for enum `proto::Command` in the current scope
[INFO] [stdout]    --> src/irc/proto.rs:331:32
[INFO] [stdout]     |
[INFO] [stdout] 28  | pub enum Command {
[INFO] [stdout]     | ---------------- variant or associated item `Cmd` not found for this enum
[INFO] [stdout] ...
[INFO] [stdout] 331 |             Err(_) => Command::Cmd(src),
[INFO] [stdout]     |                                ^^^ variant or associated item not found in `Command`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no variant or associated item named `Response` found for enum `proto::Command` in the current scope
[INFO] [stdout]    --> src/irc/proto.rs:431:22
[INFO] [stdout]     |
[INFO] [stdout] 28  | pub enum Command {
[INFO] [stdout]     | ---------------- variant or associated item `Response` not found for this enum
[INFO] [stdout] ...
[INFO] [stdout] 431 |             Command::Response(n) => format!("{:?}", n),
[INFO] [stdout]     |                      ^^^^^^^^ variant or associated item not found in `Command`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no variant or associated item named `Cmd` found for enum `proto::Command` in the current scope
[INFO] [stdout]    --> src/irc/proto.rs:432:22
[INFO] [stdout]     |
[INFO] [stdout] 28  | pub enum Command {
[INFO] [stdout]     | ---------------- variant or associated item `Cmd` not found for this enum
[INFO] [stdout] ...
[INFO] [stdout] 432 |             Command::Cmd(s) => format!("{}", s),
[INFO] [stdout]     |                      ^^^ variant or associated item not found in `Command`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: the function or associated item `poll_next` exists for struct `TcpStream`, but its trait bounds were not satisfied
[INFO] [stdout]   --> src/irc/transport.rs:16:20
[INFO] [stdout]    |
[INFO] [stdout] 16 |         TcpStream::poll_next(std::pin::Pin::new(self.get_mut().stream), cx, buf)
[INFO] [stdout]    |                    ^^^^^^^^^ function or associated item cannot be called on `TcpStream` due to unsatisfied trait bounds
[INFO] [stdout]    |
[INFO] [stdout]   ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-6f17d22bba15001f/tokio-0.2.13/src/net/tcp/stream.rs:45:5
[INFO] [stdout]    |
[INFO] [stdout] 45 |     pub struct TcpStream {
[INFO] [stdout]    |     -------------------- doesn't satisfy `tokio::net::TcpStream: Stream`
[INFO] [stdout]    |
[INFO] [stdout]    = note: the following trait bounds were not satisfied:
[INFO] [stdout]            `tokio::net::TcpStream: Stream`
[INFO] [stdout]            which is required by `&mut tokio::net::TcpStream: Stream`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `tokio::net::TcpStream: Deref` is not satisfied
[INFO] [stdout]   --> src/irc/transport.rs:16:49
[INFO] [stdout]    |
[INFO] [stdout] 16 |         TcpStream::poll_next(std::pin::Pin::new(self.get_mut().stream), cx, buf)
[INFO] [stdout]    |                              ------------------ ^^^^^^^^^^^^^^^^^^^^^ the trait `Deref` is not implemented for `tokio::net::TcpStream`
[INFO] [stdout]    |                              |
[INFO] [stdout]    |                              required by a bound introduced by this call
[INFO] [stdout]    |
[INFO] [stdout] note: required by a bound in `Pin::<P>::new`
[INFO] [stdout]   --> /rustc/1b7dd2252b99671ce5d1cb9664c5f8636329436d/library/core/src/pin.rs:501:5
[INFO] [stdout] help: consider borrowing here
[INFO] [stdout]    |
[INFO] [stdout] 16 |         TcpStream::poll_next(std::pin::Pin::new(&self.get_mut().stream), cx, buf)
[INFO] [stdout]    |                                                 +
[INFO] [stdout] 16 |         TcpStream::poll_next(std::pin::Pin::new(&mut self.get_mut().stream), cx, buf)
[INFO] [stdout]    |                                                 ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]   --> src/irc/transport.rs:26:50
[INFO] [stdout]    |
[INFO] [stdout] 26 |         TcpStream::poll_write(std::pin::Pin::new(self.get_mut().stream), cx, buf)
[INFO] [stdout]    |                               ------------------ ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |                               |                  |
[INFO] [stdout]    |                               |                  expected `&mut TcpStream`, found `TcpStream`
[INFO] [stdout]    |                               |                  help: consider mutably borrowing here: `&mut self.get_mut().stream`
[INFO] [stdout]    |                               arguments to this function are incorrect
[INFO] [stdout]    |
[INFO] [stdout] note: associated function defined here
[INFO] [stdout]   --> /rustc/1b7dd2252b99671ce5d1cb9664c5f8636329436d/library/core/src/pin.rs:501:18
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]   --> src/irc/transport.rs:29:50
[INFO] [stdout]    |
[INFO] [stdout] 29 |         TcpStream::poll_flush(std::pin::Pin::new(self.get_mut().stream), cx)
[INFO] [stdout]    |                               ------------------ ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |                               |                  |
[INFO] [stdout]    |                               |                  expected `&mut TcpStream`, found `TcpStream`
[INFO] [stdout]    |                               |                  help: consider mutably borrowing here: `&mut self.get_mut().stream`
[INFO] [stdout]    |                               arguments to this function are incorrect
[INFO] [stdout]    |
[INFO] [stdout] note: associated function defined here
[INFO] [stdout]   --> /rustc/1b7dd2252b99671ce5d1cb9664c5f8636329436d/library/core/src/pin.rs:501:18
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]   --> src/irc/transport.rs:32:53
[INFO] [stdout]    |
[INFO] [stdout] 32 |         TcpStream::poll_shutdown(std::pin::Pin::new(self.get_mut().stream), cx)
[INFO] [stdout]    |                                  ------------------ ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |                                  |                  |
[INFO] [stdout]    |                                  |                  expected `&mut TcpStream`, found `TcpStream`
[INFO] [stdout]    |                                  |                  help: consider mutably borrowing here: `&mut self.get_mut().stream`
[INFO] [stdout]    |                                  arguments to this function are incorrect
[INFO] [stdout]    |
[INFO] [stdout] note: associated function defined here
[INFO] [stdout]   --> /rustc/1b7dd2252b99671ce5d1cb9664c5f8636329436d/library/core/src/pin.rs:501:18
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Stream`
[INFO] [stdout]  --> src/irc/transport.rs:1:22
[INFO] [stdout]   |
[INFO] [stdout] 1 | use futures::{ready, Stream, task::Poll};
[INFO] [stdout]   |                      ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: aborting due to 28 previous errors; 4 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] Some errors have detailed explanations: E0277, E0308, E0428, E0505, E0507, E0599.
[INFO] [stdout] 
[INFO] [stdout] For more information about an error, try `rustc --explain E0277`.
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `riirc` (bin "riirc") due to 29 previous errors; 4 warnings emitted
[INFO] running `Command { std: "docker" "inspect" "3ef6fca957a3eb6e14db40248c0b523f215a4bbe5a5b316eadc102cb396f822e", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "3ef6fca957a3eb6e14db40248c0b523f215a4bbe5a5b316eadc102cb396f822e", kill_on_drop: false }`
[INFO] [stdout] 3ef6fca957a3eb6e14db40248c0b523f215a4bbe5a5b316eadc102cb396f822e
