[INFO] fetching crate bip_bencode 0.4.4... [INFO] testing bip_bencode-0.4.4 against beta-2021-09-08 for beta-1.56-1 [INFO] extracting crate bip_bencode 0.4.4 into /workspace/builds/worker-8/source [INFO] validating manifest of crates.io crate bip_bencode 0.4.4 on toolchain beta-2021-09-08 [INFO] running `Command { std: "/workspace/cargo-home/bin/cargo" "+beta-2021-09-08" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] started tweaking crates.io crate bip_bencode 0.4.4 [INFO] removed 0 missing tests [INFO] finished tweaking crates.io crate bip_bencode 0.4.4 [INFO] tweaked toml for crates.io crate bip_bencode 0.4.4 written to /workspace/builds/worker-8/source/Cargo.toml [INFO] running `Command { std: "/workspace/cargo-home/bin/cargo" "+beta-2021-09-08" "generate-lockfile" "--manifest-path" "Cargo.toml" "-Zno-index-update", kill_on_drop: false }` [INFO] running `Command { std: "/workspace/cargo-home/bin/cargo" "+beta-2021-09-08" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] [stderr] warning: `panic` setting is ignored for `bench` profile [INFO] [stderr] Blocking waiting for file lock on package cache [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-8/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-8/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:a89201d6b5b9fd45c15d5952ece0a0129e7e80cb26ec023fd59cf09bc26f1604" "/opt/rustwide/cargo-home/bin/cargo" "+beta-2021-09-08" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] e9f924a10b482d62e2d8e306edcccac28991a5c06aec6a7a20b71e6ec5276b41 [INFO] running `Command { std: "docker" "start" "-a" "e9f924a10b482d62e2d8e306edcccac28991a5c06aec6a7a20b71e6ec5276b41", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "e9f924a10b482d62e2d8e306edcccac28991a5c06aec6a7a20b71e6ec5276b41", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "e9f924a10b482d62e2d8e306edcccac28991a5c06aec6a7a20b71e6ec5276b41", kill_on_drop: false }` [INFO] [stdout] e9f924a10b482d62e2d8e306edcccac28991a5c06aec6a7a20b71e6ec5276b41 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-8/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-8/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:a89201d6b5b9fd45c15d5952ece0a0129e7e80cb26ec023fd59cf09bc26f1604" "/opt/rustwide/cargo-home/bin/cargo" "+beta-2021-09-08" "build" "--frozen" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] d056c5b5797bb77b4edbf2e10bb6d87f07a8ace0017bd7f237cd1303864add68 [INFO] running `Command { std: "docker" "start" "-a" "d056c5b5797bb77b4edbf2e10bb6d87f07a8ace0017bd7f237cd1303864add68", kill_on_drop: false }` [INFO] [stderr] warning: `panic` setting is ignored for `bench` profile [INFO] [stderr] Compiling memchr v2.4.1 [INFO] [stderr] Compiling addr2line v0.16.0 [INFO] [stderr] Compiling object v0.26.2 [INFO] [stderr] Compiling backtrace v0.3.61 [INFO] [stderr] Compiling error-chain v0.11.0 [INFO] [stderr] Compiling bip_bencode v0.4.4 (/opt/rustwide/workdir) [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/access/bencode.rs:11:14 [INFO] [stdout] | [INFO] [stdout] 11 | List(&'a BListAccess), [INFO] [stdout] | ^^^^^^^^^^^^^^ help: use `dyn`: `dyn BListAccess` [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] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/access/bencode.rs:13:14 [INFO] [stdout] | [INFO] [stdout] 13 | Dict(&'a BDictAccess), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn BDictAccess` [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: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/access/bencode.rs:34:31 [INFO] [stdout] | [INFO] [stdout] 34 | fn list(&self) -> Option<&BListAccess>; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn BListAccess` [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: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/access/bencode.rs:37:31 [INFO] [stdout] | [INFO] [stdout] 37 | fn dict(&self) -> Option<&BDictAccess>; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn BDictAccess` [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: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/access/bencode.rs:74:31 [INFO] [stdout] | [INFO] [stdout] 74 | fn list(&self) -> Option<&BListAccess> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn BListAccess` [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: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/access/bencode.rs:78:31 [INFO] [stdout] | [INFO] [stdout] 78 | fn dict(&self) -> Option<&BDictAccess> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn BDictAccess` [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: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/access/bencode.rs:101:18 [INFO] [stdout] | [INFO] [stdout] 101 | List(&'a mut BListAccess), [INFO] [stdout] | ^^^^^^^^^^^^^^ help: use `dyn`: `dyn BListAccess` [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: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/access/bencode.rs:103:18 [INFO] [stdout] | [INFO] [stdout] 103 | Dict(&'a mut BDictAccess), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn BDictAccess` [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: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/access/bencode.rs:112:43 [INFO] [stdout] | [INFO] [stdout] 112 | fn list_mut(&mut self) -> Option<&mut BListAccess>; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn BListAccess` [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: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/access/bencode.rs:115:43 [INFO] [stdout] | [INFO] [stdout] 115 | fn dict_mut(&mut self) -> Option<&mut BDictAccess>; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn BDictAccess` [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: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/access/convert.rs:28:72 [INFO] [stdout] | [INFO] [stdout] 28 | fn lookup_and_convert_bytes_ext<'a, B, K1, K2>(&self, dictionary: &BDictAccess, key: K2) -> Result<&'a [u8], Self::Error> [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn BDictAccess` [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/access/convert.rs:31:32 [INFO] [stdout] | [INFO] [stdout] 31 | self.convert_bytes_ext(try!(self.lookup(dictionary, &key)), &key) [INFO] [stdout] | ^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(deprecated)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/access/convert.rs:35:70 [INFO] [stdout] | [INFO] [stdout] 35 | fn lookup_and_convert_str_ext<'a, B, K1, K2>(&self, dictionary: &BDictAccess, key: K2) -> Result<&'a str, Self::Error> [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn BDictAccess` [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/access/convert.rs:38:30 [INFO] [stdout] | [INFO] [stdout] 38 | self.convert_str_ext(try!(self.lookup(dictionary, &key)), &key) [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/access/convert.rs:85:82 [INFO] [stdout] | [INFO] [stdout] 85 | fn convert_list<'a, B, E>(&self, bencode: &'a B, error_key: E) -> Result<&'a BListAccess, Self::Error> [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn BListAccess` [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: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/access/convert.rs:96:82 [INFO] [stdout] | [INFO] [stdout] 96 | fn convert_dict<'a, B, E>(&self, bencode: &'a B, error_key: E) -> Result<&'a BDictAccess, Self::Error> [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn BDictAccess` [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: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/access/convert.rs:105:53 [INFO] [stdout] | [INFO] [stdout] 105 | fn lookup<'a, B, K1, K2>(&self, dictionary: &'a BDictAccess, key: K2) -> Result<&'a B, Self::Error> [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn BDictAccess` [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: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/access/convert.rs:117:62 [INFO] [stdout] | [INFO] [stdout] 117 | fn lookup_and_convert_int(&self, dictionary: &BDictAccess, key: K2) -> Result [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn BDictAccess` [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/access/convert.rs:120:26 [INFO] [stdout] | [INFO] [stdout] 120 | self.convert_int(try!(self.lookup(dictionary, &key)), &key) [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/access/convert.rs:124:71 [INFO] [stdout] | [INFO] [stdout] 124 | fn lookup_and_convert_bytes<'a, B, K1, K2>(&self, dictionary: &'a BDictAccess, key: K2) -> Result<&'a [u8], Self::Error> [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn BDictAccess` [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/access/convert.rs:127:28 [INFO] [stdout] | [INFO] [stdout] 127 | self.convert_bytes(try!(self.lookup(dictionary, &key)), &key) [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/access/convert.rs:131:69 [INFO] [stdout] | [INFO] [stdout] 131 | fn lookup_and_convert_str<'a, B, K1, K2>(&self, dictionary: &'a BDictAccess, key: K2) -> Result<&'a str, Self::Error> [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn BDictAccess` [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/access/convert.rs:134:26 [INFO] [stdout] | [INFO] [stdout] 134 | self.convert_str(try!(self.lookup(dictionary, &key)), &key) [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/access/convert.rs:138:70 [INFO] [stdout] | [INFO] [stdout] 138 | fn lookup_and_convert_list<'a, B, K1, K2>(&self, dictionary: &'a BDictAccess, key: K2) -> Result<&'a BListAccess, Se... [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn BDictAccess` [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: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/access/convert.rs:138:113 [INFO] [stdout] | [INFO] [stdout] 138 | ...ss, key: K2) -> Result<&'a BListAccess, Self::Error> [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn BListAccess` [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/access/convert.rs:141:27 [INFO] [stdout] | [INFO] [stdout] 141 | self.convert_list(try!(self.lookup(dictionary, &key)), &key) [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/access/convert.rs:145:70 [INFO] [stdout] | [INFO] [stdout] 145 | fn lookup_and_convert_dict<'a, B, K1, K2>(&self, dictionary: &'a BDictAccess, key: K2) -> Result<&'a BDictAccess` [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: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/access/convert.rs:145:113 [INFO] [stdout] | [INFO] [stdout] 145 | ..., key: K2) -> Result<&'a BDictAccess, Self::Error> [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn BDictAccess` [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/access/convert.rs:148:27 [INFO] [stdout] | [INFO] [stdout] 148 | self.convert_dict(try!(self.lookup(dictionary, &key)), &key) [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/access/list.rs:24:38 [INFO] [stdout] | [INFO] [stdout] 24 | impl<'a, V: 'a> Index for &'a BListAccess { [INFO] [stdout] | ^^^^^^^^^^^^^^ help: use `dyn`: `dyn BListAccess` [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: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/access/list.rs:32:42 [INFO] [stdout] | [INFO] [stdout] 32 | impl<'a, V: 'a> Index for &'a mut BListAccess { [INFO] [stdout] | ^^^^^^^^^^^^^^ help: use `dyn`: `dyn BListAccess` [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: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/access/list.rs:40:45 [INFO] [stdout] | [INFO] [stdout] 40 | impl<'a, V: 'a> IndexMut for &'a mut BListAccess { [INFO] [stdout] | ^^^^^^^^^^^^^^ help: use `dyn`: `dyn BListAccess` [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: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/access/list.rs:46:38 [INFO] [stdout] | [INFO] [stdout] 46 | impl<'a, V: 'a> IntoIterator for &'a BListAccess { [INFO] [stdout] | ^^^^^^^^^^^^^^ help: use `dyn`: `dyn BListAccess` [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: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/access/list.rs:57:17 [INFO] [stdout] | [INFO] [stdout] 57 | access: &'a BListAccess [INFO] [stdout] | ^^^^^^^^^^^^^^ help: use `dyn`: `dyn BListAccess` [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: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/mutable/bencode_mut.rs:103:31 [INFO] [stdout] | [INFO] [stdout] 103 | fn list(&self) -> Option<&BListAccess>> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn BListAccess>` [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: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/mutable/bencode_mut.rs:110:31 [INFO] [stdout] | [INFO] [stdout] 110 | fn dict(&self) -> Option<&BDictAccess, BencodeMut<'a>>> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn BDictAccess, BencodeMut<'a>>` [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: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/mutable/bencode_mut.rs:128:43 [INFO] [stdout] | [INFO] [stdout] 128 | fn list_mut(&mut self) -> Option<&mut BListAccess>> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn BListAccess>` [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: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/mutable/bencode_mut.rs:135:43 [INFO] [stdout] | [INFO] [stdout] 135 | fn dict_mut(&mut self) -> Option<&mut BDictAccess, BencodeMut<'a>>> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn BDictAccess, BencodeMut<'a>>` [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: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/mutable/encode.rs:33:26 [INFO] [stdout] | [INFO] [stdout] 33 | fn encode_list(list: &BListAccess, bytes: &mut Vec) [INFO] [stdout] | ^^^^^^^^^^^^^^ help: use `dyn`: `dyn BListAccess` [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: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/mutable/encode.rs:44:33 [INFO] [stdout] | [INFO] [stdout] 44 | fn encode_dict<'a, K, V>(dict: &BDictAccess, bytes: &mut Vec) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn BDictAccess` [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/reference/bencode_ref.rs:41:34 [INFO] [stdout] | [INFO] [stdout] 41 | let (bencode, end_pos) = try!(decode::decode(bytes, 0, opts, 0)); [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/reference/bencode_ref.rs:89:31 [INFO] [stdout] | [INFO] [stdout] 89 | fn list(&self) -> Option<&BListAccess>> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn BListAccess>` [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: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/reference/bencode_ref.rs:96:31 [INFO] [stdout] | [INFO] [stdout] 96 | fn dict(&self) -> Option<&BDictAccess<&'a [u8], BencodeRef<'a>>> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn BDictAccess<&'a [u8], BencodeRef<'a>>` [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/reference/decode.rs:13:21 [INFO] [stdout] | [INFO] [stdout] 13 | let curr_byte = try!(peek_byte(bytes, pos)); [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stdout] --> src/reference/decode.rs:17:39 [INFO] [stdout] | [INFO] [stdout] 17 | let (bencode, next_pos) = try!(decode_int(bytes, pos + 1, ::BEN_END)); [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stdout] --> src/reference/decode.rs:21:39 [INFO] [stdout] | [INFO] [stdout] 21 | let (bencode, next_pos) = try!(decode_list(bytes, pos + 1, opts, depth)); [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stdout] --> src/reference/decode.rs:25:39 [INFO] [stdout] | [INFO] [stdout] 25 | let (bencode, next_pos) = try!(decode_dict(bytes, pos + 1, opts, depth)); [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `...` range patterns are deprecated [INFO] [stdout] --> src/reference/decode.rs:28:23 [INFO] [stdout] | [INFO] [stdout] 28 | ::BYTE_LEN_LOW...::BYTE_LEN_HIGH => { [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: use of deprecated macro `try`: use the `?` operator instead [INFO] [stdout] --> src/reference/decode.rs:29:39 [INFO] [stdout] | [INFO] [stdout] 29 | let (bencode, next_pos) = try!(decode_bytes(bytes, pos)); [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stdout] --> src/reference/decode.rs:73:34 [INFO] [stdout] | [INFO] [stdout] 73 | let (num_bytes, start_pos) = try!(decode_int(bytes, pos, ::BYTE_LEN_END)); [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stdout] --> src/reference/decode.rs:96:25 [INFO] [stdout] | [INFO] [stdout] 96 | let mut curr_byte = try!(peek_byte(bytes, curr_pos)); [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stdout] --> src/reference/decode.rs:99:35 [INFO] [stdout] | [INFO] [stdout] 99 | let (bencode, next_pos) = try!(decode(bytes, curr_pos, opts, depth + 1)); [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stdout] --> src/reference/decode.rs:104:21 [INFO] [stdout] | [INFO] [stdout] 104 | curr_byte = try!(peek_byte(bytes, curr_pos)); [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stdout] --> src/reference/decode.rs:115:25 [INFO] [stdout] | [INFO] [stdout] 115 | let mut curr_byte = try!(peek_byte(bytes, curr_pos)); [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stdout] --> src/reference/decode.rs:118:37 [INFO] [stdout] | [INFO] [stdout] 118 | let (key_bytes, next_pos) = try!(decode_bytes(bytes, curr_pos)); [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stdout] --> src/reference/decode.rs:129:33 [INFO] [stdout] | [INFO] [stdout] 129 | let (value, next_pos) = try!(decode(bytes, curr_pos, opts, depth + 1)); [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stdout] --> src/reference/decode.rs:138:21 [INFO] [stdout] | [INFO] [stdout] 138 | curr_byte = try!(peek_byte(bytes, curr_pos)); [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 57 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished dev [unoptimized + debuginfo] target(s) in 9.72s [INFO] running `Command { std: "docker" "inspect" "d056c5b5797bb77b4edbf2e10bb6d87f07a8ace0017bd7f237cd1303864add68", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "d056c5b5797bb77b4edbf2e10bb6d87f07a8ace0017bd7f237cd1303864add68", kill_on_drop: false }` [INFO] [stdout] d056c5b5797bb77b4edbf2e10bb6d87f07a8ace0017bd7f237cd1303864add68 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-8/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-8/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:a89201d6b5b9fd45c15d5952ece0a0129e7e80cb26ec023fd59cf09bc26f1604" "/opt/rustwide/cargo-home/bin/cargo" "+beta-2021-09-08" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] 6805f814e9f3ccfed23a85897a820b5f27dd75611cf15cfe440b9437a1df3c0d [INFO] running `Command { std: "docker" "start" "-a" "6805f814e9f3ccfed23a85897a820b5f27dd75611cf15cfe440b9437a1df3c0d", kill_on_drop: false }` [INFO] [stderr] warning: `panic` setting is ignored for `bench` profile [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/access/bencode.rs:11:14 [INFO] [stdout] | [INFO] [stdout] 11 | List(&'a BListAccess), [INFO] [stdout] | ^^^^^^^^^^^^^^ help: use `dyn`: `dyn BListAccess` [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] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/access/bencode.rs:13:14 [INFO] [stdout] | [INFO] [stdout] 13 | Dict(&'a BDictAccess), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn BDictAccess` [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: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/access/bencode.rs:34:31 [INFO] [stdout] | [INFO] [stdout] 34 | fn list(&self) -> Option<&BListAccess>; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn BListAccess` [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: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/access/bencode.rs:37:31 [INFO] [stdout] | [INFO] [stdout] 37 | fn dict(&self) -> Option<&BDictAccess>; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn BDictAccess` [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: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/access/bencode.rs:74:31 [INFO] [stdout] | [INFO] [stdout] 74 | fn list(&self) -> Option<&BListAccess> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn BListAccess` [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: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/access/bencode.rs:78:31 [INFO] [stdout] | [INFO] [stdout] 78 | fn dict(&self) -> Option<&BDictAccess> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn BDictAccess` [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: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/access/bencode.rs:101:18 [INFO] [stdout] | [INFO] [stdout] 101 | List(&'a mut BListAccess), [INFO] [stdout] | ^^^^^^^^^^^^^^ help: use `dyn`: `dyn BListAccess` [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: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/access/bencode.rs:103:18 [INFO] [stdout] | [INFO] [stdout] 103 | Dict(&'a mut BDictAccess), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn BDictAccess` [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: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/access/bencode.rs:112:43 [INFO] [stdout] | [INFO] [stdout] 112 | fn list_mut(&mut self) -> Option<&mut BListAccess>; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn BListAccess` [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: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/access/bencode.rs:115:43 [INFO] [stdout] | [INFO] [stdout] 115 | fn dict_mut(&mut self) -> Option<&mut BDictAccess>; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn BDictAccess` [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: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/access/convert.rs:28:72 [INFO] [stdout] | [INFO] [stdout] 28 | fn lookup_and_convert_bytes_ext<'a, B, K1, K2>(&self, dictionary: &BDictAccess, key: K2) -> Result<&'a [u8], Self::Error> [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn BDictAccess` [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/access/convert.rs:31:32 [INFO] [stdout] | [INFO] [stdout] 31 | self.convert_bytes_ext(try!(self.lookup(dictionary, &key)), &key) [INFO] [stdout] | ^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(deprecated)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/access/convert.rs:35:70 [INFO] [stdout] | [INFO] [stdout] 35 | fn lookup_and_convert_str_ext<'a, B, K1, K2>(&self, dictionary: &BDictAccess, key: K2) -> Result<&'a str, Self::Error> [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn BDictAccess` [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/access/convert.rs:38:30 [INFO] [stdout] | [INFO] [stdout] 38 | self.convert_str_ext(try!(self.lookup(dictionary, &key)), &key) [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/access/convert.rs:85:82 [INFO] [stdout] | [INFO] [stdout] 85 | fn convert_list<'a, B, E>(&self, bencode: &'a B, error_key: E) -> Result<&'a BListAccess, Self::Error> [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn BListAccess` [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: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/access/convert.rs:96:82 [INFO] [stdout] | [INFO] [stdout] 96 | fn convert_dict<'a, B, E>(&self, bencode: &'a B, error_key: E) -> Result<&'a BDictAccess, Self::Error> [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn BDictAccess` [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: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/access/convert.rs:105:53 [INFO] [stdout] | [INFO] [stdout] 105 | fn lookup<'a, B, K1, K2>(&self, dictionary: &'a BDictAccess, key: K2) -> Result<&'a B, Self::Error> [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn BDictAccess` [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: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/access/convert.rs:117:62 [INFO] [stdout] | [INFO] [stdout] 117 | fn lookup_and_convert_int(&self, dictionary: &BDictAccess, key: K2) -> Result [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn BDictAccess` [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/access/convert.rs:120:26 [INFO] [stdout] | [INFO] [stdout] 120 | self.convert_int(try!(self.lookup(dictionary, &key)), &key) [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/access/convert.rs:124:71 [INFO] [stdout] | [INFO] [stdout] 124 | fn lookup_and_convert_bytes<'a, B, K1, K2>(&self, dictionary: &'a BDictAccess, key: K2) -> Result<&'a [u8], Self::Error> [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn BDictAccess` [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/access/convert.rs:127:28 [INFO] [stdout] | [INFO] [stdout] 127 | self.convert_bytes(try!(self.lookup(dictionary, &key)), &key) [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/access/convert.rs:131:69 [INFO] [stdout] | [INFO] [stdout] 131 | fn lookup_and_convert_str<'a, B, K1, K2>(&self, dictionary: &'a BDictAccess, key: K2) -> Result<&'a str, Self::Error> [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn BDictAccess` [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/access/convert.rs:134:26 [INFO] [stdout] | [INFO] [stdout] 134 | self.convert_str(try!(self.lookup(dictionary, &key)), &key) [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/access/convert.rs:138:70 [INFO] [stdout] | [INFO] [stdout] 138 | fn lookup_and_convert_list<'a, B, K1, K2>(&self, dictionary: &'a BDictAccess, key: K2) -> Result<&'a BListAccess, Se... [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn BDictAccess` [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: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/access/convert.rs:138:113 [INFO] [stdout] | [INFO] [stdout] 138 | ...ss, key: K2) -> Result<&'a BListAccess, Self::Error> [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn BListAccess` [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/access/convert.rs:141:27 [INFO] [stdout] | [INFO] [stdout] 141 | self.convert_list(try!(self.lookup(dictionary, &key)), &key) [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/access/convert.rs:145:70 [INFO] [stdout] | [INFO] [stdout] 145 | fn lookup_and_convert_dict<'a, B, K1, K2>(&self, dictionary: &'a BDictAccess, key: K2) -> Result<&'a BDictAccess` [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] [stderr] Compiling bip_bencode v0.4.4 (/opt/rustwide/workdir) [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/access/convert.rs:145:113 [INFO] [stdout] | [INFO] [stdout] 145 | ..., key: K2) -> Result<&'a BDictAccess, Self::Error> [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn BDictAccess` [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/access/convert.rs:148:27 [INFO] [stdout] | [INFO] [stdout] 148 | self.convert_dict(try!(self.lookup(dictionary, &key)), &key) [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/access/list.rs:24:38 [INFO] [stdout] | [INFO] [stdout] 24 | impl<'a, V: 'a> Index for &'a BListAccess { [INFO] [stdout] | ^^^^^^^^^^^^^^ help: use `dyn`: `dyn BListAccess` [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: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/access/list.rs:32:42 [INFO] [stdout] | [INFO] [stdout] 32 | impl<'a, V: 'a> Index for &'a mut BListAccess { [INFO] [stdout] | ^^^^^^^^^^^^^^ help: use `dyn`: `dyn BListAccess` [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: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/access/list.rs:40:45 [INFO] [stdout] | [INFO] [stdout] 40 | impl<'a, V: 'a> IndexMut for &'a mut BListAccess { [INFO] [stdout] | ^^^^^^^^^^^^^^ help: use `dyn`: `dyn BListAccess` [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: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/access/list.rs:46:38 [INFO] [stdout] | [INFO] [stdout] 46 | impl<'a, V: 'a> IntoIterator for &'a BListAccess { [INFO] [stdout] | ^^^^^^^^^^^^^^ help: use `dyn`: `dyn BListAccess` [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: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/access/list.rs:57:17 [INFO] [stdout] | [INFO] [stdout] 57 | access: &'a BListAccess [INFO] [stdout] | ^^^^^^^^^^^^^^ help: use `dyn`: `dyn BListAccess` [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: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/mutable/bencode_mut.rs:103:31 [INFO] [stdout] | [INFO] [stdout] 103 | fn list(&self) -> Option<&BListAccess>> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn BListAccess>` [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: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/mutable/bencode_mut.rs:110:31 [INFO] [stdout] | [INFO] [stdout] 110 | fn dict(&self) -> Option<&BDictAccess, BencodeMut<'a>>> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn BDictAccess, BencodeMut<'a>>` [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: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/mutable/bencode_mut.rs:128:43 [INFO] [stdout] | [INFO] [stdout] 128 | fn list_mut(&mut self) -> Option<&mut BListAccess>> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn BListAccess>` [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: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/mutable/bencode_mut.rs:135:43 [INFO] [stdout] | [INFO] [stdout] 135 | fn dict_mut(&mut self) -> Option<&mut BDictAccess, BencodeMut<'a>>> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn BDictAccess, BencodeMut<'a>>` [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: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/mutable/encode.rs:33:26 [INFO] [stdout] | [INFO] [stdout] 33 | fn encode_list(list: &BListAccess, bytes: &mut Vec) [INFO] [stdout] | ^^^^^^^^^^^^^^ help: use `dyn`: `dyn BListAccess` [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: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/mutable/encode.rs:44:33 [INFO] [stdout] | [INFO] [stdout] 44 | fn encode_dict<'a, K, V>(dict: &BDictAccess, bytes: &mut Vec) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn BDictAccess` [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/reference/bencode_ref.rs:41:34 [INFO] [stdout] | [INFO] [stdout] 41 | let (bencode, end_pos) = try!(decode::decode(bytes, 0, opts, 0)); [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/reference/bencode_ref.rs:89:31 [INFO] [stdout] | [INFO] [stdout] 89 | fn list(&self) -> Option<&BListAccess>> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn BListAccess>` [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: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/reference/bencode_ref.rs:96:31 [INFO] [stdout] | [INFO] [stdout] 96 | fn dict(&self) -> Option<&BDictAccess<&'a [u8], BencodeRef<'a>>> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn BDictAccess<&'a [u8], BencodeRef<'a>>` [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/reference/decode.rs:13:21 [INFO] [stdout] | [INFO] [stdout] 13 | let curr_byte = try!(peek_byte(bytes, pos)); [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stdout] --> src/reference/decode.rs:17:39 [INFO] [stdout] | [INFO] [stdout] 17 | let (bencode, next_pos) = try!(decode_int(bytes, pos + 1, ::BEN_END)); [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stdout] --> src/reference/decode.rs:21:39 [INFO] [stdout] | [INFO] [stdout] 21 | let (bencode, next_pos) = try!(decode_list(bytes, pos + 1, opts, depth)); [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stdout] --> src/reference/decode.rs:25:39 [INFO] [stdout] | [INFO] [stdout] 25 | let (bencode, next_pos) = try!(decode_dict(bytes, pos + 1, opts, depth)); [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `...` range patterns are deprecated [INFO] [stdout] --> src/reference/decode.rs:28:23 [INFO] [stdout] | [INFO] [stdout] 28 | ::BYTE_LEN_LOW...::BYTE_LEN_HIGH => { [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: use of deprecated macro `try`: use the `?` operator instead [INFO] [stdout] --> src/reference/decode.rs:29:39 [INFO] [stdout] | [INFO] [stdout] 29 | let (bencode, next_pos) = try!(decode_bytes(bytes, pos)); [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stdout] --> src/reference/decode.rs:73:34 [INFO] [stdout] | [INFO] [stdout] 73 | let (num_bytes, start_pos) = try!(decode_int(bytes, pos, ::BYTE_LEN_END)); [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stdout] --> src/reference/decode.rs:96:25 [INFO] [stdout] | [INFO] [stdout] 96 | let mut curr_byte = try!(peek_byte(bytes, curr_pos)); [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stdout] --> src/reference/decode.rs:99:35 [INFO] [stdout] | [INFO] [stdout] 99 | let (bencode, next_pos) = try!(decode(bytes, curr_pos, opts, depth + 1)); [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stdout] --> src/reference/decode.rs:104:21 [INFO] [stdout] | [INFO] [stdout] 104 | curr_byte = try!(peek_byte(bytes, curr_pos)); [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stdout] --> src/reference/decode.rs:115:25 [INFO] [stdout] | [INFO] [stdout] 115 | let mut curr_byte = try!(peek_byte(bytes, curr_pos)); [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stdout] --> src/reference/decode.rs:118:37 [INFO] [stdout] | [INFO] [stdout] 118 | let (key_bytes, next_pos) = try!(decode_bytes(bytes, curr_pos)); [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stdout] --> src/reference/decode.rs:129:33 [INFO] [stdout] | [INFO] [stdout] 129 | let (value, next_pos) = try!(decode(bytes, curr_pos, opts, depth + 1)); [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stdout] --> src/reference/decode.rs:138:21 [INFO] [stdout] | [INFO] [stdout] 138 | curr_byte = try!(peek_byte(bytes, curr_pos)); [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 57 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/access/bencode.rs:11:14 [INFO] [stdout] | [INFO] [stdout] 11 | List(&'a BListAccess), [INFO] [stdout] | ^^^^^^^^^^^^^^ help: use `dyn`: `dyn BListAccess` [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] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/access/bencode.rs:13:14 [INFO] [stdout] | [INFO] [stdout] 13 | Dict(&'a BDictAccess), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn BDictAccess` [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: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/access/bencode.rs:34:31 [INFO] [stdout] | [INFO] [stdout] 34 | fn list(&self) -> Option<&BListAccess>; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn BListAccess` [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: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/access/bencode.rs:37:31 [INFO] [stdout] | [INFO] [stdout] 37 | fn dict(&self) -> Option<&BDictAccess>; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn BDictAccess` [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: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/access/bencode.rs:74:31 [INFO] [stdout] | [INFO] [stdout] 74 | fn list(&self) -> Option<&BListAccess> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn BListAccess` [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: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/access/bencode.rs:78:31 [INFO] [stdout] | [INFO] [stdout] 78 | fn dict(&self) -> Option<&BDictAccess> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn BDictAccess` [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: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/access/bencode.rs:101:18 [INFO] [stdout] | [INFO] [stdout] 101 | List(&'a mut BListAccess), [INFO] [stdout] | ^^^^^^^^^^^^^^ help: use `dyn`: `dyn BListAccess` [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: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/access/bencode.rs:103:18 [INFO] [stdout] | [INFO] [stdout] 103 | Dict(&'a mut BDictAccess), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn BDictAccess` [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: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/access/bencode.rs:112:43 [INFO] [stdout] | [INFO] [stdout] 112 | fn list_mut(&mut self) -> Option<&mut BListAccess>; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn BListAccess` [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: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/access/bencode.rs:115:43 [INFO] [stdout] | [INFO] [stdout] 115 | fn dict_mut(&mut self) -> Option<&mut BDictAccess>; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn BDictAccess` [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: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/access/convert.rs:28:72 [INFO] [stdout] | [INFO] [stdout] 28 | fn lookup_and_convert_bytes_ext<'a, B, K1, K2>(&self, dictionary: &BDictAccess, key: K2) -> Result<&'a [u8], Self::Error> [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn BDictAccess` [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/access/convert.rs:31:32 [INFO] [stdout] | [INFO] [stdout] 31 | self.convert_bytes_ext(try!(self.lookup(dictionary, &key)), &key) [INFO] [stdout] | ^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(deprecated)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/access/convert.rs:35:70 [INFO] [stdout] | [INFO] [stdout] 35 | fn lookup_and_convert_str_ext<'a, B, K1, K2>(&self, dictionary: &BDictAccess, key: K2) -> Result<&'a str, Self::Error> [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn BDictAccess` [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/access/convert.rs:38:30 [INFO] [stdout] | [INFO] [stdout] 38 | self.convert_str_ext(try!(self.lookup(dictionary, &key)), &key) [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/access/convert.rs:85:82 [INFO] [stdout] | [INFO] [stdout] 85 | fn convert_list<'a, B, E>(&self, bencode: &'a B, error_key: E) -> Result<&'a BListAccess, Self::Error> [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn BListAccess` [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: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/access/convert.rs:96:82 [INFO] [stdout] | [INFO] [stdout] 96 | fn convert_dict<'a, B, E>(&self, bencode: &'a B, error_key: E) -> Result<&'a BDictAccess, Self::Error> [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn BDictAccess` [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: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/access/convert.rs:105:53 [INFO] [stdout] | [INFO] [stdout] 105 | fn lookup<'a, B, K1, K2>(&self, dictionary: &'a BDictAccess, key: K2) -> Result<&'a B, Self::Error> [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn BDictAccess` [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: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/access/convert.rs:117:62 [INFO] [stdout] | [INFO] [stdout] 117 | fn lookup_and_convert_int(&self, dictionary: &BDictAccess, key: K2) -> Result [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn BDictAccess` [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/access/convert.rs:120:26 [INFO] [stdout] | [INFO] [stdout] 120 | self.convert_int(try!(self.lookup(dictionary, &key)), &key) [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/access/convert.rs:124:71 [INFO] [stdout] | [INFO] [stdout] 124 | fn lookup_and_convert_bytes<'a, B, K1, K2>(&self, dictionary: &'a BDictAccess, key: K2) -> Result<&'a [u8], Self::Error> [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn BDictAccess` [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/access/convert.rs:127:28 [INFO] [stdout] | [INFO] [stdout] 127 | self.convert_bytes(try!(self.lookup(dictionary, &key)), &key) [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/access/convert.rs:131:69 [INFO] [stdout] | [INFO] [stdout] 131 | fn lookup_and_convert_str<'a, B, K1, K2>(&self, dictionary: &'a BDictAccess, key: K2) -> Result<&'a str, Self::Error> [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn BDictAccess` [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/access/convert.rs:134:26 [INFO] [stdout] | [INFO] [stdout] 134 | self.convert_str(try!(self.lookup(dictionary, &key)), &key) [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/access/convert.rs:138:70 [INFO] [stdout] | [INFO] [stdout] 138 | fn lookup_and_convert_list<'a, B, K1, K2>(&self, dictionary: &'a BDictAccess, key: K2) -> Result<&'a BListAccess, Se... [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn BDictAccess` [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: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/access/convert.rs:138:113 [INFO] [stdout] | [INFO] [stdout] 138 | ...ss, key: K2) -> Result<&'a BListAccess, Self::Error> [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn BListAccess` [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/access/convert.rs:141:27 [INFO] [stdout] | [INFO] [stdout] 141 | self.convert_list(try!(self.lookup(dictionary, &key)), &key) [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/access/convert.rs:145:70 [INFO] [stdout] | [INFO] [stdout] 145 | fn lookup_and_convert_dict<'a, B, K1, K2>(&self, dictionary: &'a BDictAccess, key: K2) -> Result<&'a BDictAccess` [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: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/access/convert.rs:145:113 [INFO] [stdout] | [INFO] [stdout] 145 | ..., key: K2) -> Result<&'a BDictAccess, Self::Error> [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn BDictAccess` [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/access/convert.rs:148:27 [INFO] [stdout] | [INFO] [stdout] 148 | self.convert_dict(try!(self.lookup(dictionary, &key)), &key) [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/access/list.rs:24:38 [INFO] [stdout] | [INFO] [stdout] 24 | impl<'a, V: 'a> Index for &'a BListAccess { [INFO] [stdout] | ^^^^^^^^^^^^^^ help: use `dyn`: `dyn BListAccess` [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: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/access/list.rs:32:42 [INFO] [stdout] | [INFO] [stdout] 32 | impl<'a, V: 'a> Index for &'a mut BListAccess { [INFO] [stdout] | ^^^^^^^^^^^^^^ help: use `dyn`: `dyn BListAccess` [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: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/access/list.rs:40:45 [INFO] [stdout] | [INFO] [stdout] 40 | impl<'a, V: 'a> IndexMut for &'a mut BListAccess { [INFO] [stdout] | ^^^^^^^^^^^^^^ help: use `dyn`: `dyn BListAccess` [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: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/access/list.rs:46:38 [INFO] [stdout] | [INFO] [stdout] 46 | impl<'a, V: 'a> IntoIterator for &'a BListAccess { [INFO] [stdout] | ^^^^^^^^^^^^^^ help: use `dyn`: `dyn BListAccess` [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: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/access/list.rs:57:17 [INFO] [stdout] | [INFO] [stdout] 57 | access: &'a BListAccess [INFO] [stdout] | ^^^^^^^^^^^^^^ help: use `dyn`: `dyn BListAccess` [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: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/mutable/bencode_mut.rs:103:31 [INFO] [stdout] | [INFO] [stdout] 103 | fn list(&self) -> Option<&BListAccess>> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn BListAccess>` [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: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/mutable/bencode_mut.rs:110:31 [INFO] [stdout] | [INFO] [stdout] 110 | fn dict(&self) -> Option<&BDictAccess, BencodeMut<'a>>> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn BDictAccess, BencodeMut<'a>>` [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: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/mutable/bencode_mut.rs:128:43 [INFO] [stdout] | [INFO] [stdout] 128 | fn list_mut(&mut self) -> Option<&mut BListAccess>> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn BListAccess>` [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: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/mutable/bencode_mut.rs:135:43 [INFO] [stdout] | [INFO] [stdout] 135 | fn dict_mut(&mut self) -> Option<&mut BDictAccess, BencodeMut<'a>>> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn BDictAccess, BencodeMut<'a>>` [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: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/mutable/encode.rs:33:26 [INFO] [stdout] | [INFO] [stdout] 33 | fn encode_list(list: &BListAccess, bytes: &mut Vec) [INFO] [stdout] | ^^^^^^^^^^^^^^ help: use `dyn`: `dyn BListAccess` [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: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/mutable/encode.rs:44:33 [INFO] [stdout] | [INFO] [stdout] 44 | fn encode_dict<'a, K, V>(dict: &BDictAccess, bytes: &mut Vec) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn BDictAccess` [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/reference/bencode_ref.rs:41:34 [INFO] [stdout] | [INFO] [stdout] 41 | let (bencode, end_pos) = try!(decode::decode(bytes, 0, opts, 0)); [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/reference/bencode_ref.rs:89:31 [INFO] [stdout] | [INFO] [stdout] 89 | fn list(&self) -> Option<&BListAccess>> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn BListAccess>` [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: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/reference/bencode_ref.rs:96:31 [INFO] [stdout] | [INFO] [stdout] 96 | fn dict(&self) -> Option<&BDictAccess<&'a [u8], BencodeRef<'a>>> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn BDictAccess<&'a [u8], BencodeRef<'a>>` [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/reference/decode.rs:13:21 [INFO] [stdout] | [INFO] [stdout] 13 | let curr_byte = try!(peek_byte(bytes, pos)); [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stdout] --> src/reference/decode.rs:17:39 [INFO] [stdout] | [INFO] [stdout] 17 | let (bencode, next_pos) = try!(decode_int(bytes, pos + 1, ::BEN_END)); [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stdout] --> src/reference/decode.rs:21:39 [INFO] [stdout] | [INFO] [stdout] 21 | let (bencode, next_pos) = try!(decode_list(bytes, pos + 1, opts, depth)); [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stdout] --> src/reference/decode.rs:25:39 [INFO] [stdout] | [INFO] [stdout] 25 | let (bencode, next_pos) = try!(decode_dict(bytes, pos + 1, opts, depth)); [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `...` range patterns are deprecated [INFO] [stdout] --> src/reference/decode.rs:28:23 [INFO] [stdout] | [INFO] [stdout] 28 | ::BYTE_LEN_LOW...::BYTE_LEN_HIGH => { [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: use of deprecated macro `try`: use the `?` operator instead [INFO] [stdout] --> src/reference/decode.rs:29:39 [INFO] [stdout] | [INFO] [stdout] 29 | let (bencode, next_pos) = try!(decode_bytes(bytes, pos)); [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stdout] --> src/reference/decode.rs:73:34 [INFO] [stdout] | [INFO] [stdout] 73 | let (num_bytes, start_pos) = try!(decode_int(bytes, pos, ::BYTE_LEN_END)); [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stdout] --> src/reference/decode.rs:96:25 [INFO] [stdout] | [INFO] [stdout] 96 | let mut curr_byte = try!(peek_byte(bytes, curr_pos)); [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stdout] --> src/reference/decode.rs:99:35 [INFO] [stdout] | [INFO] [stdout] 99 | let (bencode, next_pos) = try!(decode(bytes, curr_pos, opts, depth + 1)); [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stdout] --> src/reference/decode.rs:104:21 [INFO] [stdout] | [INFO] [stdout] 104 | curr_byte = try!(peek_byte(bytes, curr_pos)); [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stdout] --> src/reference/decode.rs:115:25 [INFO] [stdout] | [INFO] [stdout] 115 | let mut curr_byte = try!(peek_byte(bytes, curr_pos)); [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stdout] --> src/reference/decode.rs:118:37 [INFO] [stdout] | [INFO] [stdout] 118 | let (key_bytes, next_pos) = try!(decode_bytes(bytes, curr_pos)); [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stdout] --> src/reference/decode.rs:129:33 [INFO] [stdout] | [INFO] [stdout] 129 | let (value, next_pos) = try!(decode(bytes, curr_pos, opts, depth + 1)); [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stdout] --> src/reference/decode.rs:138:21 [INFO] [stdout] | [INFO] [stdout] 138 | curr_byte = try!(peek_byte(bytes, curr_pos)); [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished test [unoptimized + debuginfo] target(s) in 2.34s [INFO] [stdout] warning: 57 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] running `Command { std: "docker" "inspect" "6805f814e9f3ccfed23a85897a820b5f27dd75611cf15cfe440b9437a1df3c0d", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "6805f814e9f3ccfed23a85897a820b5f27dd75611cf15cfe440b9437a1df3c0d", kill_on_drop: false }` [INFO] [stdout] 6805f814e9f3ccfed23a85897a820b5f27dd75611cf15cfe440b9437a1df3c0d [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-8/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-8/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:a89201d6b5b9fd45c15d5952ece0a0129e7e80cb26ec023fd59cf09bc26f1604" "/opt/rustwide/cargo-home/bin/cargo" "+beta-2021-09-08" "test" "--frozen", kill_on_drop: false }` [INFO] [stdout] 1d8a085cf9f170166294236b885b0cfa841593dec3983784e85d8a9abcd200e8 [INFO] running `Command { std: "docker" "start" "-a" "1d8a085cf9f170166294236b885b0cfa841593dec3983784e85d8a9abcd200e8", kill_on_drop: false }` [INFO] [stderr] warning: `panic` setting is ignored for `bench` profile [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/access/bencode.rs:11:14 [INFO] [stderr] | [INFO] [stderr] 11 | List(&'a BListAccess), [INFO] [stderr] | ^^^^^^^^^^^^^^ help: use `dyn`: `dyn BListAccess` [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] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/access/bencode.rs:13:14 [INFO] [stderr] | [INFO] [stderr] 13 | Dict(&'a BDictAccess), [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn BDictAccess` [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: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/access/bencode.rs:34:31 [INFO] [stderr] | [INFO] [stderr] 34 | fn list(&self) -> Option<&BListAccess>; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn BListAccess` [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: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/access/bencode.rs:37:31 [INFO] [stderr] | [INFO] [stderr] 37 | fn dict(&self) -> Option<&BDictAccess>; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn BDictAccess` [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: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/access/bencode.rs:74:31 [INFO] [stderr] | [INFO] [stderr] 74 | fn list(&self) -> Option<&BListAccess> { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn BListAccess` [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: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/access/bencode.rs:78:31 [INFO] [stderr] | [INFO] [stderr] 78 | fn dict(&self) -> Option<&BDictAccess> { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn BDictAccess` [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: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/access/bencode.rs:101:18 [INFO] [stderr] | [INFO] [stderr] 101 | List(&'a mut BListAccess), [INFO] [stderr] | ^^^^^^^^^^^^^^ help: use `dyn`: `dyn BListAccess` [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: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/access/bencode.rs:103:18 [INFO] [stderr] | [INFO] [stderr] 103 | Dict(&'a mut BDictAccess), [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn BDictAccess` [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: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/access/bencode.rs:112:43 [INFO] [stderr] | [INFO] [stderr] 112 | fn list_mut(&mut self) -> Option<&mut BListAccess>; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn BListAccess` [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: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/access/bencode.rs:115:43 [INFO] [stderr] | [INFO] [stderr] 115 | fn dict_mut(&mut self) -> Option<&mut BDictAccess>; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn BDictAccess` [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: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/access/convert.rs:28:72 [INFO] [stderr] | [INFO] [stderr] 28 | fn lookup_and_convert_bytes_ext<'a, B, K1, K2>(&self, dictionary: &BDictAccess, key: K2) -> Result<&'a [u8], Self::Error> [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn BDictAccess` [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/access/convert.rs:31:32 [INFO] [stderr] | [INFO] [stderr] 31 | self.convert_bytes_ext(try!(self.lookup(dictionary, &key)), &key) [INFO] [stderr] | ^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(deprecated)]` on by default [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/access/convert.rs:35:70 [INFO] [stderr] | [INFO] [stderr] 35 | fn lookup_and_convert_str_ext<'a, B, K1, K2>(&self, dictionary: &BDictAccess, key: K2) -> Result<&'a str, Self::Error> [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn BDictAccess` [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/access/convert.rs:38:30 [INFO] [stderr] | [INFO] [stderr] 38 | self.convert_str_ext(try!(self.lookup(dictionary, &key)), &key) [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/access/convert.rs:85:82 [INFO] [stderr] | [INFO] [stderr] 85 | fn convert_list<'a, B, E>(&self, bencode: &'a B, error_key: E) -> Result<&'a BListAccess, Self::Error> [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn BListAccess` [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: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/access/convert.rs:96:82 [INFO] [stderr] | [INFO] [stderr] 96 | fn convert_dict<'a, B, E>(&self, bencode: &'a B, error_key: E) -> Result<&'a BDictAccess, Self::Error> [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn BDictAccess` [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: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/access/convert.rs:105:53 [INFO] [stderr] | [INFO] [stderr] 105 | fn lookup<'a, B, K1, K2>(&self, dictionary: &'a BDictAccess, key: K2) -> Result<&'a B, Self::Error> [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn BDictAccess` [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: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/access/convert.rs:117:62 [INFO] [stderr] | [INFO] [stderr] 117 | fn lookup_and_convert_int(&self, dictionary: &BDictAccess, key: K2) -> Result [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn BDictAccess` [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/access/convert.rs:120:26 [INFO] [stderr] | [INFO] [stderr] 120 | self.convert_int(try!(self.lookup(dictionary, &key)), &key) [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/access/convert.rs:124:71 [INFO] [stderr] | [INFO] [stderr] 124 | fn lookup_and_convert_bytes<'a, B, K1, K2>(&self, dictionary: &'a BDictAccess, key: K2) -> Result<&'a [u8], Self::Error> [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn BDictAccess` [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/access/convert.rs:127:28 [INFO] [stderr] | [INFO] [stderr] 127 | self.convert_bytes(try!(self.lookup(dictionary, &key)), &key) [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/access/convert.rs:131:69 [INFO] [stderr] | [INFO] [stderr] 131 | fn lookup_and_convert_str<'a, B, K1, K2>(&self, dictionary: &'a BDictAccess, key: K2) -> Result<&'a str, Self::Error> [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn BDictAccess` [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/access/convert.rs:134:26 [INFO] [stderr] | [INFO] [stderr] 134 | self.convert_str(try!(self.lookup(dictionary, &key)), &key) [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/access/convert.rs:138:70 [INFO] [stderr] | [INFO] [stderr] 138 | fn lookup_and_convert_list<'a, B, K1, K2>(&self, dictionary: &'a BDictAccess, key: K2) -> Result<&'a BListAccess, Se... [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn BDictAccess` [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: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/access/convert.rs:138:113 [INFO] [stderr] | [INFO] [stderr] 138 | ...ss, key: K2) -> Result<&'a BListAccess, Self::Error> [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn BListAccess` [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/access/convert.rs:141:27 [INFO] [stderr] | [INFO] [stderr] 141 | self.convert_list(try!(self.lookup(dictionary, &key)), &key) [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/access/convert.rs:145:70 [INFO] [stderr] | [INFO] [stderr] 145 | fn lookup_and_convert_dict<'a, B, K1, K2>(&self, dictionary: &'a BDictAccess, key: K2) -> Result<&'a BDictAccess` [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: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/access/convert.rs:145:113 [INFO] [stderr] | [INFO] [stderr] 145 | ..., key: K2) -> Result<&'a BDictAccess, Self::Error> [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn BDictAccess` [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/access/convert.rs:148:27 [INFO] [stderr] | [INFO] [stderr] 148 | self.convert_dict(try!(self.lookup(dictionary, &key)), &key) [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/access/list.rs:24:38 [INFO] [stderr] | [INFO] [stderr] 24 | impl<'a, V: 'a> Index for &'a BListAccess { [INFO] [stderr] | ^^^^^^^^^^^^^^ help: use `dyn`: `dyn BListAccess` [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: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/access/list.rs:32:42 [INFO] [stderr] | [INFO] [stderr] 32 | impl<'a, V: 'a> Index for &'a mut BListAccess { [INFO] [stderr] | ^^^^^^^^^^^^^^ help: use `dyn`: `dyn BListAccess` [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: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/access/list.rs:40:45 [INFO] [stderr] | [INFO] [stderr] 40 | impl<'a, V: 'a> IndexMut for &'a mut BListAccess { [INFO] [stderr] | ^^^^^^^^^^^^^^ help: use `dyn`: `dyn BListAccess` [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: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/access/list.rs:46:38 [INFO] [stderr] | [INFO] [stderr] 46 | impl<'a, V: 'a> IntoIterator for &'a BListAccess { [INFO] [stderr] | ^^^^^^^^^^^^^^ help: use `dyn`: `dyn BListAccess` [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: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/access/list.rs:57:17 [INFO] [stderr] | [INFO] [stderr] 57 | access: &'a BListAccess [INFO] [stderr] | ^^^^^^^^^^^^^^ help: use `dyn`: `dyn BListAccess` [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: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/mutable/bencode_mut.rs:103:31 [INFO] [stderr] | [INFO] [stderr] 103 | fn list(&self) -> Option<&BListAccess>> { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn BListAccess>` [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: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/mutable/bencode_mut.rs:110:31 [INFO] [stderr] | [INFO] [stderr] 110 | fn dict(&self) -> Option<&BDictAccess, BencodeMut<'a>>> { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn BDictAccess, BencodeMut<'a>>` [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: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/mutable/bencode_mut.rs:128:43 [INFO] [stderr] | [INFO] [stderr] 128 | fn list_mut(&mut self) -> Option<&mut BListAccess>> { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn BListAccess>` [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: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/mutable/bencode_mut.rs:135:43 [INFO] [stderr] | [INFO] [stderr] 135 | fn dict_mut(&mut self) -> Option<&mut BDictAccess, BencodeMut<'a>>> { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn BDictAccess, BencodeMut<'a>>` [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: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/mutable/encode.rs:33:26 [INFO] [stderr] | [INFO] [stderr] 33 | fn encode_list(list: &BListAccess, bytes: &mut Vec) [INFO] [stderr] | ^^^^^^^^^^^^^^ help: use `dyn`: `dyn BListAccess` [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: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/mutable/encode.rs:44:33 [INFO] [stderr] | [INFO] [stderr] 44 | fn encode_dict<'a, K, V>(dict: &BDictAccess, bytes: &mut Vec) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn BDictAccess` [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/reference/bencode_ref.rs:41:34 [INFO] [stderr] | [INFO] [stderr] 41 | let (bencode, end_pos) = try!(decode::decode(bytes, 0, opts, 0)); [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/reference/bencode_ref.rs:89:31 [INFO] [stderr] | [INFO] [stderr] 89 | fn list(&self) -> Option<&BListAccess>> { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn BListAccess>` [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: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/reference/bencode_ref.rs:96:31 [INFO] [stderr] | [INFO] [stderr] 96 | fn dict(&self) -> Option<&BDictAccess<&'a [u8], BencodeRef<'a>>> { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn BDictAccess<&'a [u8], BencodeRef<'a>>` [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/reference/decode.rs:13:21 [INFO] [stderr] | [INFO] [stderr] 13 | let curr_byte = try!(peek_byte(bytes, pos)); [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stderr] --> src/reference/decode.rs:17:39 [INFO] [stderr] | [INFO] [stderr] 17 | let (bencode, next_pos) = try!(decode_int(bytes, pos + 1, ::BEN_END)); [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stderr] --> src/reference/decode.rs:21:39 [INFO] [stderr] | [INFO] [stderr] 21 | let (bencode, next_pos) = try!(decode_list(bytes, pos + 1, opts, depth)); [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stderr] --> src/reference/decode.rs:25:39 [INFO] [stderr] | [INFO] [stderr] 25 | let (bencode, next_pos) = try!(decode_dict(bytes, pos + 1, opts, depth)); [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> src/reference/decode.rs:28:23 [INFO] [stderr] | [INFO] [stderr] 28 | ::BYTE_LEN_LOW...::BYTE_LEN_HIGH => { [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: use of deprecated macro `try`: use the `?` operator instead [INFO] [stderr] --> src/reference/decode.rs:29:39 [INFO] [stderr] | [INFO] [stderr] 29 | let (bencode, next_pos) = try!(decode_bytes(bytes, pos)); [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stderr] --> src/reference/decode.rs:73:34 [INFO] [stderr] | [INFO] [stderr] 73 | let (num_bytes, start_pos) = try!(decode_int(bytes, pos, ::BYTE_LEN_END)); [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stderr] --> src/reference/decode.rs:96:25 [INFO] [stderr] | [INFO] [stderr] 96 | let mut curr_byte = try!(peek_byte(bytes, curr_pos)); [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stderr] --> src/reference/decode.rs:99:35 [INFO] [stderr] | [INFO] [stderr] 99 | let (bencode, next_pos) = try!(decode(bytes, curr_pos, opts, depth + 1)); [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stderr] --> src/reference/decode.rs:104:21 [INFO] [stderr] | [INFO] [stderr] 104 | curr_byte = try!(peek_byte(bytes, curr_pos)); [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stderr] --> src/reference/decode.rs:115:25 [INFO] [stderr] | [INFO] [stderr] 115 | let mut curr_byte = try!(peek_byte(bytes, curr_pos)); [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stderr] --> src/reference/decode.rs:118:37 [INFO] [stderr] | [INFO] [stderr] 118 | let (key_bytes, next_pos) = try!(decode_bytes(bytes, curr_pos)); [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stderr] --> src/reference/decode.rs:129:33 [INFO] [stderr] | [INFO] [stderr] 129 | let (value, next_pos) = try!(decode(bytes, curr_pos, opts, depth + 1)); [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stderr] --> src/reference/decode.rs:138:21 [INFO] [stderr] | [INFO] [stderr] 138 | curr_byte = try!(peek_byte(bytes, curr_pos)); [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: `bip_bencode` (lib) generated 57 warnings [INFO] [stderr] warning: `bip_bencode` (lib test) generated 57 warnings (57 duplicates) [INFO] [stderr] Finished test [unoptimized + debuginfo] target(s) in 0.01s [INFO] [stderr] Running unittests (/opt/rustwide/target/debug/deps/bip_bencode-62823f913e6b1fbb) [INFO] [stdout] [INFO] [stdout] running 41 tests [INFO] [stdout] test mutable::bencode_mut::test::positive_empty_dict_encode ... ok [INFO] [stdout] test mutable::bencode_mut::test::positive_empty_list_encode ... ok [INFO] [stdout] test mutable::bencode_mut::test::positive_int_encode ... ok [INFO] [stdout] test mutable::bencode_mut::test::positive_bytes_encode ... ok [INFO] [stdout] test mutable::bencode_mut::test::positive_nonempty_dict_encode ... ok [INFO] [stdout] test mutable::bencode_mut::test::positive_nonempty_list_encode ... ok [INFO] [stdout] test reference::bencode_ref::tests::positive_bytes_buffer ... ok [INFO] [stdout] test reference::bencode_ref::tests::positive_dict_buffer ... ok [INFO] [stdout] test reference::bencode_ref::tests::positive_dict_nested_bytes_buffer ... ok [INFO] [stdout] test reference::bencode_ref::tests::positive_dict_nested_dict_buffer ... ok [INFO] [stdout] test reference::bencode_ref::tests::positive_dict_nested_int_buffer ... ok [INFO] [stdout] test reference::bencode_ref::tests::positive_dict_nested_list_buffer ... ok [INFO] [stdout] test reference::bencode_ref::tests::positive_int_buffer ... ok [INFO] [stdout] test reference::bencode_ref::tests::positive_list_buffer ... ok [INFO] [stdout] test reference::bencode_ref::tests::positive_list_nested_bytes_buffer ... ok [INFO] [stdout] test reference::bencode_ref::tests::positive_list_nested_dict_buffer ... ok [INFO] [stdout] test reference::bencode_ref::tests::positive_list_nested_int_buffer ... ok [INFO] [stdout] test reference::bencode_ref::tests::positive_list_nested_list_buffer ... ok [INFO] [stdout] test reference::decode::tests::positive_decode_bytes ... ok [INFO] [stdout] test reference::decode::tests::positive_decode_bytes_utf8 ... ok [INFO] [stdout] test reference::decode::tests::positive_decode_dict_unordered_keys ... ok [INFO] [stdout] test reference::decode::tests::positive_decode_int ... ok [INFO] [stdout] test reference::decode::tests::positive_decode_int_negative ... ok [INFO] [stdout] test reference::decode::tests::positive_decode_int_zero ... ok [INFO] [stdout] test reference::decode::tests::positive_decode_partial ... ok [INFO] [stdout] test reference::decode::tests::positive_decode_bytes_zero_len ... ok [INFO] [stdout] test reference::decode::tests::positive_decode_list ... ok [INFO] [stdout] test reference::decode::tests::positive_decode_dict ... ok [INFO] [stdout] test reference::decode::tests::positive_decode_general ... ok [INFO] [stdout] test reference::decode::tests::negative_decode_bytes_not_utf8 - should panic ... ok [INFO] [stdout] test reference::decode::tests::negative_decode_bytes_extra - should panic ... ok [INFO] [stdout] test reference::decode::tests::negative_decode_dict_unordered_keys - should panic ... ok [INFO] [stdout] test reference::decode::tests::negative_decode_dict_dup_keys_same_data - should panic ... ok [INFO] [stdout] test reference::decode::tests::negative_decode_int_nan - should panic ... ok [INFO] [stdout] test reference::decode::tests::negative_decode_dict_dup_keys_diff_data - should panic ... ok [INFO] [stdout] test reference::decode::tests::negative_decode_int_negative_zero - should panic ... ok [INFO] [stdout] test reference::decode::tests::negative_decode_int_double_negative - should panic ... ok [INFO] [stdout] test reference::decode::tests::negative_decode_bytes_neg_len - should panic ... ok [INFO] [stdout] test reference::decode::tests::negative_decode_int_leading_zero - should panic ... ok [INFO] [stdout] test reference::decode::tests::positive_decode_recursion ... ok [INFO] [stdout] test reference::decode::tests::negative_decode_int_double_zero - should panic ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 41 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.44s [INFO] [stdout] [INFO] [stderr] Running test/mod.rs (/opt/rustwide/target/debug/deps/test-047327509eaa4e46) [INFO] [stdout] [INFO] [stdout] running 2 tests [INFO] [stdout] test positive_ben_list_macro ... ok [INFO] [stdout] test positive_ben_map_macro ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 2 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s [INFO] [stdout] [INFO] [stderr] Doc-tests bip_bencode [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> /opt/rustwide/workdir/src/reference/decode.rs:28:23 [INFO] [stderr] | [INFO] [stderr] 28 | ::BYTE_LEN_LOW...::BYTE_LEN_HIGH => { [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: 1 warning emitted [INFO] [stderr] [INFO] [stdout] [INFO] [stdout] running 2 tests [INFO] [stdout] test src/lib.rs - (line 24) ... ok [INFO] [stdout] test src/lib.rs - (line 7) ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 2 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.58s [INFO] [stdout] [INFO] running `Command { std: "docker" "inspect" "1d8a085cf9f170166294236b885b0cfa841593dec3983784e85d8a9abcd200e8", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "1d8a085cf9f170166294236b885b0cfa841593dec3983784e85d8a9abcd200e8", kill_on_drop: false }` [INFO] [stdout] 1d8a085cf9f170166294236b885b0cfa841593dec3983784e85d8a9abcd200e8