[INFO] fetching crate ei 0.1.2...
[INFO] testing ei-0.1.2 against beta-2021-08-01 for beta-1.55-1
[INFO] extracting crate ei 0.1.2 into /workspace/builds/worker-11/source
[INFO] validating manifest of crates.io crate ei 0.1.2 on toolchain beta-2021-08-01
[INFO] running `Command { std: "/workspace/cargo-home/bin/cargo" "+beta-2021-08-01" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] started tweaking crates.io crate ei 0.1.2
[INFO] finished tweaking crates.io crate ei 0.1.2
[INFO] tweaked toml for crates.io crate ei 0.1.2 written to /workspace/builds/worker-11/source/Cargo.toml
[INFO] running `Command { std: "/workspace/cargo-home/bin/cargo" "+beta-2021-08-01" "generate-lockfile" "--manifest-path" "Cargo.toml" "-Zno-index-update", kill_on_drop: false }`
[INFO] running `Command { std: "/workspace/cargo-home/bin/cargo" "+beta-2021-08-01" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-11/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-11/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:34b6a614d2c27851fe6cbf88fbd1137609cefab8b10d0615aaeb6fd47975d74e" "/opt/rustwide/cargo-home/bin/cargo" "+beta-2021-08-01" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] bf2dea36b6667a5052326335810e30a8cb7174911e0d7e8d05d340f29196892d
[INFO] [stderr] WARNING: Your kernel does not support swap limit capabilities or the cgroup is not mounted. Memory limited without swap.
[INFO] running `Command { std: "docker" "start" "-a" "bf2dea36b6667a5052326335810e30a8cb7174911e0d7e8d05d340f29196892d", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "bf2dea36b6667a5052326335810e30a8cb7174911e0d7e8d05d340f29196892d", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "bf2dea36b6667a5052326335810e30a8cb7174911e0d7e8d05d340f29196892d", kill_on_drop: false }`
[INFO] [stdout] bf2dea36b6667a5052326335810e30a8cb7174911e0d7e8d05d340f29196892d
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-11/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-11/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:34b6a614d2c27851fe6cbf88fbd1137609cefab8b10d0615aaeb6fd47975d74e" "/opt/rustwide/cargo-home/bin/cargo" "+beta-2021-08-01" "build" "--frozen" "--message-format=json", kill_on_drop: false }`
[INFO] [stderr] WARNING: Your kernel does not support swap limit capabilities or the cgroup is not mounted. Memory limited without swap.
[INFO] [stdout] 549e3fe7444d8311042d4c0df5ffbc8498eb972e815e921eef71511de97a30c7
[INFO] running `Command { std: "docker" "start" "-a" "549e3fe7444d8311042d4c0df5ffbc8498eb972e815e921eef71511de97a30c7", kill_on_drop: false }`
[INFO] [stderr]    Compiling rust-crypto v0.2.36
[INFO] [stderr]    Compiling ei v0.1.2 (/opt/rustwide/workdir)
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/error.rs:32:32
[INFO] [stdout]    |
[INFO] [stdout] 32 |     fn cause(&self) -> Option<&error::Error> {
[INFO] [stdout]    |                                ^^^^^^^^^^^^ help: use `dyn`: `dyn error::Error`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(bare_trait_objects)]` on by default
[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 issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/connect.rs:13:5
[INFO] [stdout]    |
[INFO] [stdout] 13 |     try!(send_status(stream, "ok"));
[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/connect.rs:17:5
[INFO] [stdout]    |
[INFO] [stdout] 17 |     try!(send_challenge(stream, nodename, version, our_challenge));
[INFO] [stdout]    |     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/connect.rs:11:19
[INFO] [stdout]    |
[INFO] [stdout] 11 |     let version = try!(recv_version(stream));
[INFO] [stdout]    |                   ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/connect.rs:22:25
[INFO] [stdout]    |
[INFO] [stdout] 22 |     let her_challenge = try!(recv_challenge_reply(stream, &expected_digest));
[INFO] [stdout]    |                         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/connect.rs:30:33
[INFO] [stdout]    |
[INFO] [stdout] 30 | fn recv_challenge_reply(r: &mut io::Read, expected: &[u8]) -> Result<u32, error::Error> {
[INFO] [stdout]    |                                 ^^^^^^^^ help: use `dyn`: `dyn io::Read`
[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 issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/connect.rs:32:8
[INFO] [stdout]    |
[INFO] [stdout] 32 |     if try!(r.read_u16()) != 21 {
[INFO] [stdout]    |        ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/connect.rs:36:38
[INFO] [stdout]    |
[INFO] [stdout] 36 |     let mut cursor = io::Cursor::new(try!(r.read_vec(21)));
[INFO] [stdout]    |                                      ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/connect.rs:51:25
[INFO] [stdout]    |
[INFO] [stdout] 51 | fn recv_version(r: &mut io::Read) -> Result<u16, error::Error> {
[INFO] [stdout]    |                         ^^^^^^^^ help: use `dyn`: `dyn io::Read`
[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 issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/connect.rs:53:16
[INFO] [stdout]    |
[INFO] [stdout] 53 |     let size = try!(r.read_u16()) as usize;
[INFO] [stdout]    |                ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/connect.rs:59:38
[INFO] [stdout]    |
[INFO] [stdout] 59 |     let mut cursor = io::Cursor::new(try!(r.read_vec(size)));
[INFO] [stdout]    |                                      ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/connect.rs:83:27
[INFO] [stdout]    |
[INFO] [stdout] 83 | fn send_challenge(w: &mut io::Write, name: &str, version: u16, challenge: u32) -> Result<(), error::Error> {
[INFO] [stdout]    |                           ^^^^^^^^^ help: use `dyn`: `dyn io::Write`
[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 issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/connect.rs:105:31
[INFO] [stdout]     |
[INFO] [stdout] 105 | fn send_challenge_ack(w: &mut io::Write, digest: &[u8]) -> Result<(), error::Error> {
[INFO] [stdout]     |                               ^^^^^^^^^ help: use `dyn`: `dyn io::Write`
[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 issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/connect.rs:113:24
[INFO] [stdout]     |
[INFO] [stdout] 113 | fn send_status(w: &mut io::Write, status: &str) -> Result<(), error::Error> {
[INFO] [stdout]     |                        ^^^^^^^^^ help: use `dyn`: `dyn io::Write`
[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 issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/decoder.rs:12:54
[INFO] [stdout]    |
[INFO] [stdout] 12 | pub fn decode<T: rustc_serialize::Decodable>(r: &mut io::Read) -> Result<T, error::Error> {
[INFO] [stdout]    |                                                      ^^^^^^^^ help: use `dyn`: `dyn io::Read`
[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 issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/decoder.rs:23:16
[INFO] [stdout]    |
[INFO] [stdout] 23 |     r: &'a mut io::Read,
[INFO] [stdout]    |                ^^^^^^^^ help: use `dyn`: `dyn io::Read`
[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 issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/decoder.rs:39:15
[INFO] [stdout]    |
[INFO] [stdout] 39 |         match try!(read_num(self.r)) {
[INFO] [stdout]    |               ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/decoder.rs:48:15
[INFO] [stdout]    |
[INFO] [stdout] 48 |         match try!(read_num(self.r)) {
[INFO] [stdout]    |               ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/decoder.rs:57:15
[INFO] [stdout]    |
[INFO] [stdout] 57 |         match try!(read_num(self.r)) {
[INFO] [stdout]    |               ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/decoder.rs:66:15
[INFO] [stdout]    |
[INFO] [stdout] 66 |         match try!(read_num(self.r)) {
[INFO] [stdout]    |               ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/decoder.rs:77:15
[INFO] [stdout]    |
[INFO] [stdout] 77 |         match try!(read_num(self.r)) {
[INFO] [stdout]    |               ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/decoder.rs:87:15
[INFO] [stdout]    |
[INFO] [stdout] 87 |         match try!(read_num(self.r)) {
[INFO] [stdout]    |               ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/decoder.rs:97:15
[INFO] [stdout]    |
[INFO] [stdout] 97 |         match try!(read_num(self.r)) {
[INFO] [stdout]    |               ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/decoder.rs:106:15
[INFO] [stdout]     |
[INFO] [stdout] 106 |         match try!(read_num(self.r)) {
[INFO] [stdout]     |               ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/decoder.rs:115:15
[INFO] [stdout]     |
[INFO] [stdout] 115 |         match try!(decode(self.r)) {
[INFO] [stdout]     |               ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/decoder.rs:122:15
[INFO] [stdout]     |
[INFO] [stdout] 122 |         match try!(self.r.read_u8()) {
[INFO] [stdout]     |               ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/decoder.rs:137:15
[INFO] [stdout]     |
[INFO] [stdout] 137 |         match try!(self.r.read_u8()) {
[INFO] [stdout]     |               ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/decoder.rs:185:15
[INFO] [stdout]     |
[INFO] [stdout] 185 |         match try!(self.r.read_u8()) {
[INFO] [stdout]     |               ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/decoder.rs:214:15
[INFO] [stdout]     |
[INFO] [stdout] 214 |         match try!(self.r.read_u8()) {
[INFO] [stdout]     |               ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/decoder.rs:217:20
[INFO] [stdout]     |
[INFO] [stdout] 217 |                 if try!(self.r.read_u8()) == ERL_NIL_EXT {
[INFO] [stdout]     |                    ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/decoder.rs:234:15
[INFO] [stdout]     |
[INFO] [stdout] 234 |         match try!(self.r.read_u8()) {
[INFO] [stdout]     |               ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/decoder.rs:255:21
[INFO] [stdout]     |
[INFO] [stdout] 255 | fn read_num(r: &mut io::Read) -> Result<Num, error::Error> {
[INFO] [stdout]     |                     ^^^^^^^^ help: use `dyn`: `dyn io::Read`
[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 issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/decoder.rs:256:11
[INFO] [stdout]     |
[INFO] [stdout] 256 |     match try!(r.read_u8()) {
[INFO] [stdout]     |           ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/decoder.rs:264:20
[INFO] [stdout]     |
[INFO] [stdout] 264 | fn read_u8(r: &mut io::Read) -> Result<Num, error::Error> {
[INFO] [stdout]     |                    ^^^^^^^^ help: use `dyn`: `dyn io::Read`
[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 issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/decoder.rs:268:21
[INFO] [stdout]     |
[INFO] [stdout] 268 | fn read_i27(r: &mut io::Read) -> Result<Num, error::Error> {
[INFO] [stdout]     |                     ^^^^^^^^ help: use `dyn`: `dyn io::Read`
[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 issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/decoder.rs:272:27
[INFO] [stdout]     |
[INFO] [stdout] 272 | fn read_small_big(r: &mut io::Read) -> Result<Num, error::Error> {
[INFO] [stdout]     |                           ^^^^^^^^ help: use `dyn`: `dyn io::Read`
[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 issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/decoder.rs:276:21
[INFO] [stdout]     |
[INFO] [stdout] 276 |             let s = try!(r.read_u8());
[INFO] [stdout]     |                     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/decoder.rs:286:24
[INFO] [stdout]     |
[INFO] [stdout] 286 | fn read_string(r: &mut io::Read) -> Result<String, error::Error> {
[INFO] [stdout]     |                        ^^^^^^^^ help: use `dyn`: `dyn io::Read`
[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 issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/decoder.rs:290:22
[INFO] [stdout]     |
[INFO] [stdout] 290 | fn read_atom(r: &mut io::Read) -> Result<term::Atom, error::Error> {
[INFO] [stdout]     |                      ^^^^^^^^ help: use `dyn`: `dyn io::Read`
[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 issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/decoder.rs:292:13
[INFO] [stdout]     |
[INFO] [stdout] 292 |     let t = try!(r.read_u8());
[INFO] [stdout]     |             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/decoder.rs:295:36
[INFO] [stdout]     |
[INFO] [stdout] 295 |         ERL_ATOM_EXT            => try!(r.read_u16()) as usize,
[INFO] [stdout]     |                                    ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/decoder.rs:296:36
[INFO] [stdout]     |
[INFO] [stdout] 296 |         ERL_ATOM_UTF8_EXT       => try!(r.read_u16()) as usize,
[INFO] [stdout]     |                                    ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/decoder.rs:297:36
[INFO] [stdout]     |
[INFO] [stdout] 297 |         ERL_SMALL_ATOM_UTF8_EXT => try!(r.read_u8()) as usize,
[INFO] [stdout]     |                                    ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/decoder.rs:301:29
[INFO] [stdout]     |
[INFO] [stdout] 301 |     match String::from_utf8(try!(r.read_vec(n))) {
[INFO] [stdout]     |                             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/decoder.rs:312:21
[INFO] [stdout]     |
[INFO] [stdout] 312 | fn read_msg(r: &mut io::Read) -> Result<term::Msg, error::Error> {
[INFO] [stdout]     |                     ^^^^^^^^ help: use `dyn`: `dyn io::Read`
[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 issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/decoder.rs:314:8
[INFO] [stdout]     |
[INFO] [stdout] 314 |     if try!(r.read_u8()) != ERL_SMALL_TUPLE_EXT {
[INFO] [stdout]     |        ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/decoder.rs:318:13
[INFO] [stdout]     |
[INFO] [stdout] 318 |     let a = try!(r.read_u8());
[INFO] [stdout]     |             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/decoder.rs:320:11
[INFO] [stdout]     |
[INFO] [stdout] 320 |     match try!(decode(r)) {
[INFO] [stdout]     |           ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/decoder.rs:323:25
[INFO] [stdout]     |
[INFO] [stdout] 323 |                 cookie: try!(decode(r)),
[INFO] [stdout]     |                         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/decoder.rs:324:21
[INFO] [stdout]     |
[INFO] [stdout] 324 |                 to: try!(decode(r)),
[INFO] [stdout]     |                     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/decoder.rs:328:25
[INFO] [stdout]     |
[INFO] [stdout] 328 |                 cookie: try!(decode(r)),
[INFO] [stdout]     |                         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/decoder.rs:329:21
[INFO] [stdout]     |
[INFO] [stdout] 329 |                 to: try!(decode(r)),
[INFO] [stdout]     |                     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/decoder.rs:330:24
[INFO] [stdout]     |
[INFO] [stdout] 330 |                 token: try!(decode(r)),
[INFO] [stdout]     |                        ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/decoder.rs:334:23
[INFO] [stdout]     |
[INFO] [stdout] 334 |                 from: try!(decode(r)),
[INFO] [stdout]     |                       ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/decoder.rs:335:25
[INFO] [stdout]     |
[INFO] [stdout] 335 |                 cookie: try!(decode(r)),
[INFO] [stdout]     |                         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/decoder.rs:336:25
[INFO] [stdout]     |
[INFO] [stdout] 336 |                 toname: try!(decode(r)),
[INFO] [stdout]     |                         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/decoder.rs:340:23
[INFO] [stdout]     |
[INFO] [stdout] 340 |                 from: try!(decode(r)),
[INFO] [stdout]     |                       ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/decoder.rs:341:25
[INFO] [stdout]     |
[INFO] [stdout] 341 |                 cookie: try!(decode(r)),
[INFO] [stdout]     |                         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/decoder.rs:342:25
[INFO] [stdout]     |
[INFO] [stdout] 342 |                 toname: try!(decode(r)),
[INFO] [stdout]     |                         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/decoder.rs:343:24
[INFO] [stdout]     |
[INFO] [stdout] 343 |                 token: try!(decode(r)),
[INFO] [stdout]     |                        ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/decoder.rs:347:23
[INFO] [stdout]     |
[INFO] [stdout] 347 |                 from: try!(decode(r)),
[INFO] [stdout]     |                       ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/decoder.rs:348:21
[INFO] [stdout]     |
[INFO] [stdout] 348 |                 to: try!(decode(r)),
[INFO] [stdout]     |                     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/decoder.rs:349:25
[INFO] [stdout]     |
[INFO] [stdout] 349 |                 reason: try!(decode(r)),
[INFO] [stdout]     |                         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/decoder.rs:353:23
[INFO] [stdout]     |
[INFO] [stdout] 353 |                 from: try!(decode(r)),
[INFO] [stdout]     |                       ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/decoder.rs:354:21
[INFO] [stdout]     |
[INFO] [stdout] 354 |                 to: try!(decode(r)),
[INFO] [stdout]     |                     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/decoder.rs:355:24
[INFO] [stdout]     |
[INFO] [stdout] 355 |                 token: try!(decode(r)),
[INFO] [stdout]     |                        ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/decoder.rs:356:25
[INFO] [stdout]     |
[INFO] [stdout] 356 |                 reason: try!(decode(r)),
[INFO] [stdout]     |                         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/decoder.rs:362:21
[INFO] [stdout]     |
[INFO] [stdout] 362 | fn read_pid(r: &mut io::Read) -> Result<term::Pid, error::Error> {
[INFO] [stdout]     |                     ^^^^^^^^ help: use `dyn`: `dyn io::Read`
[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 issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/decoder.rs:364:25
[INFO] [stdout]     |
[INFO] [stdout] 364 |     let t: bool = match try!(r.read_u8()) {
[INFO] [stdout]     |                         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/decoder.rs:371:15
[INFO] [stdout]     |
[INFO] [stdout] 371 |         node: try!(decode(r)),
[INFO] [stdout]     |               ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/decoder.rs:372:14
[INFO] [stdout]     |
[INFO] [stdout] 372 |         num: try!(r.read_u32()) & 0x00007fff,
[INFO] [stdout]     |              ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/decoder.rs:373:17
[INFO] [stdout]     |
[INFO] [stdout] 373 |         serial: try!(r.read_u32()) & 0x00001fff,
[INFO] [stdout]     |                 ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/decoder.rs:374:26
[INFO] [stdout]     |
[INFO] [stdout] 374 |         creation: if t { try!(r.read_u32()) } else { try!(r.read_u8()) as u32 & 0x03 },
[INFO] [stdout]     |                          ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/decoder.rs:374:54
[INFO] [stdout]     |
[INFO] [stdout] 374 |         creation: if t { try!(r.read_u32()) } else { try!(r.read_u8()) as u32 & 0x03 },
[INFO] [stdout]     |                                                      ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/decoder.rs:378:22
[INFO] [stdout]     |
[INFO] [stdout] 378 | fn read_port(r: &mut io::Read) -> Result<term::Port, error::Error> {
[INFO] [stdout]     |                      ^^^^^^^^ help: use `dyn`: `dyn io::Read`
[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 issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/decoder.rs:380:19
[INFO] [stdout]     |
[INFO] [stdout] 380 |     let t = match try!(r.read_u8()) {
[INFO] [stdout]     |                   ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/decoder.rs:387:15
[INFO] [stdout]     |
[INFO] [stdout] 387 |         node: try!(decode(r)),
[INFO] [stdout]     |               ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/decoder.rs:388:13
[INFO] [stdout]     |
[INFO] [stdout] 388 |         id: try!(r.read_u32()) & 0x0fffffff,
[INFO] [stdout]     |             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/decoder.rs:389:26
[INFO] [stdout]     |
[INFO] [stdout] 389 |         creation: if t { try!(r.read_u32()) } else { try!(r.read_u8()) as u32 & 0x03 },
[INFO] [stdout]     |                          ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/decoder.rs:389:54
[INFO] [stdout]     |
[INFO] [stdout] 389 |         creation: if t { try!(r.read_u32()) } else { try!(r.read_u8()) as u32 & 0x03 },
[INFO] [stdout]     |                                                      ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/decoder.rs:393:21
[INFO] [stdout]     |
[INFO] [stdout] 393 | fn read_ref(r: &mut io::Read) -> Result<term::Ref, error::Error> {
[INFO] [stdout]     |                     ^^^^^^^^ help: use `dyn`: `dyn io::Read`
[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 issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/decoder.rs:395:19
[INFO] [stdout]     |
[INFO] [stdout] 395 |     let t = match try!(r.read_u8()) {
[INFO] [stdout]     |                   ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/decoder.rs:401:15
[INFO] [stdout]     |
[INFO] [stdout] 401 |     let len = try!(r.read_i16()) & 0x0003;
[INFO] [stdout]     |               ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/decoder.rs:403:16
[INFO] [stdout]     |
[INFO] [stdout] 403 |     let node = try!(decode(r));
[INFO] [stdout]     |                ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/decoder.rs:405:27
[INFO] [stdout]     |
[INFO] [stdout] 405 |     let creation = if t { try!(r.read_u32()) } else { try!(r.read_u8()) as u32 & 0x03 };
[INFO] [stdout]     |                           ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/decoder.rs:405:55
[INFO] [stdout]     |
[INFO] [stdout] 405 |     let creation = if t { try!(r.read_u32()) } else { try!(r.read_u8()) as u32 & 0x03 };
[INFO] [stdout]     |                                                       ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/decoder.rs:409:16
[INFO] [stdout]     |
[INFO] [stdout] 409 |         n[i] = try!(r.read_u32());
[INFO] [stdout]     |                ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/decoder.rs:416:32
[INFO] [stdout]     |
[INFO] [stdout] 416 |     fn r(&mut self) -> &'a mut io::Read;
[INFO] [stdout]     |                                ^^^^^^^^ help: use `dyn`: `dyn io::Read`
[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 issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/decoder.rs:421:32
[INFO] [stdout]     |
[INFO] [stdout] 421 |     fn r(&mut self) -> &'a mut io::Read {
[INFO] [stdout]     |                                ^^^^^^^^ help: use `dyn`: `dyn io::Read`
[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 issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/encoder.rs:13:54
[INFO] [stdout]    |
[INFO] [stdout] 13 | pub fn encode<T: rustc_serialize::Encodable>(w: &mut io::Write, t: &T) -> Result<(), error::Error> {
[INFO] [stdout]    |                                                      ^^^^^^^^^ help: use `dyn`: `dyn io::Write`
[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 issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/encoder.rs:18:16
[INFO] [stdout]    |
[INFO] [stdout] 18 |     w: &'a mut io::Write,
[INFO] [stdout]    |                ^^^^^^^^^ help: use `dyn`: `dyn io::Write`
[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 issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/encoder.rs:163:13
[INFO] [stdout]     |
[INFO] [stdout] 163 |             try!(self.w.write_u8(ERL_LARGE_TUPLE_EXT).and_then(|()| self.w.write_u32(len as u32)));
[INFO] [stdout]     |             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/encoder.rs:165:13
[INFO] [stdout]     |
[INFO] [stdout] 165 |             try!(self.w.write_u8(ERL_SMALL_TUPLE_EXT).and_then(|()| self.w.write_u8(len as u8)));
[INFO] [stdout]     |             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/encoder.rs:202:13
[INFO] [stdout]     |
[INFO] [stdout] 202 |             try!(self.w.write_u8(ERL_LIST_EXT).and_then(|()| self.w.write_u32(len as u32)));
[INFO] [stdout]     |             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/encoder.rs:203:13
[INFO] [stdout]     |
[INFO] [stdout] 203 |             try!(f(self));
[INFO] [stdout]     |             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/encoder.rs:215:9
[INFO] [stdout]     |
[INFO] [stdout] 215 |         try!(self.w.write_u8(ERL_MAP_EXT).and_then(|()| self.w.write_u32(len as u32)));
[INFO] [stdout]     |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/encoder.rs:230:21
[INFO] [stdout]     |
[INFO] [stdout] 230 | fn write_u8(w: &mut io::Write, v: u8) -> Result<(), error::Error> {
[INFO] [stdout]     |                     ^^^^^^^^^ help: use `dyn`: `dyn io::Write`
[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 issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/encoder.rs:234:22
[INFO] [stdout]     |
[INFO] [stdout] 234 | fn write_i27(w: &mut io::Write, v: i32) -> Result<(), error::Error> {
[INFO] [stdout]     |                      ^^^^^^^^^ help: use `dyn`: `dyn io::Write`
[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 issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/encoder.rs:238:28
[INFO] [stdout]     |
[INFO] [stdout] 238 | fn write_small_big(w: &mut io::Write, s: u8, v: u64) -> Result<(), error::Error> {
[INFO] [stdout]     |                            ^^^^^^^^^ help: use `dyn`: `dyn io::Write`
[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 issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/encoder.rs:250:22
[INFO] [stdout]     |
[INFO] [stdout] 250 | fn write_str(w: &mut io::Write, v: &str, len: usize) -> Result<(), error::Error> {
[INFO] [stdout]     |                      ^^^^^^^^^ help: use `dyn`: `dyn io::Write`
[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 issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/encoder.rs:256:23
[INFO] [stdout]     |
[INFO] [stdout] 256 | fn write_atom(w: &mut io::Write, v: &term::Atom) -> Result<(), error::Error> {
[INFO] [stdout]     |                       ^^^^^^^^^ help: use `dyn`: `dyn io::Write`
[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 issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/encoder.rs:259:13
[INFO] [stdout]     |
[INFO] [stdout] 259 |             try!(w.write_u8(ERL_ATOM_EXT));
[INFO] [stdout]     |             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/encoder.rs:260:13
[INFO] [stdout]     |
[INFO] [stdout] 260 |             try!(w.write_u16(s.len() as u16));
[INFO] [stdout]     |             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/encoder.rs:264:13
[INFO] [stdout]     |
[INFO] [stdout] 264 |             try!(w.write_u8(ERL_ATOM_UTF8_EXT));
[INFO] [stdout]     |             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/encoder.rs:265:13
[INFO] [stdout]     |
[INFO] [stdout] 265 |             try!(w.write_u16(s.len() as u16));
[INFO] [stdout]     |             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/encoder.rs:269:13
[INFO] [stdout]     |
[INFO] [stdout] 269 |             try!(w.write_u8(ERL_SMALL_ATOM_UTF8_EXT));
[INFO] [stdout]     |             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/encoder.rs:270:13
[INFO] [stdout]     |
[INFO] [stdout] 270 |             try!(w.write_u8(s.len() as u8));
[INFO] [stdout]     |             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/encoder.rs:279:5
[INFO] [stdout]     |
[INFO] [stdout] 279 |     try!(w.write_u8(ERL_SMALL_TUPLE_EXT));
[INFO] [stdout]     |     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/encoder.rs:277:22
[INFO] [stdout]     |
[INFO] [stdout] 277 | fn write_msg(w: &mut io::Write, v: &term::Msg) -> Result<(), error::Error> {
[INFO] [stdout]     |                      ^^^^^^^^^ help: use `dyn`: `dyn io::Write`
[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 issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/encoder.rs:283:13
[INFO] [stdout]     |
[INFO] [stdout] 283 |             try!(w.write_u8(3));
[INFO] [stdout]     |             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/encoder.rs:284:13
[INFO] [stdout]     |
[INFO] [stdout] 284 |             try!(encode(w, &ERL_SEND));
[INFO] [stdout]     |             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/encoder.rs:285:13
[INFO] [stdout]     |
[INFO] [stdout] 285 |             try!(encode(w, cookie));
[INFO] [stdout]     |             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/encoder.rs:289:13
[INFO] [stdout]     |
[INFO] [stdout] 289 |             try!(w.write_u8(4));
[INFO] [stdout]     |             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/encoder.rs:290:13
[INFO] [stdout]     |
[INFO] [stdout] 290 |             try!(encode(w, &ERL_SEND_TT));
[INFO] [stdout]     |             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/encoder.rs:291:13
[INFO] [stdout]     |
[INFO] [stdout] 291 |             try!(encode(w, cookie));
[INFO] [stdout]     |             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/encoder.rs:292:13
[INFO] [stdout]     |
[INFO] [stdout] 292 |             try!(encode(w, to));
[INFO] [stdout]     |             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/encoder.rs:296:13
[INFO] [stdout]     |
[INFO] [stdout] 296 |             try!(w.write_u8(4));
[INFO] [stdout]     |             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/encoder.rs:297:13
[INFO] [stdout]     |
[INFO] [stdout] 297 |             try!(encode(w, &ERL_REG_SEND));
[INFO] [stdout]     |             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/encoder.rs:298:13
[INFO] [stdout]     |
[INFO] [stdout] 298 |             try!(encode(w, from));
[INFO] [stdout]     |             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/encoder.rs:299:13
[INFO] [stdout]     |
[INFO] [stdout] 299 |             try!(encode(w, cookie));
[INFO] [stdout]     |             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/encoder.rs:303:13
[INFO] [stdout]     |
[INFO] [stdout] 303 |             try!(w.write_u8(5));
[INFO] [stdout]     |             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/encoder.rs:304:13
[INFO] [stdout]     |
[INFO] [stdout] 304 |             try!(encode(w, &ERL_REG_SEND_TT));
[INFO] [stdout]     |             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/encoder.rs:305:13
[INFO] [stdout]     |
[INFO] [stdout] 305 |             try!(encode(w, from));
[INFO] [stdout]     |             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/encoder.rs:306:13
[INFO] [stdout]     |
[INFO] [stdout] 306 |             try!(encode(w, cookie));
[INFO] [stdout]     |             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/encoder.rs:307:13
[INFO] [stdout]     |
[INFO] [stdout] 307 |             try!(encode(w, toname));
[INFO] [stdout]     |             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/encoder.rs:311:13
[INFO] [stdout]     |
[INFO] [stdout] 311 |             try!(w.write_u8(4));
[INFO] [stdout]     |             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/encoder.rs:312:13
[INFO] [stdout]     |
[INFO] [stdout] 312 |             try!(encode(w, &ERL_EXIT));
[INFO] [stdout]     |             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/encoder.rs:313:13
[INFO] [stdout]     |
[INFO] [stdout] 313 |             try!(encode(w, from));
[INFO] [stdout]     |             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/encoder.rs:314:13
[INFO] [stdout]     |
[INFO] [stdout] 314 |             try!(encode(w, to));
[INFO] [stdout]     |             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/encoder.rs:318:13
[INFO] [stdout]     |
[INFO] [stdout] 318 |             try!(w.write_u8(5));
[INFO] [stdout]     |             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/encoder.rs:319:13
[INFO] [stdout]     |
[INFO] [stdout] 319 |             try!(encode(w, &ERL_EXIT_TT));
[INFO] [stdout]     |             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/encoder.rs:320:13
[INFO] [stdout]     |
[INFO] [stdout] 320 |             try!(encode(w, from));
[INFO] [stdout]     |             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/encoder.rs:321:13
[INFO] [stdout]     |
[INFO] [stdout] 321 |             try!(encode(w, to));
[INFO] [stdout]     |             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/encoder.rs:322:13
[INFO] [stdout]     |
[INFO] [stdout] 322 |             try!(encode(w, token));
[INFO] [stdout]     |             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/encoder.rs:336:5
[INFO] [stdout]     |
[INFO] [stdout] 336 |     try!(encode(w, &v.node));
[INFO] [stdout]     |     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/encoder.rs:338:5
[INFO] [stdout]     |
[INFO] [stdout] 338 |     try!(w.write_u32(v.num & 0x00007fff));
[INFO] [stdout]     |     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/encoder.rs:340:5
[INFO] [stdout]     |
[INFO] [stdout] 340 |     try!(w.write_u32(v.serial & 0x00001fff));
[INFO] [stdout]     |     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/encoder.rs:328:22
[INFO] [stdout]     |
[INFO] [stdout] 328 | fn write_pid(w: &mut io::Write, v: &term::Pid) -> Result<(), error::Error> {
[INFO] [stdout]     |                      ^^^^^^^^^ help: use `dyn`: `dyn io::Write`
[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 issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/encoder.rs:331:9
[INFO] [stdout]     |
[INFO] [stdout] 331 |         try!(w.write_u8(ERL_NEW_PID_EXT));
[INFO] [stdout]     |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/encoder.rs:333:9
[INFO] [stdout]     |
[INFO] [stdout] 333 |         try!(w.write_u8(ERL_PID_EXT));
[INFO] [stdout]     |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/encoder.rs:357:5
[INFO] [stdout]     |
[INFO] [stdout] 357 |     try!(encode(w, &v.node));
[INFO] [stdout]     |     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/encoder.rs:359:5
[INFO] [stdout]     |
[INFO] [stdout] 359 |     try!(w.write_u32(v.id & 0x0fffffff));
[INFO] [stdout]     |     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/encoder.rs:349:23
[INFO] [stdout]     |
[INFO] [stdout] 349 | fn write_port(w: &mut io::Write, v: &term::Port) -> Result<(), error::Error> {
[INFO] [stdout]     |                       ^^^^^^^^^ help: use `dyn`: `dyn io::Write`
[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 issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/encoder.rs:352:9
[INFO] [stdout]     |
[INFO] [stdout] 352 |         try!(w.write_u8(ERL_NEW_PORT_EXT));
[INFO] [stdout]     |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/encoder.rs:354:9
[INFO] [stdout]     |
[INFO] [stdout] 354 |         try!(w.write_u8(ERL_PORT_EXT));
[INFO] [stdout]     |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/encoder.rs:376:5
[INFO] [stdout]     |
[INFO] [stdout] 376 |     try!(w.write_i16(v.len));
[INFO] [stdout]     |     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/encoder.rs:378:5
[INFO] [stdout]     |
[INFO] [stdout] 378 |     try!(encode(w, &v.node));
[INFO] [stdout]     |     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/encoder.rs:368:22
[INFO] [stdout]     |
[INFO] [stdout] 368 | fn write_ref(w: &mut io::Write, v: &term::Ref) -> Result<(), error::Error> {
[INFO] [stdout]     |                      ^^^^^^^^^ help: use `dyn`: `dyn io::Write`
[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 issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/encoder.rs:371:9
[INFO] [stdout]     |
[INFO] [stdout] 371 |         try!(w.write_u8(ERL_NEWER_REFERENCE_EXT));
[INFO] [stdout]     |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/encoder.rs:373:9
[INFO] [stdout]     |
[INFO] [stdout] 373 |         try!(w.write_u8(ERL_NEW_REFERENCE_EXT));
[INFO] [stdout]     |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/encoder.rs:381:9
[INFO] [stdout]     |
[INFO] [stdout] 381 |         try!(w.write_u32(v.creation));
[INFO] [stdout]     |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/encoder.rs:383:9
[INFO] [stdout]     |
[INFO] [stdout] 383 |         try!(w.write_u8(v.creation as u8));
[INFO] [stdout]     |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/encoder.rs:387:9
[INFO] [stdout]     |
[INFO] [stdout] 387 |         try!(w.write_u32(v.n[i as usize]));
[INFO] [stdout]     |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/encoder.rs:394:32
[INFO] [stdout]     |
[INFO] [stdout] 394 |     fn w(&mut self) -> &'a mut io::Write;
[INFO] [stdout]     |                                ^^^^^^^^^ help: use `dyn`: `dyn io::Write`
[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 issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/encoder.rs:399:32
[INFO] [stdout]     |
[INFO] [stdout] 399 |     fn w(&mut self) -> &'a mut io::Write {
[INFO] [stdout]     |                                ^^^^^^^^^ help: use `dyn`: `dyn io::Write`
[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 issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/epmd/port.rs:20:22
[INFO] [stdout]    |
[INFO] [stdout] 20 |     let mut stream = try!(net::TcpStream::connect(("127.0.0.1", os::getenv("ERL_EPMD_PORT", EPMD_PORT))));
[INFO] [stdout]    |                      ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/epmd/port.rs:25:9
[INFO] [stdout]    |
[INFO] [stdout] 25 |         try!(buf.write_u16((1 + len) as u16));
[INFO] [stdout]    |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/epmd/port.rs:26:9
[INFO] [stdout]    |
[INFO] [stdout] 26 |         try!(buf.write_u8(EI_EPMD_PORT2_REQ));
[INFO] [stdout]    |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/epmd/port.rs:27:9
[INFO] [stdout]    |
[INFO] [stdout] 27 |         try!(buf.write_slice(alive.as_bytes()));
[INFO] [stdout]    |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/epmd/port.rs:29:9
[INFO] [stdout]    |
[INFO] [stdout] 29 |         try!(stream.write_slice(buf.as_slice()));
[INFO] [stdout]    |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/epmd/port.rs:33:42
[INFO] [stdout]    |
[INFO] [stdout] 33 |         let mut cursor = io::Cursor::new(try!(stream.read_vec(2)));
[INFO] [stdout]    |                                          ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/epmd/port.rs:44:42
[INFO] [stdout]    |
[INFO] [stdout] 44 |         let mut cursor = io::Cursor::new(try!(stream.read_vec(8)));
[INFO] [stdout]    |                                          ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/epmd/publish.rs:19:22
[INFO] [stdout]    |
[INFO] [stdout] 19 |     let mut stream = try!(net::TcpStream::connect(("127.0.0.1", os::getenv("ERL_EPMD_PORT", EPMD_PORT))));
[INFO] [stdout]    |                      ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/epmd/publish.rs:24:9
[INFO] [stdout]    |
[INFO] [stdout] 24 |         try!(buf.write_u16((13 + len) as u16));
[INFO] [stdout]    |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/epmd/publish.rs:25:9
[INFO] [stdout]    |
[INFO] [stdout] 25 |         try!(buf.write_u8(EI_EPMD_ALIVE2_REQ));
[INFO] [stdout]    |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/epmd/publish.rs:26:9
[INFO] [stdout]    |
[INFO] [stdout] 26 |         try!(buf.write_u16(port));
[INFO] [stdout]    |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/epmd/publish.rs:27:9
[INFO] [stdout]    |
[INFO] [stdout] 27 |         try!(buf.write_u8(EI_HIDDEN_NODE));
[INFO] [stdout]    |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/epmd/publish.rs:28:9
[INFO] [stdout]    |
[INFO] [stdout] 28 |         try!(buf.write_u8(EI_MYPROTO));
[INFO] [stdout]    |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/epmd/publish.rs:29:9
[INFO] [stdout]    |
[INFO] [stdout] 29 |         try!(buf.write_u16(EI_DIST_HIGH));
[INFO] [stdout]    |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/epmd/publish.rs:30:9
[INFO] [stdout]    |
[INFO] [stdout] 30 |         try!(buf.write_u16(EI_DIST_LOW));
[INFO] [stdout]    |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/epmd/publish.rs:31:9
[INFO] [stdout]    |
[INFO] [stdout] 31 |         try!(buf.write_u16(len as u16));
[INFO] [stdout]    |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/epmd/publish.rs:32:9
[INFO] [stdout]    |
[INFO] [stdout] 32 |         try!(buf.write_slice(alive.as_bytes()));
[INFO] [stdout]    |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/epmd/publish.rs:33:9
[INFO] [stdout]    |
[INFO] [stdout] 33 |         try!(buf.write_u16(0));
[INFO] [stdout]    |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/epmd/publish.rs:35:9
[INFO] [stdout]    |
[INFO] [stdout] 35 |         try!(stream.write_slice(buf.as_slice()));
[INFO] [stdout]    |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/epmd/publish.rs:39:42
[INFO] [stdout]    |
[INFO] [stdout] 39 |         let mut cursor = io::Cursor::new(try!(stream.read_vec(2)));
[INFO] [stdout]    |                                          ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/epmd/publish.rs:50:42
[INFO] [stdout]    |
[INFO] [stdout] 50 |         let mut cursor = io::Cursor::new(try!(stream.read_vec(2)));
[INFO] [stdout]    |                                          ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]  --> src/ports.rs:7:21
[INFO] [stdout]   |
[INFO] [stdout] 7 | pub fn recv(r: &mut io::Read) -> Result<io::Cursor<Vec<u8>>, error::Error> {
[INFO] [stdout]   |                     ^^^^^^^^ help: use `dyn`: `dyn io::Read`
[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 issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]  --> src/ports.rs:8:11
[INFO] [stdout]   |
[INFO] [stdout] 8 |     match try!(r.read_u16()) {
[INFO] [stdout]   |           ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/ports.rs:12:46
[INFO] [stdout]    |
[INFO] [stdout] 12 |             let mut cursor = io::Cursor::new(try!(r.read_vec(u as usize)));
[INFO] [stdout]    |                                              ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/ports.rs:23:21
[INFO] [stdout]    |
[INFO] [stdout] 23 | pub fn send(w: &mut io::Write, v: &[u8]) -> Result<(), error::Error> {
[INFO] [stdout]    |                     ^^^^^^^^^ help: use `dyn`: `dyn io::Write`
[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 issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `RustcDecodable`: rustc-serialize is deprecated and no longer supported
[INFO] [stdout]   --> src/term.rs:53:28
[INFO] [stdout]    |
[INFO] [stdout] 53 | #[derive(Debug, PartialEq, RustcDecodable, RustcEncodable)]
[INFO] [stdout]    |                            ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `RustcEncodable`: rustc-serialize is deprecated and no longer supported
[INFO] [stdout]   --> src/term.rs:53:44
[INFO] [stdout]    |
[INFO] [stdout] 53 | #[derive(Debug, PartialEq, RustcDecodable, RustcEncodable)]
[INFO] [stdout]    |                                            ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/handle.rs:26:5
[INFO] [stdout]    |
[INFO] [stdout] 26 |     try!(connect::accept(stream, nodename, &cookie));
[INFO] [stdout]    |     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/handle.rs:14:25
[INFO] [stdout]    |
[INFO] [stdout] 14 |     where F: FnMut(&mut io::Read) -> Result<Vec<u8>, error::Error> {
[INFO] [stdout]    |                         ^^^^^^^^ help: use `dyn`: `dyn io::Read`
[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 issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/handle.rs:30:20
[INFO] [stdout]    |
[INFO] [stdout] 30 |         let size = try!(stream.read_u32()) as usize; // TODO
[INFO] [stdout]    |                    ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/handle.rs:34:46
[INFO] [stdout]    |
[INFO] [stdout] 34 |             let mut cursor = io::Cursor::new(try!(stream.read_vec(size)));
[INFO] [stdout]    |                                              ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/handle.rs:44:19
[INFO] [stdout]    |
[INFO] [stdout] 44 |             match try!(decoder::decode(&mut cursor)) {
[INFO] [stdout]    |                   ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/handle.rs:56:25
[INFO] [stdout]    |
[INFO] [stdout] 56 |                         try!(encoder::encode(&mut head, &term::Msg::Send {
[INFO] [stdout]    |                         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/handle.rs:71:25
[INFO] [stdout]    |
[INFO] [stdout] 71 |                         try!(stream.write_slice(buf.as_slice()));
[INFO] [stdout]    |                         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated function `std::env::home_dir`: This function's behavior is unexpected and probably not what you want. Consider using a crate from crates.io instead.
[INFO] [stdout]  --> src/fs.rs:6:34
[INFO] [stdout]   |
[INFO] [stdout] 6 |     if let Some(mut path) = env::home_dir() {
[INFO] [stdout]   |                                  ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated associated function `std::error::Error::description`: use the Display impl or to_string()
[INFO] [stdout]   --> src/error.rs:27:35
[INFO] [stdout]    |
[INFO] [stdout] 27 |             Error::Io(ref e) => e.description(),
[INFO] [stdout]    |                                   ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated associated function `std::error::Error::description`: use the Display impl or to_string()
[INFO] [stdout]   --> src/error.rs:28:41
[INFO] [stdout]    |
[INFO] [stdout] 28 |             Error::FromUtf8(ref e) => e.description(),
[INFO] [stdout]    |                                         ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated associated function `std::error::Error::cause`: replaced by Error::source, which can support downcasting
[INFO] [stdout]   --> src/error.rs:34:35
[INFO] [stdout]    |
[INFO] [stdout] 34 |             Error::Io(ref e) => e.cause(),
[INFO] [stdout]    |                                   ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated associated function `std::error::Error::cause`: replaced by Error::source, which can support downcasting
[INFO] [stdout]   --> src/error.rs:35:41
[INFO] [stdout]    |
[INFO] [stdout] 35 |             Error::FromUtf8(ref e) => e.cause(),
[INFO] [stdout]    |                                         ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: 194 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished dev [unoptimized + debuginfo] target(s) in 8.56s
[INFO] running `Command { std: "docker" "inspect" "549e3fe7444d8311042d4c0df5ffbc8498eb972e815e921eef71511de97a30c7", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "549e3fe7444d8311042d4c0df5ffbc8498eb972e815e921eef71511de97a30c7", kill_on_drop: false }`
[INFO] [stdout] 549e3fe7444d8311042d4c0df5ffbc8498eb972e815e921eef71511de97a30c7
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-11/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-11/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:34b6a614d2c27851fe6cbf88fbd1137609cefab8b10d0615aaeb6fd47975d74e" "/opt/rustwide/cargo-home/bin/cargo" "+beta-2021-08-01" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }`
[INFO] [stderr] WARNING: Your kernel does not support swap limit capabilities or the cgroup is not mounted. Memory limited without swap.
[INFO] [stdout] ee489374e83cc6ca76dfba29a3195cb3ce568f3f0ebfd7d147fe53d749a0af16
[INFO] running `Command { std: "docker" "start" "-a" "ee489374e83cc6ca76dfba29a3195cb3ce568f3f0ebfd7d147fe53d749a0af16", kill_on_drop: false }`
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/error.rs:32:32
[INFO] [stdout]    |
[INFO] [stdout] 32 |     fn cause(&self) -> Option<&error::Error> {
[INFO] [stdout]    |                                ^^^^^^^^^^^^ help: use `dyn`: `dyn error::Error`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(bare_trait_objects)]` on by default
[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 issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/connect.rs:13:5
[INFO] [stdout]    |
[INFO] [stdout] 13 |     try!(send_status(stream, "ok"));
[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/connect.rs:17:5
[INFO] [stdout]    |
[INFO] [stdout] 17 |     try!(send_challenge(stream, nodename, version, our_challenge));
[INFO] [stdout]    |     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/connect.rs:11:19
[INFO] [stdout]    |
[INFO] [stdout] 11 |     let version = try!(recv_version(stream));
[INFO] [stdout]    |                   ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/connect.rs:22:25
[INFO] [stdout]    |
[INFO] [stdout] 22 |     let her_challenge = try!(recv_challenge_reply(stream, &expected_digest));
[INFO] [stdout]    |                         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/connect.rs:30:33
[INFO] [stdout]    |
[INFO] [stdout] 30 | fn recv_challenge_reply(r: &mut io::Read, expected: &[u8]) -> Result<u32, error::Error> {
[INFO] [stdout]    |                                 ^^^^^^^^ help: use `dyn`: `dyn io::Read`
[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 issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/connect.rs:32:8
[INFO] [stdout]    |
[INFO] [stdout] 32 |     if try!(r.read_u16()) != 21 {
[INFO] [stdout]    |        ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/connect.rs:36:38
[INFO] [stdout]    |
[INFO] [stdout] 36 |     let mut cursor = io::Cursor::new(try!(r.read_vec(21)));
[INFO] [stdout]    |                                      ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/connect.rs:51:25
[INFO] [stdout]    |
[INFO] [stdout] 51 | fn recv_version(r: &mut io::Read) -> Result<u16, error::Error> {
[INFO] [stdout]    |                         ^^^^^^^^ help: use `dyn`: `dyn io::Read`
[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 issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/connect.rs:53:16
[INFO] [stdout]    |
[INFO] [stdout] 53 |     let size = try!(r.read_u16()) as usize;
[INFO] [stdout]    |                ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/connect.rs:59:38
[INFO] [stdout]    |
[INFO] [stdout] 59 |     let mut cursor = io::Cursor::new(try!(r.read_vec(size)));
[INFO] [stdout]    |                                      ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/connect.rs:83:27
[INFO] [stdout]    |
[INFO] [stdout] 83 | fn send_challenge(w: &mut io::Write, name: &str, version: u16, challenge: u32) -> Result<(), error::Error> {
[INFO] [stdout]    |                           ^^^^^^^^^ help: use `dyn`: `dyn io::Write`
[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 issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/connect.rs:105:31
[INFO] [stdout]     |
[INFO] [stdout] 105 | fn send_challenge_ack(w: &mut io::Write, digest: &[u8]) -> Result<(), error::Error> {
[INFO] [stdout]     |                               ^^^^^^^^^ help: use `dyn`: `dyn io::Write`
[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 issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/connect.rs:113:24
[INFO] [stdout]     |
[INFO] [stdout] 113 | fn send_status(w: &mut io::Write, status: &str) -> Result<(), error::Error> {
[INFO] [stdout]     |                        ^^^^^^^^^ help: use `dyn`: `dyn io::Write`
[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 issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/decoder.rs:12:54
[INFO] [stdout]    |
[INFO] [stdout] 12 | pub fn decode<T: rustc_serialize::Decodable>(r: &mut io::Read) -> Result<T, error::Error> {
[INFO] [stdout]    |                                                      ^^^^^^^^ help: use `dyn`: `dyn io::Read`
[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 issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/decoder.rs:23:16
[INFO] [stdout]    |
[INFO] [stdout] 23 |     r: &'a mut io::Read,
[INFO] [stdout]    |                ^^^^^^^^ help: use `dyn`: `dyn io::Read`
[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 issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/decoder.rs:39:15
[INFO] [stdout]    |
[INFO] [stdout] 39 |         match try!(read_num(self.r)) {
[INFO] [stdout]    |               ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/decoder.rs:48:15
[INFO] [stdout]    |
[INFO] [stdout] 48 |         match try!(read_num(self.r)) {
[INFO] [stdout]    |               ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/decoder.rs:57:15
[INFO] [stdout]    |
[INFO] [stdout] 57 |         match try!(read_num(self.r)) {
[INFO] [stdout]    |               ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/decoder.rs:66:15
[INFO] [stdout]    |
[INFO] [stdout] 66 |         match try!(read_num(self.r)) {
[INFO] [stdout]    |               ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/decoder.rs:77:15
[INFO] [stdout]    |
[INFO] [stdout] 77 |         match try!(read_num(self.r)) {
[INFO] [stdout]    |               ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/decoder.rs:87:15
[INFO] [stdout]    |
[INFO] [stdout] 87 |         match try!(read_num(self.r)) {
[INFO] [stdout]    |               ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/decoder.rs:97:15
[INFO] [stdout]    |
[INFO] [stdout] 97 |         match try!(read_num(self.r)) {
[INFO] [stdout]    |               ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/decoder.rs:106:15
[INFO] [stdout]     |
[INFO] [stdout] 106 |         match try!(read_num(self.r)) {
[INFO] [stdout]     |               ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/decoder.rs:115:15
[INFO] [stdout]     |
[INFO] [stdout] 115 |         match try!(decode(self.r)) {
[INFO] [stdout]     |               ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/decoder.rs:122:15
[INFO] [stdout]     |
[INFO] [stdout] 122 |         match try!(self.r.read_u8()) {
[INFO] [stdout]     |               ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/decoder.rs:137:15
[INFO] [stdout]     |
[INFO] [stdout] 137 |         match try!(self.r.read_u8()) {
[INFO] [stdout]     |               ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/decoder.rs:185:15
[INFO] [stdout]     |
[INFO] [stdout] 185 |         match try!(self.r.read_u8()) {
[INFO] [stdout]     |               ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/decoder.rs:214:15
[INFO] [stdout]     |
[INFO] [stdout] 214 |         match try!(self.r.read_u8()) {
[INFO] [stdout]     |               ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/decoder.rs:217:20
[INFO] [stdout]     |
[INFO] [stdout] 217 |                 if try!(self.r.read_u8()) == ERL_NIL_EXT {
[INFO] [stdout]     |                    ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/decoder.rs:234:15
[INFO] [stdout]     |
[INFO] [stdout] 234 |         match try!(self.r.read_u8()) {
[INFO] [stdout]     |               ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/decoder.rs:255:21
[INFO] [stdout]     |
[INFO] [stdout] 255 | fn read_num(r: &mut io::Read) -> Result<Num, error::Error> {
[INFO] [stdout]     |                     ^^^^^^^^ help: use `dyn`: `dyn io::Read`
[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 issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/decoder.rs:256:11
[INFO] [stdout]     |
[INFO] [stdout] 256 |     match try!(r.read_u8()) {
[INFO] [stdout]     |           ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/decoder.rs:264:20
[INFO] [stdout]     |
[INFO] [stdout] 264 | fn read_u8(r: &mut io::Read) -> Result<Num, error::Error> {
[INFO] [stdout]     |                    ^^^^^^^^ help: use `dyn`: `dyn io::Read`
[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 issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/decoder.rs:268:21
[INFO] [stdout]     |
[INFO] [stdout] 268 | fn read_i27(r: &mut io::Read) -> Result<Num, error::Error> {
[INFO] [stdout]     |                     ^^^^^^^^ help: use `dyn`: `dyn io::Read`
[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 issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/decoder.rs:272:27
[INFO] [stdout]     |
[INFO] [stdout] 272 | fn read_small_big(r: &mut io::Read) -> Result<Num, error::Error> {
[INFO] [stdout]     |                           ^^^^^^^^ help: use `dyn`: `dyn io::Read`
[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 issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/decoder.rs:276:21
[INFO] [stdout]     |
[INFO] [stdout] 276 |             let s = try!(r.read_u8());
[INFO] [stdout]     |                     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/decoder.rs:286:24
[INFO] [stdout]     |
[INFO] [stdout] 286 | fn read_string(r: &mut io::Read) -> Result<String, error::Error> {
[INFO] [stdout]     |                        ^^^^^^^^ help: use `dyn`: `dyn io::Read`
[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 issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/decoder.rs:290:22
[INFO] [stdout]     |
[INFO] [stdout] 290 | fn read_atom(r: &mut io::Read) -> Result<term::Atom, error::Error> {
[INFO] [stdout]     |                      ^^^^^^^^ help: use `dyn`: `dyn io::Read`
[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 issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/decoder.rs:292:13
[INFO] [stdout]     |
[INFO] [stdout] 292 |     let t = try!(r.read_u8());
[INFO] [stdout]     |             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/decoder.rs:295:36
[INFO] [stdout]     |
[INFO] [stdout] 295 |         ERL_ATOM_EXT            => try!(r.read_u16()) as usize,
[INFO] [stdout]     |                                    ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/decoder.rs:296:36
[INFO] [stdout]     |
[INFO] [stdout] 296 |         ERL_ATOM_UTF8_EXT       => try!(r.read_u16()) as usize,
[INFO] [stdout]     |                                    ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/decoder.rs:297:36
[INFO] [stdout]     |
[INFO] [stdout] 297 |         ERL_SMALL_ATOM_UTF8_EXT => try!(r.read_u8()) as usize,
[INFO] [stdout]     |                                    ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/decoder.rs:301:29
[INFO] [stdout]     |
[INFO] [stdout] 301 |     match String::from_utf8(try!(r.read_vec(n))) {
[INFO] [stdout]     |                             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/decoder.rs:312:21
[INFO] [stdout]     |
[INFO] [stdout] 312 | fn read_msg(r: &mut io::Read) -> Result<term::Msg, error::Error> {
[INFO] [stdout]     |                     ^^^^^^^^ help: use `dyn`: `dyn io::Read`
[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 issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/decoder.rs:314:8
[INFO] [stdout]     |
[INFO] [stdout] 314 |     if try!(r.read_u8()) != ERL_SMALL_TUPLE_EXT {
[INFO] [stdout]     |        ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/decoder.rs:318:13
[INFO] [stdout]     |
[INFO] [stdout] 318 |     let a = try!(r.read_u8());
[INFO] [stdout]     |             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/decoder.rs:320:11
[INFO] [stdout]     |
[INFO] [stdout] 320 |     match try!(decode(r)) {
[INFO] [stdout]     |           ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/decoder.rs:323:25
[INFO] [stdout]     |
[INFO] [stdout] 323 |                 cookie: try!(decode(r)),
[INFO] [stdout]     |                         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/decoder.rs:324:21
[INFO] [stdout]     |
[INFO] [stdout] 324 |                 to: try!(decode(r)),
[INFO] [stdout]     |                     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/decoder.rs:328:25
[INFO] [stdout]     |
[INFO] [stdout] 328 |                 cookie: try!(decode(r)),
[INFO] [stdout]     |                         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/decoder.rs:329:21
[INFO] [stdout]     |
[INFO] [stdout] 329 |                 to: try!(decode(r)),
[INFO] [stdout]     |                     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/decoder.rs:330:24
[INFO] [stdout]     |
[INFO] [stdout] 330 |                 token: try!(decode(r)),
[INFO] [stdout]     |                        ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/decoder.rs:334:23
[INFO] [stdout]     |
[INFO] [stdout] 334 |                 from: try!(decode(r)),
[INFO] [stdout]     |                       ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/decoder.rs:335:25
[INFO] [stdout]     |
[INFO] [stdout] 335 |                 cookie: try!(decode(r)),
[INFO] [stdout]     |                         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/decoder.rs:336:25
[INFO] [stdout]     |
[INFO] [stdout] 336 |                 toname: try!(decode(r)),
[INFO] [stdout]     |                         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/decoder.rs:340:23
[INFO] [stdout]     |
[INFO] [stdout] 340 |                 from: try!(decode(r)),
[INFO] [stdout]     |                       ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/decoder.rs:341:25
[INFO] [stdout]     |
[INFO] [stdout] 341 |                 cookie: try!(decode(r)),
[INFO] [stdout]     |                         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/decoder.rs:342:25
[INFO] [stdout]     |
[INFO] [stdout] 342 |                 toname: try!(decode(r)),
[INFO] [stdout]     |                         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/decoder.rs:343:24
[INFO] [stdout]     |
[INFO] [stdout] 343 |                 token: try!(decode(r)),
[INFO] [stdout]     |                        ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/decoder.rs:347:23
[INFO] [stdout]     |
[INFO] [stdout] 347 |                 from: try!(decode(r)),
[INFO] [stdout]     |                       ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/decoder.rs:348:21
[INFO] [stdout]     |
[INFO] [stdout] 348 |                 to: try!(decode(r)),
[INFO] [stdout]     |                     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/decoder.rs:349:25
[INFO] [stdout]     |
[INFO] [stdout] 349 |                 reason: try!(decode(r)),
[INFO] [stdout]     |                         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/decoder.rs:353:23
[INFO] [stdout]     |
[INFO] [stdout] 353 |                 from: try!(decode(r)),
[INFO] [stdout]     |                       ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/decoder.rs:354:21
[INFO] [stdout]     |
[INFO] [stdout] 354 |                 to: try!(decode(r)),
[INFO] [stdout]     |                     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/decoder.rs:355:24
[INFO] [stdout]     |
[INFO] [stdout] 355 |                 token: try!(decode(r)),
[INFO] [stdout]     |                        ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/decoder.rs:356:25
[INFO] [stdout]     |
[INFO] [stdout] 356 |                 reason: try!(decode(r)),
[INFO] [stdout]     |                         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/decoder.rs:362:21
[INFO] [stdout]     |
[INFO] [stdout] 362 | fn read_pid(r: &mut io::Read) -> Result<term::Pid, error::Error> {
[INFO] [stdout]     |                     ^^^^^^^^ help: use `dyn`: `dyn io::Read`
[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 issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/decoder.rs:364:25
[INFO] [stdout]     |
[INFO] [stdout] 364 |     let t: bool = match try!(r.read_u8()) {
[INFO] [stdout]     |                         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/decoder.rs:371:15
[INFO] [stdout]     |
[INFO] [stdout] 371 |         node: try!(decode(r)),
[INFO] [stdout]     |               ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/decoder.rs:372:14
[INFO] [stdout]     |
[INFO] [stdout] 372 |         num: try!(r.read_u32()) & 0x00007fff,
[INFO] [stdout]     |              ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/decoder.rs:373:17
[INFO] [stdout]     |
[INFO] [stdout] 373 |         serial: try!(r.read_u32()) & 0x00001fff,
[INFO] [stdout]     |                 ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/decoder.rs:374:26
[INFO] [stdout]     |
[INFO] [stdout] 374 |         creation: if t { try!(r.read_u32()) } else { try!(r.read_u8()) as u32 & 0x03 },
[INFO] [stdout]     |                          ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/decoder.rs:374:54
[INFO] [stdout]     |
[INFO] [stdout] 374 |         creation: if t { try!(r.read_u32()) } else { try!(r.read_u8()) as u32 & 0x03 },
[INFO] [stdout]     |                                                      ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/decoder.rs:378:22
[INFO] [stdout]     |
[INFO] [stdout] 378 | fn read_port(r: &mut io::Read) -> Result<term::Port, error::Error> {
[INFO] [stdout]     |                      ^^^^^^^^ help: use `dyn`: `dyn io::Read`
[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 issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/decoder.rs:380:19
[INFO] [stdout]     |
[INFO] [stdout] 380 |     let t = match try!(r.read_u8()) {
[INFO] [stdout]     |                   ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/decoder.rs:387:15
[INFO] [stdout]     |
[INFO] [stdout] 387 |         node: try!(decode(r)),
[INFO] [stdout]     |               ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/decoder.rs:388:13
[INFO] [stdout]     |
[INFO] [stdout] 388 |         id: try!(r.read_u32()) & 0x0fffffff,
[INFO] [stdout]     |             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/decoder.rs:389:26
[INFO] [stdout]     |
[INFO] [stdout] 389 |         creation: if t { try!(r.read_u32()) } else { try!(r.read_u8()) as u32 & 0x03 },
[INFO] [stdout]     |                          ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/decoder.rs:389:54
[INFO] [stdout]     |
[INFO] [stdout] 389 |         creation: if t { try!(r.read_u32()) } else { try!(r.read_u8()) as u32 & 0x03 },
[INFO] [stdout]     |                                                      ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/decoder.rs:393:21
[INFO] [stdout]     |
[INFO] [stdout] 393 | fn read_ref(r: &mut io::Read) -> Result<term::Ref, error::Error> {
[INFO] [stdout]     |                     ^^^^^^^^ help: use `dyn`: `dyn io::Read`
[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 issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/decoder.rs:395:19
[INFO] [stdout]     |
[INFO] [stdout] 395 |     let t = match try!(r.read_u8()) {
[INFO] [stdout]     |                   ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/decoder.rs:401:15
[INFO] [stdout]     |
[INFO] [stdout] 401 |     let len = try!(r.read_i16()) & 0x0003;
[INFO] [stdout]     |               ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/decoder.rs:403:16
[INFO] [stdout]     |
[INFO] [stdout] 403 |     let node = try!(decode(r));
[INFO] [stdout]     |                ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/decoder.rs:405:27
[INFO] [stdout]     |
[INFO] [stdout] 405 |     let creation = if t { try!(r.read_u32()) } else { try!(r.read_u8()) as u32 & 0x03 };
[INFO] [stdout]     |                           ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/decoder.rs:405:55
[INFO] [stdout]     |
[INFO] [stdout] 405 |     let creation = if t { try!(r.read_u32()) } else { try!(r.read_u8()) as u32 & 0x03 };
[INFO] [stdout]     |                                                       ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/decoder.rs:409:16
[INFO] [stdout]     |
[INFO] [stdout] 409 |         n[i] = try!(r.read_u32());
[INFO] [stdout]     |                ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/decoder.rs:416:32
[INFO] [stdout]     |
[INFO] [stdout] 416 |     fn r(&mut self) -> &'a mut io::Read;
[INFO] [stdout]     |                                ^^^^^^^^ help: use `dyn`: `dyn io::Read`
[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 issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/decoder.rs:421:32
[INFO] [stdout]     |
[INFO] [stdout] 421 |     fn r(&mut self) -> &'a mut io::Read {
[INFO] [stdout]     |                                ^^^^^^^^ help: use `dyn`: `dyn io::Read`
[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 issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/encoder.rs:13:54
[INFO] [stdout]    |
[INFO] [stdout] 13 | pub fn encode<T: rustc_serialize::Encodable>(w: &mut io::Write, t: &T) -> Result<(), error::Error> {
[INFO] [stdout]    |                                                      ^^^^^^^^^ help: use `dyn`: `dyn io::Write`
[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 issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/encoder.rs:18:16
[INFO] [stdout]    |
[INFO] [stdout] 18 |     w: &'a mut io::Write,
[INFO] [stdout]    |                ^^^^^^^^^ help: use `dyn`: `dyn io::Write`
[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 issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/encoder.rs:163:13
[INFO] [stdout]     |
[INFO] [stdout] 163 |             try!(self.w.write_u8(ERL_LARGE_TUPLE_EXT).and_then(|()| self.w.write_u32(len as u32)));
[INFO] [stdout]     |             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/encoder.rs:165:13
[INFO] [stdout]     |
[INFO] [stdout] 165 |             try!(self.w.write_u8(ERL_SMALL_TUPLE_EXT).and_then(|()| self.w.write_u8(len as u8)));
[INFO] [stdout]     |             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/encoder.rs:202:13
[INFO] [stdout]     |
[INFO] [stdout] 202 |             try!(self.w.write_u8(ERL_LIST_EXT).and_then(|()| self.w.write_u32(len as u32)));
[INFO] [stdout]     |             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/encoder.rs:203:13
[INFO] [stdout]     |
[INFO] [stdout] 203 |             try!(f(self));
[INFO] [stdout]     |             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/encoder.rs:215:9
[INFO] [stdout]     |
[INFO] [stdout] 215 |         try!(self.w.write_u8(ERL_MAP_EXT).and_then(|()| self.w.write_u32(len as u32)));
[INFO] [stdout]     |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/encoder.rs:230:21
[INFO] [stdout]     |
[INFO] [stdout] 230 | fn write_u8(w: &mut io::Write, v: u8) -> Result<(), error::Error> {
[INFO] [stdout]     |                     ^^^^^^^^^ help: use `dyn`: `dyn io::Write`
[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 issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/encoder.rs:234:22
[INFO] [stdout]     |
[INFO] [stdout] 234 | fn write_i27(w: &mut io::Write, v: i32) -> Result<(), error::Error> {
[INFO] [stdout]     |                      ^^^^^^^^^ help: use `dyn`: `dyn io::Write`
[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 issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/encoder.rs:238:28
[INFO] [stdout]     |
[INFO] [stdout] 238 | fn write_small_big(w: &mut io::Write, s: u8, v: u64) -> Result<(), error::Error> {
[INFO] [stdout]     |                            ^^^^^^^^^ help: use `dyn`: `dyn io::Write`
[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 issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/encoder.rs:250:22
[INFO] [stdout]     |
[INFO] [stdout] 250 | fn write_str(w: &mut io::Write, v: &str, len: usize) -> Result<(), error::Error> {
[INFO] [stdout]     |                      ^^^^^^^^^ help: use `dyn`: `dyn io::Write`
[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 issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/encoder.rs:256:23
[INFO] [stdout]     |
[INFO] [stdout] 256 | fn write_atom(w: &mut io::Write, v: &term::Atom) -> Result<(), error::Error> {
[INFO] [stdout]     |                       ^^^^^^^^^ help: use `dyn`: `dyn io::Write`
[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 issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/encoder.rs:259:13
[INFO] [stdout]     |
[INFO] [stdout] 259 |             try!(w.write_u8(ERL_ATOM_EXT));
[INFO] [stdout]     |             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/encoder.rs:260:13
[INFO] [stdout]     |
[INFO] [stdout] 260 |             try!(w.write_u16(s.len() as u16));
[INFO] [stdout]     |             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/encoder.rs:264:13
[INFO] [stdout]     |
[INFO] [stdout] 264 |             try!(w.write_u8(ERL_ATOM_UTF8_EXT));
[INFO] [stdout]     |             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/encoder.rs:265:13
[INFO] [stdout]     |
[INFO] [stdout] 265 |             try!(w.write_u16(s.len() as u16));
[INFO] [stdout]     |             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/encoder.rs:269:13
[INFO] [stdout]     |
[INFO] [stdout] 269 |             try!(w.write_u8(ERL_SMALL_ATOM_UTF8_EXT));
[INFO] [stdout]     |             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/encoder.rs:270:13
[INFO] [stdout]     |
[INFO] [stdout] 270 |             try!(w.write_u8(s.len() as u8));
[INFO] [stdout]     |             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/encoder.rs:279:5
[INFO] [stdout]     |
[INFO] [stdout] 279 |     try!(w.write_u8(ERL_SMALL_TUPLE_EXT));
[INFO] [stdout]     |     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/encoder.rs:277:22
[INFO] [stdout]     |
[INFO] [stdout] 277 | fn write_msg(w: &mut io::Write, v: &term::Msg) -> Result<(), error::Error> {
[INFO] [stdout]     |                      ^^^^^^^^^ help: use `dyn`: `dyn io::Write`
[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 issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/encoder.rs:283:13
[INFO] [stdout]     |
[INFO] [stdout] 283 |             try!(w.write_u8(3));
[INFO] [stdout]     |             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/encoder.rs:284:13
[INFO] [stdout]     |
[INFO] [stdout] 284 |             try!(encode(w, &ERL_SEND));
[INFO] [stdout]     |             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/encoder.rs:285:13
[INFO] [stdout]     |
[INFO] [stdout] 285 |             try!(encode(w, cookie));
[INFO] [stdout]     |             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/encoder.rs:289:13
[INFO] [stdout]     |
[INFO] [stdout] 289 |             try!(w.write_u8(4));
[INFO] [stdout]     |             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/encoder.rs:290:13
[INFO] [stdout]     |
[INFO] [stdout] 290 |             try!(encode(w, &ERL_SEND_TT));
[INFO] [stdout]     |             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/encoder.rs:291:13
[INFO] [stdout]     |
[INFO] [stdout] 291 |             try!(encode(w, cookie));
[INFO] [stdout]     |             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/encoder.rs:292:13
[INFO] [stdout]     |
[INFO] [stdout] 292 |             try!(encode(w, to));
[INFO] [stdout]     |             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/encoder.rs:296:13
[INFO] [stdout]     |
[INFO] [stdout] 296 |             try!(w.write_u8(4));
[INFO] [stdout]     |             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/encoder.rs:297:13
[INFO] [stdout]     |
[INFO] [stdout] 297 |             try!(encode(w, &ERL_REG_SEND));
[INFO] [stdout]     |             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/encoder.rs:298:13
[INFO] [stdout]     |
[INFO] [stdout] 298 |             try!(encode(w, from));
[INFO] [stdout]     |             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/encoder.rs:299:13
[INFO] [stdout]     |
[INFO] [stdout] 299 |             try!(encode(w, cookie));
[INFO] [stdout]     |             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/encoder.rs:303:13
[INFO] [stdout]     |
[INFO] [stdout] 303 |             try!(w.write_u8(5));
[INFO] [stdout]     |             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/encoder.rs:304:13
[INFO] [stdout]     |
[INFO] [stdout] 304 |             try!(encode(w, &ERL_REG_SEND_TT));
[INFO] [stdout]     |             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/encoder.rs:305:13
[INFO] [stdout]     |
[INFO] [stdout] 305 |             try!(encode(w, from));
[INFO] [stdout]     |             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]    Compiling ei v0.1.2 (/opt/rustwide/workdir)
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/encoder.rs:306:13
[INFO] [stdout]     |
[INFO] [stdout] 306 |             try!(encode(w, cookie));
[INFO] [stdout]     |             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/encoder.rs:307:13
[INFO] [stdout]     |
[INFO] [stdout] 307 |             try!(encode(w, toname));
[INFO] [stdout]     |             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/encoder.rs:311:13
[INFO] [stdout]     |
[INFO] [stdout] 311 |             try!(w.write_u8(4));
[INFO] [stdout]     |             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/encoder.rs:312:13
[INFO] [stdout]     |
[INFO] [stdout] 312 |             try!(encode(w, &ERL_EXIT));
[INFO] [stdout]     |             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/encoder.rs:313:13
[INFO] [stdout]     |
[INFO] [stdout] 313 |             try!(encode(w, from));
[INFO] [stdout]     |             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/encoder.rs:314:13
[INFO] [stdout]     |
[INFO] [stdout] 314 |             try!(encode(w, to));
[INFO] [stdout]     |             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/encoder.rs:318:13
[INFO] [stdout]     |
[INFO] [stdout] 318 |             try!(w.write_u8(5));
[INFO] [stdout]     |             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/encoder.rs:319:13
[INFO] [stdout]     |
[INFO] [stdout] 319 |             try!(encode(w, &ERL_EXIT_TT));
[INFO] [stdout]     |             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/encoder.rs:320:13
[INFO] [stdout]     |
[INFO] [stdout] 320 |             try!(encode(w, from));
[INFO] [stdout]     |             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/encoder.rs:321:13
[INFO] [stdout]     |
[INFO] [stdout] 321 |             try!(encode(w, to));
[INFO] [stdout]     |             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/encoder.rs:322:13
[INFO] [stdout]     |
[INFO] [stdout] 322 |             try!(encode(w, token));
[INFO] [stdout]     |             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/encoder.rs:336:5
[INFO] [stdout]     |
[INFO] [stdout] 336 |     try!(encode(w, &v.node));
[INFO] [stdout]     |     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/encoder.rs:338:5
[INFO] [stdout]     |
[INFO] [stdout] 338 |     try!(w.write_u32(v.num & 0x00007fff));
[INFO] [stdout]     |     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/encoder.rs:340:5
[INFO] [stdout]     |
[INFO] [stdout] 340 |     try!(w.write_u32(v.serial & 0x00001fff));
[INFO] [stdout]     |     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/encoder.rs:328:22
[INFO] [stdout]     |
[INFO] [stdout] 328 | fn write_pid(w: &mut io::Write, v: &term::Pid) -> Result<(), error::Error> {
[INFO] [stdout]     |                      ^^^^^^^^^ help: use `dyn`: `dyn io::Write`
[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 issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/encoder.rs:331:9
[INFO] [stdout]     |
[INFO] [stdout] 331 |         try!(w.write_u8(ERL_NEW_PID_EXT));
[INFO] [stdout]     |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/encoder.rs:333:9
[INFO] [stdout]     |
[INFO] [stdout] 333 |         try!(w.write_u8(ERL_PID_EXT));
[INFO] [stdout]     |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/encoder.rs:357:5
[INFO] [stdout]     |
[INFO] [stdout] 357 |     try!(encode(w, &v.node));
[INFO] [stdout]     |     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/encoder.rs:359:5
[INFO] [stdout]     |
[INFO] [stdout] 359 |     try!(w.write_u32(v.id & 0x0fffffff));
[INFO] [stdout]     |     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/encoder.rs:349:23
[INFO] [stdout]     |
[INFO] [stdout] 349 | fn write_port(w: &mut io::Write, v: &term::Port) -> Result<(), error::Error> {
[INFO] [stdout]     |                       ^^^^^^^^^ help: use `dyn`: `dyn io::Write`
[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 issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/encoder.rs:352:9
[INFO] [stdout]     |
[INFO] [stdout] 352 |         try!(w.write_u8(ERL_NEW_PORT_EXT));
[INFO] [stdout]     |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/encoder.rs:354:9
[INFO] [stdout]     |
[INFO] [stdout] 354 |         try!(w.write_u8(ERL_PORT_EXT));
[INFO] [stdout]     |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/encoder.rs:376:5
[INFO] [stdout]     |
[INFO] [stdout] 376 |     try!(w.write_i16(v.len));
[INFO] [stdout]     |     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/encoder.rs:378:5
[INFO] [stdout]     |
[INFO] [stdout] 378 |     try!(encode(w, &v.node));
[INFO] [stdout]     |     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/encoder.rs:368:22
[INFO] [stdout]     |
[INFO] [stdout] 368 | fn write_ref(w: &mut io::Write, v: &term::Ref) -> Result<(), error::Error> {
[INFO] [stdout]     |                      ^^^^^^^^^ help: use `dyn`: `dyn io::Write`
[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 issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/encoder.rs:371:9
[INFO] [stdout]     |
[INFO] [stdout] 371 |         try!(w.write_u8(ERL_NEWER_REFERENCE_EXT));
[INFO] [stdout]     |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/encoder.rs:373:9
[INFO] [stdout]     |
[INFO] [stdout] 373 |         try!(w.write_u8(ERL_NEW_REFERENCE_EXT));
[INFO] [stdout]     |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/encoder.rs:381:9
[INFO] [stdout]     |
[INFO] [stdout] 381 |         try!(w.write_u32(v.creation));
[INFO] [stdout]     |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/encoder.rs:383:9
[INFO] [stdout]     |
[INFO] [stdout] 383 |         try!(w.write_u8(v.creation as u8));
[INFO] [stdout]     |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/encoder.rs:387:9
[INFO] [stdout]     |
[INFO] [stdout] 387 |         try!(w.write_u32(v.n[i as usize]));
[INFO] [stdout]     |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/encoder.rs:394:32
[INFO] [stdout]     |
[INFO] [stdout] 394 |     fn w(&mut self) -> &'a mut io::Write;
[INFO] [stdout]     |                                ^^^^^^^^^ help: use `dyn`: `dyn io::Write`
[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 issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/encoder.rs:399:32
[INFO] [stdout]     |
[INFO] [stdout] 399 |     fn w(&mut self) -> &'a mut io::Write {
[INFO] [stdout]     |                                ^^^^^^^^^ help: use `dyn`: `dyn io::Write`
[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 issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/epmd/port.rs:20:22
[INFO] [stdout]    |
[INFO] [stdout] 20 |     let mut stream = try!(net::TcpStream::connect(("127.0.0.1", os::getenv("ERL_EPMD_PORT", EPMD_PORT))));
[INFO] [stdout]    |                      ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/epmd/port.rs:25:9
[INFO] [stdout]    |
[INFO] [stdout] 25 |         try!(buf.write_u16((1 + len) as u16));
[INFO] [stdout]    |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/epmd/port.rs:26:9
[INFO] [stdout]    |
[INFO] [stdout] 26 |         try!(buf.write_u8(EI_EPMD_PORT2_REQ));
[INFO] [stdout]    |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/epmd/port.rs:27:9
[INFO] [stdout]    |
[INFO] [stdout] 27 |         try!(buf.write_slice(alive.as_bytes()));
[INFO] [stdout]    |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/epmd/port.rs:29:9
[INFO] [stdout]    |
[INFO] [stdout] 29 |         try!(stream.write_slice(buf.as_slice()));
[INFO] [stdout]    |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/epmd/port.rs:33:42
[INFO] [stdout]    |
[INFO] [stdout] 33 |         let mut cursor = io::Cursor::new(try!(stream.read_vec(2)));
[INFO] [stdout]    |                                          ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/epmd/port.rs:44:42
[INFO] [stdout]    |
[INFO] [stdout] 44 |         let mut cursor = io::Cursor::new(try!(stream.read_vec(8)));
[INFO] [stdout]    |                                          ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/epmd/publish.rs:19:22
[INFO] [stdout]    |
[INFO] [stdout] 19 |     let mut stream = try!(net::TcpStream::connect(("127.0.0.1", os::getenv("ERL_EPMD_PORT", EPMD_PORT))));
[INFO] [stdout]    |                      ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/epmd/publish.rs:24:9
[INFO] [stdout]    |
[INFO] [stdout] 24 |         try!(buf.write_u16((13 + len) as u16));
[INFO] [stdout]    |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/epmd/publish.rs:25:9
[INFO] [stdout]    |
[INFO] [stdout] 25 |         try!(buf.write_u8(EI_EPMD_ALIVE2_REQ));
[INFO] [stdout]    |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/epmd/publish.rs:26:9
[INFO] [stdout]    |
[INFO] [stdout] 26 |         try!(buf.write_u16(port));
[INFO] [stdout]    |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/epmd/publish.rs:27:9
[INFO] [stdout]    |
[INFO] [stdout] 27 |         try!(buf.write_u8(EI_HIDDEN_NODE));
[INFO] [stdout]    |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/epmd/publish.rs:28:9
[INFO] [stdout]    |
[INFO] [stdout] 28 |         try!(buf.write_u8(EI_MYPROTO));
[INFO] [stdout]    |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/epmd/publish.rs:29:9
[INFO] [stdout]    |
[INFO] [stdout] 29 |         try!(buf.write_u16(EI_DIST_HIGH));
[INFO] [stdout]    |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/epmd/publish.rs:30:9
[INFO] [stdout]    |
[INFO] [stdout] 30 |         try!(buf.write_u16(EI_DIST_LOW));
[INFO] [stdout]    |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/epmd/publish.rs:31:9
[INFO] [stdout]    |
[INFO] [stdout] 31 |         try!(buf.write_u16(len as u16));
[INFO] [stdout]    |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/epmd/publish.rs:32:9
[INFO] [stdout]    |
[INFO] [stdout] 32 |         try!(buf.write_slice(alive.as_bytes()));
[INFO] [stdout]    |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/epmd/publish.rs:33:9
[INFO] [stdout]    |
[INFO] [stdout] 33 |         try!(buf.write_u16(0));
[INFO] [stdout]    |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/epmd/publish.rs:35:9
[INFO] [stdout]    |
[INFO] [stdout] 35 |         try!(stream.write_slice(buf.as_slice()));
[INFO] [stdout]    |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/epmd/publish.rs:39:42
[INFO] [stdout]    |
[INFO] [stdout] 39 |         let mut cursor = io::Cursor::new(try!(stream.read_vec(2)));
[INFO] [stdout]    |                                          ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/epmd/publish.rs:50:42
[INFO] [stdout]    |
[INFO] [stdout] 50 |         let mut cursor = io::Cursor::new(try!(stream.read_vec(2)));
[INFO] [stdout]    |                                          ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]  --> src/ports.rs:7:21
[INFO] [stdout]   |
[INFO] [stdout] 7 | pub fn recv(r: &mut io::Read) -> Result<io::Cursor<Vec<u8>>, error::Error> {
[INFO] [stdout]   |                     ^^^^^^^^ help: use `dyn`: `dyn io::Read`
[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 issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]  --> src/ports.rs:8:11
[INFO] [stdout]   |
[INFO] [stdout] 8 |     match try!(r.read_u16()) {
[INFO] [stdout]   |           ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/ports.rs:12:46
[INFO] [stdout]    |
[INFO] [stdout] 12 |             let mut cursor = io::Cursor::new(try!(r.read_vec(u as usize)));
[INFO] [stdout]    |                                              ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/ports.rs:23:21
[INFO] [stdout]    |
[INFO] [stdout] 23 | pub fn send(w: &mut io::Write, v: &[u8]) -> Result<(), error::Error> {
[INFO] [stdout]    |                     ^^^^^^^^^ help: use `dyn`: `dyn io::Write`
[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 issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `RustcDecodable`: rustc-serialize is deprecated and no longer supported
[INFO] [stdout]   --> src/term.rs:53:28
[INFO] [stdout]    |
[INFO] [stdout] 53 | #[derive(Debug, PartialEq, RustcDecodable, RustcEncodable)]
[INFO] [stdout]    |                            ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `RustcEncodable`: rustc-serialize is deprecated and no longer supported
[INFO] [stdout]   --> src/term.rs:53:44
[INFO] [stdout]    |
[INFO] [stdout] 53 | #[derive(Debug, PartialEq, RustcDecodable, RustcEncodable)]
[INFO] [stdout]    |                                            ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/handle.rs:26:5
[INFO] [stdout]    |
[INFO] [stdout] 26 |     try!(connect::accept(stream, nodename, &cookie));
[INFO] [stdout]    |     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/handle.rs:14:25
[INFO] [stdout]    |
[INFO] [stdout] 14 |     where F: FnMut(&mut io::Read) -> Result<Vec<u8>, error::Error> {
[INFO] [stdout]    |                         ^^^^^^^^ help: use `dyn`: `dyn io::Read`
[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 issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/handle.rs:30:20
[INFO] [stdout]    |
[INFO] [stdout] 30 |         let size = try!(stream.read_u32()) as usize; // TODO
[INFO] [stdout]    |                    ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/handle.rs:34:46
[INFO] [stdout]    |
[INFO] [stdout] 34 |             let mut cursor = io::Cursor::new(try!(stream.read_vec(size)));
[INFO] [stdout]    |                                              ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/handle.rs:44:19
[INFO] [stdout]    |
[INFO] [stdout] 44 |             match try!(decoder::decode(&mut cursor)) {
[INFO] [stdout]    |                   ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/handle.rs:56:25
[INFO] [stdout]    |
[INFO] [stdout] 56 |                         try!(encoder::encode(&mut head, &term::Msg::Send {
[INFO] [stdout]    |                         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/handle.rs:71:25
[INFO] [stdout]    |
[INFO] [stdout] 71 |                         try!(stream.write_slice(buf.as_slice()));
[INFO] [stdout]    |                         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated function `std::env::home_dir`: This function's behavior is unexpected and probably not what you want. Consider using a crate from crates.io instead.
[INFO] [stdout]  --> src/fs.rs:6:34
[INFO] [stdout]   |
[INFO] [stdout] 6 |     if let Some(mut path) = env::home_dir() {
[INFO] [stdout]   |                                  ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated associated function `std::error::Error::description`: use the Display impl or to_string()
[INFO] [stdout]   --> src/error.rs:27:35
[INFO] [stdout]    |
[INFO] [stdout] 27 |             Error::Io(ref e) => e.description(),
[INFO] [stdout]    |                                   ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated associated function `std::error::Error::description`: use the Display impl or to_string()
[INFO] [stdout]   --> src/error.rs:28:41
[INFO] [stdout]    |
[INFO] [stdout] 28 |             Error::FromUtf8(ref e) => e.description(),
[INFO] [stdout]    |                                         ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated associated function `std::error::Error::cause`: replaced by Error::source, which can support downcasting
[INFO] [stdout]   --> src/error.rs:34:35
[INFO] [stdout]    |
[INFO] [stdout] 34 |             Error::Io(ref e) => e.cause(),
[INFO] [stdout]    |                                   ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated associated function `std::error::Error::cause`: replaced by Error::source, which can support downcasting
[INFO] [stdout]   --> src/error.rs:35:41
[INFO] [stdout]    |
[INFO] [stdout] 35 |             Error::FromUtf8(ref e) => e.cause(),
[INFO] [stdout]    |                                         ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: 194 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> examples/echo.rs:30:50
[INFO] [stdout]    |
[INFO] [stdout] 30 | ...                   let value: u64 = try!(ei::decode(r));
[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]   --> examples/cnode.rs:32:68
[INFO] [stdout]    |
[INFO] [stdout] 32 | ...                   let (n, num_threads): (u32, u32) = try!(ei::decode(r));
[INFO] [stdout]    |                                                          ^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(deprecated)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated associated function `std::error::Error::description`: use the Display impl or to_string()
[INFO] [stdout]   --> examples/port.rs:51:31
[INFO] [stdout]    |
[INFO] [stdout] 51 |             Err(e) => match e.description() { // TODO
[INFO] [stdout]    |                               ^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(deprecated)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/error.rs:32:32
[INFO] [stdout]    |
[INFO] [stdout] 32 |     fn cause(&self) -> Option<&error::Error> {
[INFO] [stdout]    |                                ^^^^^^^^^^^^ help: use `dyn`: `dyn error::Error`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(bare_trait_objects)]` on by default
[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 issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/connect.rs:13:5
[INFO] [stdout]    |
[INFO] [stdout] 13 |     try!(send_status(stream, "ok"));
[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/connect.rs:17:5
[INFO] [stdout]    |
[INFO] [stdout] 17 |     try!(send_challenge(stream, nodename, version, our_challenge));
[INFO] [stdout]    |     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/connect.rs:11:19
[INFO] [stdout]    |
[INFO] [stdout] 11 |     let version = try!(recv_version(stream));
[INFO] [stdout]    |                   ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/connect.rs:22:25
[INFO] [stdout]    |
[INFO] [stdout] 22 |     let her_challenge = try!(recv_challenge_reply(stream, &expected_digest));
[INFO] [stdout]    |                         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/connect.rs:30:33
[INFO] [stdout]    |
[INFO] [stdout] 30 | fn recv_challenge_reply(r: &mut io::Read, expected: &[u8]) -> Result<u32, error::Error> {
[INFO] [stdout]    |                                 ^^^^^^^^ help: use `dyn`: `dyn io::Read`
[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 issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/connect.rs:32:8
[INFO] [stdout]    |
[INFO] [stdout] 32 |     if try!(r.read_u16()) != 21 {
[INFO] [stdout]    |        ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/connect.rs:36:38
[INFO] [stdout]    |
[INFO] [stdout] 36 |     let mut cursor = io::Cursor::new(try!(r.read_vec(21)));
[INFO] [stdout]    |                                      ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/connect.rs:51:25
[INFO] [stdout]    |
[INFO] [stdout] 51 | fn recv_version(r: &mut io::Read) -> Result<u16, error::Error> {
[INFO] [stdout]    |                         ^^^^^^^^ help: use `dyn`: `dyn io::Read`
[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 issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/connect.rs:53:16
[INFO] [stdout]    |
[INFO] [stdout] 53 |     let size = try!(r.read_u16()) as usize;
[INFO] [stdout]    |                ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/connect.rs:59:38
[INFO] [stdout]    |
[INFO] [stdout] 59 |     let mut cursor = io::Cursor::new(try!(r.read_vec(size)));
[INFO] [stdout]    |                                      ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/connect.rs:83:27
[INFO] [stdout]    |
[INFO] [stdout] 83 | fn send_challenge(w: &mut io::Write, name: &str, version: u16, challenge: u32) -> Result<(), error::Error> {
[INFO] [stdout]    |                           ^^^^^^^^^ help: use `dyn`: `dyn io::Write`
[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 issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/connect.rs:105:31
[INFO] [stdout]     |
[INFO] [stdout] 105 | fn send_challenge_ack(w: &mut io::Write, digest: &[u8]) -> Result<(), error::Error> {
[INFO] [stdout]     |                               ^^^^^^^^^ help: use `dyn`: `dyn io::Write`
[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 issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/connect.rs:113:24
[INFO] [stdout]     |
[INFO] [stdout] 113 | fn send_status(w: &mut io::Write, status: &str) -> Result<(), error::Error> {
[INFO] [stdout]     |                        ^^^^^^^^^ help: use `dyn`: `dyn io::Write`
[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 issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/decoder.rs:12:54
[INFO] [stdout]    |
[INFO] [stdout] 12 | pub fn decode<T: rustc_serialize::Decodable>(r: &mut io::Read) -> Result<T, error::Error> {
[INFO] [stdout]    |                                                      ^^^^^^^^ help: use `dyn`: `dyn io::Read`
[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 issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/decoder.rs:23:16
[INFO] [stdout]    |
[INFO] [stdout] 23 |     r: &'a mut io::Read,
[INFO] [stdout]    |                ^^^^^^^^ help: use `dyn`: `dyn io::Read`
[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 issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/decoder.rs:39:15
[INFO] [stdout]    |
[INFO] [stdout] 39 |         match try!(read_num(self.r)) {
[INFO] [stdout]    |               ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/decoder.rs:48:15
[INFO] [stdout]    |
[INFO] [stdout] 48 |         match try!(read_num(self.r)) {
[INFO] [stdout]    |               ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/decoder.rs:57:15
[INFO] [stdout]    |
[INFO] [stdout] 57 |         match try!(read_num(self.r)) {
[INFO] [stdout]    |               ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/decoder.rs:66:15
[INFO] [stdout]    |
[INFO] [stdout] 66 |         match try!(read_num(self.r)) {
[INFO] [stdout]    |               ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/decoder.rs:77:15
[INFO] [stdout]    |
[INFO] [stdout] 77 |         match try!(read_num(self.r)) {
[INFO] [stdout]    |               ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/decoder.rs:87:15
[INFO] [stdout]    |
[INFO] [stdout] 87 |         match try!(read_num(self.r)) {
[INFO] [stdout]    |               ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/decoder.rs:97:15
[INFO] [stdout]    |
[INFO] [stdout] 97 |         match try!(read_num(self.r)) {
[INFO] [stdout]    |               ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/decoder.rs:106:15
[INFO] [stdout]     |
[INFO] [stdout] 106 |         match try!(read_num(self.r)) {
[INFO] [stdout]     |               ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/decoder.rs:115:15
[INFO] [stdout]     |
[INFO] [stdout] 115 |         match try!(decode(self.r)) {
[INFO] [stdout]     |               ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/decoder.rs:122:15
[INFO] [stdout]     |
[INFO] [stdout] 122 |         match try!(self.r.read_u8()) {
[INFO] [stdout]     |               ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/decoder.rs:137:15
[INFO] [stdout]     |
[INFO] [stdout] 137 |         match try!(self.r.read_u8()) {
[INFO] [stdout]     |               ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/decoder.rs:185:15
[INFO] [stdout]     |
[INFO] [stdout] 185 |         match try!(self.r.read_u8()) {
[INFO] [stdout]     |               ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/decoder.rs:214:15
[INFO] [stdout]     |
[INFO] [stdout] 214 |         match try!(self.r.read_u8()) {
[INFO] [stdout]     |               ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/decoder.rs:217:20
[INFO] [stdout]     |
[INFO] [stdout] 217 |                 if try!(self.r.read_u8()) == ERL_NIL_EXT {
[INFO] [stdout]     |                    ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/decoder.rs:234:15
[INFO] [stdout]     |
[INFO] [stdout] 234 |         match try!(self.r.read_u8()) {
[INFO] [stdout]     |               ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/decoder.rs:255:21
[INFO] [stdout]     |
[INFO] [stdout] 255 | fn read_num(r: &mut io::Read) -> Result<Num, error::Error> {
[INFO] [stdout]     |                     ^^^^^^^^ help: use `dyn`: `dyn io::Read`
[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 issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/decoder.rs:256:11
[INFO] [stdout]     |
[INFO] [stdout] 256 |     match try!(r.read_u8()) {
[INFO] [stdout]     |           ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/decoder.rs:264:20
[INFO] [stdout]     |
[INFO] [stdout] 264 | fn read_u8(r: &mut io::Read) -> Result<Num, error::Error> {
[INFO] [stdout]     |                    ^^^^^^^^ help: use `dyn`: `dyn io::Read`
[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 issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/decoder.rs:268:21
[INFO] [stdout]     |
[INFO] [stdout] 268 | fn read_i27(r: &mut io::Read) -> Result<Num, error::Error> {
[INFO] [stdout]     |                     ^^^^^^^^ help: use `dyn`: `dyn io::Read`
[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 issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/decoder.rs:272:27
[INFO] [stdout]     |
[INFO] [stdout] 272 | fn read_small_big(r: &mut io::Read) -> Result<Num, error::Error> {
[INFO] [stdout]     |                           ^^^^^^^^ help: use `dyn`: `dyn io::Read`
[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 issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/decoder.rs:276:21
[INFO] [stdout]     |
[INFO] [stdout] 276 |             let s = try!(r.read_u8());
[INFO] [stdout]     |                     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/decoder.rs:286:24
[INFO] [stdout]     |
[INFO] [stdout] 286 | fn read_string(r: &mut io::Read) -> Result<String, error::Error> {
[INFO] [stdout]     |                        ^^^^^^^^ help: use `dyn`: `dyn io::Read`
[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 issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/decoder.rs:290:22
[INFO] [stdout]     |
[INFO] [stdout] 290 | fn read_atom(r: &mut io::Read) -> Result<term::Atom, error::Error> {
[INFO] [stdout]     |                      ^^^^^^^^ help: use `dyn`: `dyn io::Read`
[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 issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/decoder.rs:292:13
[INFO] [stdout]     |
[INFO] [stdout] 292 |     let t = try!(r.read_u8());
[INFO] [stdout]     |             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/decoder.rs:295:36
[INFO] [stdout]     |
[INFO] [stdout] 295 |         ERL_ATOM_EXT            => try!(r.read_u16()) as usize,
[INFO] [stdout]     |                                    ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/decoder.rs:296:36
[INFO] [stdout]     |
[INFO] [stdout] 296 |         ERL_ATOM_UTF8_EXT       => try!(r.read_u16()) as usize,
[INFO] [stdout]     |                                    ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/decoder.rs:297:36
[INFO] [stdout]     |
[INFO] [stdout] 297 |         ERL_SMALL_ATOM_UTF8_EXT => try!(r.read_u8()) as usize,
[INFO] [stdout]     |                                    ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/decoder.rs:301:29
[INFO] [stdout]     |
[INFO] [stdout] 301 |     match String::from_utf8(try!(r.read_vec(n))) {
[INFO] [stdout]     |                             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/decoder.rs:312:21
[INFO] [stdout]     |
[INFO] [stdout] 312 | fn read_msg(r: &mut io::Read) -> Result<term::Msg, error::Error> {
[INFO] [stdout]     |                     ^^^^^^^^ help: use `dyn`: `dyn io::Read`
[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 issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/decoder.rs:314:8
[INFO] [stdout]     |
[INFO] [stdout] 314 |     if try!(r.read_u8()) != ERL_SMALL_TUPLE_EXT {
[INFO] [stdout]     |        ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/decoder.rs:318:13
[INFO] [stdout]     |
[INFO] [stdout] 318 |     let a = try!(r.read_u8());
[INFO] [stdout]     |             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/decoder.rs:320:11
[INFO] [stdout]     |
[INFO] [stdout] 320 |     match try!(decode(r)) {
[INFO] [stdout]     |           ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/decoder.rs:323:25
[INFO] [stdout]     |
[INFO] [stdout] 323 |                 cookie: try!(decode(r)),
[INFO] [stdout]     |                         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/decoder.rs:324:21
[INFO] [stdout]     |
[INFO] [stdout] 324 |                 to: try!(decode(r)),
[INFO] [stdout]     |                     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/decoder.rs:328:25
[INFO] [stdout]     |
[INFO] [stdout] 328 |                 cookie: try!(decode(r)),
[INFO] [stdout]     |                         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/decoder.rs:329:21
[INFO] [stdout]     |
[INFO] [stdout] 329 |                 to: try!(decode(r)),
[INFO] [stdout]     |                     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/decoder.rs:330:24
[INFO] [stdout]     |
[INFO] [stdout] 330 |                 token: try!(decode(r)),
[INFO] [stdout]     |                        ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/decoder.rs:334:23
[INFO] [stdout]     |
[INFO] [stdout] 334 |                 from: try!(decode(r)),
[INFO] [stdout]     |                       ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/decoder.rs:335:25
[INFO] [stdout]     |
[INFO] [stdout] 335 |                 cookie: try!(decode(r)),
[INFO] [stdout]     |                         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/decoder.rs:336:25
[INFO] [stdout]     |
[INFO] [stdout] 336 |                 toname: try!(decode(r)),
[INFO] [stdout]     |                         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/decoder.rs:340:23
[INFO] [stdout]     |
[INFO] [stdout] 340 |                 from: try!(decode(r)),
[INFO] [stdout]     |                       ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/decoder.rs:341:25
[INFO] [stdout]     |
[INFO] [stdout] 341 |                 cookie: try!(decode(r)),
[INFO] [stdout]     |                         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/decoder.rs:342:25
[INFO] [stdout]     |
[INFO] [stdout] 342 |                 toname: try!(decode(r)),
[INFO] [stdout]     |                         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/decoder.rs:343:24
[INFO] [stdout]     |
[INFO] [stdout] 343 |                 token: try!(decode(r)),
[INFO] [stdout]     |                        ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/decoder.rs:347:23
[INFO] [stdout]     |
[INFO] [stdout] 347 |                 from: try!(decode(r)),
[INFO] [stdout]     |                       ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/decoder.rs:348:21
[INFO] [stdout]     |
[INFO] [stdout] 348 |                 to: try!(decode(r)),
[INFO] [stdout]     |                     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/decoder.rs:349:25
[INFO] [stdout]     |
[INFO] [stdout] 349 |                 reason: try!(decode(r)),
[INFO] [stdout]     |                         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/decoder.rs:353:23
[INFO] [stdout]     |
[INFO] [stdout] 353 |                 from: try!(decode(r)),
[INFO] [stdout]     |                       ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/decoder.rs:354:21
[INFO] [stdout]     |
[INFO] [stdout] 354 |                 to: try!(decode(r)),
[INFO] [stdout]     |                     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/decoder.rs:355:24
[INFO] [stdout]     |
[INFO] [stdout] 355 |                 token: try!(decode(r)),
[INFO] [stdout]     |                        ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/decoder.rs:356:25
[INFO] [stdout]     |
[INFO] [stdout] 356 |                 reason: try!(decode(r)),
[INFO] [stdout]     |                         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/decoder.rs:362:21
[INFO] [stdout]     |
[INFO] [stdout] 362 | fn read_pid(r: &mut io::Read) -> Result<term::Pid, error::Error> {
[INFO] [stdout]     |                     ^^^^^^^^ help: use `dyn`: `dyn io::Read`
[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 issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/decoder.rs:364:25
[INFO] [stdout]     |
[INFO] [stdout] 364 |     let t: bool = match try!(r.read_u8()) {
[INFO] [stdout]     |                         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/decoder.rs:371:15
[INFO] [stdout]     |
[INFO] [stdout] 371 |         node: try!(decode(r)),
[INFO] [stdout]     |               ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/decoder.rs:372:14
[INFO] [stdout]     |
[INFO] [stdout] 372 |         num: try!(r.read_u32()) & 0x00007fff,
[INFO] [stdout]     |              ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/decoder.rs:373:17
[INFO] [stdout]     |
[INFO] [stdout] 373 |         serial: try!(r.read_u32()) & 0x00001fff,
[INFO] [stdout]     |                 ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/decoder.rs:374:26
[INFO] [stdout]     |
[INFO] [stdout] 374 |         creation: if t { try!(r.read_u32()) } else { try!(r.read_u8()) as u32 & 0x03 },
[INFO] [stdout]     |                          ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/decoder.rs:374:54
[INFO] [stdout]     |
[INFO] [stdout] 374 |         creation: if t { try!(r.read_u32()) } else { try!(r.read_u8()) as u32 & 0x03 },
[INFO] [stdout]     |                                                      ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/decoder.rs:378:22
[INFO] [stdout]     |
[INFO] [stdout] 378 | fn read_port(r: &mut io::Read) -> Result<term::Port, error::Error> {
[INFO] [stdout]     |                      ^^^^^^^^ help: use `dyn`: `dyn io::Read`
[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 issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/decoder.rs:380:19
[INFO] [stdout]     |
[INFO] [stdout] 380 |     let t = match try!(r.read_u8()) {
[INFO] [stdout]     |                   ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/decoder.rs:387:15
[INFO] [stdout]     |
[INFO] [stdout] 387 |         node: try!(decode(r)),
[INFO] [stdout]     |               ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/decoder.rs:388:13
[INFO] [stdout]     |
[INFO] [stdout] 388 |         id: try!(r.read_u32()) & 0x0fffffff,
[INFO] [stdout]     |             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/decoder.rs:389:26
[INFO] [stdout]     |
[INFO] [stdout] 389 |         creation: if t { try!(r.read_u32()) } else { try!(r.read_u8()) as u32 & 0x03 },
[INFO] [stdout]     |                          ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/decoder.rs:389:54
[INFO] [stdout]     |
[INFO] [stdout] 389 |         creation: if t { try!(r.read_u32()) } else { try!(r.read_u8()) as u32 & 0x03 },
[INFO] [stdout]     |                                                      ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/decoder.rs:393:21
[INFO] [stdout]     |
[INFO] [stdout] 393 | fn read_ref(r: &mut io::Read) -> Result<term::Ref, error::Error> {
[INFO] [stdout]     |                     ^^^^^^^^ help: use `dyn`: `dyn io::Read`
[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 issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/decoder.rs:395:19
[INFO] [stdout]     |
[INFO] [stdout] 395 |     let t = match try!(r.read_u8()) {
[INFO] [stdout]     |                   ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/decoder.rs:401:15
[INFO] [stdout]     |
[INFO] [stdout] 401 |     let len = try!(r.read_i16()) & 0x0003;
[INFO] [stdout]     |               ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/decoder.rs:403:16
[INFO] [stdout]     |
[INFO] [stdout] 403 |     let node = try!(decode(r));
[INFO] [stdout]     |                ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/decoder.rs:405:27
[INFO] [stdout]     |
[INFO] [stdout] 405 |     let creation = if t { try!(r.read_u32()) } else { try!(r.read_u8()) as u32 & 0x03 };
[INFO] [stdout]     |                           ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/decoder.rs:405:55
[INFO] [stdout]     |
[INFO] [stdout] 405 |     let creation = if t { try!(r.read_u32()) } else { try!(r.read_u8()) as u32 & 0x03 };
[INFO] [stdout]     |                                                       ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/decoder.rs:409:16
[INFO] [stdout]     |
[INFO] [stdout] 409 |         n[i] = try!(r.read_u32());
[INFO] [stdout]     |                ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/decoder.rs:416:32
[INFO] [stdout]     |
[INFO] [stdout] 416 |     fn r(&mut self) -> &'a mut io::Read;
[INFO] [stdout]     |                                ^^^^^^^^ help: use `dyn`: `dyn io::Read`
[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 issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/decoder.rs:421:32
[INFO] [stdout]     |
[INFO] [stdout] 421 |     fn r(&mut self) -> &'a mut io::Read {
[INFO] [stdout]     |                                ^^^^^^^^ help: use `dyn`: `dyn io::Read`
[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 issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/encoder.rs:13:54
[INFO] [stdout]    |
[INFO] [stdout] 13 | pub fn encode<T: rustc_serialize::Encodable>(w: &mut io::Write, t: &T) -> Result<(), error::Error> {
[INFO] [stdout]    |                                                      ^^^^^^^^^ help: use `dyn`: `dyn io::Write`
[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 issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/encoder.rs:18:16
[INFO] [stdout]    |
[INFO] [stdout] 18 |     w: &'a mut io::Write,
[INFO] [stdout]    |                ^^^^^^^^^ help: use `dyn`: `dyn io::Write`
[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 issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/encoder.rs:163:13
[INFO] [stdout]     |
[INFO] [stdout] 163 |             try!(self.w.write_u8(ERL_LARGE_TUPLE_EXT).and_then(|()| self.w.write_u32(len as u32)));
[INFO] [stdout]     |             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/encoder.rs:165:13
[INFO] [stdout]     |
[INFO] [stdout] 165 |             try!(self.w.write_u8(ERL_SMALL_TUPLE_EXT).and_then(|()| self.w.write_u8(len as u8)));
[INFO] [stdout]     |             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/encoder.rs:202:13
[INFO] [stdout]     |
[INFO] [stdout] 202 |             try!(self.w.write_u8(ERL_LIST_EXT).and_then(|()| self.w.write_u32(len as u32)));
[INFO] [stdout]     |             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/encoder.rs:203:13
[INFO] [stdout]     |
[INFO] [stdout] 203 |             try!(f(self));
[INFO] [stdout]     |             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/encoder.rs:215:9
[INFO] [stdout]     |
[INFO] [stdout] 215 |         try!(self.w.write_u8(ERL_MAP_EXT).and_then(|()| self.w.write_u32(len as u32)));
[INFO] [stdout]     |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/encoder.rs:230:21
[INFO] [stdout]     |
[INFO] [stdout] 230 | fn write_u8(w: &mut io::Write, v: u8) -> Result<(), error::Error> {
[INFO] [stdout]     |                     ^^^^^^^^^ help: use `dyn`: `dyn io::Write`
[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 issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/encoder.rs:234:22
[INFO] [stdout]     |
[INFO] [stdout] 234 | fn write_i27(w: &mut io::Write, v: i32) -> Result<(), error::Error> {
[INFO] [stdout]     |                      ^^^^^^^^^ help: use `dyn`: `dyn io::Write`
[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 issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/encoder.rs:238:28
[INFO] [stdout]     |
[INFO] [stdout] 238 | fn write_small_big(w: &mut io::Write, s: u8, v: u64) -> Result<(), error::Error> {
[INFO] [stdout]     |                            ^^^^^^^^^ help: use `dyn`: `dyn io::Write`
[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 issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/encoder.rs:250:22
[INFO] [stdout]     |
[INFO] [stdout] 250 | fn write_str(w: &mut io::Write, v: &str, len: usize) -> Result<(), error::Error> {
[INFO] [stdout]     |                      ^^^^^^^^^ help: use `dyn`: `dyn io::Write`
[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 issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/encoder.rs:256:23
[INFO] [stdout]     |
[INFO] [stdout] 256 | fn write_atom(w: &mut io::Write, v: &term::Atom) -> Result<(), error::Error> {
[INFO] [stdout]     |                       ^^^^^^^^^ help: use `dyn`: `dyn io::Write`
[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 issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/encoder.rs:259:13
[INFO] [stdout]     |
[INFO] [stdout] 259 |             try!(w.write_u8(ERL_ATOM_EXT));
[INFO] [stdout]     |             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/encoder.rs:260:13
[INFO] [stdout]     |
[INFO] [stdout] 260 |             try!(w.write_u16(s.len() as u16));
[INFO] [stdout]     |             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/encoder.rs:264:13
[INFO] [stdout]     |
[INFO] [stdout] 264 |             try!(w.write_u8(ERL_ATOM_UTF8_EXT));
[INFO] [stdout]     |             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/encoder.rs:265:13
[INFO] [stdout]     |
[INFO] [stdout] 265 |             try!(w.write_u16(s.len() as u16));
[INFO] [stdout]     |             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/encoder.rs:269:13
[INFO] [stdout]     |
[INFO] [stdout] 269 |             try!(w.write_u8(ERL_SMALL_ATOM_UTF8_EXT));
[INFO] [stdout]     |             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/encoder.rs:270:13
[INFO] [stdout]     |
[INFO] [stdout] 270 |             try!(w.write_u8(s.len() as u8));
[INFO] [stdout]     |             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/encoder.rs:279:5
[INFO] [stdout]     |
[INFO] [stdout] 279 |     try!(w.write_u8(ERL_SMALL_TUPLE_EXT));
[INFO] [stdout]     |     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/encoder.rs:277:22
[INFO] [stdout]     |
[INFO] [stdout] 277 | fn write_msg(w: &mut io::Write, v: &term::Msg) -> Result<(), error::Error> {
[INFO] [stdout]     |                      ^^^^^^^^^ help: use `dyn`: `dyn io::Write`
[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 issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/encoder.rs:283:13
[INFO] [stdout]     |
[INFO] [stdout] 283 |             try!(w.write_u8(3));
[INFO] [stdout]     |             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/encoder.rs:284:13
[INFO] [stdout]     |
[INFO] [stdout] 284 |             try!(encode(w, &ERL_SEND));
[INFO] [stdout]     |             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/encoder.rs:285:13
[INFO] [stdout]     |
[INFO] [stdout] 285 |             try!(encode(w, cookie));
[INFO] [stdout]     |             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/encoder.rs:289:13
[INFO] [stdout]     |
[INFO] [stdout] 289 |             try!(w.write_u8(4));
[INFO] [stdout]     |             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/encoder.rs:290:13
[INFO] [stdout]     |
[INFO] [stdout] 290 |             try!(encode(w, &ERL_SEND_TT));
[INFO] [stdout]     |             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/encoder.rs:291:13
[INFO] [stdout]     |
[INFO] [stdout] 291 |             try!(encode(w, cookie));
[INFO] [stdout]     |             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/encoder.rs:292:13
[INFO] [stdout]     |
[INFO] [stdout] 292 |             try!(encode(w, to));
[INFO] [stdout]     |             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/encoder.rs:296:13
[INFO] [stdout]     |
[INFO] [stdout] 296 |             try!(w.write_u8(4));
[INFO] [stdout]     |             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/encoder.rs:297:13
[INFO] [stdout]     |
[INFO] [stdout] 297 |             try!(encode(w, &ERL_REG_SEND));
[INFO] [stdout]     |             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/encoder.rs:298:13
[INFO] [stdout]     |
[INFO] [stdout] 298 |             try!(encode(w, from));
[INFO] [stdout]     |             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/encoder.rs:299:13
[INFO] [stdout]     |
[INFO] [stdout] 299 |             try!(encode(w, cookie));
[INFO] [stdout]     |             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/encoder.rs:303:13
[INFO] [stdout]     |
[INFO] [stdout] 303 |             try!(w.write_u8(5));
[INFO] [stdout]     |             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/encoder.rs:304:13
[INFO] [stdout]     |
[INFO] [stdout] 304 |             try!(encode(w, &ERL_REG_SEND_TT));
[INFO] [stdout]     |             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/encoder.rs:305:13
[INFO] [stdout]     |
[INFO] [stdout] 305 |             try!(encode(w, from));
[INFO] [stdout]     |             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/encoder.rs:306:13
[INFO] [stdout]     |
[INFO] [stdout] 306 |             try!(encode(w, cookie));
[INFO] [stdout]     |             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/encoder.rs:307:13
[INFO] [stdout]     |
[INFO] [stdout] 307 |             try!(encode(w, toname));
[INFO] [stdout]     |             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/encoder.rs:311:13
[INFO] [stdout]     |
[INFO] [stdout] 311 |             try!(w.write_u8(4));
[INFO] [stdout]     |             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/encoder.rs:312:13
[INFO] [stdout]     |
[INFO] [stdout] 312 |             try!(encode(w, &ERL_EXIT));
[INFO] [stdout]     |             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/encoder.rs:313:13
[INFO] [stdout]     |
[INFO] [stdout] 313 |             try!(encode(w, from));
[INFO] [stdout]     |             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/encoder.rs:314:13
[INFO] [stdout]     |
[INFO] [stdout] 314 |             try!(encode(w, to));
[INFO] [stdout]     |             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/encoder.rs:318:13
[INFO] [stdout]     |
[INFO] [stdout] 318 |             try!(w.write_u8(5));
[INFO] [stdout]     |             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/encoder.rs:319:13
[INFO] [stdout]     |
[INFO] [stdout] 319 |             try!(encode(w, &ERL_EXIT_TT));
[INFO] [stdout]     |             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/encoder.rs:320:13
[INFO] [stdout]     |
[INFO] [stdout] 320 |             try!(encode(w, from));
[INFO] [stdout]     |             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/encoder.rs:321:13
[INFO] [stdout]     |
[INFO] [stdout] 321 |             try!(encode(w, to));
[INFO] [stdout]     |             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/encoder.rs:322:13
[INFO] [stdout]     |
[INFO] [stdout] 322 |             try!(encode(w, token));
[INFO] [stdout]     |             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/encoder.rs:336:5
[INFO] [stdout]     |
[INFO] [stdout] 336 |     try!(encode(w, &v.node));
[INFO] [stdout]     |     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/encoder.rs:338:5
[INFO] [stdout]     |
[INFO] [stdout] 338 |     try!(w.write_u32(v.num & 0x00007fff));
[INFO] [stdout]     |     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/encoder.rs:340:5
[INFO] [stdout]     |
[INFO] [stdout] 340 |     try!(w.write_u32(v.serial & 0x00001fff));
[INFO] [stdout]     |     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/encoder.rs:328:22
[INFO] [stdout]     |
[INFO] [stdout] 328 | fn write_pid(w: &mut io::Write, v: &term::Pid) -> Result<(), error::Error> {
[INFO] [stdout]     |                      ^^^^^^^^^ help: use `dyn`: `dyn io::Write`
[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 issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/encoder.rs:331:9
[INFO] [stdout]     |
[INFO] [stdout] 331 |         try!(w.write_u8(ERL_NEW_PID_EXT));
[INFO] [stdout]     |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/encoder.rs:333:9
[INFO] [stdout]     |
[INFO] [stdout] 333 |         try!(w.write_u8(ERL_PID_EXT));
[INFO] [stdout]     |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/encoder.rs:357:5
[INFO] [stdout]     |
[INFO] [stdout] 357 |     try!(encode(w, &v.node));
[INFO] [stdout]     |     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/encoder.rs:359:5
[INFO] [stdout]     |
[INFO] [stdout] 359 |     try!(w.write_u32(v.id & 0x0fffffff));
[INFO] [stdout]     |     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/encoder.rs:349:23
[INFO] [stdout]     |
[INFO] [stdout] 349 | fn write_port(w: &mut io::Write, v: &term::Port) -> Result<(), error::Error> {
[INFO] [stdout]     |                       ^^^^^^^^^ help: use `dyn`: `dyn io::Write`
[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 issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/encoder.rs:352:9
[INFO] [stdout]     |
[INFO] [stdout] 352 |         try!(w.write_u8(ERL_NEW_PORT_EXT));
[INFO] [stdout]     |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/encoder.rs:354:9
[INFO] [stdout]     |
[INFO] [stdout] 354 |         try!(w.write_u8(ERL_PORT_EXT));
[INFO] [stdout]     |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/encoder.rs:376:5
[INFO] [stdout]     |
[INFO] [stdout] 376 |     try!(w.write_i16(v.len));
[INFO] [stdout]     |     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/encoder.rs:378:5
[INFO] [stdout]     |
[INFO] [stdout] 378 |     try!(encode(w, &v.node));
[INFO] [stdout]     |     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/encoder.rs:368:22
[INFO] [stdout]     |
[INFO] [stdout] 368 | fn write_ref(w: &mut io::Write, v: &term::Ref) -> Result<(), error::Error> {
[INFO] [stdout]     |                      ^^^^^^^^^ help: use `dyn`: `dyn io::Write`
[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 issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/encoder.rs:371:9
[INFO] [stdout]     |
[INFO] [stdout] 371 |         try!(w.write_u8(ERL_NEWER_REFERENCE_EXT));
[INFO] [stdout]     |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/encoder.rs:373:9
[INFO] [stdout]     |
[INFO] [stdout] 373 |         try!(w.write_u8(ERL_NEW_REFERENCE_EXT));
[INFO] [stdout]     |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/encoder.rs:381:9
[INFO] [stdout]     |
[INFO] [stdout] 381 |         try!(w.write_u32(v.creation));
[INFO] [stdout]     |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/encoder.rs:383:9
[INFO] [stdout]     |
[INFO] [stdout] 383 |         try!(w.write_u8(v.creation as u8));
[INFO] [stdout]     |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/encoder.rs:387:9
[INFO] [stdout]     |
[INFO] [stdout] 387 |         try!(w.write_u32(v.n[i as usize]));
[INFO] [stdout]     |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/encoder.rs:394:32
[INFO] [stdout]     |
[INFO] [stdout] 394 |     fn w(&mut self) -> &'a mut io::Write;
[INFO] [stdout]     |                                ^^^^^^^^^ help: use `dyn`: `dyn io::Write`
[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 issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/encoder.rs:399:32
[INFO] [stdout]     |
[INFO] [stdout] 399 |     fn w(&mut self) -> &'a mut io::Write {
[INFO] [stdout]     |                                ^^^^^^^^^ help: use `dyn`: `dyn io::Write`
[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 issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/epmd/port.rs:20:22
[INFO] [stdout]    |
[INFO] [stdout] 20 |     let mut stream = try!(net::TcpStream::connect(("127.0.0.1", os::getenv("ERL_EPMD_PORT", EPMD_PORT))));
[INFO] [stdout]    |                      ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/epmd/port.rs:25:9
[INFO] [stdout]    |
[INFO] [stdout] 25 |         try!(buf.write_u16((1 + len) as u16));
[INFO] [stdout]    |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/epmd/port.rs:26:9
[INFO] [stdout]    |
[INFO] [stdout] 26 |         try!(buf.write_u8(EI_EPMD_PORT2_REQ));
[INFO] [stdout]    |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/epmd/port.rs:27:9
[INFO] [stdout]    |
[INFO] [stdout] 27 |         try!(buf.write_slice(alive.as_bytes()));
[INFO] [stdout]    |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/epmd/port.rs:29:9
[INFO] [stdout]    |
[INFO] [stdout] 29 |         try!(stream.write_slice(buf.as_slice()));
[INFO] [stdout]    |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/epmd/port.rs:33:42
[INFO] [stdout]    |
[INFO] [stdout] 33 |         let mut cursor = io::Cursor::new(try!(stream.read_vec(2)));
[INFO] [stdout]    |                                          ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/epmd/port.rs:44:42
[INFO] [stdout]    |
[INFO] [stdout] 44 |         let mut cursor = io::Cursor::new(try!(stream.read_vec(8)));
[INFO] [stdout]    |                                          ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/epmd/publish.rs:19:22
[INFO] [stdout]    |
[INFO] [stdout] 19 |     let mut stream = try!(net::TcpStream::connect(("127.0.0.1", os::getenv("ERL_EPMD_PORT", EPMD_PORT))));
[INFO] [stdout]    |                      ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/epmd/publish.rs:24:9
[INFO] [stdout]    |
[INFO] [stdout] 24 |         try!(buf.write_u16((13 + len) as u16));
[INFO] [stdout]    |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/epmd/publish.rs:25:9
[INFO] [stdout]    |
[INFO] [stdout] 25 |         try!(buf.write_u8(EI_EPMD_ALIVE2_REQ));
[INFO] [stdout]    |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/epmd/publish.rs:26:9
[INFO] [stdout]    |
[INFO] [stdout] 26 |         try!(buf.write_u16(port));
[INFO] [stdout]    |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/epmd/publish.rs:27:9
[INFO] [stdout]    |
[INFO] [stdout] 27 |         try!(buf.write_u8(EI_HIDDEN_NODE));
[INFO] [stdout]    |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/epmd/publish.rs:28:9
[INFO] [stdout]    |
[INFO] [stdout] 28 |         try!(buf.write_u8(EI_MYPROTO));
[INFO] [stdout]    |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/epmd/publish.rs:29:9
[INFO] [stdout]    |
[INFO] [stdout] 29 |         try!(buf.write_u16(EI_DIST_HIGH));
[INFO] [stdout]    |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/epmd/publish.rs:30:9
[INFO] [stdout]    |
[INFO] [stdout] 30 |         try!(buf.write_u16(EI_DIST_LOW));
[INFO] [stdout]    |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/epmd/publish.rs:31:9
[INFO] [stdout]    |
[INFO] [stdout] 31 |         try!(buf.write_u16(len as u16));
[INFO] [stdout]    |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/epmd/publish.rs:32:9
[INFO] [stdout]    |
[INFO] [stdout] 32 |         try!(buf.write_slice(alive.as_bytes()));
[INFO] [stdout]    |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/epmd/publish.rs:33:9
[INFO] [stdout]    |
[INFO] [stdout] 33 |         try!(buf.write_u16(0));
[INFO] [stdout]    |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/epmd/publish.rs:35:9
[INFO] [stdout]    |
[INFO] [stdout] 35 |         try!(stream.write_slice(buf.as_slice()));
[INFO] [stdout]    |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/epmd/publish.rs:39:42
[INFO] [stdout]    |
[INFO] [stdout] 39 |         let mut cursor = io::Cursor::new(try!(stream.read_vec(2)));
[INFO] [stdout]    |                                          ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/epmd/publish.rs:50:42
[INFO] [stdout]    |
[INFO] [stdout] 50 |         let mut cursor = io::Cursor::new(try!(stream.read_vec(2)));
[INFO] [stdout]    |                                          ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]  --> src/ports.rs:7:21
[INFO] [stdout]   |
[INFO] [stdout] 7 | pub fn recv(r: &mut io::Read) -> Result<io::Cursor<Vec<u8>>, error::Error> {
[INFO] [stdout]   |                     ^^^^^^^^ help: use `dyn`: `dyn io::Read`
[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 issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]  --> src/ports.rs:8:11
[INFO] [stdout]   |
[INFO] [stdout] 8 |     match try!(r.read_u16()) {
[INFO] [stdout]   |           ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/ports.rs:12:46
[INFO] [stdout]    |
[INFO] [stdout] 12 |             let mut cursor = io::Cursor::new(try!(r.read_vec(u as usize)));
[INFO] [stdout]    |                                              ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/ports.rs:23:21
[INFO] [stdout]    |
[INFO] [stdout] 23 | pub fn send(w: &mut io::Write, v: &[u8]) -> Result<(), error::Error> {
[INFO] [stdout]    |                     ^^^^^^^^^ help: use `dyn`: `dyn io::Write`
[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 issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `RustcDecodable`: rustc-serialize is deprecated and no longer supported
[INFO] [stdout]   --> src/term.rs:53:28
[INFO] [stdout]    |
[INFO] [stdout] 53 | #[derive(Debug, PartialEq, RustcDecodable, RustcEncodable)]
[INFO] [stdout]    |                            ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `RustcEncodable`: rustc-serialize is deprecated and no longer supported
[INFO] [stdout]   --> src/term.rs:53:44
[INFO] [stdout]    |
[INFO] [stdout] 53 | #[derive(Debug, PartialEq, RustcDecodable, RustcEncodable)]
[INFO] [stdout]    |                                            ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/handle.rs:26:5
[INFO] [stdout]    |
[INFO] [stdout] 26 |     try!(connect::accept(stream, nodename, &cookie));
[INFO] [stdout]    |     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/handle.rs:14:25
[INFO] [stdout]    |
[INFO] [stdout] 14 |     where F: FnMut(&mut io::Read) -> Result<Vec<u8>, error::Error> {
[INFO] [stdout]    |                         ^^^^^^^^ help: use `dyn`: `dyn io::Read`
[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 issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/handle.rs:30:20
[INFO] [stdout]    |
[INFO] [stdout] 30 |         let size = try!(stream.read_u32()) as usize; // TODO
[INFO] [stdout]    |                    ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/handle.rs:34:46
[INFO] [stdout]    |
[INFO] [stdout] 34 |             let mut cursor = io::Cursor::new(try!(stream.read_vec(size)));
[INFO] [stdout]    |                                              ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/handle.rs:44:19
[INFO] [stdout]    |
[INFO] [stdout] 44 |             match try!(decoder::decode(&mut cursor)) {
[INFO] [stdout]    |                   ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/handle.rs:56:25
[INFO] [stdout]    |
[INFO] [stdout] 56 |                         try!(encoder::encode(&mut head, &term::Msg::Send {
[INFO] [stdout]    |                         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/handle.rs:71:25
[INFO] [stdout]    |
[INFO] [stdout] 71 |                         try!(stream.write_slice(buf.as_slice()));
[INFO] [stdout]    |                         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated function `std::env::home_dir`: This function's behavior is unexpected and probably not what you want. Consider using a crate from crates.io instead.
[INFO] [stdout]  --> src/fs.rs:6:34
[INFO] [stdout]   |
[INFO] [stdout] 6 |     if let Some(mut path) = env::home_dir() {
[INFO] [stdout]   |                                  ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated associated function `std::error::Error::description`: use the Display impl or to_string()
[INFO] [stdout]   --> src/error.rs:27:35
[INFO] [stdout]    |
[INFO] [stdout] 27 |             Error::Io(ref e) => e.description(),
[INFO] [stdout]    |                                   ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated associated function `std::error::Error::description`: use the Display impl or to_string()
[INFO] [stdout]   --> src/error.rs:28:41
[INFO] [stdout]    |
[INFO] [stdout] 28 |             Error::FromUtf8(ref e) => e.description(),
[INFO] [stdout]    |                                         ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated associated function `std::error::Error::cause`: replaced by Error::source, which can support downcasting
[INFO] [stdout]   --> src/error.rs:34:35
[INFO] [stdout]    |
[INFO] [stdout] 34 |             Error::Io(ref e) => e.cause(),
[INFO] [stdout]    |                                   ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated associated function `std::error::Error::cause`: replaced by Error::source, which can support downcasting
[INFO] [stdout]   --> src/error.rs:35:41
[INFO] [stdout]    |
[INFO] [stdout] 35 |             Error::FromUtf8(ref e) => e.cause(),
[INFO] [stdout]    |                                         ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: 1 warning emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: 1 warning emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: 1 warning emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: panic message is not a string literal
[INFO] [stdout]    --> src/decoder.rs:492:49
[INFO] [stdout]     |
[INFO] [stdout] 492 |             assert!(test!(input, u64).is_err(), expected);
[INFO] [stdout]     |                                                 ^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(non_fmt_panics)]` on by default
[INFO] [stdout]     = note: this usage of panic!() is deprecated; it will be a hard error in Rust 2021
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/panic-macro-consistency.html>
[INFO] [stdout] help: add a "{}" format string to Display the message
[INFO] [stdout]     |
[INFO] [stdout] 492 |             assert!(test!(input, u64).is_err(), "{}", expected);
[INFO] [stdout]     |                                                 ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: panic message is not a string literal
[INFO] [stdout]    --> src/decoder.rs:512:49
[INFO] [stdout]     |
[INFO] [stdout] 512 |             assert!(test!(input, u32).is_err(), expected);
[INFO] [stdout]     |                                                 ^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this usage of panic!() is deprecated; it will be a hard error in Rust 2021
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/panic-macro-consistency.html>
[INFO] [stdout] help: add a "{}" format string to Display the message
[INFO] [stdout]     |
[INFO] [stdout] 512 |             assert!(test!(input, u32).is_err(), "{}", expected);
[INFO] [stdout]     |                                                 ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: panic message is not a string literal
[INFO] [stdout]    --> src/decoder.rs:530:49
[INFO] [stdout]     |
[INFO] [stdout] 530 |             assert!(test!(input, u16).is_err(), expected);
[INFO] [stdout]     |                                                 ^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this usage of panic!() is deprecated; it will be a hard error in Rust 2021
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/panic-macro-consistency.html>
[INFO] [stdout] help: add a "{}" format string to Display the message
[INFO] [stdout]     |
[INFO] [stdout] 530 |             assert!(test!(input, u16).is_err(), "{}", expected);
[INFO] [stdout]     |                                                 ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: panic message is not a string literal
[INFO] [stdout]    --> src/decoder.rs:546:48
[INFO] [stdout]     |
[INFO] [stdout] 546 |             assert!(test!(input, u8).is_err(), expected);
[INFO] [stdout]     |                                                ^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this usage of panic!() is deprecated; it will be a hard error in Rust 2021
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/panic-macro-consistency.html>
[INFO] [stdout] help: add a "{}" format string to Display the message
[INFO] [stdout]     |
[INFO] [stdout] 546 |             assert!(test!(input, u8).is_err(), "{}", expected);
[INFO] [stdout]     |                                                ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: panic message is not a string literal
[INFO] [stdout]    --> src/decoder.rs:572:49
[INFO] [stdout]     |
[INFO] [stdout] 572 |             assert!(test!(input, i64).is_err(), expected);
[INFO] [stdout]     |                                                 ^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this usage of panic!() is deprecated; it will be a hard error in Rust 2021
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/panic-macro-consistency.html>
[INFO] [stdout] help: add a "{}" format string to Display the message
[INFO] [stdout]     |
[INFO] [stdout] 572 |             assert!(test!(input, i64).is_err(), "{}", expected);
[INFO] [stdout]     |                                                 ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: panic message is not a string literal
[INFO] [stdout]    --> src/decoder.rs:598:49
[INFO] [stdout]     |
[INFO] [stdout] 598 |             assert!(test!(input, i32).is_err(), expected);
[INFO] [stdout]     |                                                 ^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this usage of panic!() is deprecated; it will be a hard error in Rust 2021
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/panic-macro-consistency.html>
[INFO] [stdout] help: add a "{}" format string to Display the message
[INFO] [stdout]     |
[INFO] [stdout] 598 |             assert!(test!(input, i32).is_err(), "{}", expected);
[INFO] [stdout]     |                                                 ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: panic message is not a string literal
[INFO] [stdout]    --> src/decoder.rs:619:49
[INFO] [stdout]     |
[INFO] [stdout] 619 |             assert!(test!(input, i16).is_err(), expected);
[INFO] [stdout]     |                                                 ^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this usage of panic!() is deprecated; it will be a hard error in Rust 2021
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/panic-macro-consistency.html>
[INFO] [stdout] help: add a "{}" format string to Display the message
[INFO] [stdout]     |
[INFO] [stdout] 619 |             assert!(test!(input, i16).is_err(), "{}", expected);
[INFO] [stdout]     |                                                 ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: panic message is not a string literal
[INFO] [stdout]    --> src/decoder.rs:638:48
[INFO] [stdout]     |
[INFO] [stdout] 638 |             assert!(test!(input, i8).is_err(), expected);
[INFO] [stdout]     |                                                ^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this usage of panic!() is deprecated; it will be a hard error in Rust 2021
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/panic-macro-consistency.html>
[INFO] [stdout] help: add a "{}" format string to Display the message
[INFO] [stdout]     |
[INFO] [stdout] 638 |             assert!(test!(input, i8).is_err(), "{}", expected);
[INFO] [stdout]     |                                                ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: panic message is not a string literal
[INFO] [stdout]    --> src/encoder.rs:533:57
[INFO] [stdout]     |
[INFO] [stdout] 533 |             assert!(test!(&mut output, input).is_err(), expected);
[INFO] [stdout]     |                                                         ^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this usage of panic!() is deprecated; it will be a hard error in Rust 2021
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/panic-macro-consistency.html>
[INFO] [stdout] help: add a "{}" format string to Display the message
[INFO] [stdout]     |
[INFO] [stdout] 533 |             assert!(test!(&mut output, input).is_err(), "{}", expected);
[INFO] [stdout]     |                                                         ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: panic message is not a string literal
[INFO] [stdout]    --> src/encoder.rs:559:57
[INFO] [stdout]     |
[INFO] [stdout] 559 |             assert!(test!(&mut output, input).is_err(), expected);
[INFO] [stdout]     |                                                         ^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this usage of panic!() is deprecated; it will be a hard error in Rust 2021
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/panic-macro-consistency.html>
[INFO] [stdout] help: add a "{}" format string to Display the message
[INFO] [stdout]     |
[INFO] [stdout] 559 |             assert!(test!(&mut output, input).is_err(), "{}", expected);
[INFO] [stdout]     |                                                         ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: 204 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished test [unoptimized + debuginfo] target(s) in 7.42s
[INFO] running `Command { std: "docker" "inspect" "ee489374e83cc6ca76dfba29a3195cb3ce568f3f0ebfd7d147fe53d749a0af16", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "ee489374e83cc6ca76dfba29a3195cb3ce568f3f0ebfd7d147fe53d749a0af16", kill_on_drop: false }`
[INFO] [stdout] ee489374e83cc6ca76dfba29a3195cb3ce568f3f0ebfd7d147fe53d749a0af16
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-11/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-11/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:34b6a614d2c27851fe6cbf88fbd1137609cefab8b10d0615aaeb6fd47975d74e" "/opt/rustwide/cargo-home/bin/cargo" "+beta-2021-08-01" "test" "--frozen", kill_on_drop: false }`
[INFO] [stdout] 079477599cbe62e8970a25e85bb01f3204f07641453ed11c2a8b1baf35237040
[INFO] [stderr] WARNING: Your kernel does not support swap limit capabilities or the cgroup is not mounted. Memory limited without swap.
[INFO] running `Command { std: "docker" "start" "-a" "079477599cbe62e8970a25e85bb01f3204f07641453ed11c2a8b1baf35237040", kill_on_drop: false }`
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]   --> src/error.rs:32:32
[INFO] [stderr]    |
[INFO] [stderr] 32 |     fn cause(&self) -> Option<&error::Error> {
[INFO] [stderr]    |                                ^^^^^^^^^^^^ help: use `dyn`: `dyn error::Error`
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(bare_trait_objects)]` on by default
[INFO] [stderr]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stderr]    = note: for more information, see issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]   --> src/connect.rs:13:5
[INFO] [stderr]    |
[INFO] [stderr] 13 |     try!(send_status(stream, "ok"));
[INFO] [stderr]    |     ^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(deprecated)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]   --> src/connect.rs:17:5
[INFO] [stderr]    |
[INFO] [stderr] 17 |     try!(send_challenge(stream, nodename, version, our_challenge));
[INFO] [stderr]    |     ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]   --> src/connect.rs:11:19
[INFO] [stderr]    |
[INFO] [stderr] 11 |     let version = try!(recv_version(stream));
[INFO] [stderr]    |                   ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]   --> src/connect.rs:22:25
[INFO] [stderr]    |
[INFO] [stderr] 22 |     let her_challenge = try!(recv_challenge_reply(stream, &expected_digest));
[INFO] [stderr]    |                         ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]   --> src/connect.rs:30:33
[INFO] [stderr]    |
[INFO] [stderr] 30 | fn recv_challenge_reply(r: &mut io::Read, expected: &[u8]) -> Result<u32, error::Error> {
[INFO] [stderr]    |                                 ^^^^^^^^ help: use `dyn`: `dyn io::Read`
[INFO] [stderr]    |
[INFO] [stderr]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stderr]    = note: for more information, see issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]   --> src/connect.rs:32:8
[INFO] [stderr]    |
[INFO] [stderr] 32 |     if try!(r.read_u16()) != 21 {
[INFO] [stderr]    |        ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]   --> src/connect.rs:36:38
[INFO] [stderr]    |
[INFO] [stderr] 36 |     let mut cursor = io::Cursor::new(try!(r.read_vec(21)));
[INFO] [stderr]    |                                      ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]   --> src/connect.rs:51:25
[INFO] [stderr]    |
[INFO] [stderr] 51 | fn recv_version(r: &mut io::Read) -> Result<u16, error::Error> {
[INFO] [stderr]    |                         ^^^^^^^^ help: use `dyn`: `dyn io::Read`
[INFO] [stderr]    |
[INFO] [stderr]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stderr]    = note: for more information, see issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]   --> src/connect.rs:53:16
[INFO] [stderr]    |
[INFO] [stderr] 53 |     let size = try!(r.read_u16()) as usize;
[INFO] [stderr]    |                ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]   --> src/connect.rs:59:38
[INFO] [stderr]    |
[INFO] [stderr] 59 |     let mut cursor = io::Cursor::new(try!(r.read_vec(size)));
[INFO] [stderr]    |                                      ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]   --> src/connect.rs:83:27
[INFO] [stderr]    |
[INFO] [stderr] 83 | fn send_challenge(w: &mut io::Write, name: &str, version: u16, challenge: u32) -> Result<(), error::Error> {
[INFO] [stderr]    |                           ^^^^^^^^^ help: use `dyn`: `dyn io::Write`
[INFO] [stderr]    |
[INFO] [stderr]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stderr]    = note: for more information, see issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/connect.rs:105:31
[INFO] [stderr]     |
[INFO] [stderr] 105 | fn send_challenge_ack(w: &mut io::Write, digest: &[u8]) -> Result<(), error::Error> {
[INFO] [stderr]     |                               ^^^^^^^^^ help: use `dyn`: `dyn io::Write`
[INFO] [stderr]     |
[INFO] [stderr]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stderr]     = note: for more information, see issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/connect.rs:113:24
[INFO] [stderr]     |
[INFO] [stderr] 113 | fn send_status(w: &mut io::Write, status: &str) -> Result<(), error::Error> {
[INFO] [stderr]     |                        ^^^^^^^^^ help: use `dyn`: `dyn io::Write`
[INFO] [stderr]     |
[INFO] [stderr]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stderr]     = note: for more information, see issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]   --> src/decoder.rs:12:54
[INFO] [stderr]    |
[INFO] [stderr] 12 | pub fn decode<T: rustc_serialize::Decodable>(r: &mut io::Read) -> Result<T, error::Error> {
[INFO] [stderr]    |                                                      ^^^^^^^^ help: use `dyn`: `dyn io::Read`
[INFO] [stderr]    |
[INFO] [stderr]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stderr]    = note: for more information, see issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]   --> src/decoder.rs:23:16
[INFO] [stderr]    |
[INFO] [stderr] 23 |     r: &'a mut io::Read,
[INFO] [stderr]    |                ^^^^^^^^ help: use `dyn`: `dyn io::Read`
[INFO] [stderr]    |
[INFO] [stderr]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stderr]    = note: for more information, see issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]   --> src/decoder.rs:39:15
[INFO] [stderr]    |
[INFO] [stderr] 39 |         match try!(read_num(self.r)) {
[INFO] [stderr]    |               ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]   --> src/decoder.rs:48:15
[INFO] [stderr]    |
[INFO] [stderr] 48 |         match try!(read_num(self.r)) {
[INFO] [stderr]    |               ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]   --> src/decoder.rs:57:15
[INFO] [stderr]    |
[INFO] [stderr] 57 |         match try!(read_num(self.r)) {
[INFO] [stderr]    |               ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]   --> src/decoder.rs:66:15
[INFO] [stderr]    |
[INFO] [stderr] 66 |         match try!(read_num(self.r)) {
[INFO] [stderr]    |               ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]   --> src/decoder.rs:77:15
[INFO] [stderr]    |
[INFO] [stderr] 77 |         match try!(read_num(self.r)) {
[INFO] [stderr]    |               ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]   --> src/decoder.rs:87:15
[INFO] [stderr]    |
[INFO] [stderr] 87 |         match try!(read_num(self.r)) {
[INFO] [stderr]    |               ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]   --> src/decoder.rs:97:15
[INFO] [stderr]    |
[INFO] [stderr] 97 |         match try!(read_num(self.r)) {
[INFO] [stderr]    |               ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]    --> src/decoder.rs:106:15
[INFO] [stderr]     |
[INFO] [stderr] 106 |         match try!(read_num(self.r)) {
[INFO] [stderr]     |               ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]    --> src/decoder.rs:115:15
[INFO] [stderr]     |
[INFO] [stderr] 115 |         match try!(decode(self.r)) {
[INFO] [stderr]     |               ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]    --> src/decoder.rs:122:15
[INFO] [stderr]     |
[INFO] [stderr] 122 |         match try!(self.r.read_u8()) {
[INFO] [stderr]     |               ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]    --> src/decoder.rs:137:15
[INFO] [stderr]     |
[INFO] [stderr] 137 |         match try!(self.r.read_u8()) {
[INFO] [stderr]     |               ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]    --> src/decoder.rs:185:15
[INFO] [stderr]     |
[INFO] [stderr] 185 |         match try!(self.r.read_u8()) {
[INFO] [stderr]     |               ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]    --> src/decoder.rs:214:15
[INFO] [stderr]     |
[INFO] [stderr] 214 |         match try!(self.r.read_u8()) {
[INFO] [stderr]     |               ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]    --> src/decoder.rs:217:20
[INFO] [stderr]     |
[INFO] [stderr] 217 |                 if try!(self.r.read_u8()) == ERL_NIL_EXT {
[INFO] [stderr]     |                    ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]    --> src/decoder.rs:234:15
[INFO] [stderr]     |
[INFO] [stderr] 234 |         match try!(self.r.read_u8()) {
[INFO] [stderr]     |               ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/decoder.rs:255:21
[INFO] [stderr]     |
[INFO] [stderr] 255 | fn read_num(r: &mut io::Read) -> Result<Num, error::Error> {
[INFO] [stderr]     |                     ^^^^^^^^ help: use `dyn`: `dyn io::Read`
[INFO] [stderr]     |
[INFO] [stderr]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stderr]     = note: for more information, see issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]    --> src/decoder.rs:256:11
[INFO] [stderr]     |
[INFO] [stderr] 256 |     match try!(r.read_u8()) {
[INFO] [stderr]     |           ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/decoder.rs:264:20
[INFO] [stderr]     |
[INFO] [stderr] 264 | fn read_u8(r: &mut io::Read) -> Result<Num, error::Error> {
[INFO] [stderr]     |                    ^^^^^^^^ help: use `dyn`: `dyn io::Read`
[INFO] [stderr]     |
[INFO] [stderr]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stderr]     = note: for more information, see issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/decoder.rs:268:21
[INFO] [stderr]     |
[INFO] [stderr] 268 | fn read_i27(r: &mut io::Read) -> Result<Num, error::Error> {
[INFO] [stderr]     |                     ^^^^^^^^ help: use `dyn`: `dyn io::Read`
[INFO] [stderr]     |
[INFO] [stderr]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stderr]     = note: for more information, see issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/decoder.rs:272:27
[INFO] [stderr]     |
[INFO] [stderr] 272 | fn read_small_big(r: &mut io::Read) -> Result<Num, error::Error> {
[INFO] [stderr]     |                           ^^^^^^^^ help: use `dyn`: `dyn io::Read`
[INFO] [stderr]     |
[INFO] [stderr]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stderr]     = note: for more information, see issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]    --> src/decoder.rs:276:21
[INFO] [stderr]     |
[INFO] [stderr] 276 |             let s = try!(r.read_u8());
[INFO] [stderr]     |                     ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/decoder.rs:286:24
[INFO] [stderr]     |
[INFO] [stderr] 286 | fn read_string(r: &mut io::Read) -> Result<String, error::Error> {
[INFO] [stderr]     |                        ^^^^^^^^ help: use `dyn`: `dyn io::Read`
[INFO] [stderr]     |
[INFO] [stderr]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stderr]     = note: for more information, see issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/decoder.rs:290:22
[INFO] [stderr]     |
[INFO] [stderr] 290 | fn read_atom(r: &mut io::Read) -> Result<term::Atom, error::Error> {
[INFO] [stderr]     |                      ^^^^^^^^ help: use `dyn`: `dyn io::Read`
[INFO] [stderr]     |
[INFO] [stderr]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stderr]     = note: for more information, see issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]    --> src/decoder.rs:292:13
[INFO] [stderr]     |
[INFO] [stderr] 292 |     let t = try!(r.read_u8());
[INFO] [stderr]     |             ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]    --> src/decoder.rs:295:36
[INFO] [stderr]     |
[INFO] [stderr] 295 |         ERL_ATOM_EXT            => try!(r.read_u16()) as usize,
[INFO] [stderr]     |                                    ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]    --> src/decoder.rs:296:36
[INFO] [stderr]     |
[INFO] [stderr] 296 |         ERL_ATOM_UTF8_EXT       => try!(r.read_u16()) as usize,
[INFO] [stderr]     |                                    ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]    --> src/decoder.rs:297:36
[INFO] [stderr]     |
[INFO] [stderr] 297 |         ERL_SMALL_ATOM_UTF8_EXT => try!(r.read_u8()) as usize,
[INFO] [stderr]     |                                    ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]    --> src/decoder.rs:301:29
[INFO] [stderr]     |
[INFO] [stderr] 301 |     match String::from_utf8(try!(r.read_vec(n))) {
[INFO] [stderr]     |                             ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/decoder.rs:312:21
[INFO] [stderr]     |
[INFO] [stderr] 312 | fn read_msg(r: &mut io::Read) -> Result<term::Msg, error::Error> {
[INFO] [stderr]     |                     ^^^^^^^^ help: use `dyn`: `dyn io::Read`
[INFO] [stderr]     |
[INFO] [stderr]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stderr]     = note: for more information, see issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]    --> src/decoder.rs:314:8
[INFO] [stderr]     |
[INFO] [stderr] 314 |     if try!(r.read_u8()) != ERL_SMALL_TUPLE_EXT {
[INFO] [stderr]     |        ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]    --> src/decoder.rs:318:13
[INFO] [stderr]     |
[INFO] [stderr] 318 |     let a = try!(r.read_u8());
[INFO] [stderr]     |             ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]    --> src/decoder.rs:320:11
[INFO] [stderr]     |
[INFO] [stderr] 320 |     match try!(decode(r)) {
[INFO] [stderr]     |           ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]    --> src/decoder.rs:323:25
[INFO] [stderr]     |
[INFO] [stderr] 323 |                 cookie: try!(decode(r)),
[INFO] [stderr]     |                         ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]    --> src/decoder.rs:324:21
[INFO] [stderr]     |
[INFO] [stderr] 324 |                 to: try!(decode(r)),
[INFO] [stderr]     |                     ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]    --> src/decoder.rs:328:25
[INFO] [stderr]     |
[INFO] [stderr] 328 |                 cookie: try!(decode(r)),
[INFO] [stderr]     |                         ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]    --> src/decoder.rs:329:21
[INFO] [stderr]     |
[INFO] [stderr] 329 |                 to: try!(decode(r)),
[INFO] [stderr]     |                     ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]    --> src/decoder.rs:330:24
[INFO] [stderr]     |
[INFO] [stderr] 330 |                 token: try!(decode(r)),
[INFO] [stderr]     |                        ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]    --> src/decoder.rs:334:23
[INFO] [stderr]     |
[INFO] [stderr] 334 |                 from: try!(decode(r)),
[INFO] [stderr]     |                       ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]    --> src/decoder.rs:335:25
[INFO] [stderr]     |
[INFO] [stderr] 335 |                 cookie: try!(decode(r)),
[INFO] [stderr]     |                         ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]    --> src/decoder.rs:336:25
[INFO] [stderr]     |
[INFO] [stderr] 336 |                 toname: try!(decode(r)),
[INFO] [stderr]     |                         ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]    --> src/decoder.rs:340:23
[INFO] [stderr]     |
[INFO] [stderr] 340 |                 from: try!(decode(r)),
[INFO] [stderr]     |                       ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]    --> src/decoder.rs:341:25
[INFO] [stderr]     |
[INFO] [stderr] 341 |                 cookie: try!(decode(r)),
[INFO] [stderr]     |                         ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]    --> src/decoder.rs:342:25
[INFO] [stderr]     |
[INFO] [stderr] 342 |                 toname: try!(decode(r)),
[INFO] [stderr]     |                         ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]    --> src/decoder.rs:343:24
[INFO] [stderr]     |
[INFO] [stderr] 343 |                 token: try!(decode(r)),
[INFO] [stderr]     |                        ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]    --> src/decoder.rs:347:23
[INFO] [stderr]     |
[INFO] [stderr] 347 |                 from: try!(decode(r)),
[INFO] [stderr]     |                       ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]    --> src/decoder.rs:348:21
[INFO] [stderr]     |
[INFO] [stderr] 348 |                 to: try!(decode(r)),
[INFO] [stderr]     |                     ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]    --> src/decoder.rs:349:25
[INFO] [stderr]     |
[INFO] [stderr] 349 |                 reason: try!(decode(r)),
[INFO] [stderr]     |                         ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]    --> src/decoder.rs:353:23
[INFO] [stderr]     |
[INFO] [stderr] 353 |                 from: try!(decode(r)),
[INFO] [stderr]     |                       ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]    --> src/decoder.rs:354:21
[INFO] [stderr]     |
[INFO] [stderr] 354 |                 to: try!(decode(r)),
[INFO] [stderr]     |                     ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]    --> src/decoder.rs:355:24
[INFO] [stderr]     |
[INFO] [stderr] 355 |                 token: try!(decode(r)),
[INFO] [stderr]     |                        ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]    --> src/decoder.rs:356:25
[INFO] [stderr]     |
[INFO] [stderr] 356 |                 reason: try!(decode(r)),
[INFO] [stderr]     |                         ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/decoder.rs:362:21
[INFO] [stderr]     |
[INFO] [stderr] 362 | fn read_pid(r: &mut io::Read) -> Result<term::Pid, error::Error> {
[INFO] [stderr]     |                     ^^^^^^^^ help: use `dyn`: `dyn io::Read`
[INFO] [stderr]     |
[INFO] [stderr]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stderr]     = note: for more information, see issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]    --> src/decoder.rs:364:25
[INFO] [stderr]     |
[INFO] [stderr] 364 |     let t: bool = match try!(r.read_u8()) {
[INFO] [stderr]     |                         ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]    --> src/decoder.rs:371:15
[INFO] [stderr]     |
[INFO] [stderr] 371 |         node: try!(decode(r)),
[INFO] [stderr]     |               ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]    --> src/decoder.rs:372:14
[INFO] [stderr]     |
[INFO] [stderr] 372 |         num: try!(r.read_u32()) & 0x00007fff,
[INFO] [stderr]     |              ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]    --> src/decoder.rs:373:17
[INFO] [stderr]     |
[INFO] [stderr] 373 |         serial: try!(r.read_u32()) & 0x00001fff,
[INFO] [stderr]     |                 ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]    --> src/decoder.rs:374:26
[INFO] [stderr]     |
[INFO] [stderr] 374 |         creation: if t { try!(r.read_u32()) } else { try!(r.read_u8()) as u32 & 0x03 },
[INFO] [stderr]     |                          ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]    --> src/decoder.rs:374:54
[INFO] [stderr]     |
[INFO] [stderr] 374 |         creation: if t { try!(r.read_u32()) } else { try!(r.read_u8()) as u32 & 0x03 },
[INFO] [stderr]     |                                                      ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/decoder.rs:378:22
[INFO] [stderr]     |
[INFO] [stderr] 378 | fn read_port(r: &mut io::Read) -> Result<term::Port, error::Error> {
[INFO] [stderr]     |                      ^^^^^^^^ help: use `dyn`: `dyn io::Read`
[INFO] [stderr]     |
[INFO] [stderr]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stderr]     = note: for more information, see issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]    --> src/decoder.rs:380:19
[INFO] [stderr]     |
[INFO] [stderr] 380 |     let t = match try!(r.read_u8()) {
[INFO] [stderr]     |                   ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]    --> src/decoder.rs:387:15
[INFO] [stderr]     |
[INFO] [stderr] 387 |         node: try!(decode(r)),
[INFO] [stderr]     |               ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]    --> src/decoder.rs:388:13
[INFO] [stderr]     |
[INFO] [stderr] 388 |         id: try!(r.read_u32()) & 0x0fffffff,
[INFO] [stderr]     |             ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]    --> src/decoder.rs:389:26
[INFO] [stderr]     |
[INFO] [stderr] 389 |         creation: if t { try!(r.read_u32()) } else { try!(r.read_u8()) as u32 & 0x03 },
[INFO] [stderr]     |                          ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]    --> src/decoder.rs:389:54
[INFO] [stderr]     |
[INFO] [stderr] 389 |         creation: if t { try!(r.read_u32()) } else { try!(r.read_u8()) as u32 & 0x03 },
[INFO] [stderr]     |                                                      ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/decoder.rs:393:21
[INFO] [stderr]     |
[INFO] [stderr] 393 | fn read_ref(r: &mut io::Read) -> Result<term::Ref, error::Error> {
[INFO] [stderr]     |                     ^^^^^^^^ help: use `dyn`: `dyn io::Read`
[INFO] [stderr]     |
[INFO] [stderr]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stderr]     = note: for more information, see issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]    --> src/decoder.rs:395:19
[INFO] [stderr]     |
[INFO] [stderr] 395 |     let t = match try!(r.read_u8()) {
[INFO] [stderr]     |                   ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]    --> src/decoder.rs:401:15
[INFO] [stderr]     |
[INFO] [stderr] 401 |     let len = try!(r.read_i16()) & 0x0003;
[INFO] [stderr]     |               ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]    --> src/decoder.rs:403:16
[INFO] [stderr]     |
[INFO] [stderr] 403 |     let node = try!(decode(r));
[INFO] [stderr]     |                ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]    --> src/decoder.rs:405:27
[INFO] [stderr]     |
[INFO] [stderr] 405 |     let creation = if t { try!(r.read_u32()) } else { try!(r.read_u8()) as u32 & 0x03 };
[INFO] [stderr]     |                           ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]    --> src/decoder.rs:405:55
[INFO] [stderr]     |
[INFO] [stderr] 405 |     let creation = if t { try!(r.read_u32()) } else { try!(r.read_u8()) as u32 & 0x03 };
[INFO] [stderr]     |                                                       ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]    --> src/decoder.rs:409:16
[INFO] [stderr]     |
[INFO] [stderr] 409 |         n[i] = try!(r.read_u32());
[INFO] [stderr]     |                ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/decoder.rs:416:32
[INFO] [stderr]     |
[INFO] [stderr] 416 |     fn r(&mut self) -> &'a mut io::Read;
[INFO] [stderr]     |                                ^^^^^^^^ help: use `dyn`: `dyn io::Read`
[INFO] [stderr]     |
[INFO] [stderr]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stderr]     = note: for more information, see issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/decoder.rs:421:32
[INFO] [stderr]     |
[INFO] [stderr] 421 |     fn r(&mut self) -> &'a mut io::Read {
[INFO] [stderr]     |                                ^^^^^^^^ help: use `dyn`: `dyn io::Read`
[INFO] [stderr]     |
[INFO] [stderr]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stderr]     = note: for more information, see issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]   --> src/encoder.rs:13:54
[INFO] [stderr]    |
[INFO] [stderr] 13 | pub fn encode<T: rustc_serialize::Encodable>(w: &mut io::Write, t: &T) -> Result<(), error::Error> {
[INFO] [stderr]    |                                                      ^^^^^^^^^ help: use `dyn`: `dyn io::Write`
[INFO] [stderr]    |
[INFO] [stderr]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stderr]    = note: for more information, see issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]   --> src/encoder.rs:18:16
[INFO] [stderr]    |
[INFO] [stderr] 18 |     w: &'a mut io::Write,
[INFO] [stderr]    |                ^^^^^^^^^ help: use `dyn`: `dyn io::Write`
[INFO] [stderr]    |
[INFO] [stderr]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stderr]    = note: for more information, see issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]    --> src/encoder.rs:163:13
[INFO] [stderr]     |
[INFO] [stderr] 163 |             try!(self.w.write_u8(ERL_LARGE_TUPLE_EXT).and_then(|()| self.w.write_u32(len as u32)));
[INFO] [stderr]     |             ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]    --> src/encoder.rs:165:13
[INFO] [stderr]     |
[INFO] [stderr] 165 |             try!(self.w.write_u8(ERL_SMALL_TUPLE_EXT).and_then(|()| self.w.write_u8(len as u8)));
[INFO] [stderr]     |             ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]    --> src/encoder.rs:202:13
[INFO] [stderr]     |
[INFO] [stderr] 202 |             try!(self.w.write_u8(ERL_LIST_EXT).and_then(|()| self.w.write_u32(len as u32)));
[INFO] [stderr]     |             ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]    --> src/encoder.rs:203:13
[INFO] [stderr]     |
[INFO] [stderr] 203 |             try!(f(self));
[INFO] [stderr]     |             ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]    --> src/encoder.rs:215:9
[INFO] [stderr]     |
[INFO] [stderr] 215 |         try!(self.w.write_u8(ERL_MAP_EXT).and_then(|()| self.w.write_u32(len as u32)));
[INFO] [stderr]     |         ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/encoder.rs:230:21
[INFO] [stderr]     |
[INFO] [stderr] 230 | fn write_u8(w: &mut io::Write, v: u8) -> Result<(), error::Error> {
[INFO] [stderr]     |                     ^^^^^^^^^ help: use `dyn`: `dyn io::Write`
[INFO] [stderr]     |
[INFO] [stderr]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stderr]     = note: for more information, see issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/encoder.rs:234:22
[INFO] [stderr]     |
[INFO] [stderr] 234 | fn write_i27(w: &mut io::Write, v: i32) -> Result<(), error::Error> {
[INFO] [stderr]     |                      ^^^^^^^^^ help: use `dyn`: `dyn io::Write`
[INFO] [stderr]     |
[INFO] [stderr]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stderr]     = note: for more information, see issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/encoder.rs:238:28
[INFO] [stderr]     |
[INFO] [stderr] 238 | fn write_small_big(w: &mut io::Write, s: u8, v: u64) -> Result<(), error::Error> {
[INFO] [stderr]     |                            ^^^^^^^^^ help: use `dyn`: `dyn io::Write`
[INFO] [stderr]     |
[INFO] [stderr]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stderr]     = note: for more information, see issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/encoder.rs:250:22
[INFO] [stderr]     |
[INFO] [stderr] 250 | fn write_str(w: &mut io::Write, v: &str, len: usize) -> Result<(), error::Error> {
[INFO] [stderr]     |                      ^^^^^^^^^ help: use `dyn`: `dyn io::Write`
[INFO] [stderr]     |
[INFO] [stderr]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stderr]     = note: for more information, see issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/encoder.rs:256:23
[INFO] [stderr]     |
[INFO] [stderr] 256 | fn write_atom(w: &mut io::Write, v: &term::Atom) -> Result<(), error::Error> {
[INFO] [stderr]     |                       ^^^^^^^^^ help: use `dyn`: `dyn io::Write`
[INFO] [stderr]     |
[INFO] [stderr]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stderr]     = note: for more information, see issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]    --> src/encoder.rs:259:13
[INFO] [stderr]     |
[INFO] [stderr] 259 |             try!(w.write_u8(ERL_ATOM_EXT));
[INFO] [stderr]     |             ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]    --> src/encoder.rs:260:13
[INFO] [stderr]     |
[INFO] [stderr] 260 |             try!(w.write_u16(s.len() as u16));
[INFO] [stderr]     |             ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]    --> src/encoder.rs:264:13
[INFO] [stderr]     |
[INFO] [stderr] 264 |             try!(w.write_u8(ERL_ATOM_UTF8_EXT));
[INFO] [stderr]     |             ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]    --> src/encoder.rs:265:13
[INFO] [stderr]     |
[INFO] [stderr] 265 |             try!(w.write_u16(s.len() as u16));
[INFO] [stderr]     |             ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]    --> src/encoder.rs:269:13
[INFO] [stderr]     |
[INFO] [stderr] 269 |             try!(w.write_u8(ERL_SMALL_ATOM_UTF8_EXT));
[INFO] [stderr]     |             ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]    --> src/encoder.rs:270:13
[INFO] [stderr]     |
[INFO] [stderr] 270 |             try!(w.write_u8(s.len() as u8));
[INFO] [stderr]     |             ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]    --> src/encoder.rs:279:5
[INFO] [stderr]     |
[INFO] [stderr] 279 |     try!(w.write_u8(ERL_SMALL_TUPLE_EXT));
[INFO] [stderr]     |     ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/encoder.rs:277:22
[INFO] [stderr]     |
[INFO] [stderr] 277 | fn write_msg(w: &mut io::Write, v: &term::Msg) -> Result<(), error::Error> {
[INFO] [stderr]     |                      ^^^^^^^^^ help: use `dyn`: `dyn io::Write`
[INFO] [stderr]     |
[INFO] [stderr]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stderr]     = note: for more information, see issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]    --> src/encoder.rs:283:13
[INFO] [stderr]     |
[INFO] [stderr] 283 |             try!(w.write_u8(3));
[INFO] [stderr]     |             ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]    --> src/encoder.rs:284:13
[INFO] [stderr]     |
[INFO] [stderr] 284 |             try!(encode(w, &ERL_SEND));
[INFO] [stderr]     |             ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]    --> src/encoder.rs:285:13
[INFO] [stderr]     |
[INFO] [stderr] 285 |             try!(encode(w, cookie));
[INFO] [stderr]     |             ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]    --> src/encoder.rs:289:13
[INFO] [stderr]     |
[INFO] [stderr] 289 |             try!(w.write_u8(4));
[INFO] [stderr]     |             ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]    --> src/encoder.rs:290:13
[INFO] [stderr]     |
[INFO] [stderr] 290 |             try!(encode(w, &ERL_SEND_TT));
[INFO] [stderr]     |             ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]    --> src/encoder.rs:291:13
[INFO] [stderr]     |
[INFO] [stderr] 291 |             try!(encode(w, cookie));
[INFO] [stderr]     |             ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]    --> src/encoder.rs:292:13
[INFO] [stderr]     |
[INFO] [stderr] 292 |             try!(encode(w, to));
[INFO] [stderr]     |             ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]    --> src/encoder.rs:296:13
[INFO] [stderr]     |
[INFO] [stderr] 296 |             try!(w.write_u8(4));
[INFO] [stderr]     |             ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]    --> src/encoder.rs:297:13
[INFO] [stderr]     |
[INFO] [stderr] 297 |             try!(encode(w, &ERL_REG_SEND));
[INFO] [stderr]     |             ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]    --> src/encoder.rs:298:13
[INFO] [stderr]     |
[INFO] [stderr] 298 |             try!(encode(w, from));
[INFO] [stderr]     |             ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]    --> src/encoder.rs:299:13
[INFO] [stderr]     |
[INFO] [stderr] 299 |             try!(encode(w, cookie));
[INFO] [stderr]     |             ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]    --> src/encoder.rs:303:13
[INFO] [stderr]     |
[INFO] [stderr] 303 |             try!(w.write_u8(5));
[INFO] [stderr]     |             ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]    --> src/encoder.rs:304:13
[INFO] [stderr]     |
[INFO] [stderr] 304 |             try!(encode(w, &ERL_REG_SEND_TT));
[INFO] [stderr]     |             ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]    --> src/encoder.rs:305:13
[INFO] [stderr]     |
[INFO] [stderr] 305 |             try!(encode(w, from));
[INFO] [stderr]     |             ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]    --> src/encoder.rs:306:13
[INFO] [stderr]     |
[INFO] [stderr] 306 |             try!(encode(w, cookie));
[INFO] [stderr]     |             ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]    --> src/encoder.rs:307:13
[INFO] [stderr]     |
[INFO] [stderr] 307 |             try!(encode(w, toname));
[INFO] [stderr]     |             ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]    --> src/encoder.rs:311:13
[INFO] [stderr]     |
[INFO] [stderr] 311 |             try!(w.write_u8(4));
[INFO] [stderr]     |             ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]    --> src/encoder.rs:312:13
[INFO] [stderr]     |
[INFO] [stderr] 312 |             try!(encode(w, &ERL_EXIT));
[INFO] [stderr]     |             ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]    --> src/encoder.rs:313:13
[INFO] [stderr]     |
[INFO] [stderr] 313 |             try!(encode(w, from));
[INFO] [stderr]     |             ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]    --> src/encoder.rs:314:13
[INFO] [stderr]     |
[INFO] [stderr] 314 |             try!(encode(w, to));
[INFO] [stderr]     |             ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]    --> src/encoder.rs:318:13
[INFO] [stderr]     |
[INFO] [stderr] 318 |             try!(w.write_u8(5));
[INFO] [stderr]     |             ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]    --> src/encoder.rs:319:13
[INFO] [stderr]     |
[INFO] [stderr] 319 |             try!(encode(w, &ERL_EXIT_TT));
[INFO] [stderr]     |             ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]    --> src/encoder.rs:320:13
[INFO] [stderr]     |
[INFO] [stderr] 320 |             try!(encode(w, from));
[INFO] [stderr]     |             ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]    --> src/encoder.rs:321:13
[INFO] [stderr]     |
[INFO] [stderr] 321 |             try!(encode(w, to));
[INFO] [stderr]     |             ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]    --> src/encoder.rs:322:13
[INFO] [stderr]     |
[INFO] [stderr] 322 |             try!(encode(w, token));
[INFO] [stderr]     |             ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]    --> src/encoder.rs:336:5
[INFO] [stderr]     |
[INFO] [stderr] 336 |     try!(encode(w, &v.node));
[INFO] [stderr]     |     ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]    --> src/encoder.rs:338:5
[INFO] [stderr]     |
[INFO] [stderr] 338 |     try!(w.write_u32(v.num & 0x00007fff));
[INFO] [stderr]     |     ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]    --> src/encoder.rs:340:5
[INFO] [stderr]     |
[INFO] [stderr] 340 |     try!(w.write_u32(v.serial & 0x00001fff));
[INFO] [stderr]     |     ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/encoder.rs:328:22
[INFO] [stderr]     |
[INFO] [stderr] 328 | fn write_pid(w: &mut io::Write, v: &term::Pid) -> Result<(), error::Error> {
[INFO] [stderr]     |                      ^^^^^^^^^ help: use `dyn`: `dyn io::Write`
[INFO] [stderr]     |
[INFO] [stderr]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stderr]     = note: for more information, see issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]    --> src/encoder.rs:331:9
[INFO] [stderr]     |
[INFO] [stderr] 331 |         try!(w.write_u8(ERL_NEW_PID_EXT));
[INFO] [stderr]     |         ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]    --> src/encoder.rs:333:9
[INFO] [stderr]     |
[INFO] [stderr] 333 |         try!(w.write_u8(ERL_PID_EXT));
[INFO] [stderr]     |         ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]    --> src/encoder.rs:357:5
[INFO] [stderr]     |
[INFO] [stderr] 357 |     try!(encode(w, &v.node));
[INFO] [stderr]     |     ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]    --> src/encoder.rs:359:5
[INFO] [stderr]     |
[INFO] [stderr] 359 |     try!(w.write_u32(v.id & 0x0fffffff));
[INFO] [stderr]     |     ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/encoder.rs:349:23
[INFO] [stderr]     |
[INFO] [stderr] 349 | fn write_port(w: &mut io::Write, v: &term::Port) -> Result<(), error::Error> {
[INFO] [stderr]     |                       ^^^^^^^^^ help: use `dyn`: `dyn io::Write`
[INFO] [stderr]     |
[INFO] [stderr]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stderr]     = note: for more information, see issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]    --> src/encoder.rs:352:9
[INFO] [stderr]     |
[INFO] [stderr] 352 |         try!(w.write_u8(ERL_NEW_PORT_EXT));
[INFO] [stderr]     |         ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]    --> src/encoder.rs:354:9
[INFO] [stderr]     |
[INFO] [stderr] 354 |         try!(w.write_u8(ERL_PORT_EXT));
[INFO] [stderr]     |         ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]    --> src/encoder.rs:376:5
[INFO] [stderr]     |
[INFO] [stderr] 376 |     try!(w.write_i16(v.len));
[INFO] [stderr]     |     ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]    --> src/encoder.rs:378:5
[INFO] [stderr]     |
[INFO] [stderr] 378 |     try!(encode(w, &v.node));
[INFO] [stderr]     |     ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/encoder.rs:368:22
[INFO] [stderr]     |
[INFO] [stderr] 368 | fn write_ref(w: &mut io::Write, v: &term::Ref) -> Result<(), error::Error> {
[INFO] [stderr]     |                      ^^^^^^^^^ help: use `dyn`: `dyn io::Write`
[INFO] [stderr]     |
[INFO] [stderr]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stderr]     = note: for more information, see issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]    --> src/encoder.rs:371:9
[INFO] [stderr]     |
[INFO] [stderr] 371 |         try!(w.write_u8(ERL_NEWER_REFERENCE_EXT));
[INFO] [stderr]     |         ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]    --> src/encoder.rs:373:9
[INFO] [stderr]     |
[INFO] [stderr] 373 |         try!(w.write_u8(ERL_NEW_REFERENCE_EXT));
[INFO] [stderr]     |         ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]    --> src/encoder.rs:381:9
[INFO] [stderr]     |
[INFO] [stderr] 381 |         try!(w.write_u32(v.creation));
[INFO] [stderr]     |         ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]    --> src/encoder.rs:383:9
[INFO] [stderr]     |
[INFO] [stderr] 383 |         try!(w.write_u8(v.creation as u8));
[INFO] [stderr]     |         ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]    --> src/encoder.rs:387:9
[INFO] [stderr]     |
[INFO] [stderr] 387 |         try!(w.write_u32(v.n[i as usize]));
[INFO] [stderr]     |         ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/encoder.rs:394:32
[INFO] [stderr]     |
[INFO] [stderr] 394 |     fn w(&mut self) -> &'a mut io::Write;
[INFO] [stderr]     |                                ^^^^^^^^^ help: use `dyn`: `dyn io::Write`
[INFO] [stderr]     |
[INFO] [stderr]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stderr]     = note: for more information, see issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/encoder.rs:399:32
[INFO] [stderr]     |
[INFO] [stderr] 399 |     fn w(&mut self) -> &'a mut io::Write {
[INFO] [stderr]     |                                ^^^^^^^^^ help: use `dyn`: `dyn io::Write`
[INFO] [stderr]     |
[INFO] [stderr]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stderr]     = note: for more information, see issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]   --> src/epmd/port.rs:20:22
[INFO] [stderr]    |
[INFO] [stderr] 20 |     let mut stream = try!(net::TcpStream::connect(("127.0.0.1", os::getenv("ERL_EPMD_PORT", EPMD_PORT))));
[INFO] [stderr]    |                      ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]   --> src/epmd/port.rs:25:9
[INFO] [stderr]    |
[INFO] [stderr] 25 |         try!(buf.write_u16((1 + len) as u16));
[INFO] [stderr]    |         ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]   --> src/epmd/port.rs:26:9
[INFO] [stderr]    |
[INFO] [stderr] 26 |         try!(buf.write_u8(EI_EPMD_PORT2_REQ));
[INFO] [stderr]    |         ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]   --> src/epmd/port.rs:27:9
[INFO] [stderr]    |
[INFO] [stderr] 27 |         try!(buf.write_slice(alive.as_bytes()));
[INFO] [stderr]    |         ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]   --> src/epmd/port.rs:29:9
[INFO] [stderr]    |
[INFO] [stderr] 29 |         try!(stream.write_slice(buf.as_slice()));
[INFO] [stderr]    |         ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]   --> src/epmd/port.rs:33:42
[INFO] [stderr]    |
[INFO] [stderr] 33 |         let mut cursor = io::Cursor::new(try!(stream.read_vec(2)));
[INFO] [stderr]    |                                          ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]   --> src/epmd/port.rs:44:42
[INFO] [stderr]    |
[INFO] [stderr] 44 |         let mut cursor = io::Cursor::new(try!(stream.read_vec(8)));
[INFO] [stderr]    |                                          ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]   --> src/epmd/publish.rs:19:22
[INFO] [stderr]    |
[INFO] [stderr] 19 |     let mut stream = try!(net::TcpStream::connect(("127.0.0.1", os::getenv("ERL_EPMD_PORT", EPMD_PORT))));
[INFO] [stderr]    |                      ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]   --> src/epmd/publish.rs:24:9
[INFO] [stderr]    |
[INFO] [stderr] 24 |         try!(buf.write_u16((13 + len) as u16));
[INFO] [stderr]    |         ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]   --> src/epmd/publish.rs:25:9
[INFO] [stderr]    |
[INFO] [stderr] 25 |         try!(buf.write_u8(EI_EPMD_ALIVE2_REQ));
[INFO] [stderr]    |         ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]   --> src/epmd/publish.rs:26:9
[INFO] [stderr]    |
[INFO] [stderr] 26 |         try!(buf.write_u16(port));
[INFO] [stderr]    |         ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]   --> src/epmd/publish.rs:27:9
[INFO] [stderr]    |
[INFO] [stderr] 27 |         try!(buf.write_u8(EI_HIDDEN_NODE));
[INFO] [stderr]    |         ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]   --> src/epmd/publish.rs:28:9
[INFO] [stderr]    |
[INFO] [stderr] 28 |         try!(buf.write_u8(EI_MYPROTO));
[INFO] [stderr]    |         ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]   --> src/epmd/publish.rs:29:9
[INFO] [stderr]    |
[INFO] [stderr] 29 |         try!(buf.write_u16(EI_DIST_HIGH));
[INFO] [stderr]    |         ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]   --> src/epmd/publish.rs:30:9
[INFO] [stderr]    |
[INFO] [stderr] 30 |         try!(buf.write_u16(EI_DIST_LOW));
[INFO] [stderr]    |         ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]   --> src/epmd/publish.rs:31:9
[INFO] [stderr]    |
[INFO] [stderr] 31 |         try!(buf.write_u16(len as u16));
[INFO] [stderr]    |         ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]   --> src/epmd/publish.rs:32:9
[INFO] [stderr]    |
[INFO] [stderr] 32 |         try!(buf.write_slice(alive.as_bytes()));
[INFO] [stderr]    |         ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]   --> src/epmd/publish.rs:33:9
[INFO] [stderr]    |
[INFO] [stderr] 33 |         try!(buf.write_u16(0));
[INFO] [stderr]    |         ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]   --> src/epmd/publish.rs:35:9
[INFO] [stderr]    |
[INFO] [stderr] 35 |         try!(stream.write_slice(buf.as_slice()));
[INFO] [stderr]    |         ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]   --> src/epmd/publish.rs:39:42
[INFO] [stderr]    |
[INFO] [stderr] 39 |         let mut cursor = io::Cursor::new(try!(stream.read_vec(2)));
[INFO] [stderr]    |                                          ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]   --> src/epmd/publish.rs:50:42
[INFO] [stderr]    |
[INFO] [stderr] 50 |         let mut cursor = io::Cursor::new(try!(stream.read_vec(2)));
[INFO] [stderr]    |                                          ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]  --> src/ports.rs:7:21
[INFO] [stderr]   |
[INFO] [stderr] 7 | pub fn recv(r: &mut io::Read) -> Result<io::Cursor<Vec<u8>>, error::Error> {
[INFO] [stderr]   |                     ^^^^^^^^ help: use `dyn`: `dyn io::Read`
[INFO] [stderr]   |
[INFO] [stderr]   = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stderr]   = note: for more information, see issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]  --> src/ports.rs:8:11
[INFO] [stderr]   |
[INFO] [stderr] 8 |     match try!(r.read_u16()) {
[INFO] [stderr]   |           ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]   --> src/ports.rs:12:46
[INFO] [stderr]    |
[INFO] [stderr] 12 |             let mut cursor = io::Cursor::new(try!(r.read_vec(u as usize)));
[INFO] [stderr]    |                                              ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]   --> src/ports.rs:23:21
[INFO] [stderr]    |
[INFO] [stderr] 23 | pub fn send(w: &mut io::Write, v: &[u8]) -> Result<(), error::Error> {
[INFO] [stderr]    |                     ^^^^^^^^^ help: use `dyn`: `dyn io::Write`
[INFO] [stderr]    |
[INFO] [stderr]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stderr]    = note: for more information, see issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `RustcDecodable`: rustc-serialize is deprecated and no longer supported
[INFO] [stderr]   --> src/term.rs:53:28
[INFO] [stderr]    |
[INFO] [stderr] 53 | #[derive(Debug, PartialEq, RustcDecodable, RustcEncodable)]
[INFO] [stderr]    |                            ^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `RustcEncodable`: rustc-serialize is deprecated and no longer supported
[INFO] [stderr]   --> src/term.rs:53:44
[INFO] [stderr]    |
[INFO] [stderr] 53 | #[derive(Debug, PartialEq, RustcDecodable, RustcEncodable)]
[INFO] [stderr]    |                                            ^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]   --> src/handle.rs:26:5
[INFO] [stderr]    |
[INFO] [stderr] 26 |     try!(connect::accept(stream, nodename, &cookie));
[INFO] [stderr]    |     ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]   --> src/handle.rs:14:25
[INFO] [stderr]    |
[INFO] [stderr] 14 |     where F: FnMut(&mut io::Read) -> Result<Vec<u8>, error::Error> {
[INFO] [stderr]    |                         ^^^^^^^^ help: use `dyn`: `dyn io::Read`
[INFO] [stderr]    |
[INFO] [stderr]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stderr]    = note: for more information, see issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]   --> src/handle.rs:30:20
[INFO] [stderr]    |
[INFO] [stderr] 30 |         let size = try!(stream.read_u32()) as usize; // TODO
[INFO] [stderr]    |                    ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]   --> src/handle.rs:34:46
[INFO] [stderr]    |
[INFO] [stderr] 34 |             let mut cursor = io::Cursor::new(try!(stream.read_vec(size)));
[INFO] [stderr]    |                                              ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]   --> src/handle.rs:44:19
[INFO] [stderr]    |
[INFO] [stderr] 44 |             match try!(decoder::decode(&mut cursor)) {
[INFO] [stderr]    |                   ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]   --> src/handle.rs:56:25
[INFO] [stderr]    |
[INFO] [stderr] 56 |                         try!(encoder::encode(&mut head, &term::Msg::Send {
[INFO] [stderr]    |                         ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]   --> src/handle.rs:71:25
[INFO] [stderr]    |
[INFO] [stderr] 71 |                         try!(stream.write_slice(buf.as_slice()));
[INFO] [stderr]    |                         ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated function `std::env::home_dir`: This function's behavior is unexpected and probably not what you want. Consider using a crate from crates.io instead.
[INFO] [stderr]  --> src/fs.rs:6:34
[INFO] [stderr]   |
[INFO] [stderr] 6 |     if let Some(mut path) = env::home_dir() {
[INFO] [stderr]   |                                  ^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated associated function `std::error::Error::description`: use the Display impl or to_string()
[INFO] [stderr]   --> src/error.rs:27:35
[INFO] [stderr]    |
[INFO] [stderr] 27 |             Error::Io(ref e) => e.description(),
[INFO] [stderr]    |                                   ^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated associated function `std::error::Error::description`: use the Display impl or to_string()
[INFO] [stderr]   --> src/error.rs:28:41
[INFO] [stderr]    |
[INFO] [stderr] 28 |             Error::FromUtf8(ref e) => e.description(),
[INFO] [stderr]    |                                         ^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated associated function `std::error::Error::cause`: replaced by Error::source, which can support downcasting
[INFO] [stderr]   --> src/error.rs:34:35
[INFO] [stderr]    |
[INFO] [stderr] 34 |             Error::Io(ref e) => e.cause(),
[INFO] [stderr]    |                                   ^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated associated function `std::error::Error::cause`: replaced by Error::source, which can support downcasting
[INFO] [stderr]   --> src/error.rs:35:41
[INFO] [stderr]    |
[INFO] [stderr] 35 |             Error::FromUtf8(ref e) => e.cause(),
[INFO] [stderr]    |                                         ^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: panic message is not a string literal
[INFO] [stderr]    --> src/decoder.rs:492:49
[INFO] [stderr]     |
[INFO] [stderr] 492 |             assert!(test!(input, u64).is_err(), expected);
[INFO] [stderr]     |                                                 ^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = note: `#[warn(non_fmt_panics)]` on by default
[INFO] [stderr]     = note: this usage of panic!() is deprecated; it will be a hard error in Rust 2021
[INFO] [stderr]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/panic-macro-consistency.html>
[INFO] [stderr] help: add a "{}" format string to Display the message
[INFO] [stderr]     |
[INFO] [stderr] 492 |             assert!(test!(input, u64).is_err(), "{}", expected);
[INFO] [stderr]     |                                                 ^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: panic message is not a string literal
[INFO] [stderr]    --> src/decoder.rs:512:49
[INFO] [stderr]     |
[INFO] [stderr] 512 |             assert!(test!(input, u32).is_err(), expected);
[INFO] [stderr]     |                                                 ^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = note: this usage of panic!() is deprecated; it will be a hard error in Rust 2021
[INFO] [stderr]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/panic-macro-consistency.html>
[INFO] [stderr] help: add a "{}" format string to Display the message
[INFO] [stderr]     |
[INFO] [stderr] 512 |             assert!(test!(input, u32).is_err(), "{}", expected);
[INFO] [stderr]     |                                                 ^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: panic message is not a string literal
[INFO] [stderr]    --> src/decoder.rs:530:49
[INFO] [stderr]     |
[INFO] [stderr] 530 |             assert!(test!(input, u16).is_err(), expected);
[INFO] [stderr]     |                                                 ^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = note: this usage of panic!() is deprecated; it will be a hard error in Rust 2021
[INFO] [stderr]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/panic-macro-consistency.html>
[INFO] [stderr] help: add a "{}" format string to Display the message
[INFO] [stderr]     |
[INFO] [stderr] 530 |             assert!(test!(input, u16).is_err(), "{}", expected);
[INFO] [stderr]     |                                                 ^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: panic message is not a string literal
[INFO] [stderr]    --> src/decoder.rs:546:48
[INFO] [stderr]     |
[INFO] [stderr] 546 |             assert!(test!(input, u8).is_err(), expected);
[INFO] [stderr]     |                                                ^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = note: this usage of panic!() is deprecated; it will be a hard error in Rust 2021
[INFO] [stderr]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/panic-macro-consistency.html>
[INFO] [stderr] help: add a "{}" format string to Display the message
[INFO] [stderr]     |
[INFO] [stderr] 546 |             assert!(test!(input, u8).is_err(), "{}", expected);
[INFO] [stderr]     |                                                ^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: panic message is not a string literal
[INFO] [stderr]    --> src/decoder.rs:572:49
[INFO] [stderr]     |
[INFO] [stderr] 572 |             assert!(test!(input, i64).is_err(), expected);
[INFO] [stderr]     |                                                 ^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = note: this usage of panic!() is deprecated; it will be a hard error in Rust 2021
[INFO] [stderr]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/panic-macro-consistency.html>
[INFO] [stderr] help: add a "{}" format string to Display the message
[INFO] [stderr]     |
[INFO] [stderr] 572 |             assert!(test!(input, i64).is_err(), "{}", expected);
[INFO] [stderr]     |                                                 ^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: panic message is not a string literal
[INFO] [stderr]    --> src/decoder.rs:598:49
[INFO] [stderr]     |
[INFO] [stderr] 598 |             assert!(test!(input, i32).is_err(), expected);
[INFO] [stderr]     |                                                 ^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = note: this usage of panic!() is deprecated; it will be a hard error in Rust 2021
[INFO] [stderr]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/panic-macro-consistency.html>
[INFO] [stderr] help: add a "{}" format string to Display the message
[INFO] [stderr]     |
[INFO] [stderr] 598 |             assert!(test!(input, i32).is_err(), "{}", expected);
[INFO] [stderr]     |                                                 ^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: panic message is not a string literal
[INFO] [stderr]    --> src/decoder.rs:619:49
[INFO] [stderr]     |
[INFO] [stderr] 619 |             assert!(test!(input, i16).is_err(), expected);
[INFO] [stderr]     |                                                 ^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = note: this usage of panic!() is deprecated; it will be a hard error in Rust 2021
[INFO] [stderr]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/panic-macro-consistency.html>
[INFO] [stderr] help: add a "{}" format string to Display the message
[INFO] [stderr]     |
[INFO] [stderr] 619 |             assert!(test!(input, i16).is_err(), "{}", expected);
[INFO] [stderr]     |                                                 ^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: panic message is not a string literal
[INFO] [stderr]    --> src/decoder.rs:638:48
[INFO] [stderr]     |
[INFO] [stderr] 638 |             assert!(test!(input, i8).is_err(), expected);
[INFO] [stderr]     |                                                ^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = note: this usage of panic!() is deprecated; it will be a hard error in Rust 2021
[INFO] [stderr]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/panic-macro-consistency.html>
[INFO] [stderr] help: add a "{}" format string to Display the message
[INFO] [stderr]     |
[INFO] [stderr] 638 |             assert!(test!(input, i8).is_err(), "{}", expected);
[INFO] [stderr]     |                                                ^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: panic message is not a string literal
[INFO] [stderr]    --> src/encoder.rs:533:57
[INFO] [stderr]     |
[INFO] [stderr] 533 |             assert!(test!(&mut output, input).is_err(), expected);
[INFO] [stderr]     |                                                         ^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = note: this usage of panic!() is deprecated; it will be a hard error in Rust 2021
[INFO] [stderr]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/panic-macro-consistency.html>
[INFO] [stderr] help: add a "{}" format string to Display the message
[INFO] [stderr]     |
[INFO] [stderr] 533 |             assert!(test!(&mut output, input).is_err(), "{}", expected);
[INFO] [stderr]     |                                                         ^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: panic message is not a string literal
[INFO] [stderr]    --> src/encoder.rs:559:57
[INFO] [stderr]     |
[INFO] [stderr] 559 |             assert!(test!(&mut output, input).is_err(), expected);
[INFO] [stderr]     |                                                         ^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = note: this usage of panic!() is deprecated; it will be a hard error in Rust 2021
[INFO] [stderr]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/panic-macro-consistency.html>
[INFO] [stderr] help: add a "{}" format string to Display the message
[INFO] [stderr]     |
[INFO] [stderr] 559 |             assert!(test!(&mut output, input).is_err(), "{}", expected);
[INFO] [stderr]     |                                                         ^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: `ei` (lib) generated 194 warnings
[INFO] [stderr] warning: `ei` (lib test) generated 204 warnings (194 duplicates)
[INFO] [stderr] warning: use of deprecated associated function `std::error::Error::description`: use the Display impl or to_string()
[INFO] [stderr]   --> examples/port.rs:51:31
[INFO] [stderr]    |
[INFO] [stderr] 51 |             Err(e) => match e.description() { // TODO
[INFO] [stderr]    |                               ^^^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(deprecated)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]   --> examples/cnode.rs:32:68
[INFO] [stderr]    |
[INFO] [stderr] 32 | ...                   let (n, num_threads): (u32, u32) = try!(ei::decode(r));
[INFO] [stderr]    |                                                          ^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(deprecated)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]   --> examples/echo.rs:30:50
[INFO] [stderr]    |
[INFO] [stderr] 30 | ...                   let value: u64 = try!(ei::decode(r));
[INFO] [stderr]    |                                        ^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(deprecated)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: `ei` (example "port") generated 1 warning
[INFO] [stderr] warning: `ei` (example "cnode") generated 1 warning
[INFO] [stderr] warning: `ei` (example "echo") generated 1 warning
[INFO] [stderr]     Finished test [unoptimized + debuginfo] target(s) in 0.04s
[INFO] [stdout] 
[INFO] [stderr]      Running unittests (/opt/rustwide/target/debug/deps/ei-270329dfbbaccdd0)
[INFO] [stdout] running 60 tests
[INFO] [stdout] test decoder::tests::decode_f64 ... ok
[INFO] [stdout] test decoder::tests::decode_i64 ... ok
[INFO] [stdout] test decoder::tests::decode_i8 ... ok
[INFO] [stdout] test decoder::tests::decode_pid ... ok
[INFO] [stdout] test decoder::tests::decode_ref ... ok
[INFO] [stdout] test decoder::tests::decode_seq ... ok
[INFO] [stdout] test decoder::tests::decode_str ... ok
[INFO] [stdout] test decoder::tests::decode_trace ... ok
[INFO] [stdout] test decoder::tests::decode_u32 ... ok
[INFO] [stdout] test decoder::tests::decode_u64 ... ok
[INFO] [stdout] test decoder::tests::decode_u8 ... ok
[INFO] [stdout] test decoder::tests::encode_bool ... ok
[INFO] [stdout] test encoder::tests::encode_atom ... ok
[INFO] [stdout] test encoder::tests::encode_bool ... ok
[INFO] [stdout] test decoder::tests::decode_u16 ... ok
[INFO] [stdout] test decoder::tests::decode_tuple ... ok
[INFO] [stdout] test decoder::tests::decode_atom ... ok
[INFO] [stdout] test encoder::tests::encode_f64 ... ok
[INFO] [stdout] test encoder::tests::encode_i16 ... ok
[INFO] [stdout] test encoder::tests::encode_i32 ... ok
[INFO] [stdout] test encoder::tests::encode_i64 ... ok
[INFO] [stdout] test encoder::tests::encode_i8 ... ok
[INFO] [stdout] test encoder::tests::encode_msg ... ok
[INFO] [stdout] test encoder::tests::encode_pid ... ok
[INFO] [stdout] test encoder::tests::encode_port ... ok
[INFO] [stdout] test decoder::tests::decode_i32 ... ok
[INFO] [stdout] test encoder::tests::encode_ref ... ok
[INFO] [stdout] test encoder::tests::encode_u16 ... ok
[INFO] [stdout] test net::tests::read::read_f64 ... ok
[INFO] [stdout] test encoder::tests::encode_tuple ... ok
[INFO] [stdout] test encoder::tests::encode_seq ... ok
[INFO] [stdout] test encoder::tests::encode_trace ... ok
[INFO] [stdout] test encoder::tests::encode_str ... ok
[INFO] [stdout] test encoder::tests::encode_u32 ... ok
[INFO] [stdout] test net::tests::read::read_i16 ... ok
[INFO] [stdout] test net::tests::read::read_i32 ... ok
[INFO] [stdout] test net::tests::read::read_u32 ... ok
[INFO] [stdout] test net::tests::read::read_u8 ... ok
[INFO] [stdout] test net::tests::read::read_i8 ... ok
[INFO] [stdout] test decoder::tests::decode_i16 ... ok
[INFO] [stdout] test net::tests::read::read_i64 ... ok
[INFO] [stdout] test net::tests::read::read_u16 ... ok
[INFO] [stdout] test net::tests::read::read_u64 ... ok
[INFO] [stdout] test net::tests::write::write_f32 ... ok
[INFO] [stdout] test net::tests::write::write_f64 ... ok
[INFO] [stdout] test net::tests::write::write_i16 ... ok
[INFO] [stdout] test net::tests::write::write_i32 ... ok
[INFO] [stdout] test net::tests::write::write_i64 ... ok
[INFO] [stdout] test net::tests::write::write_i8 ... ok
[INFO] [stdout] test net::tests::write::write_u16 ... ok
[INFO] [stdout] test net::tests::write::write_u8 ... ok
[INFO] [stdout] test decoder::tests::decode_port ... ok
[INFO] [stdout] test encoder::tests::encode_map ... ok
[INFO] [stdout] test encoder::tests::encode_u8 ... ok
[INFO] [stdout] test decoder::tests::decode_map ... ok
[INFO] [stdout] test net::tests::read::read_f32 ... ok
[INFO] [stdout] test decoder::tests::decode_msg ... ok
[INFO] [stdout] test net::tests::write::write_u32 ... ok
[INFO] [stdout] test net::tests::write::write_u64 ... ok
[INFO] [stderr]    Doc-tests ei
[INFO] [stdout] test encoder::tests::encode_u64 ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 60 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.02s
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] running 0 tests
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s
[INFO] [stdout] 
[INFO] running `Command { std: "docker" "inspect" "079477599cbe62e8970a25e85bb01f3204f07641453ed11c2a8b1baf35237040", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "079477599cbe62e8970a25e85bb01f3204f07641453ed11c2a8b1baf35237040", kill_on_drop: false }`
[INFO] [stdout] 079477599cbe62e8970a25e85bb01f3204f07641453ed11c2a8b1baf35237040
