[INFO] fetching crate eligos 0.1.0...
[INFO] checking eligos-0.1.0 against master#30f74ff0dc4d66debc8b50724c446f817e5f75f4 for pr-121848-1
[INFO] extracting crate eligos 0.1.0 into /workspace/builds/worker-2-tc1/source
[INFO] validating manifest of crates.io crate eligos 0.1.0 on toolchain 30f74ff0dc4d66debc8b50724c446f817e5f75f4
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+30f74ff0dc4d66debc8b50724c446f817e5f75f4" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] started tweaking crates.io crate eligos 0.1.0
[INFO] removed 0 missing tests
[INFO] finished tweaking crates.io crate eligos 0.1.0
[INFO] tweaked toml for crates.io crate eligos 0.1.0 written to /workspace/builds/worker-2-tc1/source/Cargo.toml
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+30f74ff0dc4d66debc8b50724c446f817e5f75f4" "generate-lockfile" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Updating crates.io index
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+30f74ff0dc4d66debc8b50724c446f817e5f75f4" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]  Downloading crates ...
[INFO] [stderr]   Downloaded slab v0.1.3
[INFO] [stderr]   Downloaded nix v0.3.10
[INFO] [stderr]   Downloaded mio v0.4.4
[INFO] [stderr]   Downloaded winapi v0.1.23
[INFO] [stderr]   Downloaded bytes v0.2.11
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc1/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:2788e3201cd34a07e3172128adcd8b3090168a8e3bcc40d7c032b9dda1df7d1c" "/opt/rustwide/cargo-home/bin/cargo" "+30f74ff0dc4d66debc8b50724c446f817e5f75f4" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] deea09e57ad4c16ef61a2af0a477ab4185df30596582f9ff551422bdc1c3293b
[INFO] running `Command { std: "docker" "start" "-a" "deea09e57ad4c16ef61a2af0a477ab4185df30596582f9ff551422bdc1c3293b", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "deea09e57ad4c16ef61a2af0a477ab4185df30596582f9ff551422bdc1c3293b", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "deea09e57ad4c16ef61a2af0a477ab4185df30596582f9ff551422bdc1c3293b", kill_on_drop: false }`
[INFO] [stdout] deea09e57ad4c16ef61a2af0a477ab4185df30596582f9ff551422bdc1c3293b
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:2788e3201cd34a07e3172128adcd8b3090168a8e3bcc40d7c032b9dda1df7d1c" "/opt/rustwide/cargo-home/bin/cargo" "+30f74ff0dc4d66debc8b50724c446f817e5f75f4" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] e6e8f6ed4347d49dbe4c81492a7f5586e6203adbf5ed1877fa0f10191b69552d
[INFO] running `Command { std: "docker" "start" "-a" "e6e8f6ed4347d49dbe4c81492a7f5586e6203adbf5ed1877fa0f10191b69552d", kill_on_drop: false }`
[INFO] [stderr]     Checking libc v0.1.12
[INFO] [stderr]     Checking bitflags v0.1.1
[INFO] [stderr]     Checking winapi v0.1.23
[INFO] [stderr]     Checking rand v0.4.6
[INFO] [stderr]     Checking time v0.1.45
[INFO] [stderr]     Checking bytes v0.2.11
[INFO] [stderr]     Checking slab v0.1.3
[INFO] [stderr]     Checking getrandom v0.2.12
[INFO] [stderr]     Checking log v0.3.9
[INFO] [stderr]     Checking nix v0.3.10
[INFO] [stderr]     Checking rand_core v0.6.4
[INFO] [stderr]     Checking rand v0.8.5
[INFO] [stderr]     Checking rand v0.3.23
[INFO] [stderr]     Checking mio v0.4.4
[INFO] [stderr]     Checking quickcheck v1.0.3
[INFO] [stderr]     Checking eligos v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unused import: `TryWrite`
[INFO] [stdout]  --> src/codec/framed.rs:2:11
[INFO] [stdout]   |
[INFO] [stdout] 2 | use mio::{TryWrite, TryRead};
[INFO] [stdout]   |           ^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::sync::Arc`
[INFO] [stdout]  --> src/worker.rs:3:5
[INFO] [stdout]   |
[INFO] [stdout] 3 | use std::sync::Arc;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::sync::mpsc::Sender`
[INFO] [stdout]  --> src/worker.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | use std::sync::mpsc::Sender;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Buf`, `alloc`
[INFO] [stdout]  --> src/worker.rs:6:13
[INFO] [stdout]   |
[INFO] [stdout] 6 | use bytes::{alloc, Buf, ByteBuf};
[INFO] [stdout]   |             ^^^^^  ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `mio`
[INFO] [stdout]  --> src/worker.rs:7:5
[INFO] [stdout]   |
[INFO] [stdout] 7 | use mio;
[INFO] [stdout]   |     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `TryRead`, `TryWrite`
[INFO] [stdout]  --> src/worker.rs:8:57
[INFO] [stdout]   |
[INFO] [stdout] 8 | use mio::{EventLoop, EventSet, PollOpt, Handler, Token, TryWrite, TryRead};
[INFO] [stdout]   |                                                         ^^^^^^^^  ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `TcpListener`
[INFO] [stdout]  --> src/worker.rs:9:16
[INFO] [stdout]   |
[INFO] [stdout] 9 | use mio::tcp::{TcpListener, TcpStream};
[INFO] [stdout]   |                ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Envelope`
[INFO] [stdout]   --> src/worker.rs:12:23
[INFO] [stdout]    |
[INFO] [stdout] 12 | use ::{Conn, Receive, Envelope, Codec, ClientInfo};
[INFO] [stdout]    |                       ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/worker.rs:34:19
[INFO] [stdout]    |
[INFO] [stdout] 34 |             addr: try!(conn.sock.peer_addr()),
[INFO] [stdout]    |                   ^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(deprecated)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/worker.rs:36:26
[INFO] [stdout]    |
[INFO] [stdout] 36 |         Ok((client_info, try!(conn.readable(event_loop))))
[INFO] [stdout]    |                          ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::sync::mpsc::Sender`
[INFO] [stdout]  --> src/conn.rs:3:5
[INFO] [stdout]   |
[INFO] [stdout] 3 | use std::sync::mpsc::Sender;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Envelope`
[INFO] [stdout]  --> src/conn.rs:9:16
[INFO] [stdout]   |
[INFO] [stdout] 9 | use ::{Worker, Envelope, Codec};
[INFO] [stdout]   |                ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `ErrorKind`, `Error`
[INFO] [stdout]  --> src/service.rs:3:15
[INFO] [stdout]   |
[INFO] [stdout] 3 | use std::io::{Error, ErrorKind};
[INFO] [stdout]   |               ^^^^^  ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::sync::Arc`
[INFO] [stdout]  --> src/service.rs:5:5
[INFO] [stdout]   |
[INFO] [stdout] 5 | use std::sync::Arc;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Buf`, `alloc`
[INFO] [stdout]  --> src/service.rs:8:13
[INFO] [stdout]   |
[INFO] [stdout] 8 | use bytes::{alloc, Buf, ByteBuf};
[INFO] [stdout]   |             ^^^^^  ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `TryRead`, `TryWrite`
[INFO] [stdout]  --> src/service.rs:9:65
[INFO] [stdout]   |
[INFO] [stdout] 9 | use mio::{EventLoop, EventSet, PollOpt, Handler, Sender, Token, TryWrite, TryRead};
[INFO] [stdout]   |                                                                 ^^^^^^^^  ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `TcpSocket`
[INFO] [stdout]   --> src/service.rs:10:29
[INFO] [stdout]    |
[INFO] [stdout] 10 | use mio::tcp::{TcpListener, TcpSocket, TcpStream};
[INFO] [stdout]    |                             ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `self::rand::Rng`
[INFO] [stdout]   --> src/service.rs:12:5
[INFO] [stdout]    |
[INFO] [stdout] 12 | use self::rand::Rng;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Envelope`
[INFO] [stdout]   --> src/service.rs:15:25
[INFO] [stdout]    |
[INFO] [stdout] 15 | use ::{Receive, Worker, Envelope, Codec};
[INFO] [stdout]    |                         ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/service.rs:33:20
[INFO] [stdout]    |
[INFO] [stdout] 33 |         let sock = try!(TcpListener::bind(&accept_addr));
[INFO] [stdout]    |                    ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/service.rs:92:20
[INFO] [stdout]    |
[INFO] [stdout] 92 |         let sock = try!(self.sock.accept());
[INFO] [stdout]    |                    ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: anonymous parameters are deprecated and will be removed in the next edition
[INFO] [stdout]  --> src/receive.rs:4:27
[INFO] [stdout]   |
[INFO] [stdout] 4 |     fn receive(&mut self, ClientInfo, &Req) -> Option<Res>;
[INFO] [stdout]   |                           ^^^^^^^^^^ help: try naming the parameter or explicitly ignoring it: `_: ClientInfo`
[INFO] [stdout]   |
[INFO] [stdout]   = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2018!
[INFO] [stdout]   = note: for more information, see issue #41686 <https://github.com/rust-lang/rust/issues/41686>
[INFO] [stdout]   = note: `#[warn(anonymous_parameters)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: anonymous parameters are deprecated and will be removed in the next edition
[INFO] [stdout]  --> src/receive.rs:4:39
[INFO] [stdout]   |
[INFO] [stdout] 4 |     fn receive(&mut self, ClientInfo, &Req) -> Option<Res>;
[INFO] [stdout]   |                                       ^^^^ help: try naming the parameter or explicitly ignoring it: `_: &Req`
[INFO] [stdout]   |
[INFO] [stdout]   = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2018!
[INFO] [stdout]   = note: for more information, see issue #41686 <https://github.com/rust-lang/rust/issues/41686>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated attribute `crate_id`: no longer used.
[INFO] [stdout]  --> src/lib.rs:1:1
[INFO] [stdout]   |
[INFO] [stdout] 1 | #![crate_id = "eligos"]
[INFO] [stdout]   | ^^^^^^^^^^^^^^^^^^^^^^^ help: remove this attribute
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]  --> src/codec/codec_stack.rs:4:15
[INFO] [stdout]   |
[INFO] [stdout] 4 |     left: Box<Codec<In, Mid>>,
[INFO] [stdout]   |               ^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]   = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]   = note: `#[warn(bare_trait_objects)]` on by default
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]   |
[INFO] [stdout] 4 |     left: Box<dyn Codec<In, Mid>>,
[INFO] [stdout]   |               +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]  --> src/codec/codec_stack.rs:5:16
[INFO] [stdout]   |
[INFO] [stdout] 5 |     right: Box<Codec<Mid, Out>>,
[INFO] [stdout]   |                ^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]   = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]   |
[INFO] [stdout] 5 |     right: Box<dyn Codec<Mid, Out>>,
[INFO] [stdout]   |                +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/worker.rs:16:40
[INFO] [stdout]    |
[INFO] [stdout] 16 |     pub req_codec_factory: fn() -> Box<Codec<ByteBuf, Req>>,
[INFO] [stdout]    |                                        ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 16 |     pub req_codec_factory: fn() -> Box<dyn Codec<ByteBuf, Req>>,
[INFO] [stdout]    |                                        +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/worker.rs:17:24
[INFO] [stdout]    |
[INFO] [stdout] 17 |     pub res_codec: Box<Codec<ByteBuf, Res>>,
[INFO] [stdout]    |                        ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 17 |     pub res_codec: Box<dyn Codec<ByteBuf, Res>>,
[INFO] [stdout]    |                        +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/worker.rs:18:24
[INFO] [stdout]    |
[INFO] [stdout] 18 |     pub receiver: Box<(Receive<Req, Res> + Send)>,
[INFO] [stdout]    |                        ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 18 |     pub receiver: Box<(dyn Receive<Req, Res> + Send)>,
[INFO] [stdout]    |                        +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/conn.rs:15:20
[INFO] [stdout]    |
[INFO] [stdout] 15 |     pub codec: Box<Codec<ByteBuf, Req>>,
[INFO] [stdout]    |                    ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 15 |     pub codec: Box<dyn Codec<ByteBuf, Req>>,
[INFO] [stdout]    |                    +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/service.rs:20:36
[INFO] [stdout]    |
[INFO] [stdout] 20 |     req_codec_factory: fn() -> Box<Codec<ByteBuf, Req>>,
[INFO] [stdout]    |                                    ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 20 |     req_codec_factory: fn() -> Box<dyn Codec<ByteBuf, Req>>,
[INFO] [stdout]    |                                    +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/service.rs:21:36
[INFO] [stdout]    |
[INFO] [stdout] 21 |     res_codec_factory: fn() -> Box<Codec<ByteBuf, Res>>,
[INFO] [stdout]    |                                    ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 21 |     res_codec_factory: fn() -> Box<dyn Codec<ByteBuf, Res>>,
[INFO] [stdout]    |                                    +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/conn.rs:24:20
[INFO] [stdout]    |
[INFO] [stdout] 24 |         codec: Box<Codec<ByteBuf, Req>>
[INFO] [stdout]    |                    ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 24 |         codec: Box<dyn Codec<ByteBuf, Req>>
[INFO] [stdout]    |                    +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/service.rs:27:40
[INFO] [stdout]    |
[INFO] [stdout] 27 |         req_codec_factory: fn() -> Box<Codec<ByteBuf, Req>>,
[INFO] [stdout]    |                                        ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 27 |         req_codec_factory: fn() -> Box<dyn Codec<ByteBuf, Req>>,
[INFO] [stdout]    |                                        +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/service.rs:28:40
[INFO] [stdout]    |
[INFO] [stdout] 28 |         res_codec_factory: fn() -> Box<Codec<ByteBuf, Res>>,
[INFO] [stdout]    |                                        ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 28 |         res_codec_factory: fn() -> Box<dyn Codec<ByteBuf, Res>>,
[INFO] [stdout]    |                                        +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/service.rs:45:29
[INFO] [stdout]    |
[INFO] [stdout] 45 |         receivers: Vec<Box<(Receive<Req, Res> + Send)>>,
[INFO] [stdout]    |                             ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 45 |         receivers: Vec<Box<(dyn Receive<Req, Res> + Send)>>,
[INFO] [stdout]    |                             +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the size for values of type `Out` cannot be known at compilation time
[INFO] [stdout]  --> src/codec/mod.rs:7:43
[INFO] [stdout]   |
[INFO] [stdout] 6 | pub trait Codec<In: ?Sized, Out: ?Sized> {
[INFO] [stdout]   |                             --- this type parameter needs to be `Sized`
[INFO] [stdout] 7 |     fn decode(&mut self, buf: &mut In) -> Vec<Out>;
[INFO] [stdout]   |                                           ^^^^^^^^ doesn't have a size known at compile-time
[INFO] [stdout]   |
[INFO] [stdout] note: required by an implicit `Sized` bound in `Vec`
[INFO] [stdout]  --> /rustc/30f74ff0dc4d66debc8b50724c446f817e5f75f4/library/alloc/src/vec/mod.rs:398:1
[INFO] [stdout] help: consider removing the `?Sized` bound to make the type parameter `Sized`
[INFO] [stdout]   |
[INFO] [stdout] 6 - pub trait Codec<In: ?Sized, Out: ?Sized> {
[INFO] [stdout] 6 + pub trait Codec<In: ?Sized, Out> {
[INFO] [stdout]   |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unreachable statement
[INFO] [stdout]   --> src/conn.rs:96:17
[INFO] [stdout]    |
[INFO] [stdout] 95 |                 panic!("got readable, but can't read from the socket");
[INFO] [stdout]    |                 ------------------------------------------------------ any code following this expression is unreachable
[INFO] [stdout] 96 |                 self.interest.insert(EventSet::readable());
[INFO] [stdout]    |                 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ unreachable statement
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unreachable_code)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `sz_read`
[INFO] [stdout]   --> src/codec/framed.rs:26:21
[INFO] [stdout]    |
[INFO] [stdout] 26 |                 let sz_read = buf.try_read_buf(&mut self.sz_buf);
[INFO] [stdout]    |                     ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_sz_read`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `read`
[INFO] [stdout]   --> src/codec/framed.rs:53:25
[INFO] [stdout]    |
[INFO] [stdout] 53 |                 Ok(Some(read)) => {
[INFO] [stdout]    |                         ^^^^ help: if this is intentional, prefix it with an underscore: `_read`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `e`
[INFO] [stdout]   --> src/worker.rs:77:21
[INFO] [stdout]    |
[INFO] [stdout] 77 |         }).or_else(|e| Err(Error::new(ErrorKind::Other,
[INFO] [stdout]    |                     ^ help: if this is intentional, prefix it with an underscore: `_e`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/worker.rs:113:9
[INFO] [stdout]     |
[INFO] [stdout] 113 |         mut sock: TcpStream,
[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: unused variable: `r`
[INFO] [stdout]   --> src/conn.rs:98:21
[INFO] [stdout]    |
[INFO] [stdout] 98 |             Ok(Some(r)) => {
[INFO] [stdout]    |                     ^ help: if this is intentional, prefix it with an underscore: `_r`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `event_loop`
[INFO] [stdout]    --> src/service.rs:109:9
[INFO] [stdout]     |
[INFO] [stdout] 109 |         event_loop: &mut EventLoop<Service<Req, Res>>,
[INFO] [stdout]     |         ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_event_loop`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `token`
[INFO] [stdout]    --> src/service.rs:110:9
[INFO] [stdout]     |
[INFO] [stdout] 110 |         token: Token,
[INFO] [stdout]     |         ^^^^^ help: if this is intentional, prefix it with an underscore: `_token`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `events`
[INFO] [stdout]    --> src/service.rs:111:9
[INFO] [stdout]     |
[INFO] [stdout] 111 |         events: EventSet,
[INFO] [stdout]     |         ^^^^^^ help: if this is intentional, prefix it with an underscore: `_events`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: aborting due to 1 previous error; 45 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] For more information about this error, try `rustc --explain E0277`.
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `eligos` (lib) due to 2 previous errors; 45 warnings emitted
[INFO] [stderr] warning: build failed, waiting for other jobs to finish...
[INFO] running `Command { std: "docker" "inspect" "e6e8f6ed4347d49dbe4c81492a7f5586e6203adbf5ed1877fa0f10191b69552d", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "e6e8f6ed4347d49dbe4c81492a7f5586e6203adbf5ed1877fa0f10191b69552d", kill_on_drop: false }`
[INFO] [stdout] e6e8f6ed4347d49dbe4c81492a7f5586e6203adbf5ed1877fa0f10191b69552d
