[INFO] cloning repository https://github.com/yerrill/tc
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/yerrill/tc" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fyerrill%2Ftc", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fyerrill%2Ftc'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] 4fcfb61fccbbf3615508f8bf633f0f82b23bce9f
[INFO] checking yerrill/tc against master#779e19d8baa3e3625bd4fc5c85cbb2ad47b43155 for pr-147589-1
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fyerrill%2Ftc" "/workspace/builds/worker-2-tc1/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-2-tc1/source'...
[INFO] [stderr] done.
[INFO] started tweaking git repo https://github.com/yerrill/tc
[INFO] finished tweaking git repo https://github.com/yerrill/tc
[INFO] tweaked toml for git repo https://github.com/yerrill/tc written to /workspace/builds/worker-2-tc1/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/yerrill/tc on toolchain 779e19d8baa3e3625bd4fc5c85cbb2ad47b43155
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+779e19d8baa3e3625bd4fc5c85cbb2ad47b43155" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate git repo https://github.com/yerrill/tc already has a lockfile, it will not be regenerated
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+779e19d8baa3e3625bd4fc5c85cbb2ad47b43155" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]  Downloading crates ...
[INFO] [stderr]   Downloaded icu_properties v2.0.0
[INFO] [stderr]   Downloaded icu_properties_data v2.0.0
[INFO] [stderr]   Downloaded cc v1.2.22
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:e90291280db7d1fac5b66fc6dad9f9662629e7365a55743daf9bdf73ebc4ea79" "/opt/rustwide/cargo-home/bin/cargo" "+779e19d8baa3e3625bd4fc5c85cbb2ad47b43155" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] 64042c68fea54ce2f76f78cb1f242acd94fcb71c427ea8c3370e6e4c349790d7
[INFO] running `Command { std: "docker" "start" "-a" "64042c68fea54ce2f76f78cb1f242acd94fcb71c427ea8c3370e6e4c349790d7", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "64042c68fea54ce2f76f78cb1f242acd94fcb71c427ea8c3370e6e4c349790d7", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "64042c68fea54ce2f76f78cb1f242acd94fcb71c427ea8c3370e6e4c349790d7", kill_on_drop: false }`
[INFO] [stdout] 64042c68fea54ce2f76f78cb1f242acd94fcb71c427ea8c3370e6e4c349790d7
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:e90291280db7d1fac5b66fc6dad9f9662629e7365a55743daf9bdf73ebc4ea79" "/opt/rustwide/cargo-home/bin/cargo" "+779e19d8baa3e3625bd4fc5c85cbb2ad47b43155" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 5343e00f7d018f54503b3bde88027efb830dc4e2d30ce1eace7ea732fb74a042
[INFO] running `Command { std: "docker" "start" "-a" "5343e00f7d018f54503b3bde88027efb830dc4e2d30ce1eace7ea732fb74a042", kill_on_drop: false }`
[INFO] [stderr]    Compiling cc v1.2.22
[INFO] [stderr]    Compiling icu_properties_data v2.0.0
[INFO] [stderr]     Checking hashbrown v0.15.3
[INFO] [stderr]    Compiling syn v2.0.101
[INFO] [stderr]     Checking bitflags v2.9.0
[INFO] [stderr]    Compiling zerocopy v0.8.25
[INFO] [stderr]     Checking getrandom v0.3.3
[INFO] [stderr]     Checking rustls-pki-types v1.12.0
[INFO] [stderr]     Checking digest v0.10.7
[INFO] [stderr]     Checking encoding_rs v0.8.35
[INFO] [stderr]     Checking rand_core v0.9.3
[INFO] [stderr]     Checking rustls-pemfile v2.2.0
[INFO] [stderr]     Checking sha1 v0.10.6
[INFO] [stderr]     Checking indexmap v2.9.0
[INFO] [stderr]    Compiling openssl-sys v0.9.109
[INFO] [stderr]    Compiling openssl v0.10.73
[INFO] [stderr]    Compiling native-tls v0.2.14
[INFO] [stderr]     Checking ppv-lite86 v0.2.21
[INFO] [stderr]     Checking rand_chacha v0.9.0
[INFO] [stderr]     Checking rand v0.9.1
[INFO] [stderr]    Compiling synstructure v0.13.2
[INFO] [stderr]    Compiling zerovec-derive v0.11.1
[INFO] [stderr]    Compiling displaydoc v0.2.5
[INFO] [stderr]    Compiling tokio-macros v2.5.0
[INFO] [stderr]    Compiling openssl-macros v0.1.1
[INFO] [stderr]    Compiling zerofrom-derive v0.1.6
[INFO] [stderr]    Compiling yoke-derive v0.8.0
[INFO] [stderr]     Checking tokio v1.45.0
[INFO] [stderr]     Checking zerofrom v0.1.6
[INFO] [stderr]     Checking yoke v0.8.0
[INFO] [stderr]     Checking zerovec v0.11.2
[INFO] [stderr]     Checking zerotrie v0.2.2
[INFO] [stderr]     Checking tinystr v0.8.1
[INFO] [stderr]     Checking potential_utf v0.1.2
[INFO] [stderr]     Checking icu_collections v2.0.0
[INFO] [stderr]     Checking icu_locale_core v2.0.0
[INFO] [stderr]     Checking icu_provider v2.0.0
[INFO] [stderr]     Checking icu_normalizer v2.0.0
[INFO] [stderr]     Checking icu_properties v2.0.0
[INFO] [stderr]     Checking idna_adapter v1.2.1
[INFO] [stderr]     Checking idna v1.0.3
[INFO] [stderr]     Checking url v2.5.4
[INFO] [stderr]     Checking tokio-util v0.7.15
[INFO] [stderr]     Checking tokio-native-tls v0.3.1
[INFO] [stderr]     Checking tower v0.5.2
[INFO] [stderr]     Checking h2 v0.4.10
[INFO] [stderr]     Checking hyper v1.6.0
[INFO] [stderr]     Checking hyper-util v0.1.11
[INFO] [stderr]     Checking hyper-tls v0.6.0
[INFO] [stderr]     Checking reqwest v0.12.15
[INFO] [stderr]     Checking tc v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unused import: `reqwest::get`
[INFO] [stdout]  --> src/tracker.rs:5:5
[INFO] [stdout]   |
[INFO] [stdout] 5 | use reqwest::get;
[INFO] [stdout]   |     ^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `ByteString`, `Dict`, `Integer`, `List`, `TextString`, and `errors::BencodingError`
[INFO] [stdout]  --> src/main.rs:7:5
[INFO] [stdout]   |
[INFO] [stdout] 7 |     errors::BencodingError,
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 8 |     types::BTypes::{self, ByteString, Dict, Integer, List, TextString},
[INFO] [stdout]   |                           ^^^^^^^^^^  ^^^^  ^^^^^^^  ^^^^  ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `reqwest::get`
[INFO] [stdout]  --> src/tracker.rs:5:5
[INFO] [stdout]   |
[INFO] [stdout] 5 | use reqwest::get;
[INFO] [stdout]   |     ^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `ByteString`, `Dict`, `Integer`, `List`, `TextString`, and `errors::BencodingError`
[INFO] [stdout]  --> src/main.rs:7:5
[INFO] [stdout]   |
[INFO] [stdout] 7 |     errors::BencodingError,
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 8 |     types::BTypes::{self, ByteString, Dict, Integer, List, TextString},
[INFO] [stdout]   |                           ^^^^^^^^^^  ^^^^  ^^^^^^^  ^^^^  ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `peers`
[INFO] [stdout]   --> src/tracker.rs:97:10
[INFO] [stdout]    |
[INFO] [stdout] 97 |     let (peers, res) = res.keyed_dict("peers")?;
[INFO] [stdout]    |          ^^^^^ help: if this is intentional, prefix it with an underscore: `_peers`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `res`
[INFO] [stdout]   --> src/tracker.rs:97:17
[INFO] [stdout]    |
[INFO] [stdout] 97 |     let (peers, res) = res.keyed_dict("peers")?;
[INFO] [stdout]    |                 ^^^ help: if this is intentional, prefix it with an underscore: `_res`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `peer_id`
[INFO] [stdout]   --> src/main.rs:23:9
[INFO] [stdout]    |
[INFO] [stdout] 23 |     let peer_id = tracker_get(&info, port, 0, 0, 20, TrackerEvent::Started).await;
[INFO] [stdout]    |         ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_peer_id`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `addr`
[INFO] [stdout]   --> src/main.rs:31:26
[INFO] [stdout]    |
[INFO] [stdout] 31 |         let (mut socket, addr) = listener.accept().await.unwrap();
[INFO] [stdout]    |                          ^^^^ help: if this is intentional, prefix it with an underscore: `_addr`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `end`
[INFO] [stdout]   --> src/main.rs:55:9
[INFO] [stdout]    |
[INFO] [stdout] 55 |     let end = tracker_get(&info, port, 0, 0, 16384, TrackerEvent::Stopped).await;
[INFO] [stdout]    |         ^^^ help: if this is intentional, prefix it with an underscore: `_end`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `HEADER` is never used
[INFO] [stdout]   --> src/main.rs:65:11
[INFO] [stdout]    |
[INFO] [stdout] 65 |     const HEADER: &'static [u8] = "\x13BitTorrent protocol".as_bytes();
[INFO] [stdout]    |           ^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple variants are never constructed
[INFO] [stdout]   --> src/encoding/errors.rs:8:5
[INFO] [stdout]    |
[INFO] [stdout]  4 | pub enum BencodingError {
[INFO] [stdout]    |          -------------- variants in this enum
[INFO] [stdout] ...
[INFO] [stdout]  8 |     MalformedString(String),
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^
[INFO] [stdout]  9 |     IncorrectStartingCharacter(char),
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 10 |     Nested(String),
[INFO] [stdout]    |     ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 16 |     KeyNotFound(String),
[INFO] [stdout]    |     ^^^^^^^^^^^
[INFO] [stdout] 17 |     NotDict,
[INFO] [stdout]    |     ^^^^^^^
[INFO] [stdout] 18 |     NotList,
[INFO] [stdout]    |     ^^^^^^^
[INFO] [stdout] 19 |     NotInt,
[INFO] [stdout]    |     ^^^^^^
[INFO] [stdout] 20 |     NotByteStr,
[INFO] [stdout]    |     ^^^^^^^^^^
[INFO] [stdout] 21 |     NotTextStr,
[INFO] [stdout]    |     ^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `BencodingError` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple methods are never used
[INFO] [stdout]    --> src/encoding/types.rs:131:12
[INFO] [stdout]     |
[INFO] [stdout]  29 | impl BTypes {
[INFO] [stdout]     | ----------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 131 |     pub fn expect_dict(self) -> Result<DictInner, BencodingError> {
[INFO] [stdout]     |            ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 139 |     pub fn expect_list(self) -> Result<Vec<BTypes>, BencodingError> {
[INFO] [stdout]     |            ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 147 |     pub fn expect_text_str(self) -> Result<String, BencodingError> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 155 |     pub fn expect_byte_str(self) -> Result<Vec<u8>, BencodingError> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 163 |     pub fn expect_int(self) -> Result<isize, BencodingError> {
[INFO] [stdout]     |            ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 171 |     pub fn keyed_dict(self, key: &str) -> Result<(DictInner, BTypes), BencodingError> {
[INFO] [stdout]     |            ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 183 |     pub fn keyed_list(self, key: &str) -> Result<(Vec<BTypes>, BTypes), BencodingError> {
[INFO] [stdout]     |            ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 195 |     pub fn keyed_text_str(self, key: &str) -> Result<(String, BTypes), BencodingError> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 207 |     pub fn keyed_byte_str(self, key: &str) -> Result<(Vec<u8>, BTypes), BencodingError> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 219 |     pub fn keyed_int(self, key: &str) -> Result<(isize, BTypes), BencodingError> {
[INFO] [stdout]     |            ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `TrackerDetails` is never constructed
[INFO] [stdout]  --> src/tracker.rs:9:12
[INFO] [stdout]   |
[INFO] [stdout] 9 | pub struct TrackerDetails<'a> {
[INFO] [stdout]   |            ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variants `Completed` and `Empty` are never constructed
[INFO] [stdout]   --> src/tracker.rs:22:5
[INFO] [stdout]    |
[INFO] [stdout] 20 | pub enum TrackerEvent {
[INFO] [stdout]    |          ------------ variants in this enum
[INFO] [stdout] 21 |     Started,
[INFO] [stdout] 22 |     Completed,
[INFO] [stdout]    |     ^^^^^^^^^
[INFO] [stdout] 23 |     Stopped,
[INFO] [stdout] 24 |     Empty,
[INFO] [stdout]    |     ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `TrackerEvent` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `decode_response` is never used
[INFO] [stdout]   --> src/tracker.rs:94:4
[INFO] [stdout]    |
[INFO] [stdout] 94 | fn decode_response(response: String) -> Result<(), BencodingError> {
[INFO] [stdout]    |    ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `peers`
[INFO] [stdout]   --> src/tracker.rs:97:10
[INFO] [stdout]    |
[INFO] [stdout] 97 |     let (peers, res) = res.keyed_dict("peers")?;
[INFO] [stdout]    |          ^^^^^ help: if this is intentional, prefix it with an underscore: `_peers`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `res`
[INFO] [stdout]   --> src/tracker.rs:97:17
[INFO] [stdout]    |
[INFO] [stdout] 97 |     let (peers, res) = res.keyed_dict("peers")?;
[INFO] [stdout]    |                 ^^^ help: if this is intentional, prefix it with an underscore: `_res`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `peer_id`
[INFO] [stdout]   --> src/main.rs:23:9
[INFO] [stdout]    |
[INFO] [stdout] 23 |     let peer_id = tracker_get(&info, port, 0, 0, 20, TrackerEvent::Started).await;
[INFO] [stdout]    |         ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_peer_id`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `addr`
[INFO] [stdout]   --> src/main.rs:31:26
[INFO] [stdout]    |
[INFO] [stdout] 31 |         let (mut socket, addr) = listener.accept().await.unwrap();
[INFO] [stdout]    |                          ^^^^ help: if this is intentional, prefix it with an underscore: `_addr`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `end`
[INFO] [stdout]   --> src/main.rs:55:9
[INFO] [stdout]    |
[INFO] [stdout] 55 |     let end = tracker_get(&info, port, 0, 0, 16384, TrackerEvent::Stopped).await;
[INFO] [stdout]    |         ^^^ help: if this is intentional, prefix it with an underscore: `_end`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple variants are never constructed
[INFO] [stdout]   --> src/encoding/errors.rs:8:5
[INFO] [stdout]    |
[INFO] [stdout]  4 | pub enum BencodingError {
[INFO] [stdout]    |          -------------- variants in this enum
[INFO] [stdout] ...
[INFO] [stdout]  8 |     MalformedString(String),
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^
[INFO] [stdout]  9 |     IncorrectStartingCharacter(char),
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 10 |     Nested(String),
[INFO] [stdout]    |     ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 16 |     KeyNotFound(String),
[INFO] [stdout]    |     ^^^^^^^^^^^
[INFO] [stdout] 17 |     NotDict,
[INFO] [stdout]    |     ^^^^^^^
[INFO] [stdout] 18 |     NotList,
[INFO] [stdout]    |     ^^^^^^^
[INFO] [stdout] 19 |     NotInt,
[INFO] [stdout]    |     ^^^^^^
[INFO] [stdout] 20 |     NotByteStr,
[INFO] [stdout]    |     ^^^^^^^^^^
[INFO] [stdout] 21 |     NotTextStr,
[INFO] [stdout]    |     ^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `BencodingError` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple methods are never used
[INFO] [stdout]    --> src/encoding/types.rs:131:12
[INFO] [stdout]     |
[INFO] [stdout]  29 | impl BTypes {
[INFO] [stdout]     | ----------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 131 |     pub fn expect_dict(self) -> Result<DictInner, BencodingError> {
[INFO] [stdout]     |            ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 139 |     pub fn expect_list(self) -> Result<Vec<BTypes>, BencodingError> {
[INFO] [stdout]     |            ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 147 |     pub fn expect_text_str(self) -> Result<String, BencodingError> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 155 |     pub fn expect_byte_str(self) -> Result<Vec<u8>, BencodingError> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 163 |     pub fn expect_int(self) -> Result<isize, BencodingError> {
[INFO] [stdout]     |            ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 171 |     pub fn keyed_dict(self, key: &str) -> Result<(DictInner, BTypes), BencodingError> {
[INFO] [stdout]     |            ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 183 |     pub fn keyed_list(self, key: &str) -> Result<(Vec<BTypes>, BTypes), BencodingError> {
[INFO] [stdout]     |            ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 195 |     pub fn keyed_text_str(self, key: &str) -> Result<(String, BTypes), BencodingError> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 207 |     pub fn keyed_byte_str(self, key: &str) -> Result<(Vec<u8>, BTypes), BencodingError> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 219 |     pub fn keyed_int(self, key: &str) -> Result<(isize, BTypes), BencodingError> {
[INFO] [stdout]     |            ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `TrackerDetails` is never constructed
[INFO] [stdout]  --> src/tracker.rs:9:12
[INFO] [stdout]   |
[INFO] [stdout] 9 | pub struct TrackerDetails<'a> {
[INFO] [stdout]   |            ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variants `Completed` and `Empty` are never constructed
[INFO] [stdout]   --> src/tracker.rs:22:5
[INFO] [stdout]    |
[INFO] [stdout] 20 | pub enum TrackerEvent {
[INFO] [stdout]    |          ------------ variants in this enum
[INFO] [stdout] 21 |     Started,
[INFO] [stdout] 22 |     Completed,
[INFO] [stdout]    |     ^^^^^^^^^
[INFO] [stdout] 23 |     Stopped,
[INFO] [stdout] 24 |     Empty,
[INFO] [stdout]    |     ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `TrackerEvent` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `decode_response` is never used
[INFO] [stdout]   --> src/tracker.rs:94:4
[INFO] [stdout]    |
[INFO] [stdout] 94 | fn decode_response(response: String) -> Result<(), BencodingError> {
[INFO] [stdout]    |    ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 21.54s
[INFO] running `Command { std: "docker" "inspect" "5343e00f7d018f54503b3bde88027efb830dc4e2d30ce1eace7ea732fb74a042", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "5343e00f7d018f54503b3bde88027efb830dc4e2d30ce1eace7ea732fb74a042", kill_on_drop: false }`
[INFO] [stdout] 5343e00f7d018f54503b3bde88027efb830dc4e2d30ce1eace7ea732fb74a042
