[INFO] cloning repository https://github.com/ericrobolson/g_network [INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/ericrobolson/g_network" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fericrobolson%2Fg_network", kill_on_drop: false }` [INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fericrobolson%2Fg_network'... [INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }` [INFO] [stdout] 6a2f880a6fb3a4ba4556a750091bf361a51559ec [INFO] checking ericrobolson/g_network/6a2f880a6fb3a4ba4556a750091bf361a51559ec against master#f609b7e0586f81fefb3523e3e17adf779ac416be for pr-129466-2 [INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fericrobolson%2Fg_network" "/workspace/builds/worker-0-tc1/source", kill_on_drop: false }` [INFO] [stderr] Cloning into '/workspace/builds/worker-0-tc1/source'... [INFO] [stderr] done. [INFO] validating manifest of git repo https://github.com/ericrobolson/g_network on toolchain f609b7e0586f81fefb3523e3e17adf779ac416be [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+f609b7e0586f81fefb3523e3e17adf779ac416be" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] started tweaking git repo https://github.com/ericrobolson/g_network [INFO] finished tweaking git repo https://github.com/ericrobolson/g_network [INFO] tweaked toml for git repo https://github.com/ericrobolson/g_network written to /workspace/builds/worker-0-tc1/source/Cargo.toml [INFO] crate git repo https://github.com/ericrobolson/g_network 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" "+f609b7e0586f81fefb3523e3e17adf779ac416be" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] [stderr] Downloading crates ... [INFO] [stderr] Downloaded crc32fast v1.3.0 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-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:6252d7ea7fb8caaf7af6d800c5fb250a9cd862b9a7f9508afb3c54fa7fe1102e" "/opt/rustwide/cargo-home/bin/cargo" "+f609b7e0586f81fefb3523e3e17adf779ac416be" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] 8c057bd58e2a3479cf4a4e4a7a9ffb90f86fc1eac7d6f7a25ec8f973fa3e5fe4 [INFO] running `Command { std: "docker" "start" "-a" "8c057bd58e2a3479cf4a4e4a7a9ffb90f86fc1eac7d6f7a25ec8f973fa3e5fe4", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "8c057bd58e2a3479cf4a4e4a7a9ffb90f86fc1eac7d6f7a25ec8f973fa3e5fe4", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "8c057bd58e2a3479cf4a4e4a7a9ffb90f86fc1eac7d6f7a25ec8f973fa3e5fe4", kill_on_drop: false }` [INFO] [stdout] 8c057bd58e2a3479cf4a4e4a7a9ffb90f86fc1eac7d6f7a25ec8f973fa3e5fe4 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-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:6252d7ea7fb8caaf7af6d800c5fb250a9cd862b9a7f9508afb3c54fa7fe1102e" "/opt/rustwide/cargo-home/bin/cargo" "+f609b7e0586f81fefb3523e3e17adf779ac416be" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] cff71824a0a6bf8c276d5c86c82da800ce0835e6842cd79882507d6a30cedbc6 [INFO] running `Command { std: "docker" "start" "-a" "cff71824a0a6bf8c276d5c86c82da800ce0835e6842cd79882507d6a30cedbc6", kill_on_drop: false }` [INFO] [stderr] Compiling crc32fast v1.3.0 [INFO] [stderr] Checking networking v0.1.0 (/opt/rustwide/workdir) [INFO] [stdout] warning: unused doc comment [INFO] [stdout] --> src/connection.rs:106:13 [INFO] [stdout] | [INFO] [stdout] 106 | /// This will ensure that we only start acking valid packets. [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 107 | latest_ack_id: PacketId::from(0).decrement(), [INFO] [stdout] | -------------------------------------------- rustdoc does not generate documentation for expression fields [INFO] [stdout] | [INFO] [stdout] = help: use `//` for a plain comment [INFO] [stdout] = note: `#[warn(unused_doc_comments)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused doc comment [INFO] [stdout] --> src/connection.rs:108:13 [INFO] [stdout] | [INFO] [stdout] 108 | /// This ensures that we start polling at the proper id. [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 109 | next_id_to_poll: packet_id::Inner::MAX.into(), [INFO] [stdout] | --------------------------------------------- rustdoc does not generate documentation for expression fields [INFO] [stdout] | [INFO] [stdout] = help: use `//` for a plain comment [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused doc comment [INFO] [stdout] --> src/connection.rs:110:13 [INFO] [stdout] | [INFO] [stdout] 110 | /// The next packet to send off. [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 111 | next_packet_id: 0.into(), [INFO] [stdout] | ------------------------ rustdoc does not generate documentation for expression fields [INFO] [stdout] | [INFO] [stdout] = help: use `//` for a plain comment [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused doc comment [INFO] [stdout] --> src/connection.rs:112:13 [INFO] [stdout] | [INFO] [stdout] 112 | /// The capacity for each packet. [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 113 | packet_capacity, [INFO] [stdout] | --------------- rustdoc does not generate documentation for expression fields [INFO] [stdout] | [INFO] [stdout] = help: use `//` for a plain comment [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused doc comment [INFO] [stdout] --> src/connection.rs:114:13 [INFO] [stdout] | [INFO] [stdout] 114 | /// The received packets. [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 115 | received_packet_buffer: RingBuffer::new(), [INFO] [stdout] | ----------------------------------------- rustdoc does not generate documentation for expression fields [INFO] [stdout] | [INFO] [stdout] = help: use `//` for a plain comment [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused doc comment [INFO] [stdout] --> src/connection.rs:116:13 [INFO] [stdout] | [INFO] [stdout] 116 | /// The sent packets and the delivery status. [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 117 | sent_packet_sequence_buffer: RingBuffer::new(), [INFO] [stdout] | ---------------------------------------------- rustdoc does not generate documentation for expression fields [INFO] [stdout] | [INFO] [stdout] = help: use `//` for a plain comment [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused doc comment [INFO] [stdout] --> src/connection.rs:118:13 [INFO] [stdout] | [INFO] [stdout] 118 | /// The socket handle. [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 119 | socket, [INFO] [stdout] | ------ rustdoc does not generate documentation for expression fields [INFO] [stdout] | [INFO] [stdout] = help: use `//` for a plain comment [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `packet::*` [INFO] [stdout] --> src/lib.rs:15:5 [INFO] [stdout] | [INFO] [stdout] 15 | use packet::*; [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `packet_id::*` [INFO] [stdout] --> src/lib.rs:16:5 [INFO] [stdout] | [INFO] [stdout] 16 | use packet_id::*; [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused doc comment [INFO] [stdout] --> src/connection.rs:106:13 [INFO] [stdout] | [INFO] [stdout] 106 | /// This will ensure that we only start acking valid packets. [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 107 | latest_ack_id: PacketId::from(0).decrement(), [INFO] [stdout] | -------------------------------------------- rustdoc does not generate documentation for expression fields [INFO] [stdout] | [INFO] [stdout] = help: use `//` for a plain comment [INFO] [stdout] = note: `#[warn(unused_doc_comments)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused doc comment [INFO] [stdout] --> src/connection.rs:108:13 [INFO] [stdout] | [INFO] [stdout] 108 | /// This ensures that we start polling at the proper id. [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 109 | next_id_to_poll: packet_id::Inner::MAX.into(), [INFO] [stdout] | --------------------------------------------- rustdoc does not generate documentation for expression fields [INFO] [stdout] | [INFO] [stdout] = help: use `//` for a plain comment [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused doc comment [INFO] [stdout] --> src/connection.rs:110:13 [INFO] [stdout] | [INFO] [stdout] 110 | /// The next packet to send off. [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 111 | next_packet_id: 0.into(), [INFO] [stdout] | ------------------------ rustdoc does not generate documentation for expression fields [INFO] [stdout] | [INFO] [stdout] = help: use `//` for a plain comment [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused doc comment [INFO] [stdout] --> src/connection.rs:112:13 [INFO] [stdout] | [INFO] [stdout] 112 | /// The capacity for each packet. [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 113 | packet_capacity, [INFO] [stdout] | --------------- rustdoc does not generate documentation for expression fields [INFO] [stdout] | [INFO] [stdout] = help: use `//` for a plain comment [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused doc comment [INFO] [stdout] --> src/connection.rs:114:13 [INFO] [stdout] | [INFO] [stdout] 114 | /// The received packets. [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 115 | received_packet_buffer: RingBuffer::new(), [INFO] [stdout] | ----------------------------------------- rustdoc does not generate documentation for expression fields [INFO] [stdout] | [INFO] [stdout] = help: use `//` for a plain comment [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused doc comment [INFO] [stdout] --> src/connection.rs:116:13 [INFO] [stdout] | [INFO] [stdout] 116 | /// The sent packets and the delivery status. [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 117 | sent_packet_sequence_buffer: RingBuffer::new(), [INFO] [stdout] | ---------------------------------------------- rustdoc does not generate documentation for expression fields [INFO] [stdout] | [INFO] [stdout] = help: use `//` for a plain comment [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused doc comment [INFO] [stdout] --> src/connection.rs:118:13 [INFO] [stdout] | [INFO] [stdout] 118 | /// The socket handle. [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 119 | socket, [INFO] [stdout] | ------ rustdoc does not generate documentation for expression fields [INFO] [stdout] | [INFO] [stdout] = help: use `//` for a plain comment [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `packet_id::*` [INFO] [stdout] --> src/lib.rs:16:5 [INFO] [stdout] | [INFO] [stdout] 16 | use packet_id::*; [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unreachable expression [INFO] [stdout] --> src/connection.rs:237:17 [INFO] [stdout] | [INFO] [stdout] 199 | / match Packet::from_bytes(&buff) { [INFO] [stdout] 200 | | Ok(packet) => { [INFO] [stdout] 201 | | // Read in sequence from the packet header [INFO] [stdout] 202 | | let ack_id = packet.ack_id(); [INFO] [stdout] ... | [INFO] [stdout] 234 | | Err(_) => todo!(), [INFO] [stdout] 235 | | } [INFO] [stdout] | |_________________- any code following this `match` expression is unreachable, as all arms diverge [INFO] [stdout] 236 | [INFO] [stdout] 237 | todo!() [INFO] [stdout] | ^^^^^^^ unreachable expression [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unreachable_code)]` on by default [INFO] [stdout] = note: this warning originates in the macro `todo` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: enum `DeliveryStatus` is never used [INFO] [stdout] --> src/connection.rs:11:6 [INFO] [stdout] | [INFO] [stdout] 11 | enum DeliveryStatus { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `BUFFER_SIZE` is never used [INFO] [stdout] --> src/connection.rs:23:7 [INFO] [stdout] | [INFO] [stdout] 23 | const BUFFER_SIZE: usize = 1024; [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Connection` is never constructed [INFO] [stdout] --> src/connection.rs:27:12 [INFO] [stdout] | [INFO] [stdout] 27 | pub struct Connection [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: multiple associated items are never used [INFO] [stdout] --> src/connection.rs:46:12 [INFO] [stdout] | [INFO] [stdout] 41 | / impl Connection [INFO] [stdout] 42 | | where [INFO] [stdout] 43 | | TSocket: Socket, [INFO] [stdout] | |____________________- associated items in this implementation [INFO] [stdout] ... [INFO] [stdout] 46 | pub fn generate_packet(&mut self) -> Packet { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 58 | fn handle_acks(&mut self, packet: &Packet) { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 83 | fn mark_in_flight_as_dropped(&mut self) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 104 | pub fn new(packet_capacity: usize, socket: TSocket) -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 127 | pub fn poll_notification(&mut self) -> Option { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 194 | pub fn receive(&mut self) -> Result, PacketErr> { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 244 | fn set_acks(&self, packet: &mut Packet) { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 263 | pub fn send_packet(&mut self, mut packet: Packet) -> Result<(), SocketErr> { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait `Socket` is never used [INFO] [stdout] --> src/socket.rs:5:11 [INFO] [stdout] | [INFO] [stdout] 5 | pub trait Socket { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 15 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unreachable expression [INFO] [stdout] --> src/connection.rs:237:17 [INFO] [stdout] | [INFO] [stdout] 199 | / match Packet::from_bytes(&buff) { [INFO] [stdout] 200 | | Ok(packet) => { [INFO] [stdout] 201 | | // Read in sequence from the packet header [INFO] [stdout] 202 | | let ack_id = packet.ack_id(); [INFO] [stdout] ... | [INFO] [stdout] 234 | | Err(_) => todo!(), [INFO] [stdout] 235 | | } [INFO] [stdout] | |_________________- any code following this `match` expression is unreachable, as all arms diverge [INFO] [stdout] 236 | [INFO] [stdout] 237 | todo!() [INFO] [stdout] | ^^^^^^^ unreachable expression [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unreachable_code)]` on by default [INFO] [stdout] = note: this warning originates in the macro `todo` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `borrow::Borrow` [INFO] [stdout] --> src/test_helpers.rs:5:11 [INFO] [stdout] | [INFO] [stdout] 5 | use std::{borrow::Borrow, cell::RefCell}; [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `poll_notification` and `receive` are never used [INFO] [stdout] --> src/connection.rs:127:12 [INFO] [stdout] | [INFO] [stdout] 41 | / impl Connection [INFO] [stdout] 42 | | where [INFO] [stdout] 43 | | TSocket: Socket, [INFO] [stdout] | |____________________- methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 127 | pub fn poll_notification(&mut self) -> Option { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 194 | pub fn receive(&mut self) -> Result, PacketErr> { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `read` is never used [INFO] [stdout] --> src/socket.rs:10:8 [INFO] [stdout] | [INFO] [stdout] 5 | pub trait Socket { [INFO] [stdout] | ------ method in this trait [INFO] [stdout] ... [INFO] [stdout] 10 | fn read(&self, buff: &mut [u8]) -> Result<(), SocketErr>; [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 12 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished `dev` profile [unoptimized + debuginfo] target(s) in 0.40s [INFO] running `Command { std: "docker" "inspect" "cff71824a0a6bf8c276d5c86c82da800ce0835e6842cd79882507d6a30cedbc6", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "cff71824a0a6bf8c276d5c86c82da800ce0835e6842cd79882507d6a30cedbc6", kill_on_drop: false }` [INFO] [stdout] cff71824a0a6bf8c276d5c86c82da800ce0835e6842cd79882507d6a30cedbc6