[INFO] cloning repository https://github.com/optifat/rustorrent [INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/optifat/rustorrent" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Foptifat%2Frustorrent", kill_on_drop: false }` [INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Foptifat%2Frustorrent'... [INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }` [INFO] [stdout] ead91563e8468f0262b96e8181c6b80ef2abc7cc [INFO] testing optifat/rustorrent against 1.60.0 for beta-1.61-1 [INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Foptifat%2Frustorrent" "/workspace/builds/worker-10/source", kill_on_drop: false }` [INFO] [stderr] Cloning into '/workspace/builds/worker-10/source'... [INFO] [stderr] done. [INFO] validating manifest of git repo https://github.com/optifat/rustorrent on toolchain 1.60.0 [INFO] running `Command { std: "/workspace/cargo-home/bin/cargo" "+1.60.0" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] started tweaking git repo https://github.com/optifat/rustorrent [INFO] finished tweaking git repo https://github.com/optifat/rustorrent [INFO] tweaked toml for git repo https://github.com/optifat/rustorrent written to /workspace/builds/worker-10/source/Cargo.toml [INFO] running `Command { std: "/workspace/cargo-home/bin/cargo" "+1.60.0" "generate-lockfile" "--manifest-path" "Cargo.toml" "-Zno-index-update", kill_on_drop: false }` [INFO] running `Command { std: "/workspace/cargo-home/bin/cargo" "+1.60.0" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] [stderr] Blocking waiting for file lock on package cache [INFO] [stderr] Downloading crates ... [INFO] [stderr] Downloaded portpicker v0.1.1 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-10/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-10/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:b0c94ce3c1162fcb8e57cac5b65ec2f72eabb1eebea4fcc35e269e823f681646" "/opt/rustwide/cargo-home/bin/cargo" "+1.60.0" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] 8f0d3c9edb2b5ddbf852f54baa914228ea9732ed150115e710d26dc6686773e2 [INFO] running `Command { std: "docker" "start" "-a" "8f0d3c9edb2b5ddbf852f54baa914228ea9732ed150115e710d26dc6686773e2", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "8f0d3c9edb2b5ddbf852f54baa914228ea9732ed150115e710d26dc6686773e2", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "8f0d3c9edb2b5ddbf852f54baa914228ea9732ed150115e710d26dc6686773e2", kill_on_drop: false }` [INFO] [stdout] 8f0d3c9edb2b5ddbf852f54baa914228ea9732ed150115e710d26dc6686773e2 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-10/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-10/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=warn" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:b0c94ce3c1162fcb8e57cac5b65ec2f72eabb1eebea4fcc35e269e823f681646" "/opt/rustwide/cargo-home/bin/cargo" "+1.60.0" "build" "--frozen" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] 75684ee27b9fae5b100da2e344931e73b4c6d86b1f659a2ae69eaa6ab0393eea [INFO] running `Command { std: "docker" "start" "-a" "75684ee27b9fae5b100da2e344931e73b4c6d86b1f659a2ae69eaa6ab0393eea", kill_on_drop: false }` [INFO] [stderr] Blocking waiting for file lock on package cache [INFO] [stderr] Compiling syn v1.0.91 [INFO] [stderr] Compiling futures-core v0.3.21 [INFO] [stderr] Compiling futures-channel v0.3.21 [INFO] [stderr] Compiling futures-sink v0.3.21 [INFO] [stderr] Compiling futures-util v0.3.21 [INFO] [stderr] Compiling curl v0.4.43 [INFO] [stderr] Compiling libz-sys v1.1.5 [INFO] [stderr] Compiling curl-sys v0.4.53+curl-7.82.0 [INFO] [stderr] Compiling getrandom v0.2.6 [INFO] [stderr] Compiling mio v0.8.2 [INFO] [stderr] Compiling sha-1 v0.9.8 [INFO] [stderr] Compiling rand_core v0.6.3 [INFO] [stderr] Compiling rand_chacha v0.3.1 [INFO] [stderr] Compiling rand v0.8.5 [INFO] [stderr] Compiling portpicker v0.1.1 [INFO] [stderr] Compiling futures-macro v0.3.21 [INFO] [stderr] Compiling tokio-macros v1.7.0 [INFO] [stderr] Compiling tokio v1.17.0 [INFO] [stderr] Compiling futures-executor v0.3.21 [INFO] [stderr] Compiling futures v0.3.21 [INFO] [stderr] Compiling rustorrent v0.1.0 (/opt/rustwide/workdir) [INFO] [stdout] warning: unused import: `futures::executor::block_on` [INFO] [stdout] --> src/tracker/mod.rs:2:5 [INFO] [stdout] | [INFO] [stdout] 2 | use futures::executor::block_on; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::torrent_file_handler::torrent_file_parser::parse_byte_data` [INFO] [stdout] --> src/tracker/mod.rs:5:5 [INFO] [stdout] | [INFO] [stdout] 5 | use crate::torrent_file_handler::torrent_file_parser::parse_byte_data; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `interval` [INFO] [stdout] --> src/download/mod.rs:55:21 [INFO] [stdout] | [INFO] [stdout] 55 | let (peers, interval) = tracker::request_peers(&*torrent_data_ptr, &peer_id, 7878, &info_hash); [INFO] [stdout] | ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_interval` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `current_progress` [INFO] [stdout] --> src/download/mod.rs:123:17 [INFO] [stdout] | [INFO] [stdout] 123 | let mut current_progress = download_status.pieces_downloaded; [INFO] [stdout] | ^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_current_progress` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: value assigned to `bytes_written_into_file` is never read [INFO] [stdout] --> src/filewriter/mod.rs:72:17 [INFO] [stdout] | [INFO] [stdout] 72 | bytes_written_into_file += bytes_from_prev_piece.len(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_assignments)]` on by default [INFO] [stdout] = help: maybe it is overwritten before being read? [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `total_bytes` [INFO] [stdout] --> src/filewriter/mod.rs:100:13 [INFO] [stdout] | [INFO] [stdout] 100 | let total_bytes = current_piece_bytes.len(); [INFO] [stdout] | ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_total_bytes` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `interval` [INFO] [stdout] --> src/tracker/tcp_connection.rs:9:13 [INFO] [stdout] | [INFO] [stdout] 9 | let mut interval = 0; [INFO] [stdout] | ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_interval` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `err` [INFO] [stdout] --> src/tracker/tcp_connection.rs:21:20 [INFO] [stdout] | [INFO] [stdout] 21 | if let Err(err) = transfer.perform(){ [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_err` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `peers_list` [INFO] [stdout] --> src/tracker/udp_connection.rs:14:13 [INFO] [stdout] | [INFO] [stdout] 14 | let mut peers_list: Vec = Vec::new(); [INFO] [stdout] | ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_peers_list` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `interval` [INFO] [stdout] --> src/tracker/udp_connection.rs:15:13 [INFO] [stdout] | [INFO] [stdout] 15 | let mut interval = 0; [INFO] [stdout] | ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_interval` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `bytes_recieved` is assigned to, but never used [INFO] [stdout] --> src/tracker/udp_connection.rs:30:9 [INFO] [stdout] | [INFO] [stdout] 30 | let bytes_recieved; [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: consider using `_bytes_recieved` instead [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: value assigned to `bytes_recieved` is never read [INFO] [stdout] --> src/tracker/udp_connection.rs:34:13 [INFO] [stdout] | [INFO] [stdout] 34 | bytes_recieved = number_of_bytes; [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: maybe it is overwritten before being read? [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `number_of_leechers` [INFO] [stdout] --> src/tracker/udp_connection.rs:188:9 [INFO] [stdout] | [INFO] [stdout] 188 | let number_of_leechers = u32::from_be_bytes(response[12..16].try_into().unwrap()); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_number_of_leechers` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `number_of_seeders` [INFO] [stdout] --> src/tracker/udp_connection.rs:189:9 [INFO] [stdout] | [INFO] [stdout] 189 | let number_of_seeders = u32::from_be_bytes(response[16..20].try_into().unwrap()); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_number_of_seeders` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `index` [INFO] [stdout] --> src/p2p/messages.rs:103:9 [INFO] [stdout] | [INFO] [stdout] 103 | let index = u32::from_be_bytes(message[5..9].try_into().unwrap()); [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_index` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `begin` [INFO] [stdout] --> src/p2p/messages.rs:104:9 [INFO] [stdout] | [INFO] [stdout] 104 | let begin = u32::from_be_bytes(message[9..13].try_into().unwrap()); [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_begin` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/torrent_file_handler/torrent_data_extractor.rs:79:9 [INFO] [stdout] | [INFO] [stdout] 79 | let mut announce_list; [INFO] [stdout] | ----^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_mut)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/tracker/tcp_connection.rs:9:9 [INFO] [stdout] | [INFO] [stdout] 9 | let mut interval = 0; [INFO] [stdout] | ----^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/tracker/udp_connection.rs:14:9 [INFO] [stdout] | [INFO] [stdout] 14 | let mut peers_list: Vec = Vec::new(); [INFO] [stdout] | ----^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/tracker/udp_connection.rs:15:9 [INFO] [stdout] | [INFO] [stdout] 15 | let mut interval = 0; [INFO] [stdout] | ----^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/download/mod.rs:59:13 [INFO] [stdout] | [INFO] [stdout] 59 | let mut current_progress = download_status.pieces_downloaded; [INFO] [stdout] | ----^^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/download/mod.rs:123:13 [INFO] [stdout] | [INFO] [stdout] 123 | let mut current_progress = download_status.pieces_downloaded; [INFO] [stdout] | ----^^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `remove_directory` [INFO] [stdout] --> src/filewriter/mod.rs:13:8 [INFO] [stdout] | [INFO] [stdout] 13 | pub fn remove_directory(path: &String) -> io::Result<()>{ [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `create_have_msg` [INFO] [stdout] --> src/p2p/messages.rs:29:8 [INFO] [stdout] | [INFO] [stdout] 29 | pub fn create_have_msg(index: u32) -> Vec{ [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `parse_have_msg` [INFO] [stdout] --> src/p2p/messages.rs:113:8 [INFO] [stdout] | [INFO] [stdout] 113 | pub fn parse_have_msg(expected_index:u32, message: Vec){ [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/download/mod.rs:41:5 [INFO] [stdout] | [INFO] [stdout] 41 | filewriter::create_directory(&saved_pieces_dir_name); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_must_use)]` on by default [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/filewriter/mod.rs:53:13 [INFO] [stdout] | [INFO] [stdout] 53 | create_directory(&dirs); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/filewriter/mod.rs:66:17 [INFO] [stdout] | [INFO] [stdout] 66 | f.write_at(&bytes_from_prev_piece, bytes_written_into_file as u64); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/filewriter/mod.rs:71:17 [INFO] [stdout] | [INFO] [stdout] 71 | f.write_at(&bytes_from_prev_piece[0..file.size], bytes_written_into_file as u64); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/filewriter/mod.rs:80:17 [INFO] [stdout] | [INFO] [stdout] 80 | f.write_at(&bytes_from_prev_piece, bytes_written_into_file as u64); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/filewriter/mod.rs:90:13 [INFO] [stdout] | [INFO] [stdout] 90 | f.write_at(¤t_piece_bytes, bytes_written_into_file as u64); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/filewriter/mod.rs:101:9 [INFO] [stdout] | [INFO] [stdout] 101 | f.write_at(¤t_piece_bytes[0..file.size - bytes_written_into_file], bytes_written_into_file as u64); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/tracker/tcp_connection.rs:14:5 [INFO] [stdout] | [INFO] [stdout] 14 | tracker.timeout(std::time::Duration::from_millis(20000)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 33 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished dev [unoptimized + debuginfo] target(s) in 1m 13s [INFO] running `Command { std: "docker" "inspect" "75684ee27b9fae5b100da2e344931e73b4c6d86b1f659a2ae69eaa6ab0393eea", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "75684ee27b9fae5b100da2e344931e73b4c6d86b1f659a2ae69eaa6ab0393eea", kill_on_drop: false }` [INFO] [stdout] 75684ee27b9fae5b100da2e344931e73b4c6d86b1f659a2ae69eaa6ab0393eea [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-10/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-10/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=warn" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:b0c94ce3c1162fcb8e57cac5b65ec2f72eabb1eebea4fcc35e269e823f681646" "/opt/rustwide/cargo-home/bin/cargo" "+1.60.0" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] 1cd683919a0878687f8e1738833adc1e6ad42a81c063da26ab6ec7aae1bc151f [INFO] running `Command { std: "docker" "start" "-a" "1cd683919a0878687f8e1738833adc1e6ad42a81c063da26ab6ec7aae1bc151f", kill_on_drop: false }` [INFO] [stderr] Blocking waiting for file lock on package cache [INFO] [stderr] Compiling rustorrent v0.1.0 (/opt/rustwide/workdir) [INFO] [stdout] error[E0433]: failed to resolve: unresolved import [INFO] [stdout] --> src/torrent_file_handler/torrent_file_parser.rs:214:27 [INFO] [stdout] | [INFO] [stdout] 214 | assert_eq!(crate::torrent_file_parser::parse_int(&"42e".to_string().as_bytes().to_vec(), &mut index), 42); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | unresolved import [INFO] [stdout] | help: a similar path exists: `crate::torrent_file_handler::torrent_file_parser` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0433]: failed to resolve: unresolved import [INFO] [stdout] --> src/torrent_file_handler/torrent_file_parser.rs:221:27 [INFO] [stdout] | [INFO] [stdout] 221 | assert_eq!(crate::torrent_file_parser::parse_int(&"0e".to_string().as_bytes().to_vec(), &mut index), 0); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | unresolved import [INFO] [stdout] | help: a similar path exists: `crate::torrent_file_handler::torrent_file_parser` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0433]: failed to resolve: unresolved import [INFO] [stdout] --> src/torrent_file_handler/torrent_file_parser.rs:228:27 [INFO] [stdout] | [INFO] [stdout] 228 | assert_eq!(crate::torrent_file_parser::parse_int(&"-75637e".to_string().as_bytes().to_vec(), &mut index), -75637); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | unresolved import [INFO] [stdout] | help: a similar path exists: `crate::torrent_file_handler::torrent_file_parser` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0433]: failed to resolve: unresolved import [INFO] [stdout] --> src/torrent_file_handler/torrent_file_parser.rs:235:27 [INFO] [stdout] | [INFO] [stdout] 235 | assert_eq!(crate::torrent_file_parser::parse_string(&"4:spam".to_string().as_bytes().to_vec(), &mut index), "spam"); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | unresolved import [INFO] [stdout] | help: a similar path exists: `crate::torrent_file_handler::torrent_file_parser` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0433]: failed to resolve: unresolved import [INFO] [stdout] --> src/torrent_file_handler/torrent_file_parser.rs:242:27 [INFO] [stdout] | [INFO] [stdout] 242 | ... assert_eq!(crate::torrent_file_parser::parse_string(&"13:parrot sketch".to_string().as_bytes().to_vec(), &mut index), "parrot sketc... [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | unresolved import [INFO] [stdout] | help: a similar path exists: `crate::torrent_file_handler::torrent_file_parser` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0433]: failed to resolve: unresolved import [INFO] [stdout] --> src/torrent_file_handler/torrent_file_parser.rs:250:20 [INFO] [stdout] | [INFO] [stdout] 250 | crate::torrent_file_parser::parse_list(&"13:parrot sketchi42ee".to_string().as_bytes().to_vec(), &mut index) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | unresolved import [INFO] [stdout] | help: a similar path exists: `crate::torrent_file_handler::torrent_file_parser` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0433]: failed to resolve: unresolved import [INFO] [stdout] --> src/torrent_file_handler/torrent_file_parser.rs:261:20 [INFO] [stdout] | [INFO] [stdout] 261 | crate::torrent_file_parser::parse_dict(&"3:bar4:spam3:fooi42ee".to_string().as_bytes().to_vec(), &mut index) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | unresolved import [INFO] [stdout] | help: a similar path exists: `crate::torrent_file_handler::torrent_file_parser` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0433]: failed to resolve: unresolved import [INFO] [stdout] --> src/torrent_file_handler/torrent_file_parser.rs:272:24 [INFO] [stdout] | [INFO] [stdout] 272 | let _ = crate::torrent_file_parser::parse_dict(&example, &mut index); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | unresolved import [INFO] [stdout] | help: a similar path exists: `crate::torrent_file_handler::torrent_file_parser` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0433]: failed to resolve: unresolved import [INFO] [stdout] --> src/torrent_file_handler/torrent_file_parser.rs:274:31 [INFO] [stdout] | [INFO] [stdout] 274 | assert_eq!(crate::torrent_file_parser::INFO_START, 6); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | unresolved import [INFO] [stdout] | help: a similar path exists: `crate::torrent_file_handler::torrent_file_parser` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0433]: failed to resolve: unresolved import [INFO] [stdout] --> src/torrent_file_handler/torrent_file_parser.rs:275:31 [INFO] [stdout] | [INFO] [stdout] 275 | assert_eq!(crate::torrent_file_parser::INFO_END, 12); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | unresolved import [INFO] [stdout] | help: a similar path exists: `crate::torrent_file_handler::torrent_file_parser` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0433]: failed to resolve: unresolved import [INFO] [stdout] --> src/torrent_file_handler/torrent_file_parser.rs:277:27 [INFO] [stdout] | [INFO] [stdout] 277 | assert_eq!(crate::torrent_file_parser::create_info_hash(&example), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | unresolved import [INFO] [stdout] | help: a similar path exists: `crate::torrent_file_handler::torrent_file_parser` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0433]: failed to resolve: unresolved import [INFO] [stdout] --> src/torrent_file_handler/torrent_file_parser.rs:285:24 [INFO] [stdout] | [INFO] [stdout] 285 | let _ = crate::torrent_file_parser::parse_dict(&example, &mut index); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | unresolved import [INFO] [stdout] | help: a similar path exists: `crate::torrent_file_handler::torrent_file_parser` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0433]: failed to resolve: unresolved import [INFO] [stdout] --> src/torrent_file_handler/torrent_file_parser.rs:287:31 [INFO] [stdout] | [INFO] [stdout] 287 | assert_eq!(crate::torrent_file_parser::INFO_START, 6); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | unresolved import [INFO] [stdout] | help: a similar path exists: `crate::torrent_file_handler::torrent_file_parser` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0433]: failed to resolve: unresolved import [INFO] [stdout] --> src/torrent_file_handler/torrent_file_parser.rs:288:31 [INFO] [stdout] | [INFO] [stdout] 288 | assert_eq!(crate::torrent_file_parser::INFO_END, 38); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | unresolved import [INFO] [stdout] | help: a similar path exists: `crate::torrent_file_handler::torrent_file_parser` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0433]: failed to resolve: unresolved import [INFO] [stdout] --> src/torrent_file_handler/torrent_file_parser.rs:290:27 [INFO] [stdout] | [INFO] [stdout] 290 | assert_eq!(crate::torrent_file_parser::create_info_hash(&example), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | unresolved import [INFO] [stdout] | help: a similar path exists: `crate::torrent_file_handler::torrent_file_parser` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `futures::executor::block_on` [INFO] [stdout] --> src/tracker/mod.rs:2:5 [INFO] [stdout] | [INFO] [stdout] 2 | use futures::executor::block_on; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::torrent_file_handler::torrent_file_parser::parse_byte_data` [INFO] [stdout] --> src/tracker/mod.rs:5:5 [INFO] [stdout] | [INFO] [stdout] 5 | use crate::torrent_file_handler::torrent_file_parser::parse_byte_data; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: aborting due to 15 previous errors; 2 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] For more information about this error, try `rustc --explain E0433`. [INFO] [stdout] [INFO] [stderr] error: could not compile `rustorrent` due to 16 previous errors; 2 warnings emitted [INFO] running `Command { std: "docker" "inspect" "1cd683919a0878687f8e1738833adc1e6ad42a81c063da26ab6ec7aae1bc151f", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "1cd683919a0878687f8e1738833adc1e6ad42a81c063da26ab6ec7aae1bc151f", kill_on_drop: false }` [INFO] [stdout] 1cd683919a0878687f8e1738833adc1e6ad42a81c063da26ab6ec7aae1bc151f