[INFO] fetching crate bencode 0.1.16... [INFO] testing bencode-0.1.16 against 1.60.0 for beta-1.61-1 [INFO] extracting crate bencode 0.1.16 into /workspace/builds/worker-7/source [INFO] validating manifest of crates.io crate bencode 0.1.16 on toolchain 1.60.0 [INFO] running `Command { std: "/workspace/cargo-home/bin/cargo" "+1.60.0" "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-7/source/Cargo.toml [INFO] running `Command { std: "/workspace/cargo-home/bin/cargo" "+1.60.0" "generate-lockfile" "--manifest-path" "Cargo.toml" "-Zno-index-update", kill_on_drop: false }` [INFO] running `Command { std: "/workspace/cargo-home/bin/cargo" "+1.60.0" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] [stderr] warning: path `/workspace/builds/worker-7/source/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] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7/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:b0c94ce3c1162fcb8e57cac5b65ec2f72eabb1eebea4fcc35e269e823f681646" "/opt/rustwide/cargo-home/bin/cargo" "+1.60.0" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] e20504ded26b45fc38c0eedaf100df262f29313dba3d5215bc4c5ec2fb29ad0d [INFO] running `Command { std: "docker" "start" "-a" "e20504ded26b45fc38c0eedaf100df262f29313dba3d5215bc4c5ec2fb29ad0d", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "e20504ded26b45fc38c0eedaf100df262f29313dba3d5215bc4c5ec2fb29ad0d", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "e20504ded26b45fc38c0eedaf100df262f29313dba3d5215bc4c5ec2fb29ad0d", kill_on_drop: false }` [INFO] [stdout] e20504ded26b45fc38c0eedaf100df262f29313dba3d5215bc4c5ec2fb29ad0d [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7/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:b0c94ce3c1162fcb8e57cac5b65ec2f72eabb1eebea4fcc35e269e823f681646" "/opt/rustwide/cargo-home/bin/cargo" "+1.60.0" "build" "--frozen" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] 754b396d45e14632ec71aa3790d3d7e69843011912669560d9ec394e1901541e [INFO] running `Command { std: "docker" "start" "-a" "754b396d45e14632ec71aa3790d3d7e69843011912669560d9ec394e1901541e", kill_on_drop: false }` [INFO] [stderr] warning: path `/opt/rustwide/workdir/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 rustc-serialize v0.3.24 [INFO] [stderr] Compiling num-traits v0.2.14 [INFO] [stderr] Compiling num-traits v0.1.43 [INFO] [stderr] Compiling 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] = note: `#[warn(ellipsis_inclusive_range_patterns)]` 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 [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 [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 [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 [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 [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 [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; [INFO] [stdout] | ^^^^^^^^ help: try naming the parameter or explicitly ignoring it: `_: &Bencode` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(anonymous_parameters)]` on by default [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 [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: unused attribute [INFO] [stdout] --> src/bencode.rs:11:1 [INFO] [stdout] | [INFO] [stdout] 11 | #![crate_type = "dylib"] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ help: remove this attribute [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_attributes)]` on by default [INFO] [stdout] note: attribute also specified here [INFO] [stdout] --> src/bencode.rs:10:1 [INFO] [stdout] | [INFO] [stdout] 10 | #![crate_type = "rlib"] [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] [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] = 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 [INFO] [stdout] help: use `dyn` [INFO] [stdout] | [INFO] [stdout] 722 - writer: &'a mut (io::Write + 'a), [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: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 [INFO] [stdout] help: use `dyn` [INFO] [stdout] | [INFO] [stdout] 292 - pub fn to_writer(&self, writer: &mut io::Write) -> io::Result<()> { [INFO] [stdout] 292 + pub fn to_writer(&self, writer: &mut dyn io::Write) -> io::Result<()> { [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 [INFO] [stdout] help: use `dyn` [INFO] [stdout] | [INFO] [stdout] 731 - pub fn new(writer: &'a mut io::Write) -> Encoder<'a> { [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 [INFO] [stdout] help: use `dyn` [INFO] [stdout] | [INFO] [stdout] 742 - fn get_writer(&mut self) -> &mut io::Write { [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: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 [INFO] [stdout] help: use `dyn` [INFO] [stdout] | [INFO] [stdout] 744 - &mut self.writer as &mut io::Write [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 [INFO] [stdout] help: use `dyn` [INFO] [stdout] | [INFO] [stdout] 746 - self.writers.last_mut().unwrap() as &mut io::Write [INFO] [stdout] 746 + self.writers.last_mut().unwrap() as &mut dyn io::Write [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 44 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished dev [unoptimized + debuginfo] target(s) in 2.44s [INFO] running `Command { std: "docker" "inspect" "754b396d45e14632ec71aa3790d3d7e69843011912669560d9ec394e1901541e", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "754b396d45e14632ec71aa3790d3d7e69843011912669560d9ec394e1901541e", kill_on_drop: false }` [INFO] [stdout] 754b396d45e14632ec71aa3790d3d7e69843011912669560d9ec394e1901541e [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7/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:b0c94ce3c1162fcb8e57cac5b65ec2f72eabb1eebea4fcc35e269e823f681646" "/opt/rustwide/cargo-home/bin/cargo" "+1.60.0" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] 1789656ac2ad7a4873e927c85b5ce21ef47876235fd8809b6532c984dbd0a550 [INFO] running `Command { std: "docker" "start" "-a" "1789656ac2ad7a4873e927c85b5ce21ef47876235fd8809b6532c984dbd0a550", kill_on_drop: false }` [INFO] [stderr] warning: path `/opt/rustwide/workdir/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] [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] = note: `#[warn(ellipsis_inclusive_range_patterns)]` 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 [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 [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 [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 [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 [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 [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; [INFO] [stdout] | ^^^^^^^^ help: try naming the parameter or explicitly ignoring it: `_: &Bencode` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(anonymous_parameters)]` on by default [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 [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: unused attribute [INFO] [stdout] --> src/bencode.rs:11:1 [INFO] [stdout] | [INFO] [stdout] 11 | #![crate_type = "dylib"] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ help: remove this attribute [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_attributes)]` on by default [INFO] [stdout] note: attribute also specified here [INFO] [stdout] --> src/bencode.rs:10:1 [INFO] [stdout] | [INFO] [stdout] 10 | #![crate_type = "rlib"] [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] [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] = 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 [INFO] [stdout] help: use `dyn` [INFO] [stdout] | [INFO] [stdout] 722 - writer: &'a mut (io::Write + 'a), [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: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 [INFO] [stdout] help: use `dyn` [INFO] [stdout] | [INFO] [stdout] 292 - pub fn to_writer(&self, writer: &mut io::Write) -> io::Result<()> { [INFO] [stdout] 292 + pub fn to_writer(&self, writer: &mut dyn io::Write) -> io::Result<()> { [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 [INFO] [stdout] help: use `dyn` [INFO] [stdout] | [INFO] [stdout] 731 - pub fn new(writer: &'a mut io::Write) -> Encoder<'a> { [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 [INFO] [stdout] help: use `dyn` [INFO] [stdout] | [INFO] [stdout] 742 - fn get_writer(&mut self) -> &mut io::Write { [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: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 [INFO] [stdout] help: use `dyn` [INFO] [stdout] | [INFO] [stdout] 744 - &mut self.writer as &mut io::Write [INFO] [stdout] 744 + &mut self.writer as &mut dyn io::Write [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Compiling bencode v0.1.16 (/opt/rustwide/workdir) [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 [INFO] [stdout] help: use `dyn` [INFO] [stdout] | [INFO] [stdout] 746 - self.writers.last_mut().unwrap() as &mut io::Write [INFO] [stdout] 746 + self.writers.last_mut().unwrap() as &mut dyn io::Write [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 44 warnings emitted [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] = note: `#[warn(ellipsis_inclusive_range_patterns)]` 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 [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 [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 [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 [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 [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 [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 [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; [INFO] [stdout] | ^^^^^^^^ help: try naming the parameter or explicitly ignoring it: `_: &Bencode` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(anonymous_parameters)]` on by default [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 [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: 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] 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] 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] 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] 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] 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] 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] 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] 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] 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] 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: unused attribute [INFO] [stdout] --> src/bencode.rs:11:1 [INFO] [stdout] | [INFO] [stdout] 11 | #![crate_type = "dylib"] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ help: remove this attribute [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_attributes)]` on by default [INFO] [stdout] note: attribute also specified here [INFO] [stdout] --> src/bencode.rs:10:1 [INFO] [stdout] | [INFO] [stdout] 10 | #![crate_type = "rlib"] [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] [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] = 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 [INFO] [stdout] help: use `dyn` [INFO] [stdout] | [INFO] [stdout] 722 - writer: &'a mut (io::Write + 'a), [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: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 [INFO] [stdout] help: use `dyn` [INFO] [stdout] | [INFO] [stdout] 292 - pub fn to_writer(&self, writer: &mut io::Write) -> io::Result<()> { [INFO] [stdout] 292 + pub fn to_writer(&self, writer: &mut dyn io::Write) -> io::Result<()> { [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 [INFO] [stdout] help: use `dyn` [INFO] [stdout] | [INFO] [stdout] 731 - pub fn new(writer: &'a mut io::Write) -> Encoder<'a> { [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 [INFO] [stdout] help: use `dyn` [INFO] [stdout] | [INFO] [stdout] 742 - fn get_writer(&mut self) -> &mut io::Write { [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: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 [INFO] [stdout] help: use `dyn` [INFO] [stdout] | [INFO] [stdout] 744 - &mut self.writer as &mut io::Write [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 [INFO] [stdout] help: use `dyn` [INFO] [stdout] | [INFO] [stdout] 746 - self.writers.last_mut().unwrap() as &mut io::Write [INFO] [stdout] 746 + self.writers.last_mut().unwrap() as &mut dyn io::Write [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 56 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished test [unoptimized + debuginfo] target(s) in 3.18s [INFO] running `Command { std: "docker" "inspect" "1789656ac2ad7a4873e927c85b5ce21ef47876235fd8809b6532c984dbd0a550", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "1789656ac2ad7a4873e927c85b5ce21ef47876235fd8809b6532c984dbd0a550", kill_on_drop: false }` [INFO] [stdout] 1789656ac2ad7a4873e927c85b5ce21ef47876235fd8809b6532c984dbd0a550 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7/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:b0c94ce3c1162fcb8e57cac5b65ec2f72eabb1eebea4fcc35e269e823f681646" "/opt/rustwide/cargo-home/bin/cargo" "+1.60.0" "test" "--frozen", kill_on_drop: false }` [INFO] [stdout] a4e81d6c5dd131348d5cf01475349285a6b4691ba4d7008f069d260b20949909 [INFO] running `Command { std: "docker" "start" "-a" "a4e81d6c5dd131348d5cf01475349285a6b4691ba4d7008f069d260b20949909", kill_on_drop: false }` [INFO] [stderr] warning: path `/opt/rustwide/workdir/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] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stderr] --> src/streaming.rs:116:19 [INFO] [stderr] | [INFO] [stderr] 116 | let num = try!(self.parse_number_digits(sign)); [INFO] [stderr] | ^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(deprecated)]` on by default [INFO] [stderr] [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> src/streaming.rs:126:22 [INFO] [stderr] | [INFO] [stderr] 126 | Some('1' ... '9') => { [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(ellipsis_inclusive_range_patterns)]` 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 [INFO] [stderr] [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> src/streaming.rs:129:39 [INFO] [stderr] | [INFO] [stderr] 129 | Some(ch @ '0' ... '9') => self.parse_digit(ch, sign, &mut num), [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [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 [INFO] [stderr] [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> src/streaming.rs:144:22 [INFO] [stderr] | [INFO] [stderr] 144 | Some('0' ... '9') => { [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [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 [INFO] [stderr] [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> src/streaming.rs:147:39 [INFO] [stderr] | [INFO] [stderr] 147 | Some(ch @ '0' ... '9') => self.parse_digit(ch, sign, &mut num), [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [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 [INFO] [stderr] [INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stderr] --> src/streaming.rs:165:19 [INFO] [stderr] | [INFO] [stderr] 165 | let len = try!(self.parse_length_digits(1)); [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stderr] --> src/streaming.rs:167:21 [INFO] [stderr] | [INFO] [stderr] 167 | let bytes = try!(self.next_bytes(len as usize)); [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> src/streaming.rs:187:22 [INFO] [stderr] | [INFO] [stderr] 187 | Some('0' ... '9') => { [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [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 [INFO] [stderr] [INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stderr] --> src/streaming.rs:189:27 [INFO] [stderr] | [INFO] [stderr] 189 | let res = try!(self.parse_bytestring()); [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stderr] --> src/streaming.rs:204:27 [INFO] [stderr] | [INFO] [stderr] 204 | let res = try!(self.parse_number()); [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> src/streaming.rs:207:22 [INFO] [stderr] | [INFO] [stderr] 207 | Some('0' ... '9') => { [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [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 [INFO] [stderr] [INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stderr] --> src/streaming.rs:210:27 [INFO] [stderr] | [INFO] [stderr] 210 | let res = try!(self.parse_bytestring()); [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stderr] --> src/bencode.rs:260:13 [INFO] [stderr] | [INFO] [stderr] 260 | try!(write!(fmt, "[")); [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stderr] --> src/bencode.rs:268:17 [INFO] [stderr] | [INFO] [stderr] 268 | try!(write!(fmt, "{}", *value)); [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stderr] --> src/bencode.rs:266:21 [INFO] [stderr] | [INFO] [stderr] 266 | try!(write!(fmt, ", ")); [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stderr] --> src/bencode.rs:273:13 [INFO] [stderr] | [INFO] [stderr] 273 | try!(write!(fmt, "{{")); [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stderr] --> src/bencode.rs:281:17 [INFO] [stderr] | [INFO] [stderr] 281 | try!(write!(fmt, "{}: {}", *key, *value)); [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stderr] --> src/bencode.rs:279:21 [INFO] [stderr] | [INFO] [stderr] 279 | try!(write!(fmt, ", ")); [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: anonymous parameters are deprecated and will be removed in the next edition [INFO] [stderr] --> src/bencode.rs:325:21 [INFO] [stderr] | [INFO] [stderr] 325 | fn from_bencode(&Bencode) -> Result; [INFO] [stderr] | ^^^^^^^^ help: try naming the parameter or explicitly ignoring it: `_: &Bencode` [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(anonymous_parameters)]` on by default [INFO] [stderr] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2018! [INFO] [stderr] = note: for more information, see issue #41686 [INFO] [stderr] [INFO] [stderr] warning: unused macro definition: `tryenc` [INFO] [stderr] --> src/bencode.rs:710:14 [INFO] [stderr] | [INFO] [stderr] 710 | macro_rules! tryenc(($e:expr) => ( [INFO] [stderr] | ^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_macros)]` on by default [INFO] [stderr] [INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stderr] --> src/bencode.rs:751:9 [INFO] [stderr] | [INFO] [stderr] 751 | try!(write!(self.get_writer(), "d")); [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stderr] --> src/bencode.rs:753:13 [INFO] [stderr] | [INFO] [stderr] 753 | try!(key.encode(self)); [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stderr] --> src/bencode.rs:754:13 [INFO] [stderr] | [INFO] [stderr] 754 | try!(self.get_writer().write_all(value)); [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stderr] --> src/bencode.rs:764:13 [INFO] [stderr] | [INFO] [stderr] 764 | try!(write!(self.get_writer(), "{}:", v.len())); [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stderr] --> src/bencode.rs:860:9 [INFO] [stderr] | [INFO] [stderr] 860 | try!(f(self)); [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stderr] --> src/bencode.rs:862:9 [INFO] [stderr] | [INFO] [stderr] 862 | try!(self.encode_dict(&dict)); [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stderr] --> src/bencode.rs:870:9 [INFO] [stderr] | [INFO] [stderr] 870 | try!(f(self)); [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stderr] --> src/bencode.rs:912:9 [INFO] [stderr] | [INFO] [stderr] 912 | try!(write!(self.get_writer(), "l")); [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stderr] --> src/bencode.rs:913:9 [INFO] [stderr] | [INFO] [stderr] 913 | try!(f(self)); [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stderr] --> src/bencode.rs:920:9 [INFO] [stderr] | [INFO] [stderr] 920 | try!(f(self)); [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stderr] --> src/bencode.rs:928:9 [INFO] [stderr] | [INFO] [stderr] 928 | try!(f(self)); [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stderr] --> src/bencode.rs:930:9 [INFO] [stderr] | [INFO] [stderr] 930 | try!(self.encode_dict(&dict)); [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stderr] --> src/bencode.rs:939:9 [INFO] [stderr] | [INFO] [stderr] 939 | try!(f(self)); [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stderr] --> src/bencode.rs:947:9 [INFO] [stderr] | [INFO] [stderr] 947 | try!(f(self)); [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stderr] --> src/bencode.rs:1035:25 [INFO] [stderr] | [INFO] [stderr] 1035 | let value = try!(self.parse_elem(current)); [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stderr] --> src/bencode.rs:1211:19 [INFO] [stderr] | [INFO] [stderr] 1211 | let res = try!(f(self)); [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stderr] --> src/bencode.rs:1309:19 [INFO] [stderr] | [INFO] [stderr] 1309 | let res = try!(f(self)); [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: unused attribute [INFO] [stderr] --> src/bencode.rs:11:1 [INFO] [stderr] | [INFO] [stderr] 11 | #![crate_type = "dylib"] [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^ help: remove this attribute [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_attributes)]` on by default [INFO] [stderr] note: attribute also specified here [INFO] [stderr] --> src/bencode.rs:10:1 [INFO] [stderr] | [INFO] [stderr] 10 | #![crate_type = "rlib"] [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release! [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/bencode.rs:722:22 [INFO] [stderr] | [INFO] [stderr] 722 | writer: &'a mut (io::Write + 'a), [INFO] [stderr] | ^^^^^^^^^^^^^^ [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 [INFO] [stderr] help: use `dyn` [INFO] [stderr] | [INFO] [stderr] 722 - writer: &'a mut (io::Write + 'a), [INFO] [stderr] 722 + writer: &'a mut (dyn io::Write + 'a), [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/bencode.rs:292:42 [INFO] [stderr] | [INFO] [stderr] 292 | pub fn to_writer(&self, writer: &mut io::Write) -> io::Result<()> { [INFO] [stderr] | ^^^^^^^^^ [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 [INFO] [stderr] help: use `dyn` [INFO] [stderr] | [INFO] [stderr] 292 - pub fn to_writer(&self, writer: &mut io::Write) -> io::Result<()> { [INFO] [stderr] 292 + pub fn to_writer(&self, writer: &mut dyn io::Write) -> io::Result<()> { [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/bencode.rs:731:32 [INFO] [stderr] | [INFO] [stderr] 731 | pub fn new(writer: &'a mut io::Write) -> Encoder<'a> { [INFO] [stderr] | ^^^^^^^^^ [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 [INFO] [stderr] help: use `dyn` [INFO] [stderr] | [INFO] [stderr] 731 - pub fn new(writer: &'a mut io::Write) -> Encoder<'a> { [INFO] [stderr] 731 + pub fn new(writer: &'a mut dyn io::Write) -> Encoder<'a> { [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/bencode.rs:742:38 [INFO] [stderr] | [INFO] [stderr] 742 | fn get_writer(&mut self) -> &mut io::Write { [INFO] [stderr] | ^^^^^^^^^ [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 [INFO] [stderr] help: use `dyn` [INFO] [stderr] | [INFO] [stderr] 742 - fn get_writer(&mut self) -> &mut io::Write { [INFO] [stderr] 742 + fn get_writer(&mut self) -> &mut dyn io::Write { [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/bencode.rs:744:38 [INFO] [stderr] | [INFO] [stderr] 744 | &mut self.writer as &mut io::Write [INFO] [stderr] | ^^^^^^^^^ [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 [INFO] [stderr] help: use `dyn` [INFO] [stderr] | [INFO] [stderr] 744 - &mut self.writer as &mut io::Write [INFO] [stderr] 744 + &mut self.writer as &mut dyn io::Write [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/bencode.rs:746:54 [INFO] [stderr] | [INFO] [stderr] 746 | self.writers.last_mut().unwrap() as &mut io::Write [INFO] [stderr] | ^^^^^^^^^ [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 [INFO] [stderr] help: use `dyn` [INFO] [stderr] | [INFO] [stderr] 746 - self.writers.last_mut().unwrap() as &mut io::Write [INFO] [stderr] 746 + self.writers.last_mut().unwrap() as &mut dyn io::Write [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> src/streaming.rs:300:27 [INFO] [stderr] | [INFO] [stderr] 300 | 'i' | '0' ... '9' | 'l' | 'd' | 'e' => continue, [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [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 [INFO] [stderr] [INFO] [stderr] warning: use of deprecated macro `RustcEncodable`: rustc-serialize is deprecated and no longer supported [INFO] [stderr] --> src/bencode.rs:1700:36 [INFO] [stderr] | [INFO] [stderr] 1700 | #[derive(Eq, PartialEq, Debug, RustcEncodable, RustcDecodable)] [INFO] [stderr] | ^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated macro `RustcDecodable`: rustc-serialize is deprecated and no longer supported [INFO] [stderr] --> src/bencode.rs:1700:52 [INFO] [stderr] | [INFO] [stderr] 1700 | #[derive(Eq, PartialEq, Debug, RustcEncodable, RustcDecodable)] [INFO] [stderr] | ^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated macro `RustcEncodable`: rustc-serialize is deprecated and no longer supported [INFO] [stderr] --> src/bencode.rs:1706:36 [INFO] [stderr] | [INFO] [stderr] 1706 | #[derive(Eq, PartialEq, Debug, RustcEncodable, RustcDecodable)] [INFO] [stderr] | ^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated macro `RustcDecodable`: rustc-serialize is deprecated and no longer supported [INFO] [stderr] --> src/bencode.rs:1706:52 [INFO] [stderr] | [INFO] [stderr] 1706 | #[derive(Eq, PartialEq, Debug, RustcEncodable, RustcDecodable)] [INFO] [stderr] | ^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated macro `RustcEncodable`: rustc-serialize is deprecated and no longer supported [INFO] [stderr] --> src/bencode.rs:1713:36 [INFO] [stderr] | [INFO] [stderr] 1713 | #[derive(Eq, PartialEq, Debug, RustcEncodable, RustcDecodable)] [INFO] [stderr] | ^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated macro `RustcDecodable`: rustc-serialize is deprecated and no longer supported [INFO] [stderr] --> src/bencode.rs:1713:52 [INFO] [stderr] | [INFO] [stderr] 1713 | #[derive(Eq, PartialEq, Debug, RustcEncodable, RustcDecodable)] [INFO] [stderr] | ^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated macro `RustcEncodable`: rustc-serialize is deprecated and no longer supported [INFO] [stderr] --> src/bencode.rs:1813:14 [INFO] [stderr] | [INFO] [stderr] 1813 | #[derive(RustcEncodable, RustcDecodable, Eq, PartialEq, Debug, Clone)] [INFO] [stderr] | ^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated macro `RustcDecodable`: rustc-serialize is deprecated and no longer supported [INFO] [stderr] --> src/bencode.rs:1813:30 [INFO] [stderr] | [INFO] [stderr] 1813 | #[derive(RustcEncodable, RustcDecodable, Eq, PartialEq, Debug, Clone)] [INFO] [stderr] | ^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated macro `RustcEncodable`: rustc-serialize is deprecated and no longer supported [INFO] [stderr] --> src/bencode.rs:1820:14 [INFO] [stderr] | [INFO] [stderr] 1820 | #[derive(RustcEncodable, RustcDecodable, Eq, PartialEq, Debug)] [INFO] [stderr] | ^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated macro `RustcDecodable`: rustc-serialize is deprecated and no longer supported [INFO] [stderr] --> src/bencode.rs:1820:30 [INFO] [stderr] | [INFO] [stderr] 1820 | #[derive(RustcEncodable, RustcDecodable, Eq, PartialEq, Debug)] [INFO] [stderr] | ^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated macro `RustcEncodable`: rustc-serialize is deprecated and no longer supported [INFO] [stderr] --> src/bencode.rs:1797:18 [INFO] [stderr] | [INFO] [stderr] 1797 | #[derive(RustcEncodable)] [INFO] [stderr] | ^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: `bencode` (lib) generated 44 warnings [INFO] [stderr] warning: `bencode` (lib test) generated 56 warnings (44 duplicates) [INFO] [stderr] Finished test [unoptimized + debuginfo] target(s) in 0.01s [INFO] [stderr] Running unittests (/opt/rustwide/target/debug/deps/bencode-ecb29db3fadef40e) [INFO] [stdout] [INFO] [stdout] running 204 tests [INFO] [stdout] test streaming::test::parse_empty_list ... ok [INFO] [stdout] test streaming::test::parse_error_on_empty_number ... ok [INFO] [stdout] test streaming::test::parse_error_on_malformed_bytestring ... ok [INFO] [stdout] test streaming::test::parse_error_on_more_than_one_value_outside_of_containers ... ok [INFO] [stdout] test streaming::test::parse_error_on_number_without_ending ... ok [INFO] [stdout] test streaming::test::parse_error_on_key_of_wrong_type ... ok [INFO] [stdout] test streaming::test::parse_error_on_too_short_data ... ok [INFO] [stdout] test streaming::test::parse_error_on_unmatched_value_ending ... ok [INFO] [stdout] test streaming::test::parse_error_on_number_with_leading_zero ... ok [INFO] [stdout] test streaming::test::parses_dict_with_bytestring_value ... ok [INFO] [stdout] test streaming::test::parses_dict_with_list_value ... ok [INFO] [stdout] test streaming::test::parses_empty_bytestring ... ok [INFO] [stdout] test streaming::test::parse_error_on_invalid_first_character ... ok [INFO] [stdout] test streaming::test::parses_dict_with_number_value ... ok [INFO] [stdout] test streaming::test::parses_empty_dict ... ok [INFO] [stdout] test streaming::test::parses_empty_input ... ok [INFO] [stdout] test streaming::test::parses_list_with_bytestring ... ok [INFO] [stdout] test streaming::test::parses_list_with_mixed_elements ... ok [INFO] [stdout] test streaming::test::parses_list_with_number ... ok [INFO] [stdout] test streaming::test::parses_long_bytestring ... ok [INFO] [stdout] test streaming::test::parses_negative_numbers ... ok [INFO] [stdout] test streaming::test::parses_nested_dicts ... ok [INFO] [stdout] test streaming::test::parses_number_zero ... ok [INFO] [stdout] test streaming::test::parses_nested_lists ... ok [INFO] [stdout] test streaming::test::parses_positive_numbers ... ok [INFO] [stdout] test streaming::test::parses_short_bytestring ... ok [INFO] [stdout] test streaming::test::parses_short_bytestring_length_pad ... ok [INFO] [stdout] test tests::bencode_nested_hashmap ... ok [INFO] [stdout] test tests::bencode_hashmap ... ok [INFO] [stdout] test tests::decode_error_on_wrong_map_key_type ... ok [INFO] [stdout] test tests::decode_error_on_parse_error ... ok [INFO] [stdout] test tests::decodes_bytestring ... ok [INFO] [stdout] test tests::decodes_dict_with_value ... ok [INFO] [stdout] test tests::decodes_dict_with_values ... ok [INFO] [stdout] test tests::decodes_empty_input ... ok [INFO] [stdout] test tests::decodes_empty_list ... ok [INFO] [stdout] test tests::decodes_empty_dict ... ok [INFO] [stdout] test tests::decodes_nested_dict ... ok [INFO] [stdout] test tests::decodes_list_with_elements ... ok [INFO] [stdout] test tests::decodes_nested_list ... ok [INFO] [stdout] test tests::decodes_number ... ok [INFO] [stdout] test tests::encode_empty_str ... ok [INFO] [stdout] test tests::encode_error_on_wrong_map_key_type ... ok [INFO] [stdout] test tests::encode_str ... ok [INFO] [stdout] test tests::encode_str_with_multibyte_chars ... ok [INFO] [stdout] test tests::encodes_bool ... ok [INFO] [stdout] test tests::encodes_control_char ... ok [INFO] [stdout] test tests::encodes_dict_fields_in_sorted_order ... ok [INFO] [stdout] test tests::encodes_dict_with_items ... ok [INFO] [stdout] test tests::encodes_empty_dict ... ok [INFO] [stdout] test tests::encodes_empty_bytestring ... ok [INFO] [stdout] test tests::encodes_empty_list ... ok [INFO] [stdout] test tests::encodes_empty_vec ... ok [INFO] [stdout] test tests::encodes_hashmap ... ok [INFO] [stdout] test tests::encodes_lower_letter_char ... ok [INFO] [stdout] test tests::encodes_negative_f32 ... ok [INFO] [stdout] test tests::encodes_multibyte_char ... ok [INFO] [stdout] test tests::encodes_negative_f64 ... ok [INFO] [stdout] test tests::encodes_negative_i16 ... ok [INFO] [stdout] test tests::encodes_negative_i32 ... ok [INFO] [stdout] test tests::encodes_negative_i64 ... ok [INFO] [stdout] test tests::encodes_negative_i8 ... ok [INFO] [stdout] test tests::encodes_negative_isize ... ok [INFO] [stdout] test tests::encodes_nested_dict ... ok [INFO] [stdout] test tests::encodes_nested_list ... ok [INFO] [stdout] test tests::encodes_nested_option ... ok [INFO] [stdout] test tests::encodes_nested_hashmap ... ok [INFO] [stdout] test tests::encodes_nested_struct ... ok [INFO] [stdout] test tests::encodes_nested_struct_fields ... ok [INFO] [stdout] test tests::encodes_nested_vec ... ok [INFO] [stdout] test tests::encodes_nonempty_bytestring ... ok [INFO] [stdout] test tests::encodes_nonempty_list ... ok [INFO] [stdout] test tests::encodes_nonmpty_vec ... ok [INFO] [stdout] test tests::encodes_option_none ... ok [INFO] [stdout] test tests::encodes_option_some ... ok [INFO] [stdout] test tests::encodes_positive_f64 ... ok [INFO] [stdout] test tests::encodes_positive_f32 ... ok [INFO] [stdout] test tests::encodes_positive_i16 ... ok [INFO] [stdout] test tests::encodes_positive_i32 ... ok [INFO] [stdout] test tests::encodes_positive_i64 ... ok [INFO] [stdout] test tests::encodes_positive_i8 ... ok [INFO] [stdout] test tests::encodes_positive_u16 ... ok [INFO] [stdout] test tests::encodes_positive_isize ... ok [INFO] [stdout] test tests::encodes_positive_u32 ... ok [INFO] [stdout] test tests::encodes_positive_u64 ... ok [INFO] [stdout] test tests::encodes_positive_u8 ... ok [INFO] [stdout] test tests::encodes_positive_usize ... ok [INFO] [stdout] test tests::encodes_struct ... ok [INFO] [stdout] test tests::encodes_struct_fields_in_sorted_order ... ok [INFO] [stdout] test tests::encodes_unit ... ok [INFO] [stdout] test tests::encodes_upper_letter_char ... ok [INFO] [stdout] test tests::encodes_zero_f32 ... ok [INFO] [stdout] test tests::encodes_zero_f64 ... ok [INFO] [stdout] test tests::encodes_zero_i16 ... ok [INFO] [stdout] test tests::encodes_zero_i32 ... ok [INFO] [stdout] test tests::encodes_zero_i64 ... ok [INFO] [stdout] test tests::encodes_zero_i8 ... ok [INFO] [stdout] test tests::encodes_zero_isize ... ok [INFO] [stdout] test tests::encodes_zero_u16 ... ok [INFO] [stdout] test tests::encodes_zero_u32 ... ok [INFO] [stdout] test tests::encodes_zero_u64 ... ok [INFO] [stdout] test tests::encodes_zero_u8 ... ok [INFO] [stdout] test tests::identity_bool ... ok [INFO] [stdout] test tests::identity_control_char ... ok [INFO] [stdout] test tests::encodes_zero_usize ... ok [INFO] [stdout] test tests::identity_empty_vec ... ok [INFO] [stdout] test tests::identity_empty_str ... ok [INFO] [stdout] test tests::identity_hashmap ... ok [INFO] [stdout] test tests::identity_negative_i16 ... ok [INFO] [stdout] test tests::identity_multibyte_char ... ok [INFO] [stdout] test tests::identity_negative_f32 ... ok [INFO] [stdout] test tests::identity_negative_i32 ... ok [INFO] [stdout] test tests::identity_negative_i8 ... ok [INFO] [stdout] test tests::identity_negative_i64 ... ok [INFO] [stdout] test tests::identity_lower_letter_char ... ok [INFO] [stdout] test tests::identity_nested_option ... ok [INFO] [stdout] test tests::identity_nested_hashmap ... ok [INFO] [stdout] test tests::identity_negative_f64 ... ok [INFO] [stdout] test tests::identity_nested_struct ... ok [INFO] [stdout] test tests::identity_option_none ... ok [INFO] [stdout] test tests::identity_nonmpty_vec ... ok [INFO] [stdout] test tests::identity_option_some ... ok [INFO] [stdout] test tests::identity_positive_f64 ... ok [INFO] [stdout] test tests::identity_positive_f32 ... ok [INFO] [stdout] test tests::identity_negative_isize ... ok [INFO] [stdout] test tests::identity_positive_i16 ... ok [INFO] [stdout] test tests::identity_nested_vec ... ok [INFO] [stdout] test tests::identity_nested_struct_field ... ok [INFO] [stdout] test tests::identity_positive_isize ... ok [INFO] [stdout] test tests::identity_positive_i32 ... ok [INFO] [stdout] test tests::identity_positive_u16 ... ok [INFO] [stdout] test tests::identity_positive_i64 ... ok [INFO] [stdout] test tests::identity_positive_u32 ... ok [INFO] [stdout] test tests::identity_positive_u64 ... ok [INFO] [stdout] test tests::identity_positive_u8 ... ok [INFO] [stdout] test tests::identity_struct ... ok [INFO] [stdout] test tests::identity_unit ... ok [INFO] [stdout] test tests::identity_upper_letter_char ... ok [INFO] [stdout] test tests::identity_positive_usize ... ok [INFO] [stdout] test tests::identity_zero_f32 ... ok [INFO] [stdout] test tests::identity_positive_i8 ... ok [INFO] [stdout] test tests::identity_zero_f64 ... ok [INFO] [stdout] test tests::identity_str ... ok [INFO] [stdout] test tests::identity_zero_i64 ... ok [INFO] [stdout] test tests::identity_zero_i16 ... ok [INFO] [stdout] test tests::identity_zero_u16 ... ok [INFO] [stdout] test tests::identity_zero_i32 ... ok [INFO] [stdout] test tests::identity_zero_u32 ... ok [INFO] [stdout] test tests::identity_zero_u64 ... ok [INFO] [stdout] test tests::identity_zero_u8 ... ok [INFO] [stdout] test tests::identity_zero_i8 ... ok [INFO] [stdout] test tests::identity_str_with_multibyte_chars ... ok [INFO] [stdout] test tests::identity_zero_isize ... ok [INFO] [stdout] test tests::struct_option_none_fields_are_not_encoded ... ok [INFO] [stdout] test tests::identity_zero_usize ... ok [INFO] [stdout] test tests::tobencode_bool ... ok [INFO] [stdout] test tests::struct_options_not_present_default_to_none ... ok [INFO] [stdout] test tests::tobencode_control_char ... ok [INFO] [stdout] test tests::tobencode_empty_str ... ok [INFO] [stdout] test tests::tobencode_empty_vec ... ok [INFO] [stdout] test tests::tobencode_lower_letter_char ... ok [INFO] [stdout] test tests::tobencode_multibyte_char ... ok [INFO] [stdout] test tests::tobencode_negative_f32 ... ok [INFO] [stdout] test tests::tobencode_negative_f64 ... ok [INFO] [stdout] test tests::tobencode_negative_i16 ... ok [INFO] [stdout] test tests::tobencode_negative_i32 ... ok [INFO] [stdout] test tests::tobencode_negative_i64 ... ok [INFO] [stdout] test tests::tobencode_negative_i8 ... ok [INFO] [stdout] test tests::tobencode_negative_isize ... ok [INFO] [stdout] test tests::tobencode_nested_option ... ok [INFO] [stdout] test tests::tobencode_positive_f32 ... ok [INFO] [stdout] test tests::option_is_none_if_any_nested_option_is_none ... ok [INFO] [stdout] test tests::tobencode_positive_f64 ... ok [INFO] [stdout] test tests::tobencode_nonmpty_vec ... ok [INFO] [stdout] test tests::tobencode_option_none ... ok [INFO] [stdout] test tests::tobencode_positive_i16 ... ok [INFO] [stdout] test tests::tobencode_option_some ... ok [INFO] [stdout] test tests::tobencode_nested_vec ... ok [INFO] [stdout] test tests::tobencode_positive_i8 ... ok [INFO] [stdout] test tests::tobencode_positive_u16 ... ok [INFO] [stdout] test tests::tobencode_positive_i64 ... ok [INFO] [stdout] test tests::tobencode_positive_i32 ... ok [INFO] [stdout] test tests::tobencode_positive_u32 ... ok [INFO] [stdout] test tests::tobencode_positive_isize ... ok [INFO] [stdout] test tests::tobencode_positive_u64 ... ok [INFO] [stdout] test tests::tobencode_positive_u8 ... ok [INFO] [stdout] test tests::tobencode_positive_usize ... ok [INFO] [stdout] test tests::tobencode_str ... ok [INFO] [stdout] test tests::tobencode_str_with_multibyte_chars ... ok [INFO] [stdout] test tests::tobencode_upper_letter_char ... ok [INFO] [stdout] test tests::tobencode_unit ... ok [INFO] [stdout] test tests::tobencode_zero_f32 ... ok [INFO] [stdout] test tests::tobencode_zero_f64 ... ok [INFO] [stdout] test tests::tobencode_zero_i16 ... ok [INFO] [stdout] test tests::tobencode_zero_i32 ... ok [INFO] [stdout] test tests::tobencode_zero_i64 ... ok [INFO] [stdout] test tests::tobencode_zero_i8 ... ok [INFO] [stdout] test tests::tobencode_zero_isize ... ok [INFO] [stdout] test tests::tobencode_zero_u16 ... ok [INFO] [stdout] test tests::tobencode_zero_u32 ... ok [INFO] [stdout] test tests::tobencode_zero_u64 ... ok [INFO] [stdout] test tests::tobencode_zero_u8 ... ok [INFO] [stdout] test tests::tobencode_zero_usize ... ok [INFO] [stdout] test util::test::test_encoding_bytestring_with_invalid_utf8 ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 204 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.01s [INFO] [stdout] [INFO] [stderr] Doc-tests bencode [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> /opt/rustwide/workdir/src/streaming.rs:126:22 [INFO] [stderr] | [INFO] [stderr] 126 | Some('1' ... '9') => { [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(ellipsis_inclusive_range_patterns)]` 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 [INFO] [stderr] [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> /opt/rustwide/workdir/src/streaming.rs:129:39 [INFO] [stderr] | [INFO] [stderr] 129 | Some(ch @ '0' ... '9') => self.parse_digit(ch, sign, &mut num), [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [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 [INFO] [stderr] [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> /opt/rustwide/workdir/src/streaming.rs:144:22 [INFO] [stderr] | [INFO] [stderr] 144 | Some('0' ... '9') => { [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [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 [INFO] [stderr] [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> /opt/rustwide/workdir/src/streaming.rs:147:39 [INFO] [stderr] | [INFO] [stderr] 147 | Some(ch @ '0' ... '9') => self.parse_digit(ch, sign, &mut num), [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [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 [INFO] [stderr] [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> /opt/rustwide/workdir/src/streaming.rs:187:22 [INFO] [stderr] | [INFO] [stderr] 187 | Some('0' ... '9') => { [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [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 [INFO] [stderr] [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> /opt/rustwide/workdir/src/streaming.rs:207:22 [INFO] [stderr] | [INFO] [stderr] 207 | Some('0' ... '9') => { [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [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 [INFO] [stderr] [INFO] [stderr] warning: 6 warnings emitted [INFO] [stderr] [INFO] [stdout] [INFO] [stdout] running 5 tests [INFO] [stdout] test src/bencode.rs - (line 105) ... ok [INFO] [stdout] test src/bencode.rs - (line 41) ... ok [INFO] [stdout] test src/bencode.rs - (line 19) ... ok [INFO] [stdout] test src/bencode.rs - (line 164) ... ok [INFO] [stdout] test src/bencode.rs - (line 77) ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 5 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.33s [INFO] [stdout] [INFO] running `Command { std: "docker" "inspect" "a4e81d6c5dd131348d5cf01475349285a6b4691ba4d7008f069d260b20949909", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "a4e81d6c5dd131348d5cf01475349285a6b4691ba4d7008f069d260b20949909", kill_on_drop: false }` [INFO] [stdout] a4e81d6c5dd131348d5cf01475349285a6b4691ba4d7008f069d260b20949909