[INFO] fetching crate bencode 0.1.16...
[INFO] checking bencode-0.1.16 against master#c2f2db79ca3024f68d22b45aa22b570775c2c4ad for pr-124157
[INFO] extracting crate bencode 0.1.16 into /workspace/builds/worker-1-tc1/source
[INFO] validating manifest of crates.io crate bencode 0.1.16 on toolchain c2f2db79ca3024f68d22b45aa22b570775c2c4ad
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+c2f2db79ca3024f68d22b45aa22b570775c2c4ad" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] started tweaking crates.io crate bencode 0.1.16
[INFO] finished tweaking crates.io crate bencode 0.1.16
[INFO] tweaked toml for crates.io crate bencode 0.1.16 written to /workspace/builds/worker-1-tc1/source/Cargo.toml
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+c2f2db79ca3024f68d22b45aa22b570775c2c4ad" "generate-lockfile" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Updating crates.io index
[INFO] [stderr]      Locking 6 packages to latest compatible versions
[INFO] [stderr]       Adding num-traits v0.1.43 (latest: v0.2.18)
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+c2f2db79ca3024f68d22b45aa22b570775c2c4ad" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr] warning: path `src/bencode.rs` was erroneously implicitly accepted for library `bencode`,
[INFO] [stderr] please rename the file to `src/lib.rs` or set lib.path in Cargo.toml
[INFO] [stderr]  Downloading crates ...
[INFO] [stderr]   Downloaded rustc-serialize v0.3.25
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:99613afd962a8cfa530ec1899472a458bd015a1ab0af876cf7eb06f6006d81ea" "/opt/rustwide/cargo-home/bin/cargo" "+c2f2db79ca3024f68d22b45aa22b570775c2c4ad" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] fe9807225bb89d0ef19da8004d5a57cb2c62387d5f7529d367b43b3662f3ba3d
[INFO] running `Command { std: "docker" "start" "-a" "fe9807225bb89d0ef19da8004d5a57cb2c62387d5f7529d367b43b3662f3ba3d", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "fe9807225bb89d0ef19da8004d5a57cb2c62387d5f7529d367b43b3662f3ba3d", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "fe9807225bb89d0ef19da8004d5a57cb2c62387d5f7529d367b43b3662f3ba3d", kill_on_drop: false }`
[INFO] [stdout] fe9807225bb89d0ef19da8004d5a57cb2c62387d5f7529d367b43b3662f3ba3d
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:99613afd962a8cfa530ec1899472a458bd015a1ab0af876cf7eb06f6006d81ea" "/opt/rustwide/cargo-home/bin/cargo" "+c2f2db79ca3024f68d22b45aa22b570775c2c4ad" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 3ad7edc28a9e0ace3fd3567f38d4b32777b6c225d006412980382f27e1f95458
[INFO] running `Command { std: "docker" "start" "-a" "3ad7edc28a9e0ace3fd3567f38d4b32777b6c225d006412980382f27e1f95458", kill_on_drop: false }`
[INFO] [stderr] warning: path `src/bencode.rs` was erroneously implicitly accepted for library `bencode`,
[INFO] [stderr] please rename the file to `src/lib.rs` or set lib.path in Cargo.toml
[INFO] [stderr]    Compiling num-traits v0.2.18
[INFO] [stderr]     Checking rustc-serialize v0.3.25
[INFO] [stderr]     Checking num-traits v0.1.43
[INFO] [stderr]     Checking bencode v0.1.16 (/opt/rustwide/workdir)
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/streaming.rs:116:19
[INFO] [stdout]     |
[INFO] [stdout] 116 |         let num = try!(self.parse_number_digits(sign));
[INFO] [stdout]     |                   ^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(deprecated)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]    --> src/streaming.rs:126:22
[INFO] [stdout]     |
[INFO] [stdout] 126 |             Some('1' ... '9') => {
[INFO] [stdout]     |                      ^^^ help: use `..=` for an inclusive range
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: `#[warn(ellipsis_inclusive_range_patterns)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]    --> src/streaming.rs:129:39
[INFO] [stdout]     |
[INFO] [stdout] 129 |                         Some(ch @ '0' ... '9') => self.parse_digit(ch, sign, &mut num),
[INFO] [stdout]     |                                       ^^^ help: use `..=` for an inclusive range
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]    --> src/streaming.rs:144:22
[INFO] [stdout]     |
[INFO] [stdout] 144 |             Some('0' ... '9') => {
[INFO] [stdout]     |                      ^^^ help: use `..=` for an inclusive range
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]    --> src/streaming.rs:147:39
[INFO] [stdout]     |
[INFO] [stdout] 147 |                         Some(ch @ '0' ... '9') => self.parse_digit(ch, sign, &mut num),
[INFO] [stdout]     |                                       ^^^ help: use `..=` for an inclusive range
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/streaming.rs:165:19
[INFO] [stdout]     |
[INFO] [stdout] 165 |         let len = try!(self.parse_length_digits(1));
[INFO] [stdout]     |                   ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/streaming.rs:167:21
[INFO] [stdout]     |
[INFO] [stdout] 167 |         let bytes = try!(self.next_bytes(len as usize));
[INFO] [stdout]     |                     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]    --> src/streaming.rs:187:22
[INFO] [stdout]     |
[INFO] [stdout] 187 |             Some('0' ... '9') => {
[INFO] [stdout]     |                      ^^^ help: use `..=` for an inclusive range
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/streaming.rs:189:27
[INFO] [stdout]     |
[INFO] [stdout] 189 |                 let res = try!(self.parse_bytestring());
[INFO] [stdout]     |                           ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/streaming.rs:204:27
[INFO] [stdout]     |
[INFO] [stdout] 204 |                 let res = try!(self.parse_number());
[INFO] [stdout]     |                           ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]    --> src/streaming.rs:207:22
[INFO] [stdout]     |
[INFO] [stdout] 207 |             Some('0' ... '9') => {
[INFO] [stdout]     |                      ^^^ help: use `..=` for an inclusive range
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/streaming.rs:210:27
[INFO] [stdout]     |
[INFO] [stdout] 210 |                 let res = try!(self.parse_bytestring());
[INFO] [stdout]     |                           ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/bencode.rs:260:13
[INFO] [stdout]     |
[INFO] [stdout] 260 |             try!(write!(fmt, "["));
[INFO] [stdout]     |             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/bencode.rs:268:17
[INFO] [stdout]     |
[INFO] [stdout] 268 |                 try!(write!(fmt, "{}", *value));
[INFO] [stdout]     |                 ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/bencode.rs:266:21
[INFO] [stdout]     |
[INFO] [stdout] 266 |                     try!(write!(fmt, ", "));
[INFO] [stdout]     |                     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/bencode.rs:273:13
[INFO] [stdout]     |
[INFO] [stdout] 273 |             try!(write!(fmt, "{{"));
[INFO] [stdout]     |             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/bencode.rs:281:17
[INFO] [stdout]     |
[INFO] [stdout] 281 |                 try!(write!(fmt, "{}: {}", *key, *value));
[INFO] [stdout]     |                 ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/bencode.rs:279:21
[INFO] [stdout]     |
[INFO] [stdout] 279 |                     try!(write!(fmt, ", "));
[INFO] [stdout]     |                     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: anonymous parameters are deprecated and will be removed in the next edition
[INFO] [stdout]    --> src/bencode.rs:325:21
[INFO] [stdout]     |
[INFO] [stdout] 325 |     fn from_bencode(&Bencode) -> Result<Self, Self::Err>;
[INFO] [stdout]     |                     ^^^^^^^^ help: try naming the parameter or explicitly ignoring it: `_: &Bencode`
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2018!
[INFO] [stdout]     = note: for more information, see issue #41686 <https://github.com/rust-lang/rust/issues/41686>
[INFO] [stdout]     = note: `#[warn(anonymous_parameters)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused macro definition: `tryenc`
[INFO] [stdout]    --> src/bencode.rs:710:14
[INFO] [stdout]     |
[INFO] [stdout] 710 | macro_rules! tryenc(($e:expr) => (
[INFO] [stdout]     |              ^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_macros)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/bencode.rs:751:9
[INFO] [stdout]     |
[INFO] [stdout] 751 |         try!(write!(self.get_writer(), "d"));
[INFO] [stdout]     |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/bencode.rs:753:13
[INFO] [stdout]     |
[INFO] [stdout] 753 |             try!(key.encode(self));
[INFO] [stdout]     |             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/bencode.rs:754:13
[INFO] [stdout]     |
[INFO] [stdout] 754 |             try!(self.get_writer().write_all(value));
[INFO] [stdout]     |             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/bencode.rs:764:13
[INFO] [stdout]     |
[INFO] [stdout] 764 |             try!(write!(self.get_writer(), "{}:", v.len()));
[INFO] [stdout]     |             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/bencode.rs:860:9
[INFO] [stdout]     |
[INFO] [stdout] 860 |         try!(f(self));
[INFO] [stdout]     |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/bencode.rs:862:9
[INFO] [stdout]     |
[INFO] [stdout] 862 |         try!(self.encode_dict(&dict));
[INFO] [stdout]     |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/bencode.rs:870:9
[INFO] [stdout]     |
[INFO] [stdout] 870 |         try!(f(self));
[INFO] [stdout]     |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/bencode.rs:912:9
[INFO] [stdout]     |
[INFO] [stdout] 912 |         try!(write!(self.get_writer(), "l"));
[INFO] [stdout]     |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/bencode.rs:913:9
[INFO] [stdout]     |
[INFO] [stdout] 913 |         try!(f(self));
[INFO] [stdout]     |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/bencode.rs:920:9
[INFO] [stdout]     |
[INFO] [stdout] 920 |         try!(f(self));
[INFO] [stdout]     |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/bencode.rs:928:9
[INFO] [stdout]     |
[INFO] [stdout] 928 |         try!(f(self));
[INFO] [stdout]     |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/bencode.rs:930:9
[INFO] [stdout]     |
[INFO] [stdout] 930 |         try!(self.encode_dict(&dict));
[INFO] [stdout]     |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/bencode.rs:939:9
[INFO] [stdout]     |
[INFO] [stdout] 939 |         try!(f(self));
[INFO] [stdout]     |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/bencode.rs:947:9
[INFO] [stdout]     |
[INFO] [stdout] 947 |         try!(f(self));
[INFO] [stdout]     |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]     --> src/bencode.rs:1035:25
[INFO] [stdout]      |
[INFO] [stdout] 1035 |             let value = try!(self.parse_elem(current));
[INFO] [stdout]      |                         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]     --> src/bencode.rs:1211:19
[INFO] [stdout]      |
[INFO] [stdout] 1211 |         let res = try!(f(self));
[INFO] [stdout]      |                   ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]     --> src/bencode.rs:1309:19
[INFO] [stdout]      |
[INFO] [stdout] 1309 |         let res = try!(f(self));
[INFO] [stdout]      |                   ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/bencode.rs:722:22
[INFO] [stdout]     |
[INFO] [stdout] 722 |     writer: &'a mut (io::Write + 'a),
[INFO] [stdout]     |                      ^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: `#[warn(bare_trait_objects)]` on by default
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 722 |     writer: &'a mut (dyn io::Write + 'a),
[INFO] [stdout]     |                      +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/bencode.rs:731:32
[INFO] [stdout]     |
[INFO] [stdout] 731 |     pub fn new(writer: &'a mut io::Write) -> Encoder<'a> {
[INFO] [stdout]     |                                ^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 731 |     pub fn new(writer: &'a mut dyn io::Write) -> Encoder<'a> {
[INFO] [stdout]     |                                +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/bencode.rs:742:38
[INFO] [stdout]     |
[INFO] [stdout] 742 |     fn get_writer(&mut self) -> &mut io::Write {
[INFO] [stdout]     |                                      ^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 742 |     fn get_writer(&mut self) -> &mut dyn io::Write {
[INFO] [stdout]     |                                      +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/bencode.rs:292:42
[INFO] [stdout]     |
[INFO] [stdout] 292 |     pub fn to_writer(&self, writer: &mut io::Write) -> io::Result<()> {
[INFO] [stdout]     |                                          ^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 292 |     pub fn to_writer(&self, writer: &mut dyn io::Write) -> io::Result<()> {
[INFO] [stdout]     |                                          +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/streaming.rs:116:19
[INFO] [stdout]     |
[INFO] [stdout] 116 |         let num = try!(self.parse_number_digits(sign));
[INFO] [stdout]     |                   ^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(deprecated)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]    --> src/streaming.rs:126:22
[INFO] [stdout]     |
[INFO] [stdout] 126 |             Some('1' ... '9') => {
[INFO] [stdout]     |                      ^^^ help: use `..=` for an inclusive range
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: `#[warn(ellipsis_inclusive_range_patterns)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]    --> src/streaming.rs:129:39
[INFO] [stdout]     |
[INFO] [stdout] 129 |                         Some(ch @ '0' ... '9') => self.parse_digit(ch, sign, &mut num),
[INFO] [stdout]     |                                       ^^^ help: use `..=` for an inclusive range
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]    --> src/streaming.rs:144:22
[INFO] [stdout]     |
[INFO] [stdout] 144 |             Some('0' ... '9') => {
[INFO] [stdout]     |                      ^^^ help: use `..=` for an inclusive range
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]    --> src/streaming.rs:147:39
[INFO] [stdout]     |
[INFO] [stdout] 147 |                         Some(ch @ '0' ... '9') => self.parse_digit(ch, sign, &mut num),
[INFO] [stdout]     |                                       ^^^ help: use `..=` for an inclusive range
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/streaming.rs:165:19
[INFO] [stdout]     |
[INFO] [stdout] 165 |         let len = try!(self.parse_length_digits(1));
[INFO] [stdout]     |                   ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/streaming.rs:167:21
[INFO] [stdout]     |
[INFO] [stdout] 167 |         let bytes = try!(self.next_bytes(len as usize));
[INFO] [stdout]     |                     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]    --> src/streaming.rs:187:22
[INFO] [stdout]     |
[INFO] [stdout] 187 |             Some('0' ... '9') => {
[INFO] [stdout]     |                      ^^^ help: use `..=` for an inclusive range
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/streaming.rs:189:27
[INFO] [stdout]     |
[INFO] [stdout] 189 |                 let res = try!(self.parse_bytestring());
[INFO] [stdout]     |                           ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/streaming.rs:204:27
[INFO] [stdout]     |
[INFO] [stdout] 204 |                 let res = try!(self.parse_number());
[INFO] [stdout]     |                           ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]    --> src/streaming.rs:207:22
[INFO] [stdout]     |
[INFO] [stdout] 207 |             Some('0' ... '9') => {
[INFO] [stdout]     |                      ^^^ help: use `..=` for an inclusive range
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/streaming.rs:210:27
[INFO] [stdout]     |
[INFO] [stdout] 210 |                 let res = try!(self.parse_bytestring());
[INFO] [stdout]     |                           ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]    --> src/streaming.rs:300:27
[INFO] [stdout]     |
[INFO] [stdout] 300 |                 'i' | '0' ... '9' | 'l' | 'd' | 'e' => continue,
[INFO] [stdout]     |                           ^^^ help: use `..=` for an inclusive range
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/bencode.rs:260:13
[INFO] [stdout]     |
[INFO] [stdout] 260 |             try!(write!(fmt, "["));
[INFO] [stdout]     |             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/bencode.rs:268:17
[INFO] [stdout]     |
[INFO] [stdout] 268 |                 try!(write!(fmt, "{}", *value));
[INFO] [stdout]     |                 ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/bencode.rs:266:21
[INFO] [stdout]     |
[INFO] [stdout] 266 |                     try!(write!(fmt, ", "));
[INFO] [stdout]     |                     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/bencode.rs:273:13
[INFO] [stdout]     |
[INFO] [stdout] 273 |             try!(write!(fmt, "{{"));
[INFO] [stdout]     |             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/bencode.rs:281:17
[INFO] [stdout]     |
[INFO] [stdout] 281 |                 try!(write!(fmt, "{}: {}", *key, *value));
[INFO] [stdout]     |                 ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/bencode.rs:279:21
[INFO] [stdout]     |
[INFO] [stdout] 279 |                     try!(write!(fmt, ", "));
[INFO] [stdout]     |                     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: anonymous parameters are deprecated and will be removed in the next edition
[INFO] [stdout]    --> src/bencode.rs:325:21
[INFO] [stdout]     |
[INFO] [stdout] 325 |     fn from_bencode(&Bencode) -> Result<Self, Self::Err>;
[INFO] [stdout]     |                     ^^^^^^^^ help: try naming the parameter or explicitly ignoring it: `_: &Bencode`
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2018!
[INFO] [stdout]     = note: for more information, see issue #41686 <https://github.com/rust-lang/rust/issues/41686>
[INFO] [stdout]     = note: `#[warn(anonymous_parameters)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused macro definition: `tryenc`
[INFO] [stdout]    --> src/bencode.rs:710:14
[INFO] [stdout]     |
[INFO] [stdout] 710 | macro_rules! tryenc(($e:expr) => (
[INFO] [stdout]     |              ^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_macros)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/bencode.rs:751:9
[INFO] [stdout]     |
[INFO] [stdout] 751 |         try!(write!(self.get_writer(), "d"));
[INFO] [stdout]     |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/bencode.rs:753:13
[INFO] [stdout]     |
[INFO] [stdout] 753 |             try!(key.encode(self));
[INFO] [stdout]     |             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/bencode.rs:754:13
[INFO] [stdout]     |
[INFO] [stdout] 754 |             try!(self.get_writer().write_all(value));
[INFO] [stdout]     |             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/bencode.rs:764:13
[INFO] [stdout]     |
[INFO] [stdout] 764 |             try!(write!(self.get_writer(), "{}:", v.len()));
[INFO] [stdout]     |             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/bencode.rs:860:9
[INFO] [stdout]     |
[INFO] [stdout] 860 |         try!(f(self));
[INFO] [stdout]     |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/bencode.rs:862:9
[INFO] [stdout]     |
[INFO] [stdout] 862 |         try!(self.encode_dict(&dict));
[INFO] [stdout]     |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/bencode.rs:870:9
[INFO] [stdout]     |
[INFO] [stdout] 870 |         try!(f(self));
[INFO] [stdout]     |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/bencode.rs:912:9
[INFO] [stdout]     |
[INFO] [stdout] 912 |         try!(write!(self.get_writer(), "l"));
[INFO] [stdout]     |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/bencode.rs:913:9
[INFO] [stdout]     |
[INFO] [stdout] 913 |         try!(f(self));
[INFO] [stdout]     |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/bencode.rs:920:9
[INFO] [stdout]     |
[INFO] [stdout] 920 |         try!(f(self));
[INFO] [stdout]     |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/bencode.rs:928:9
[INFO] [stdout]     |
[INFO] [stdout] 928 |         try!(f(self));
[INFO] [stdout]     |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/bencode.rs:930:9
[INFO] [stdout]     |
[INFO] [stdout] 930 |         try!(self.encode_dict(&dict));
[INFO] [stdout]     |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/bencode.rs:939:9
[INFO] [stdout]     |
[INFO] [stdout] 939 |         try!(f(self));
[INFO] [stdout]     |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/bencode.rs:947:9
[INFO] [stdout]     |
[INFO] [stdout] 947 |         try!(f(self));
[INFO] [stdout]     |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]     --> src/bencode.rs:1035:25
[INFO] [stdout]      |
[INFO] [stdout] 1035 |             let value = try!(self.parse_elem(current));
[INFO] [stdout]      |                         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]     --> src/bencode.rs:1211:19
[INFO] [stdout]      |
[INFO] [stdout] 1211 |         let res = try!(f(self));
[INFO] [stdout]      |                   ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]     --> src/bencode.rs:1309:19
[INFO] [stdout]      |
[INFO] [stdout] 1309 |         let res = try!(f(self));
[INFO] [stdout]      |                   ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: use of unstable library feature 'rustc_encodable_decodable': derive macro for `rustc-serialize`; should not be used in new code
[INFO] [stdout]     --> src/bencode.rs:1700:36
[INFO] [stdout]      |
[INFO] [stdout] 1700 |     #[derive(Eq, PartialEq, Debug, RustcEncodable, RustcDecodable)]
[INFO] [stdout]      |                                    ^^^^^^^^^^^^^^
[INFO] [stdout]      |
[INFO] [stdout]      = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]      = note: for more information, see issue #64266 <https://github.com/rust-lang/rust/issues/64266>
[INFO] [stdout]      = note: `#[deny(soft_unstable)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `RustcEncodable`: rustc-serialize is deprecated and no longer supported
[INFO] [stdout]     --> src/bencode.rs:1700:36
[INFO] [stdout]      |
[INFO] [stdout] 1700 |     #[derive(Eq, PartialEq, Debug, RustcEncodable, RustcDecodable)]
[INFO] [stdout]      |                                    ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: use of unstable library feature 'rustc_encodable_decodable': derive macro for `rustc-serialize`; should not be used in new code
[INFO] [stdout]     --> src/bencode.rs:1700:52
[INFO] [stdout]      |
[INFO] [stdout] 1700 |     #[derive(Eq, PartialEq, Debug, RustcEncodable, RustcDecodable)]
[INFO] [stdout]      |                                                    ^^^^^^^^^^^^^^
[INFO] [stdout]      |
[INFO] [stdout]      = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]      = note: for more information, see issue #64266 <https://github.com/rust-lang/rust/issues/64266>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `RustcDecodable`: rustc-serialize is deprecated and no longer supported
[INFO] [stdout]     --> src/bencode.rs:1700:52
[INFO] [stdout]      |
[INFO] [stdout] 1700 |     #[derive(Eq, PartialEq, Debug, RustcEncodable, RustcDecodable)]
[INFO] [stdout]      |                                                    ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: use of unstable library feature 'rustc_encodable_decodable': derive macro for `rustc-serialize`; should not be used in new code
[INFO] [stdout]     --> src/bencode.rs:1706:36
[INFO] [stdout]      |
[INFO] [stdout] 1706 |     #[derive(Eq, PartialEq, Debug, RustcEncodable, RustcDecodable)]
[INFO] [stdout]      |                                    ^^^^^^^^^^^^^^
[INFO] [stdout]      |
[INFO] [stdout]      = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]      = note: for more information, see issue #64266 <https://github.com/rust-lang/rust/issues/64266>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `RustcEncodable`: rustc-serialize is deprecated and no longer supported
[INFO] [stdout]     --> src/bencode.rs:1706:36
[INFO] [stdout]      |
[INFO] [stdout] 1706 |     #[derive(Eq, PartialEq, Debug, RustcEncodable, RustcDecodable)]
[INFO] [stdout]      |                                    ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: use of unstable library feature 'rustc_encodable_decodable': derive macro for `rustc-serialize`; should not be used in new code
[INFO] [stdout]     --> src/bencode.rs:1706:52
[INFO] [stdout]      |
[INFO] [stdout] 1706 |     #[derive(Eq, PartialEq, Debug, RustcEncodable, RustcDecodable)]
[INFO] [stdout]      |                                                    ^^^^^^^^^^^^^^
[INFO] [stdout]      |
[INFO] [stdout]      = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]      = note: for more information, see issue #64266 <https://github.com/rust-lang/rust/issues/64266>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `RustcDecodable`: rustc-serialize is deprecated and no longer supported
[INFO] [stdout]     --> src/bencode.rs:1706:52
[INFO] [stdout]      |
[INFO] [stdout] 1706 |     #[derive(Eq, PartialEq, Debug, RustcEncodable, RustcDecodable)]
[INFO] [stdout]      |                                                    ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: use of unstable library feature 'rustc_encodable_decodable': derive macro for `rustc-serialize`; should not be used in new code
[INFO] [stdout]     --> src/bencode.rs:1713:36
[INFO] [stdout]      |
[INFO] [stdout] 1713 |     #[derive(Eq, PartialEq, Debug, RustcEncodable, RustcDecodable)]
[INFO] [stdout]      |                                    ^^^^^^^^^^^^^^
[INFO] [stdout]      |
[INFO] [stdout]      = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]      = note: for more information, see issue #64266 <https://github.com/rust-lang/rust/issues/64266>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `RustcEncodable`: rustc-serialize is deprecated and no longer supported
[INFO] [stdout]     --> src/bencode.rs:1713:36
[INFO] [stdout]      |
[INFO] [stdout] 1713 |     #[derive(Eq, PartialEq, Debug, RustcEncodable, RustcDecodable)]
[INFO] [stdout]      |                                    ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: use of unstable library feature 'rustc_encodable_decodable': derive macro for `rustc-serialize`; should not be used in new code
[INFO] [stdout]     --> src/bencode.rs:1713:52
[INFO] [stdout]      |
[INFO] [stdout] 1713 |     #[derive(Eq, PartialEq, Debug, RustcEncodable, RustcDecodable)]
[INFO] [stdout]      |                                                    ^^^^^^^^^^^^^^
[INFO] [stdout]      |
[INFO] [stdout]      = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]      = note: for more information, see issue #64266 <https://github.com/rust-lang/rust/issues/64266>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `RustcDecodable`: rustc-serialize is deprecated and no longer supported
[INFO] [stdout]     --> src/bencode.rs:1713:52
[INFO] [stdout]      |
[INFO] [stdout] 1713 |     #[derive(Eq, PartialEq, Debug, RustcEncodable, RustcDecodable)]
[INFO] [stdout]      |                                                    ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: use of unstable library feature 'rustc_encodable_decodable': derive macro for `rustc-serialize`; should not be used in new code
[INFO] [stdout]     --> src/bencode.rs:1813:14
[INFO] [stdout]      |
[INFO] [stdout] 1813 |     #[derive(RustcEncodable, RustcDecodable, Eq, PartialEq, Debug, Clone)]
[INFO] [stdout]      |              ^^^^^^^^^^^^^^
[INFO] [stdout]      |
[INFO] [stdout]      = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]      = note: for more information, see issue #64266 <https://github.com/rust-lang/rust/issues/64266>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `RustcEncodable`: rustc-serialize is deprecated and no longer supported
[INFO] [stdout]     --> src/bencode.rs:1813:14
[INFO] [stdout]      |
[INFO] [stdout] 1813 |     #[derive(RustcEncodable, RustcDecodable, Eq, PartialEq, Debug, Clone)]
[INFO] [stdout]      |              ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: use of unstable library feature 'rustc_encodable_decodable': derive macro for `rustc-serialize`; should not be used in new code
[INFO] [stdout]     --> src/bencode.rs:1813:30
[INFO] [stdout]      |
[INFO] [stdout] 1813 |     #[derive(RustcEncodable, RustcDecodable, Eq, PartialEq, Debug, Clone)]
[INFO] [stdout]      |                              ^^^^^^^^^^^^^^
[INFO] [stdout]      |
[INFO] [stdout]      = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]      = note: for more information, see issue #64266 <https://github.com/rust-lang/rust/issues/64266>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `RustcDecodable`: rustc-serialize is deprecated and no longer supported
[INFO] [stdout]     --> src/bencode.rs:1813:30
[INFO] [stdout]      |
[INFO] [stdout] 1813 |     #[derive(RustcEncodable, RustcDecodable, Eq, PartialEq, Debug, Clone)]
[INFO] [stdout]      |                              ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: use of unstable library feature 'rustc_encodable_decodable': derive macro for `rustc-serialize`; should not be used in new code
[INFO] [stdout]     --> src/bencode.rs:1820:14
[INFO] [stdout]      |
[INFO] [stdout] 1820 |     #[derive(RustcEncodable, RustcDecodable, Eq, PartialEq, Debug)]
[INFO] [stdout]      |              ^^^^^^^^^^^^^^
[INFO] [stdout]      |
[INFO] [stdout]      = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]      = note: for more information, see issue #64266 <https://github.com/rust-lang/rust/issues/64266>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `RustcEncodable`: rustc-serialize is deprecated and no longer supported
[INFO] [stdout]     --> src/bencode.rs:1820:14
[INFO] [stdout]      |
[INFO] [stdout] 1820 |     #[derive(RustcEncodable, RustcDecodable, Eq, PartialEq, Debug)]
[INFO] [stdout]      |              ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: use of unstable library feature 'rustc_encodable_decodable': derive macro for `rustc-serialize`; should not be used in new code
[INFO] [stdout]     --> src/bencode.rs:1820:30
[INFO] [stdout]      |
[INFO] [stdout] 1820 |     #[derive(RustcEncodable, RustcDecodable, Eq, PartialEq, Debug)]
[INFO] [stdout]      |                              ^^^^^^^^^^^^^^
[INFO] [stdout]      |
[INFO] [stdout]      = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]      = note: for more information, see issue #64266 <https://github.com/rust-lang/rust/issues/64266>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `RustcDecodable`: rustc-serialize is deprecated and no longer supported
[INFO] [stdout]     --> src/bencode.rs:1820:30
[INFO] [stdout]      |
[INFO] [stdout] 1820 |     #[derive(RustcEncodable, RustcDecodable, Eq, PartialEq, Debug)]
[INFO] [stdout]      |                              ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: use of unstable library feature 'rustc_encodable_decodable': derive macro for `rustc-serialize`; should not be used in new code
[INFO] [stdout]     --> src/bencode.rs:1797:18
[INFO] [stdout]      |
[INFO] [stdout] 1797 |         #[derive(RustcEncodable)]
[INFO] [stdout]      |                  ^^^^^^^^^^^^^^
[INFO] [stdout]      |
[INFO] [stdout]      = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]      = note: for more information, see issue #64266 <https://github.com/rust-lang/rust/issues/64266>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `RustcEncodable`: rustc-serialize is deprecated and no longer supported
[INFO] [stdout]     --> src/bencode.rs:1797:18
[INFO] [stdout]      |
[INFO] [stdout] 1797 |         #[derive(RustcEncodable)]
[INFO] [stdout]      |                  ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/bencode.rs:744:38
[INFO] [stdout]     |
[INFO] [stdout] 744 |             &mut self.writer as &mut io::Write
[INFO] [stdout]     |                                      ^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 744 |             &mut self.writer as &mut dyn io::Write
[INFO] [stdout]     |                                      +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/bencode.rs:746:54
[INFO] [stdout]     |
[INFO] [stdout] 746 |             self.writers.last_mut().unwrap() as &mut io::Write
[INFO] [stdout]     |                                                      ^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 746 |             self.writers.last_mut().unwrap() as &mut dyn io::Write
[INFO] [stdout]     |                                                      +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/bencode.rs:722:22
[INFO] [stdout]     |
[INFO] [stdout] 722 |     writer: &'a mut (io::Write + 'a),
[INFO] [stdout]     |                      ^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: `#[warn(bare_trait_objects)]` on by default
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 722 |     writer: &'a mut (dyn io::Write + 'a),
[INFO] [stdout]     |                      +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/bencode.rs:731:32
[INFO] [stdout]     |
[INFO] [stdout] 731 |     pub fn new(writer: &'a mut io::Write) -> Encoder<'a> {
[INFO] [stdout]     |                                ^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 731 |     pub fn new(writer: &'a mut dyn io::Write) -> Encoder<'a> {
[INFO] [stdout]     |                                +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/bencode.rs:742:38
[INFO] [stdout]     |
[INFO] [stdout] 742 |     fn get_writer(&mut self) -> &mut io::Write {
[INFO] [stdout]     |                                      ^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 742 |     fn get_writer(&mut self) -> &mut dyn io::Write {
[INFO] [stdout]     |                                      +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/bencode.rs:292:42
[INFO] [stdout]     |
[INFO] [stdout] 292 |     pub fn to_writer(&self, writer: &mut io::Write) -> io::Result<()> {
[INFO] [stdout]     |                                          ^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 292 |     pub fn to_writer(&self, writer: &mut dyn io::Write) -> io::Result<()> {
[INFO] [stdout]     |                                          +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: 43 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/bencode.rs:744:38
[INFO] [stdout]     |
[INFO] [stdout] 744 |             &mut self.writer as &mut io::Write
[INFO] [stdout]     |                                      ^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 744 |             &mut self.writer as &mut dyn io::Write
[INFO] [stdout]     |                                      +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/bencode.rs:746:54
[INFO] [stdout]     |
[INFO] [stdout] 746 |             self.writers.last_mut().unwrap() as &mut io::Write
[INFO] [stdout]     |                                                      ^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 746 |             self.writers.last_mut().unwrap() as &mut dyn io::Write
[INFO] [stdout]     |                                                      +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: aborting due to 11 previous errors; 55 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `bencode` (lib test) due to 23 previous errors; 55 warnings emitted
[INFO] running `Command { std: "docker" "inspect" "3ad7edc28a9e0ace3fd3567f38d4b32777b6c225d006412980382f27e1f95458", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "3ad7edc28a9e0ace3fd3567f38d4b32777b6c225d006412980382f27e1f95458", kill_on_drop: false }`
[INFO] [stdout] 3ad7edc28a9e0ace3fd3567f38d4b32777b6c225d006412980382f27e1f95458
