[INFO] cloning repository https://github.com/dark0ne/bittorrent_rust [INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/dark0ne/bittorrent_rust" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fdark0ne%2Fbittorrent_rust", kill_on_drop: false }` [INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fdark0ne%2Fbittorrent_rust'... [INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }` [INFO] [stdout] 2b33850d57ade82e5973a4f2c03adab65145f968 [INFO] checking dark0ne/bittorrent_rust against master#385fa9d845dd326c6bbfd58c22244215e431948a for never-type-fallback-to-never [INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fdark0ne%2Fbittorrent_rust" "/workspace/builds/worker-4-tc1/source", kill_on_drop: false }` [INFO] [stderr] Cloning into '/workspace/builds/worker-4-tc1/source'... [INFO] [stderr] done. [INFO] validating manifest of git repo https://github.com/dark0ne/bittorrent_rust on toolchain 385fa9d845dd326c6bbfd58c22244215e431948a [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+385fa9d845dd326c6bbfd58c22244215e431948a" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] started tweaking git repo https://github.com/dark0ne/bittorrent_rust [INFO] finished tweaking git repo https://github.com/dark0ne/bittorrent_rust [INFO] tweaked toml for git repo https://github.com/dark0ne/bittorrent_rust written to /workspace/builds/worker-4-tc1/source/Cargo.toml [INFO] crate git repo https://github.com/dark0ne/bittorrent_rust 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" "+385fa9d845dd326c6bbfd58c22244215e431948a" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] [stderr] Updating crates.io index [INFO] [stderr] Downloading crates ... [INFO] [stderr] Downloaded windows-targets v0.48.4 [INFO] [stderr] Downloaded int-enum-impl v0.5.0 [INFO] [stderr] Downloaded int-enum v0.5.0 [INFO] [stderr] Downloaded serde_bencode v0.2.3 [INFO] [stderr] Downloaded clap v4.3.22 [INFO] [stderr] Downloaded clap_builder v4.3.22 [INFO] [stderr] Downloaded windows_aarch64_gnullvm v0.48.4 [INFO] [stderr] Downloaded windows_x86_64_gnullvm v0.48.4 [INFO] [stderr] Downloaded windows_aarch64_msvc v0.48.4 [INFO] [stderr] Downloaded windows_i686_gnu v0.48.4 [INFO] [stderr] Downloaded windows_i686_msvc v0.48.4 [INFO] [stderr] Downloaded windows_x86_64_gnu v0.48.4 [INFO] [stderr] Downloaded windows_x86_64_msvc v0.48.4 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-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:2788e3201cd34a07e3172128adcd8b3090168a8e3bcc40d7c032b9dda1df7d1c" "/opt/rustwide/cargo-home/bin/cargo" "+385fa9d845dd326c6bbfd58c22244215e431948a" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] b546f0c5d79cb648284c96a76ce1ebcc31347c767dcf1d9e6ec2fb2ee0a1a1a5 [INFO] running `Command { std: "docker" "start" "-a" "b546f0c5d79cb648284c96a76ce1ebcc31347c767dcf1d9e6ec2fb2ee0a1a1a5", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "b546f0c5d79cb648284c96a76ce1ebcc31347c767dcf1d9e6ec2fb2ee0a1a1a5", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "b546f0c5d79cb648284c96a76ce1ebcc31347c767dcf1d9e6ec2fb2ee0a1a1a5", kill_on_drop: false }` [INFO] [stdout] b546f0c5d79cb648284c96a76ce1ebcc31347c767dcf1d9e6ec2fb2ee0a1a1a5 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-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:2788e3201cd34a07e3172128adcd8b3090168a8e3bcc40d7c032b9dda1df7d1c" "/opt/rustwide/cargo-home/bin/cargo" "+385fa9d845dd326c6bbfd58c22244215e431948a" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] ac137af8949010c5ad4e5d2dc2560dfdbc9a87336a5169751b804f614c6fd8b3 [INFO] running `Command { std: "docker" "start" "-a" "ac137af8949010c5ad4e5d2dc2560dfdbc9a87336a5169751b804f614c6fd8b3", kill_on_drop: false }` [INFO] [stderr] Checking pin-project-lite v0.2.12 [INFO] [stderr] Compiling futures-core v0.3.29 [INFO] [stderr] Checking futures-sink v0.3.29 [INFO] [stderr] Checking bytes v1.3.0 [INFO] [stderr] Compiling futures-task v0.3.29 [INFO] [stderr] Compiling futures-channel v0.3.29 [INFO] [stderr] Compiling libc v0.2.147 [INFO] [stderr] Compiling futures-util v0.3.29 [INFO] [stderr] Checking socket2 v0.5.3 [INFO] [stderr] Compiling quote v1.0.33 [INFO] [stderr] Compiling serde v1.0.183 [INFO] [stderr] Checking futures-io v0.3.29 [INFO] [stderr] Compiling typenum v1.16.0 [INFO] [stderr] Compiling rustix v0.38.8 [INFO] [stderr] Compiling generic-array v0.14.7 [INFO] [stderr] Compiling syn v1.0.48 [INFO] [stderr] Checking linux-raw-sys v0.4.5 [INFO] [stderr] Compiling openssl v0.10.56 [INFO] [stderr] Compiling serde_derive v1.0.183 [INFO] [stderr] Compiling syn v2.0.29 [INFO] [stderr] Checking tracing v0.1.37 [INFO] [stderr] Compiling hashbrown v0.14.2 [INFO] [stderr] Checking http v0.2.9 [INFO] [stderr] Compiling unicode-xid v0.2.1 [INFO] [stderr] Compiling winnow v0.5.19 [INFO] [stderr] Checking log v0.4.20 [INFO] [stderr] Compiling toml_datetime v0.6.5 [INFO] [stderr] Checking anstyle-parse v0.2.1 [INFO] [stderr] Checking getrandom v0.2.10 [INFO] [stderr] Checking anstyle v1.0.1 [INFO] [stderr] Compiling once_cell v1.18.0 [INFO] [stderr] Compiling serde_json v1.0.105 [INFO] [stderr] Checking aho-corasick v1.0.4 [INFO] [stderr] Checking rand_core v0.6.4 [INFO] [stderr] Compiling thiserror v1.0.38 [INFO] [stderr] Checking clap_lex v0.5.0 [INFO] [stderr] Compiling anyhow v1.0.68 [INFO] [stderr] Checking rand_chacha v0.3.1 [INFO] [stderr] Checking encoding_rs v0.8.32 [INFO] [stderr] Checking cpufeatures v0.2.9 [INFO] [stderr] Checking fastrand v2.0.0 [INFO] [stderr] Checking base64 v0.21.2 [INFO] [stderr] Checking http-body v0.4.5 [INFO] [stderr] Checking rand v0.8.5 [INFO] [stderr] Compiling cc v1.0.82 [INFO] [stderr] Checking urlencoding v2.1.3 [INFO] [stderr] Checking hex v0.4.3 [INFO] [stderr] Compiling indexmap v2.1.0 [INFO] [stderr] Compiling openssl-sys v0.9.91 [INFO] [stderr] Checking regex-automata v0.3.6 [INFO] [stderr] Compiling thiserror-impl v1.0.38 [INFO] [stderr] Compiling native-tls v0.2.11 [INFO] [stderr] Checking crypto-common v0.1.6 [INFO] [stderr] Checking block-buffer v0.10.4 [INFO] [stderr] Checking digest v0.10.7 [INFO] [stderr] Checking is-terminal v0.4.9 [INFO] [stderr] Checking tempfile v3.7.1 [INFO] [stderr] Compiling toml_edit v0.19.15 [INFO] [stderr] Checking anstream v0.3.2 [INFO] [stderr] Compiling tokio-macros v2.1.0 [INFO] [stderr] Compiling futures-macro v0.3.29 [INFO] [stderr] Compiling openssl-macros v0.1.1 [INFO] [stderr] Compiling clap_derive v4.3.12 [INFO] [stderr] Checking sha1 v0.10.5 [INFO] [stderr] Checking clap_builder v4.3.22 [INFO] [stderr] Checking tokio v1.32.0 [INFO] [stderr] Checking serde_urlencoded v0.7.1 [INFO] [stderr] Checking serde_bytes v0.11.12 [INFO] [stderr] Checking regex v1.9.3 [INFO] [stderr] Checking serde_bencode v0.2.3 [INFO] [stderr] Compiling proc-macro-crate v1.3.1 [INFO] [stderr] Compiling int-enum-impl v0.5.0 [INFO] [stderr] Checking clap v4.3.22 [INFO] [stderr] Checking int-enum v0.5.0 [INFO] [stderr] Checking futures-executor v0.3.29 [INFO] [stderr] Checking futures v0.3.29 [INFO] [stderr] Checking tokio-util v0.7.10 [INFO] [stderr] Checking tokio-native-tls v0.3.1 [INFO] [stderr] Checking h2 v0.3.20 [INFO] [stderr] Checking hyper v0.14.27 [INFO] [stderr] Checking hyper-tls v0.5.0 [INFO] [stderr] Checking reqwest v0.11.18 [INFO] [stderr] Checking bittorrent-starter-rust v0.1.0 (/opt/rustwide/workdir) [INFO] [stdout] warning: unused import: `sink::SinkExt` [INFO] [stdout] --> src/main.rs:3:15 [INFO] [stdout] | [INFO] [stdout] 3 | use futures::{sink::SinkExt, stream::StreamExt}; [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `hex` [INFO] [stdout] --> src/main.rs:4:5 [INFO] [stdout] | [INFO] [stdout] 4 | use hex; [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the item `reqwest` is imported redundantly [INFO] [stdout] --> src/main.rs:6:5 [INFO] [stdout] | [INFO] [stdout] 6 | use reqwest; [INFO] [stdout] | ^^^^^^^ the item `reqwest` is already defined by prelude [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `Read` [INFO] [stdout] --> src/peer.rs:3:29 [INFO] [stdout] | [INFO] [stdout] 3 | use std::io::{self, Cursor, Read}; [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `sink::SinkExt` [INFO] [stdout] --> src/main.rs:3:15 [INFO] [stdout] | [INFO] [stdout] 3 | use futures::{sink::SinkExt, stream::StreamExt}; [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `hex` [INFO] [stdout] --> src/main.rs:4:5 [INFO] [stdout] | [INFO] [stdout] 4 | use hex; [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the item `reqwest` is imported redundantly [INFO] [stdout] --> src/main.rs:6:5 [INFO] [stdout] | [INFO] [stdout] 6 | use reqwest; [INFO] [stdout] | ^^^^^^^ the item `reqwest` is already defined by prelude [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `Read` [INFO] [stdout] --> src/peer.rs:3:29 [INFO] [stdout] | [INFO] [stdout] 3 | use std::io::{self, Cursor, Read}; [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `tag` [INFO] [stdout] --> src/peer.rs:120:40 [INFO] [stdout] | [INFO] [stdout] 120 | let error_payload_not_empty = |tag: MessageTag| { [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_tag` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `tag` [INFO] [stdout] --> src/peer.rs:129:35 [INFO] [stdout] | [INFO] [stdout] 129 | let error_invalid_size = |tag: MessageTag, len: usize| { [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_tag` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `tag` [INFO] [stdout] --> src/peer.rs:120:40 [INFO] [stdout] | [INFO] [stdout] 120 | let error_payload_not_empty = |tag: MessageTag| { [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_tag` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `tag` [INFO] [stdout] --> src/peer.rs:129:35 [INFO] [stdout] | [INFO] [stdout] 129 | let error_invalid_size = |tag: MessageTag, len: usize| { [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_tag` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `output_file` [INFO] [stdout] --> src/main.rs:56:13 [INFO] [stdout] | [INFO] [stdout] 56 | output_file, [INFO] [stdout] | ^^^^^^^^^^^ help: try ignoring the field: `output_file: _` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `index` [INFO] [stdout] --> src/main.rs:59:17 [INFO] [stdout] | [INFO] [stdout] 59 | let index = 0; [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_index` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `peer_address` [INFO] [stdout] --> src/main.rs:100:17 [INFO] [stdout] | [INFO] [stdout] 100 | let peer_address = peers [INFO] [stdout] | ^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_peer_address` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `stream` [INFO] [stdout] --> src/main.rs:135:17 [INFO] [stdout] | [INFO] [stdout] 135 | let stream = streams[0].as_mut().unwrap(); [INFO] [stdout] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_stream` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `output_file` [INFO] [stdout] --> src/main.rs:56:13 [INFO] [stdout] | [INFO] [stdout] 56 | output_file, [INFO] [stdout] | ^^^^^^^^^^^ help: try ignoring the field: `output_file: _` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `index` [INFO] [stdout] --> src/main.rs:59:17 [INFO] [stdout] | [INFO] [stdout] 59 | let index = 0; [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_index` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `peer_address` [INFO] [stdout] --> src/main.rs:100:17 [INFO] [stdout] | [INFO] [stdout] 100 | let peer_address = peers [INFO] [stdout] | ^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_peer_address` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `stream` [INFO] [stdout] --> src/main.rs:135:17 [INFO] [stdout] | [INFO] [stdout] 135 | let stream = streams[0].as_mut().unwrap(); [INFO] [stdout] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_stream` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `BLOCK_SIZE` is never used [INFO] [stdout] --> src/main.rs:49:7 [INFO] [stdout] | [INFO] [stdout] 49 | const BLOCK_SIZE: usize = 1 << 14; [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `PeerState` is never constructed [INFO] [stdout] --> src/peer.rs:343:8 [INFO] [stdout] | [INFO] [stdout] 343 | struct PeerState { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `new` is never used [INFO] [stdout] --> src/peer.rs:351:8 [INFO] [stdout] | [INFO] [stdout] 350 | impl PeerState { [INFO] [stdout] | -------------- associated function in this implementation [INFO] [stdout] 351 | fn new() -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `interval`, `min_interval`, `tracker_id`, `complete`, and `incomplete` are never read [INFO] [stdout] --> src/tracker.rs:23:9 [INFO] [stdout] | [INFO] [stdout] 22 | Peers { [INFO] [stdout] | ----- fields in this variant [INFO] [stdout] 23 | interval: usize, [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] 24 | #[serde(rename = "min interval")] [INFO] [stdout] 25 | min_interval: Option, [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] 26 | #[serde(rename = "tracker id")] [INFO] [stdout] 27 | tracker_id: Option, [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] 28 | complete: usize, [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] 29 | incomplete: usize, [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 14 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `BLOCK_SIZE` is never used [INFO] [stdout] --> src/main.rs:49:7 [INFO] [stdout] | [INFO] [stdout] 49 | const BLOCK_SIZE: usize = 1 << 14; [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `PeerState` is never constructed [INFO] [stdout] --> src/peer.rs:343:8 [INFO] [stdout] | [INFO] [stdout] 343 | struct PeerState { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `new` is never used [INFO] [stdout] --> src/peer.rs:351:8 [INFO] [stdout] | [INFO] [stdout] 350 | impl PeerState { [INFO] [stdout] | -------------- associated function in this implementation [INFO] [stdout] 351 | fn new() -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `interval`, `min_interval`, `tracker_id`, `complete`, and `incomplete` are never read [INFO] [stdout] --> src/tracker.rs:23:9 [INFO] [stdout] | [INFO] [stdout] 22 | Peers { [INFO] [stdout] | ----- fields in this variant [INFO] [stdout] 23 | interval: usize, [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] 24 | #[serde(rename = "min interval")] [INFO] [stdout] 25 | min_interval: Option, [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] 26 | #[serde(rename = "tracker id")] [INFO] [stdout] 27 | tracker_id: Option, [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] 28 | complete: usize, [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] 29 | incomplete: usize, [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 14 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished `dev` profile [unoptimized + debuginfo] target(s) in 24.30s [INFO] running `Command { std: "docker" "inspect" "ac137af8949010c5ad4e5d2dc2560dfdbc9a87336a5169751b804f614c6fd8b3", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "ac137af8949010c5ad4e5d2dc2560dfdbc9a87336a5169751b804f614c6fd8b3", kill_on_drop: false }` [INFO] [stdout] ac137af8949010c5ad4e5d2dc2560dfdbc9a87336a5169751b804f614c6fd8b3 [INFO] checking dark0ne/bittorrent_rust against try#2d84f2737f3bd9ebfcb07f75aa198d6cf7c715d2 for never-type-fallback-to-never [INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fdark0ne%2Fbittorrent_rust" "/workspace/builds/worker-4-tc2/source", kill_on_drop: false }` [INFO] [stderr] Cloning into '/workspace/builds/worker-4-tc2/source'... [INFO] [stderr] done. [INFO] validating manifest of git repo https://github.com/dark0ne/bittorrent_rust on toolchain 2d84f2737f3bd9ebfcb07f75aa198d6cf7c715d2 [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+2d84f2737f3bd9ebfcb07f75aa198d6cf7c715d2" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] started tweaking git repo https://github.com/dark0ne/bittorrent_rust [INFO] finished tweaking git repo https://github.com/dark0ne/bittorrent_rust [INFO] tweaked toml for git repo https://github.com/dark0ne/bittorrent_rust written to /workspace/builds/worker-4-tc2/source/Cargo.toml [INFO] crate git repo https://github.com/dark0ne/bittorrent_rust 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" "+2d84f2737f3bd9ebfcb07f75aa198d6cf7c715d2" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc2/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:2788e3201cd34a07e3172128adcd8b3090168a8e3bcc40d7c032b9dda1df7d1c" "/opt/rustwide/cargo-home/bin/cargo" "+2d84f2737f3bd9ebfcb07f75aa198d6cf7c715d2" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] 71032671fab77bca0f8fdc9eb6a45f46c8aa8e6034c6bc9a0c6d8292bfa5779f [INFO] running `Command { std: "docker" "start" "-a" "71032671fab77bca0f8fdc9eb6a45f46c8aa8e6034c6bc9a0c6d8292bfa5779f", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "71032671fab77bca0f8fdc9eb6a45f46c8aa8e6034c6bc9a0c6d8292bfa5779f", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "71032671fab77bca0f8fdc9eb6a45f46c8aa8e6034c6bc9a0c6d8292bfa5779f", kill_on_drop: false }` [INFO] [stdout] 71032671fab77bca0f8fdc9eb6a45f46c8aa8e6034c6bc9a0c6d8292bfa5779f [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc2/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:2788e3201cd34a07e3172128adcd8b3090168a8e3bcc40d7c032b9dda1df7d1c" "/opt/rustwide/cargo-home/bin/cargo" "+2d84f2737f3bd9ebfcb07f75aa198d6cf7c715d2" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] 11204af4d7659018c40efbcf7d2be7b02cbf6cfc4f53dd42a0fc9b1827375d56 [INFO] running `Command { std: "docker" "start" "-a" "11204af4d7659018c40efbcf7d2be7b02cbf6cfc4f53dd42a0fc9b1827375d56", kill_on_drop: false }` [INFO] [stderr] Checking pin-project-lite v0.2.12 [INFO] [stderr] Compiling futures-core v0.3.29 [INFO] [stderr] Checking futures-sink v0.3.29 [INFO] [stderr] Checking bytes v1.3.0 [INFO] [stderr] Compiling libc v0.2.147 [INFO] [stderr] Compiling futures-channel v0.3.29 [INFO] [stderr] Compiling futures-task v0.3.29 [INFO] [stderr] Compiling futures-util v0.3.29 [INFO] [stderr] Checking socket2 v0.5.3 [INFO] [stderr] Compiling quote v1.0.33 [INFO] [stderr] Compiling rustix v0.38.8 [INFO] [stderr] Compiling serde v1.0.183 [INFO] [stderr] Compiling typenum v1.16.0 [INFO] [stderr] Checking futures-io v0.3.29 [INFO] [stderr] Compiling generic-array v0.14.7 [INFO] [stderr] Compiling syn v1.0.48 [INFO] [stderr] Checking linux-raw-sys v0.4.5 [INFO] [stderr] Compiling serde_derive v1.0.183 [INFO] [stderr] Compiling openssl v0.10.56 [INFO] [stderr] Compiling syn v2.0.29 [INFO] [stderr] Checking tracing v0.1.37 [INFO] [stderr] Compiling unicode-xid v0.2.1 [INFO] [stderr] Compiling hashbrown v0.14.2 [INFO] [stderr] Compiling toml_datetime v0.6.5 [INFO] [stderr] Checking log v0.4.20 [INFO] [stderr] Compiling winnow v0.5.19 [INFO] [stderr] Checking anstyle-parse v0.2.1 [INFO] [stderr] Checking getrandom v0.2.10 [INFO] [stderr] Compiling serde_json v1.0.105 [INFO] [stderr] Compiling once_cell v1.18.0 [INFO] [stderr] Checking anstyle v1.0.1 [INFO] [stderr] Checking rand_core v0.6.4 [INFO] [stderr] Checking aho-corasick v1.0.4 [INFO] [stderr] Compiling anyhow v1.0.68 [INFO] [stderr] Compiling thiserror v1.0.38 [INFO] [stderr] Checking http v0.2.9 [INFO] [stderr] Checking clap_lex v0.5.0 [INFO] [stderr] Checking rand_chacha v0.3.1 [INFO] [stderr] Checking encoding_rs v0.8.32 [INFO] [stderr] Compiling cc v1.0.82 [INFO] [stderr] Checking fastrand v2.0.0 [INFO] [stderr] Checking base64 v0.21.2 [INFO] [stderr] Checking cpufeatures v0.2.9 [INFO] [stderr] Compiling indexmap v2.1.0 [INFO] [stderr] Checking rand v0.8.5 [INFO] [stderr] Checking urlencoding v2.1.3 [INFO] [stderr] Checking http-body v0.4.5 [INFO] [stderr] Checking hex v0.4.3 [INFO] [stderr] Compiling openssl-sys v0.9.91 [INFO] [stderr] Checking regex-automata v0.3.6 [INFO] [stderr] Compiling native-tls v0.2.11 [INFO] [stderr] Checking is-terminal v0.4.9 [INFO] [stderr] Checking tempfile v3.7.1 [INFO] [stderr] Checking crypto-common v0.1.6 [INFO] [stderr] Checking anstream v0.3.2 [INFO] [stderr] Checking block-buffer v0.10.4 [INFO] [stderr] Checking digest v0.10.7 [INFO] [stderr] Compiling futures-macro v0.3.29 [INFO] [stderr] Compiling tokio-macros v2.1.0 [INFO] [stderr] Compiling openssl-macros v0.1.1 [INFO] [stderr] Compiling clap_derive v4.3.12 [INFO] [stderr] Checking clap_builder v4.3.22 [INFO] [stderr] Checking sha1 v0.10.5 [INFO] [stderr] Compiling toml_edit v0.19.15 [INFO] [stderr] Compiling thiserror-impl v1.0.38 [INFO] [stderr] Checking regex v1.9.3 [INFO] [stderr] Checking tokio v1.32.0 [INFO] [stderr] Checking serde_urlencoded v0.7.1 [INFO] [stderr] Checking serde_bytes v0.11.12 [INFO] [stderr] Compiling proc-macro-crate v1.3.1 [INFO] [stderr] Checking serde_bencode v0.2.3 [INFO] [stderr] Compiling int-enum-impl v0.5.0 [INFO] [stderr] Checking clap v4.3.22 [INFO] [stderr] Checking int-enum v0.5.0 [INFO] [stderr] Checking tokio-util v0.7.10 [INFO] [stderr] Checking tokio-native-tls v0.3.1 [INFO] [stderr] Checking futures-executor v0.3.29 [INFO] [stderr] Checking futures v0.3.29 [INFO] [stderr] Checking h2 v0.3.20 [INFO] [stderr] Checking hyper v0.14.27 [INFO] [stderr] Checking hyper-tls v0.5.0 [INFO] [stderr] Checking reqwest v0.11.18 [INFO] [stderr] Checking bittorrent-starter-rust v0.1.0 (/opt/rustwide/workdir) [INFO] [stdout] warning: unused import: `sink::SinkExt` [INFO] [stdout] --> src/main.rs:3:15 [INFO] [stdout] | [INFO] [stdout] 3 | use futures::{sink::SinkExt, stream::StreamExt}; [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `hex` [INFO] [stdout] --> src/main.rs:4:5 [INFO] [stdout] | [INFO] [stdout] 4 | use hex; [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the item `reqwest` is imported redundantly [INFO] [stdout] --> src/main.rs:6:5 [INFO] [stdout] | [INFO] [stdout] 6 | use reqwest; [INFO] [stdout] | ^^^^^^^ the item `reqwest` is already defined by prelude [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `Read` [INFO] [stdout] --> src/peer.rs:3:29 [INFO] [stdout] | [INFO] [stdout] 3 | use std::io::{self, Cursor, Read}; [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `sink::SinkExt` [INFO] [stdout] --> src/main.rs:3:15 [INFO] [stdout] | [INFO] [stdout] 3 | use futures::{sink::SinkExt, stream::StreamExt}; [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `hex` [INFO] [stdout] --> src/main.rs:4:5 [INFO] [stdout] | [INFO] [stdout] 4 | use hex; [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the item `reqwest` is imported redundantly [INFO] [stdout] --> src/main.rs:6:5 [INFO] [stdout] | [INFO] [stdout] 6 | use reqwest; [INFO] [stdout] | ^^^^^^^ the item `reqwest` is already defined by prelude [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `Read` [INFO] [stdout] --> src/peer.rs:3:29 [INFO] [stdout] | [INFO] [stdout] 3 | use std::io::{self, Cursor, Read}; [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `tag` [INFO] [stdout] --> src/peer.rs:120:40 [INFO] [stdout] | [INFO] [stdout] 120 | let error_payload_not_empty = |tag: MessageTag| { [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_tag` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `tag` [INFO] [stdout] --> src/peer.rs:129:35 [INFO] [stdout] | [INFO] [stdout] 129 | let error_invalid_size = |tag: MessageTag, len: usize| { [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_tag` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `tag` [INFO] [stdout] --> src/peer.rs:120:40 [INFO] [stdout] | [INFO] [stdout] 120 | let error_payload_not_empty = |tag: MessageTag| { [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_tag` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `output_file` [INFO] [stdout] --> src/main.rs:56:13 [INFO] [stdout] | [INFO] [stdout] 56 | output_file, [INFO] [stdout] | ^^^^^^^^^^^ help: try ignoring the field: `output_file: _` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `index` [INFO] [stdout] --> src/main.rs:59:17 [INFO] [stdout] | [INFO] [stdout] 59 | let index = 0; [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_index` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `peer_address` [INFO] [stdout] --> src/main.rs:100:17 [INFO] [stdout] | [INFO] [stdout] 100 | let peer_address = peers [INFO] [stdout] | ^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_peer_address` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `stream` [INFO] [stdout] --> src/main.rs:135:17 [INFO] [stdout] | [INFO] [stdout] 135 | let stream = streams[0].as_mut().unwrap(); [INFO] [stdout] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_stream` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `tag` [INFO] [stdout] --> src/peer.rs:129:35 [INFO] [stdout] | [INFO] [stdout] 129 | let error_invalid_size = |tag: MessageTag, len: usize| { [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_tag` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `BLOCK_SIZE` is never used [INFO] [stdout] --> src/main.rs:49:7 [INFO] [stdout] | [INFO] [stdout] 49 | const BLOCK_SIZE: usize = 1 << 14; [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `PeerState` is never constructed [INFO] [stdout] --> src/peer.rs:343:8 [INFO] [stdout] | [INFO] [stdout] 343 | struct PeerState { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `new` is never used [INFO] [stdout] --> src/peer.rs:351:8 [INFO] [stdout] | [INFO] [stdout] 350 | impl PeerState { [INFO] [stdout] | -------------- associated function in this implementation [INFO] [stdout] 351 | fn new() -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `interval`, `min_interval`, `tracker_id`, `complete`, and `incomplete` are never read [INFO] [stdout] --> src/tracker.rs:23:9 [INFO] [stdout] | [INFO] [stdout] 22 | Peers { [INFO] [stdout] | ----- fields in this variant [INFO] [stdout] 23 | interval: usize, [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] 24 | #[serde(rename = "min interval")] [INFO] [stdout] 25 | min_interval: Option, [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] 26 | #[serde(rename = "tracker id")] [INFO] [stdout] 27 | tracker_id: Option, [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] 28 | complete: usize, [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] 29 | incomplete: usize, [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 14 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `output_file` [INFO] [stdout] --> src/main.rs:56:13 [INFO] [stdout] | [INFO] [stdout] 56 | output_file, [INFO] [stdout] | ^^^^^^^^^^^ help: try ignoring the field: `output_file: _` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `index` [INFO] [stdout] --> src/main.rs:59:17 [INFO] [stdout] | [INFO] [stdout] 59 | let index = 0; [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_index` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `peer_address` [INFO] [stdout] --> src/main.rs:100:17 [INFO] [stdout] | [INFO] [stdout] 100 | let peer_address = peers [INFO] [stdout] | ^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_peer_address` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `stream` [INFO] [stdout] --> src/main.rs:135:17 [INFO] [stdout] | [INFO] [stdout] 135 | let stream = streams[0].as_mut().unwrap(); [INFO] [stdout] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_stream` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `BLOCK_SIZE` is never used [INFO] [stdout] --> src/main.rs:49:7 [INFO] [stdout] | [INFO] [stdout] 49 | const BLOCK_SIZE: usize = 1 << 14; [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `PeerState` is never constructed [INFO] [stdout] --> src/peer.rs:343:8 [INFO] [stdout] | [INFO] [stdout] 343 | struct PeerState { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `new` is never used [INFO] [stdout] --> src/peer.rs:351:8 [INFO] [stdout] | [INFO] [stdout] 350 | impl PeerState { [INFO] [stdout] | -------------- associated function in this implementation [INFO] [stdout] 351 | fn new() -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `interval`, `min_interval`, `tracker_id`, `complete`, and `incomplete` are never read [INFO] [stdout] --> src/tracker.rs:23:9 [INFO] [stdout] | [INFO] [stdout] 22 | Peers { [INFO] [stdout] | ----- fields in this variant [INFO] [stdout] 23 | interval: usize, [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] 24 | #[serde(rename = "min interval")] [INFO] [stdout] 25 | min_interval: Option, [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] 26 | #[serde(rename = "tracker id")] [INFO] [stdout] 27 | tracker_id: Option, [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] 28 | complete: usize, [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] 29 | incomplete: usize, [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 14 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished `dev` profile [unoptimized + debuginfo] target(s) in 32.54s [INFO] running `Command { std: "docker" "inspect" "11204af4d7659018c40efbcf7d2be7b02cbf6cfc4f53dd42a0fc9b1827375d56", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "11204af4d7659018c40efbcf7d2be7b02cbf6cfc4f53dd42a0fc9b1827375d56", kill_on_drop: false }` [INFO] [stdout] 11204af4d7659018c40efbcf7d2be7b02cbf6cfc4f53dd42a0fc9b1827375d56