[INFO] cloning repository https://github.com/Bronstein0x113c1c3/com_music_with_rust [INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/Bronstein0x113c1c3/com_music_with_rust" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FBronstein0x113c1c3%2Fcom_music_with_rust", kill_on_drop: false }` [INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FBronstein0x113c1c3%2Fcom_music_with_rust'... [INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }` [INFO] [stdout] eff50d3ea9199c110f9b67c2a5aedb9ed288f16e [INFO] checking Bronstein0x113c1c3/com_music_with_rust against try#22cc29ba5b459fb386c0406b9baf3a49eb0fba39 for pr-146095-1 [INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FBronstein0x113c1c3%2Fcom_music_with_rust" "/workspace/builds/worker-5-tc2/source", kill_on_drop: false }` [INFO] [stderr] Cloning into '/workspace/builds/worker-5-tc2/source'... [INFO] [stderr] done. [INFO] [stderr] Updating files: 13% (18/129) Updating files: 14% (19/129) Updating files: 15% (20/129) Updating files: 16% (21/129) Updating files: 17% (22/129) Updating files: 18% (24/129) Updating files: 19% (25/129) Updating files: 20% (26/129) Updating files: 21% (28/129) Updating files: 22% (29/129) Updating files: 23% (30/129) Updating files: 24% (31/129) Updating files: 25% (33/129) Updating files: 26% (34/129) Updating files: 27% (35/129) Updating files: 28% (37/129) Updating files: 29% (38/129) Updating files: 30% (39/129) Updating files: 31% (40/129) Updating files: 32% (42/129) Updating files: 33% (43/129) Updating files: 34% (44/129) Updating files: 35% (46/129) Updating files: 36% (47/129) Updating files: 37% (48/129) Updating files: 38% (50/129) Updating files: 39% (51/129) Updating files: 40% (52/129) Updating files: 41% (53/129) Updating files: 42% (55/129) Updating files: 43% (56/129) Updating files: 44% (57/129) Updating files: 45% (59/129) Updating files: 46% (60/129) Updating files: 47% (61/129) Updating files: 48% (62/129) Updating files: 49% (64/129) Updating files: 50% (65/129) Updating files: 51% (66/129) Updating files: 52% (68/129) Updating files: 53% (69/129) Updating files: 54% (70/129) Updating files: 55% (71/129) Updating files: 56% (73/129) Updating files: 57% (74/129) Updating files: 58% (75/129) Updating files: 59% (77/129) Updating files: 60% (78/129) Updating files: 61% (79/129) Updating files: 62% (80/129) Updating files: 63% (82/129) Updating files: 64% (83/129) Updating files: 65% (84/129) Updating files: 66% (86/129) Updating files: 67% (87/129) Updating files: 68% (88/129) Updating files: 69% (90/129) Updating files: 70% (91/129) Updating files: 71% (92/129) Updating files: 72% (93/129) Updating files: 73% (95/129) Updating files: 74% (96/129) Updating files: 75% (97/129) Updating files: 76% (99/129) Updating files: 77% (100/129) Updating files: 78% (101/129) Updating files: 79% (102/129) Updating files: 80% (104/129) Updating files: 81% (105/129) Updating files: 82% (106/129) Updating files: 83% (108/129) Updating files: 84% (109/129) Updating files: 85% (110/129) Updating files: 86% (111/129) Updating files: 87% (113/129) Updating files: 88% (114/129) Updating files: 89% (115/129) Updating files: 90% (117/129) Updating files: 91% (118/129) Updating files: 92% (119/129) Updating files: 93% (120/129) Updating files: 94% (122/129) Updating files: 95% (123/129) Updating files: 96% (124/129) Updating files: 97% (126/129) Updating files: 98% (127/129) Updating files: 99% (128/129) Updating files: 100% (129/129) Updating files: 100% (129/129), done. [INFO] started tweaking git repo https://github.com/Bronstein0x113c1c3/com_music_with_rust [INFO] finished tweaking git repo https://github.com/Bronstein0x113c1c3/com_music_with_rust [INFO] tweaked toml for git repo https://github.com/Bronstein0x113c1c3/com_music_with_rust written to /workspace/builds/worker-5-tc2/source/Cargo.toml [INFO] validating manifest of git repo https://github.com/Bronstein0x113c1c3/com_music_with_rust on toolchain 22cc29ba5b459fb386c0406b9baf3a49eb0fba39 [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+22cc29ba5b459fb386c0406b9baf3a49eb0fba39" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] crate git repo https://github.com/Bronstein0x113c1c3/com_music_with_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" "+22cc29ba5b459fb386c0406b9baf3a49eb0fba39" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-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:98afbf2d16093dec2546ff8915fddc74e65664aa03fc460b3712b1c2c54a33e4" "/opt/rustwide/cargo-home/bin/cargo" "+22cc29ba5b459fb386c0406b9baf3a49eb0fba39" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] 5c685776a01731132b03ff9fb1a9b8d345367b1acc5fccf9e74b0dc3de6623cf [INFO] running `Command { std: "docker" "start" "-a" "5c685776a01731132b03ff9fb1a9b8d345367b1acc5fccf9e74b0dc3de6623cf", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "5c685776a01731132b03ff9fb1a9b8d345367b1acc5fccf9e74b0dc3de6623cf", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "5c685776a01731132b03ff9fb1a9b8d345367b1acc5fccf9e74b0dc3de6623cf", kill_on_drop: false }` [INFO] [stdout] 5c685776a01731132b03ff9fb1a9b8d345367b1acc5fccf9e74b0dc3de6623cf [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-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:98afbf2d16093dec2546ff8915fddc74e65664aa03fc460b3712b1c2c54a33e4" "/opt/rustwide/cargo-home/bin/cargo" "+22cc29ba5b459fb386c0406b9baf3a49eb0fba39" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] be8752ef2ba294ecdcd7552b96b509387d48900ab4ffa6e15ad90c256076c165 [INFO] running `Command { std: "docker" "start" "-a" "be8752ef2ba294ecdcd7552b96b509387d48900ab4ffa6e15ad90c256076c165", kill_on_drop: false }` [INFO] [stderr] Compiling libc v0.2.171 [INFO] [stderr] Checking cfg-if v1.0.0 [INFO] [stderr] Compiling shlex v1.3.0 [INFO] [stderr] Compiling proc-macro2 v1.0.94 [INFO] [stderr] Compiling unicode-ident v1.0.18 [INFO] [stderr] Compiling autocfg v1.4.0 [INFO] [stderr] Compiling fs_extra v1.3.0 [INFO] [stderr] Checking log v0.4.27 [INFO] [stderr] Compiling dunce v1.0.5 [INFO] [stderr] Compiling aws-lc-rs v1.13.0 [INFO] [stderr] Compiling zerocopy v0.8.24 [INFO] [stderr] Compiling getrandom v0.3.2 [INFO] [stderr] Checking pin-project-lite v0.2.16 [INFO] [stderr] Checking untrusted v0.9.0 [INFO] [stderr] Checking rustls-pki-types v1.11.0 [INFO] [stderr] Checking once_cell v1.21.3 [INFO] [stderr] Compiling parking_lot_core v0.9.10 [INFO] [stderr] Compiling pkg-config v0.3.32 [INFO] [stderr] Checking zeroize v1.8.1 [INFO] [stderr] Compiling cfg_aliases v0.2.1 [INFO] [stderr] Compiling lock_api v0.4.12 [INFO] [stderr] Compiling slab v0.4.9 [INFO] [stderr] Checking arrayvec v0.7.6 [INFO] [stderr] Compiling rustls v0.23.26 [INFO] [stderr] Checking tinyvec_macros v0.1.1 [INFO] [stderr] Checking lazy_static v1.5.0 [INFO] [stderr] Checking bitflags v1.3.2 [INFO] [stderr] Checking scopeguard v1.2.0 [INFO] [stderr] Checking smallvec v1.14.0 [INFO] [stderr] Checking bytemuck v1.22.0 [INFO] [stderr] Compiling jobserver v0.1.33 [INFO] [stderr] Checking symphonia-core v0.5.4 [INFO] [stderr] Compiling alsa-sys v0.3.1 [INFO] [stderr] Checking tinyvec v1.9.0 [INFO] [stderr] Compiling quote v1.0.40 [INFO] [stderr] Checking getrandom v0.2.16 [INFO] [stderr] Compiling cc v1.2.17 [INFO] [stderr] Compiling syn v2.0.100 [INFO] [stderr] Checking rand_core v0.9.3 [INFO] [stderr] Checking socket2 v0.5.9 [INFO] [stderr] Checking tracing-core v0.1.33 [INFO] [stderr] Checking encoding_rs v0.8.35 [INFO] [stderr] Checking bytes v1.10.1 [INFO] [stderr] Compiling thiserror v2.0.12 [INFO] [stderr] Checking openssl-probe v0.1.6 [INFO] [stderr] Checking subtle v2.6.1 [INFO] [stderr] Checking powerfmt v0.2.0 [INFO] [stderr] Checking rustls-native-certs v0.8.1 [INFO] [stderr] Checking tracing v0.1.41 [INFO] [stderr] Checking deranged v0.4.0 [INFO] [stderr] Checking parking_lot v0.12.3 [INFO] [stderr] Checking signal-hook-registry v1.4.2 [INFO] [stderr] Checking mio v1.0.3 [INFO] [stderr] Compiling cmake v0.1.54 [INFO] [stderr] Compiling quinn-udp v0.5.11 [INFO] [stderr] Checking ppv-lite86 v0.2.21 [INFO] [stderr] Checking bitflags v2.9.0 [INFO] [stderr] Checking symphonia-metadata v0.5.4 [INFO] [stderr] Checking num-conv v0.1.0 [INFO] [stderr] Compiling cpal v0.15.3 [INFO] [stderr] Checking byteorder v1.5.0 [INFO] [stderr] Checking time-core v0.1.4 [INFO] [stderr] Checking time v0.3.41 [INFO] [stderr] Checking alsa v0.9.1 [INFO] [stderr] Compiling quinn v0.11.7 [INFO] [stderr] Checking rand_chacha v0.9.0 [INFO] [stderr] Checking symphonia-bundle-mp3 v0.5.4 [INFO] [stderr] Checking dasp_sample v0.11.0 [INFO] [stderr] Checking ogg v0.8.0 [INFO] [stderr] Checking rand v0.9.1 [INFO] [stderr] Checking rustc-hash v2.1.1 [INFO] [stderr] Checking futures-core v0.3.31 [INFO] [stderr] Checking pin-utils v0.1.0 [INFO] [stderr] Checking base64 v0.22.1 [INFO] [stderr] Compiling aws-lc-sys v0.28.2 [INFO] [stderr] Compiling ring v0.17.14 [INFO] [stderr] Checking futures-task v0.3.31 [INFO] [stderr] Checking symphonia v0.5.4 [INFO] [stderr] Checking yasna v0.5.2 [INFO] [stderr] Checking lewton v0.10.2 [INFO] [stderr] Checking pem v3.0.5 [INFO] [stderr] Checking hound v3.5.1 [INFO] [stderr] Checking futures-sink v0.3.31 [INFO] [stderr] Checking claxon v0.4.3 [INFO] [stderr] Checking futures-io v0.3.31 [INFO] [stderr] Checking rodio v0.20.1 [INFO] [stderr] Compiling thiserror-impl v2.0.12 [INFO] [stderr] Compiling tokio-macros v2.5.0 [INFO] [stderr] Compiling futures-macro v0.3.31 [INFO] [stderr] Checking tokio v1.44.1 [INFO] [stderr] Checking futures-util v0.3.31 [INFO] [stderr] Checking rcgen v0.13.2 [INFO] [stderr] Checking tokio-util v0.7.14 [INFO] [stderr] Checking rustls-webpki v0.103.1 [INFO] [stderr] Checking rustls-platform-verifier v0.5.1 [INFO] [stderr] Checking quinn-proto v0.11.11 [INFO] [stderr] Checking audio_streaming v0.1.0 (/opt/rustwide/workdir) [INFO] [stdout] warning: unused import: `string` [INFO] [stdout] --> src/client/client.rs:5:5 [INFO] [stdout] | [INFO] [stdout] 5 | string, [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: `Receiver`, `UnboundedSender`, `net::UdpSocket`, and `unbounded_channel` [INFO] [stdout] --> src/client/client.rs:11:5 [INFO] [stdout] | [INFO] [stdout] 11 | net::UdpSocket, [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] 12 | sync::mpsc::{ [INFO] [stdout] 13 | self, Receiver, Sender, UnboundedReceiver, UnboundedSender, channel, unbounded_channel, [INFO] [stdout] | ^^^^^^^^ ^^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `Decoder` [INFO] [stdout] --> src/client/client.rs:18:13 [INFO] [stdout] | [INFO] [stdout] 18 | use rodio::{Decoder, OutputStream, Sink}; [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `Decoder` [INFO] [stdout] --> src/client/client_optimized.rs:1:13 [INFO] [stdout] | [INFO] [stdout] 1 | use rodio::{Decoder, OutputStream, Sink}; [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: `process::Output` and `time::Duration` [INFO] [stdout] --> src/server/server_struct/song_processing.rs:1:28 [INFO] [stdout] | [INFO] [stdout] 1 | use std::{net::SocketAddr, process::Output, sync::Arc, time::Duration}; [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: `select` and `time::sleep` [INFO] [stdout] --> src/server/server_struct/song_processing.rs:6:5 [INFO] [stdout] | [INFO] [stdout] 6 | select, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] 7 | sync::mpsc::{self, Receiver, UnboundedReceiver, UnboundedSender, unbounded_channel}, [INFO] [stdout] 8 | time::sleep, [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `rodio::Decoder` [INFO] [stdout] --> src/server/server_struct.rs:5:5 [INFO] [stdout] | [INFO] [stdout] 5 | use rodio::Decoder; [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `path::Path` [INFO] [stdout] --> src/server/server_struct.rs:9:5 [INFO] [stdout] | [INFO] [stdout] 9 | path::Path, [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `oneshot` [INFO] [stdout] --> src/server/server_struct.rs:19:9 [INFO] [stdout] | [INFO] [stdout] 19 | oneshot, [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::io::Read` [INFO] [stdout] --> src/server/server.rs:6:5 [INFO] [stdout] | [INFO] [stdout] 6 | use std::io::Read; [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `collections::HashMap`, `net::SocketAddr`, and `sync::Arc` [INFO] [stdout] --> src/server/server.rs:8:11 [INFO] [stdout] | [INFO] [stdout] 8 | use std::{collections::HashMap, net::SocketAddr, sync::Arc}; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^^ ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `clone` and `io` [INFO] [stdout] --> src/server/server.rs:10:11 [INFO] [stdout] | [INFO] [stdout] 10 | use std::{clone, fs, io}; [INFO] [stdout] | ^^^^^ ^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `tokio::select` [INFO] [stdout] --> src/server/server.rs:12:5 [INFO] [stdout] | [INFO] [stdout] 12 | use tokio::select; [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `tokio::signal` [INFO] [stdout] --> src/server/server.rs:13:5 [INFO] [stdout] | [INFO] [stdout] 13 | use tokio::signal; [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `Receiver`, `Sender`, `UnboundedReceiver`, and `UnboundedSender` [INFO] [stdout] --> src/server/server.rs:14:25 [INFO] [stdout] | [INFO] [stdout] 14 | use tokio::sync::mpsc::{Receiver, Sender, UnboundedReceiver, UnboundedSender}; [INFO] [stdout] | ^^^^^^^^ ^^^^^^ ^^^^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `tokio::time` [INFO] [stdout] --> src/server/server.rs:15:5 [INFO] [stdout] | [INFO] [stdout] 15 | use tokio::time; [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `fs::read`, `self`, and `time::Duration` [INFO] [stdout] --> src/client/client_optimized.rs:4:5 [INFO] [stdout] | [INFO] [stdout] 4 | fs::read, net::{self, SocketAddr}, sync::{Arc, Mutex}, time::Duration [INFO] [stdout] | ^^^^^^^^ ^^^^ ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `BufReader` and `time::timeout` [INFO] [stdout] --> src/client/client_optimized.rs:8:33 [INFO] [stdout] | [INFO] [stdout] 8 | io::{self, AsyncBufReadExt, BufReader}, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] 9 | time::timeout, [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `UnboundedSender`, `self`, and `time::sleep` [INFO] [stdout] --> src/client/client_optimized.rs:14:18 [INFO] [stdout] | [INFO] [stdout] 14 | sync::mpsc::{self, Receiver, UnboundedReceiver, UnboundedSender, channel, unbounded_channel}, [INFO] [stdout] | ^^^^ ^^^^^^^^^^^^^^^ [INFO] [stdout] 15 | time::sleep, [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/client/client.rs:124:14 [INFO] [stdout] | [INFO] [stdout] 124 | let (tx, mut rx) = mpsc::unbounded_channel::(); [INFO] [stdout] | ----^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/client/client_optimized.rs:23:10 [INFO] [stdout] | [INFO] [stdout] 23 | let (mut tx, mut rx) = tokio::sync::mpsc::unbounded_channel::>(); [INFO] [stdout] | ----^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `run_unsafe_client` [INFO] [stdout] --> src/quic/client/client.rs:4:19 [INFO] [stdout] | [INFO] [stdout] 4 | use client_util::{run_unsafe_client, setup_unsafe}; [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 import: `AsyncWriteExt` [INFO] [stdout] --> src/quic/client/client.rs:6:24 [INFO] [stdout] | [INFO] [stdout] 6 | io::{AsyncReadExt, AsyncWriteExt}, [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `run_unsafe_client` [INFO] [stdout] --> src/quic/client/client.rs:4:19 [INFO] [stdout] | [INFO] [stdout] 4 | use client_util::{run_unsafe_client, setup_unsafe}; [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 import: `AsyncWriteExt` [INFO] [stdout] --> src/quic/client/client.rs:6:24 [INFO] [stdout] | [INFO] [stdout] 6 | io::{AsyncReadExt, AsyncWriteExt}, [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/client/client_optimized.rs:147:10 [INFO] [stdout] | [INFO] [stdout] 147 | let (mut song_request_sender, mut song_request_receiver) = channel(1); [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/client/client_optimized.rs:147:35 [INFO] [stdout] | [INFO] [stdout] 147 | let (mut song_request_sender, mut song_request_receiver) = channel(1); [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/client/client_optimized.rs:231:20 [INFO] [stdout] | [INFO] [stdout] 231 | let (chunk_tx, mut chunk_rx) = unbounded_channel(); [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/client/client_optimized.rs:283:17 [INFO] [stdout] | [INFO] [stdout] 283 | let mut res: Vec = buf [INFO] [stdout] | ----^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `stream` [INFO] [stdout] --> src/client/client_optimized.rs:21:10 [INFO] [stdout] | [INFO] [stdout] 21 | let (stream, stream_handle) = OutputStream::try_default().unwrap(); [INFO] [stdout] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_stream` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `tx` [INFO] [stdout] --> src/client/client_optimized.rs:23:10 [INFO] [stdout] | [INFO] [stdout] 23 | let (mut tx, mut rx) = tokio::sync::mpsc::unbounded_channel::>(); [INFO] [stdout] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_tx` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `sync::mpsc::unbounded_channel` [INFO] [stdout] --> src/experimental/experimental.rs:3:19 [INFO] [stdout] | [INFO] [stdout] 3 | use tokio::{self, sync::mpsc::unbounded_channel}; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/client/client_optimized.rs:89:9 [INFO] [stdout] | [INFO] [stdout] 89 | let mut client_socket = tokio::net::UdpSocket::bind("0.0.0.0:0").await.unwrap(); [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/client/client_optimized.rs:90:9 [INFO] [stdout] | [INFO] [stdout] 90 | let mut client_socket = Arc::new(client_socket); [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/client/client_optimized.rs:95:9 [INFO] [stdout] | [INFO] [stdout] 95 | let mut client_socket_network_block = client_socket.clone(); [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/client/client_optimized.rs:114:19 [INFO] [stdout] | [INFO] [stdout] 114 | let (control, mut receiver) = control_block(); [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/client/client_optimized.rs:115:10 [INFO] [stdout] | [INFO] [stdout] 115 | let (mut data_rx, network_loop) = network_block(receiver, client_socket_network_block); [INFO] [stdout] | ----^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `t1` [INFO] [stdout] --> src/client/client_optimized.rs:117:9 [INFO] [stdout] | [INFO] [stdout] 117 | let t1 = tokio::spawn(control); [INFO] [stdout] | ^^ help: if this is intentional, prefix it with an underscore: `_t1` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `t2` [INFO] [stdout] --> src/client/client_optimized.rs:118:9 [INFO] [stdout] | [INFO] [stdout] 118 | let t2 = tokio::spawn(network_loop); [INFO] [stdout] | ^^ help: if this is intentional, prefix it with an underscore: `_t2` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `stream` [INFO] [stdout] --> src/client/client_optimized.rs:274:10 [INFO] [stdout] | [INFO] [stdout] 274 | let (stream, stream_handle) = OutputStream::try_default().unwrap(); [INFO] [stdout] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_stream` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/server/server_struct/song_processing.rs:164:10 [INFO] [stdout] | [INFO] [stdout] 164 | let (mut find_song_tx, mut find_song_rx) = mpsc::unbounded_channel(); //find song command [INFO] [stdout] | ----^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/server/server_struct/song_processing.rs:164:28 [INFO] [stdout] | [INFO] [stdout] 164 | let (mut find_song_tx, mut find_song_rx) = mpsc::unbounded_channel(); //find song command [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/server/server_struct/song_processing.rs:165:10 [INFO] [stdout] | [INFO] [stdout] 165 | let (mut seq_tx, mut seq_rx) = mpsc::unbounded_channel(); //sequence number [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/server/server_struct/song_processing.rs:165:22 [INFO] [stdout] | [INFO] [stdout] 165 | let (mut seq_tx, mut seq_rx) = mpsc::unbounded_channel(); //sequence number [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/server/server_struct/song_processing.rs:166:10 [INFO] [stdout] | [INFO] [stdout] 166 | let (mut fail_alert_tx, mut fail_alert_rx) = mpsc::unbounded_channel(); //wrong command [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/server/server_struct/song_processing.rs:166:29 [INFO] [stdout] | [INFO] [stdout] 166 | let (mut fail_alert_tx, mut fail_alert_rx) = mpsc::unbounded_channel(); //wrong command [INFO] [stdout] | ----^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `Decoder` [INFO] [stdout] --> src/client/client_optimized.rs:1:13 [INFO] [stdout] | [INFO] [stdout] 1 | use rodio::{Decoder, OutputStream, Sink}; [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: `fs::read`, `self`, and `time::Duration` [INFO] [stdout] --> src/client/client_optimized.rs:4:5 [INFO] [stdout] | [INFO] [stdout] 4 | fs::read, net::{self, SocketAddr}, sync::{Arc, Mutex}, time::Duration [INFO] [stdout] | ^^^^^^^^ ^^^^ ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `BufReader` and `time::timeout` [INFO] [stdout] --> src/client/client_optimized.rs:8:33 [INFO] [stdout] | [INFO] [stdout] 8 | io::{self, AsyncBufReadExt, BufReader}, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] 9 | time::timeout, [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `UnboundedSender`, `self`, and `time::sleep` [INFO] [stdout] --> src/client/client_optimized.rs:14:18 [INFO] [stdout] | [INFO] [stdout] 14 | sync::mpsc::{self, Receiver, UnboundedReceiver, UnboundedSender, channel, unbounded_channel}, [INFO] [stdout] | ^^^^ ^^^^^^^^^^^^^^^ [INFO] [stdout] 15 | time::sleep, [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `process::Output` and `time::Duration` [INFO] [stdout] --> src/server/server_struct/song_processing.rs:1:28 [INFO] [stdout] | [INFO] [stdout] 1 | use std::{net::SocketAddr, process::Output, sync::Arc, time::Duration}; [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: `select` and `time::sleep` [INFO] [stdout] --> src/server/server_struct/song_processing.rs:6:5 [INFO] [stdout] | [INFO] [stdout] 6 | select, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] 7 | sync::mpsc::{self, Receiver, UnboundedReceiver, UnboundedSender, unbounded_channel}, [INFO] [stdout] 8 | time::sleep, [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `rodio::Decoder` [INFO] [stdout] --> src/server/server_struct.rs:5:5 [INFO] [stdout] | [INFO] [stdout] 5 | use rodio::Decoder; [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `path::Path` [INFO] [stdout] --> src/server/server_struct.rs:9:5 [INFO] [stdout] | [INFO] [stdout] 9 | path::Path, [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `oneshot` [INFO] [stdout] --> src/server/server_struct.rs:19:9 [INFO] [stdout] | [INFO] [stdout] 19 | oneshot, [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::io::Read` [INFO] [stdout] --> src/server/server.rs:6:5 [INFO] [stdout] | [INFO] [stdout] 6 | use std::io::Read; [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `collections::HashMap`, `net::SocketAddr`, and `sync::Arc` [INFO] [stdout] --> src/server/server.rs:8:11 [INFO] [stdout] | [INFO] [stdout] 8 | use std::{collections::HashMap, net::SocketAddr, sync::Arc}; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^^ ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `clone` and `io` [INFO] [stdout] --> src/server/server.rs:10:11 [INFO] [stdout] | [INFO] [stdout] 10 | use std::{clone, fs, io}; [INFO] [stdout] | ^^^^^ ^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `tokio::select` [INFO] [stdout] --> src/server/server.rs:12:5 [INFO] [stdout] | [INFO] [stdout] 12 | use tokio::select; [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `tokio::signal` [INFO] [stdout] --> src/server/server.rs:13:5 [INFO] [stdout] | [INFO] [stdout] 13 | use tokio::signal; [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `Receiver`, `Sender`, `UnboundedReceiver`, and `UnboundedSender` [INFO] [stdout] --> src/server/server.rs:14:25 [INFO] [stdout] | [INFO] [stdout] 14 | use tokio::sync::mpsc::{Receiver, Sender, UnboundedReceiver, UnboundedSender}; [INFO] [stdout] | ^^^^^^^^ ^^^^^^ ^^^^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `tokio::time` [INFO] [stdout] --> src/server/server.rs:15:5 [INFO] [stdout] | [INFO] [stdout] 15 | use tokio::time; [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/server/server_struct/song_processing.rs:14:5 [INFO] [stdout] | [INFO] [stdout] 14 | mut song_rx: Receiver<([u8; 1024], usize)>, [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/server/server_struct/song_processing.rs:18:19 [INFO] [stdout] | [INFO] [stdout] 18 | let (control, mut song_id_rx, mut seq_rx, _) = control(song_rx); [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/server/server_struct/song_processing.rs:19:10 [INFO] [stdout] | [INFO] [stdout] 19 | let (mut chunk_tx, mut chunk_rx) = unbounded_channel(); [INFO] [stdout] | ----^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `main2` is never used [INFO] [stdout] --> src/client/client_optimized.rs:19:10 [INFO] [stdout] | [INFO] [stdout] 19 | async fn main2() { [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/client/client_optimized.rs:99:5 [INFO] [stdout] | [INFO] [stdout] 99 | client_socket.send("".as_bytes()).await; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] = note: `#[warn(unused_must_use)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 99 | let _ = client_socket.send("".as_bytes()).await; [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/client/client_optimized.rs:103:9 [INFO] [stdout] | [INFO] [stdout] 103 | client_socket.recv_buf(&mut buf).await; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 103 | let _ = client_socket.recv_buf(&mut buf).await; [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/client/client_optimized.rs:235:13 [INFO] [stdout] | [INFO] [stdout] 235 | client_socket.send(&res).await; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 235 | let _ = client_socket.send(&res).await; [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/client/client_optimized.rs:239:17 [INFO] [stdout] | [INFO] [stdout] 239 | client_socket.send(&seq).await; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 239 | let _ = client_socket.send(&seq).await; [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/client/client_optimized.rs:253:17 [INFO] [stdout] | [INFO] [stdout] 253 | chunk_tx.send(buf[..buf.len() - 1].to_vec()); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 253 | let _ = chunk_tx.send(buf[..buf.len() - 1].to_vec()); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/client/client.rs:28:9 [INFO] [stdout] | [INFO] [stdout] 28 | let mut client_socket = tokio::net::UdpSocket::bind("0.0.0.0:0").await.unwrap(); [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/client/client.rs:29:9 [INFO] [stdout] | [INFO] [stdout] 29 | let mut client_socket = Arc::new(client_socket); [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/client/client.rs:57:9 [INFO] [stdout] | [INFO] [stdout] 57 | let mut present: u8 = 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/client/client.rs:58:9 [INFO] [stdout] | [INFO] [stdout] 58 | let mut size: usize = 0; [INFO] [stdout] | ----^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `stream` [INFO] [stdout] --> src/client/client.rs:33:10 [INFO] [stdout] | [INFO] [stdout] 33 | let (stream, stream_handle) = OutputStream::try_default().unwrap(); [INFO] [stdout] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_stream` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `present` [INFO] [stdout] --> src/client/client.rs:57:9 [INFO] [stdout] | [INFO] [stdout] 57 | let mut present: u8 = 0; [INFO] [stdout] | ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_present` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `size` [INFO] [stdout] --> src/client/client.rs:58:9 [INFO] [stdout] | [INFO] [stdout] 58 | let mut size: usize = 0; [INFO] [stdout] | ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_size` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/experimental/experimental.rs:22:10 [INFO] [stdout] | [INFO] [stdout] 22 | let (mut tx, mut rx) = tokio::sync::mpsc::unbounded_channel(); [INFO] [stdout] | ----^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `stream` [INFO] [stdout] --> src/experimental/experimental.rs:20:10 [INFO] [stdout] | [INFO] [stdout] 20 | let (stream, stream_handle) = OutputStream::try_default().unwrap(); [INFO] [stdout] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_stream` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `AsyncReadExt` [INFO] [stdout] --> src/quic/client/client.rs:6:10 [INFO] [stdout] | [INFO] [stdout] 6 | io::{AsyncReadExt, AsyncWriteExt}, [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `tx` [INFO] [stdout] --> src/client/client.rs:124:10 [INFO] [stdout] | [INFO] [stdout] 124 | let (tx, mut rx) = mpsc::unbounded_channel::(); [INFO] [stdout] | ^^ help: if this is intentional, prefix it with an underscore: `_tx` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `control_instance` is never used [INFO] [stdout] --> src/client/client.rs:123:4 [INFO] [stdout] | [INFO] [stdout] 123 | fn control_instance() -> (impl Future, UnboundedReceiver) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `sound_instance` is never used [INFO] [stdout] --> src/client/client.rs:134:4 [INFO] [stdout] | [INFO] [stdout] 134 | fn sound_instance() {} [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/experimental/experimental.rs:44:13 [INFO] [stdout] | [INFO] [stdout] 44 | tx.send(res); [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] = note: `#[warn(unused_must_use)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 44 | let _ = tx.send(res); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/client/client.rs:35:5 [INFO] [stdout] | [INFO] [stdout] 35 | client_socket.send("".as_bytes()).await; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] = note: `#[warn(unused_must_use)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 35 | let _ = client_socket.send("".as_bytes()).await; [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/client/client.rs:39:9 [INFO] [stdout] | [INFO] [stdout] 39 | client_socket.recv_buf(&mut buf).await; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 39 | let _ = client_socket.recv_buf(&mut buf).await; [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/client/client.rs:56:5 [INFO] [stdout] | [INFO] [stdout] 56 | client_socket.send(&song).await; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 56 | let _ = client_socket.send(&song).await; [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/client/client.rs:67:9 [INFO] [stdout] | [INFO] [stdout] 67 | client_socket.send(&seq).await; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 67 | let _ = client_socket.send(&seq).await; [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/client/client.rs:80:9 [INFO] [stdout] | [INFO] [stdout] 80 | sender.send(buf[..buf.len() - 1].to_vec()).await; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 80 | let _ = sender.send(buf[..buf.len() - 1].to_vec()).await; [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/server/server_struct/song_processing.rs:164:10 [INFO] [stdout] | [INFO] [stdout] 164 | let (mut find_song_tx, mut find_song_rx) = mpsc::unbounded_channel(); //find song command [INFO] [stdout] | ----^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/server/server_struct/song_processing.rs:164:28 [INFO] [stdout] | [INFO] [stdout] 164 | let (mut find_song_tx, mut find_song_rx) = mpsc::unbounded_channel(); //find song command [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/server/server_struct/song_processing.rs:165:10 [INFO] [stdout] | [INFO] [stdout] 165 | let (mut seq_tx, mut seq_rx) = mpsc::unbounded_channel(); //sequence number [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/server/server_struct/song_processing.rs:165:22 [INFO] [stdout] | [INFO] [stdout] 165 | let (mut seq_tx, mut seq_rx) = mpsc::unbounded_channel(); //sequence number [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/server/server_struct/song_processing.rs:166:10 [INFO] [stdout] | [INFO] [stdout] 166 | let (mut fail_alert_tx, mut fail_alert_rx) = mpsc::unbounded_channel(); //wrong command [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/server/server_struct/song_processing.rs:166:29 [INFO] [stdout] | [INFO] [stdout] 166 | let (mut fail_alert_tx, mut fail_alert_rx) = mpsc::unbounded_channel(); //wrong command [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/server/server_struct.rs:208:14 [INFO] [stdout] | [INFO] [stdout] 208 | let (mut song_tx, mut song_rx) = mpsc::channel(100); [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/server/server_struct.rs:208:27 [INFO] [stdout] | [INFO] [stdout] 208 | let (mut song_tx, mut song_rx) = mpsc::channel(100); [INFO] [stdout] | ----^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/client/client.rs:97:5 [INFO] [stdout] | [INFO] [stdout] 97 | t1.await; [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 97 | let _ = t1.await; [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: irrefutable `if let` pattern [INFO] [stdout] --> src/server/server_struct.rs:141:27 [INFO] [stdout] | [INFO] [stdout] 141 | } else if let x = std::str::from_utf8(&buf[..len]) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this pattern will always match, so the `if let` is useless [INFO] [stdout] = help: consider replacing the `if let` with a `let` [INFO] [stdout] = note: `#[warn(irrefutable_let_patterns)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: value assigned to `user_req` is never read [INFO] [stdout] --> src/server/server_struct/song_processing.rs:28:28 [INFO] [stdout] | [INFO] [stdout] 28 | let mut user_req: u8 = 0; // -> request chunk [INFO] [stdout] | ^ [INFO] [stdout] | [INFO] [stdout] = help: maybe it is overwritten before being read? [INFO] [stdout] = note: `#[warn(unused_assignments)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/server/server_struct/song_processing.rs:14:5 [INFO] [stdout] | [INFO] [stdout] 14 | mut song_rx: Receiver<([u8; 1024], usize)>, [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/server/server_struct/song_processing.rs:18:19 [INFO] [stdout] | [INFO] [stdout] 18 | let (control, mut song_id_rx, mut seq_rx, _) = control(song_rx); [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/server/server_struct/song_processing.rs:19:10 [INFO] [stdout] | [INFO] [stdout] 19 | let (mut chunk_tx, mut chunk_rx) = unbounded_channel(); [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/server/server_struct/song_processing.rs:148:8 [INFO] [stdout] | [INFO] [stdout] 148 | fn add(mut i: u8) -> u8 { [INFO] [stdout] | ----^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `e` [INFO] [stdout] --> src/server/server_struct.rs:153:29 [INFO] [stdout] | [INFO] [stdout] 153 | Err(e) => { [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_e` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `timeout` [INFO] [stdout] --> src/server/server_struct.rs:192:9 [INFO] [stdout] | [INFO] [stdout] 192 | timeout: Duration, [INFO] [stdout] | ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_timeout` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `AsyncReadExt` [INFO] [stdout] --> src/quic/client/client.rs:6:10 [INFO] [stdout] | [INFO] [stdout] 6 | io::{AsyncReadExt, AsyncWriteExt}, [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `adding` is never used [INFO] [stdout] --> src/server/server_struct/song_processing.rs:100:4 [INFO] [stdout] | [INFO] [stdout] 100 | fn adding(i: u8) -> u8 { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/quic/client/client.rs:21:10 [INFO] [stdout] | [INFO] [stdout] 21 | let (mut connection, mut endpoint) = setup_unsafe(addr).await.unwrap(); [INFO] [stdout] | ----^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/quic/client/client.rs:21:26 [INFO] [stdout] | [INFO] [stdout] 21 | let (mut connection, mut endpoint) = setup_unsafe(addr).await.unwrap(); [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/quic/client/client.rs:22:10 [INFO] [stdout] | [INFO] [stdout] 22 | let (mut send_stream, mut recv_stream) = connection.accept_bi().await.unwrap(); [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/quic/client/client.rs:30:9 [INFO] [stdout] | [INFO] [stdout] 30 | let mut s1 = sink.clone(); [INFO] [stdout] | ----^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `x` [INFO] [stdout] --> src/quic/client/client.rs:37:20 [INFO] [stdout] | [INFO] [stdout] 37 | Ok(x) => { [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_x` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `e` [INFO] [stdout] --> src/quic/client/client.rs:53:21 [INFO] [stdout] | [INFO] [stdout] 53 | Err(e) => { [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_e` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `endpoint` [INFO] [stdout] --> src/quic/client/client.rs:21:26 [INFO] [stdout] | [INFO] [stdout] 21 | let (mut connection, mut endpoint) = setup_unsafe(addr).await.unwrap(); [INFO] [stdout] | ^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_endpoint` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `send_stream` [INFO] [stdout] --> src/quic/client/client.rs:22:10 [INFO] [stdout] | [INFO] [stdout] 22 | let (mut send_stream, mut recv_stream) = connection.accept_bi().await.unwrap(); [INFO] [stdout] | ^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_send_stream` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `stream` [INFO] [stdout] --> src/quic/client/client.rs:24:10 [INFO] [stdout] | [INFO] [stdout] 24 | let (stream, stream_handle) = rodio::OutputStream::try_default().unwrap(); [INFO] [stdout] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_stream` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `run_unsafe_client` is never used [INFO] [stdout] --> src/quic/client/client_util/mod.rs:53:14 [INFO] [stdout] | [INFO] [stdout] 53 | pub async fn run_unsafe_client( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/quic/client/client.rs:45:21 [INFO] [stdout] | [INFO] [stdout] 45 | sender.send(res); [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] = note: `#[warn(unused_must_use)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 45 | let _ = sender.send(res); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/quic/client/client.rs:61:21 [INFO] [stdout] | [INFO] [stdout] 61 | sender.send(res); [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 61 | let _ = sender.send(res); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/server/server_struct.rs:227:25 [INFO] [stdout] | [INFO] [stdout] 227 | socket.send_to(i.as_bytes(), addr).await; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] = note: `#[warn(unused_must_use)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 227 | let _ = socket.send_to(i.as_bytes(), addr).await; [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/server/server_struct.rs:230:25 [INFO] [stdout] | [INFO] [stdout] 230 | socket.send_to("".as_bytes(), addr).await; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 230 | let _ = socket.send_to("".as_bytes(), addr).await; [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/server/server_struct.rs:234:25 [INFO] [stdout] | [INFO] [stdout] 234 | song_tx.send((buf,len)).await; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 234 | let _ = song_tx.send((buf,len)).await; [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/server/server_struct/song_processing.rs:73:13 [INFO] [stdout] | [INFO] [stdout] 73 | socket.send_to(&cache, addr).await; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 73 | let _ = socket.send_to(&cache, addr).await; [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/server/server_struct/song_processing.rs:81:13 [INFO] [stdout] | [INFO] [stdout] 81 | socket.send_to(&cache, addr).await; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 81 | let _ = socket.send_to(&cache, addr).await; [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/server/server_struct/song_processing.rs:116:13 [INFO] [stdout] | [INFO] [stdout] 116 | chunk_tx.send(vec![]); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 116 | let _ = chunk_tx.send(vec![]); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/server/server_struct/song_processing.rs:138:13 [INFO] [stdout] | [INFO] [stdout] 138 | chunk_tx.send(res); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 138 | let _ = chunk_tx.send(res); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/server/server_struct/song_processing.rs:184:17 [INFO] [stdout] | [INFO] [stdout] 184 | seq_tx.send(seq_num); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 184 | let _ = seq_tx.send(seq_num); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/server/server_struct/song_processing.rs:189:21 [INFO] [stdout] | [INFO] [stdout] 189 | fail_alert_tx.send(()); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 189 | let _ = fail_alert_tx.send(()); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/server/server_struct/song_processing.rs:193:25 [INFO] [stdout] | [INFO] [stdout] 193 | find_song_tx.send(res); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 193 | let _ = find_song_tx.send(res); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/server/server_struct/song_processing.rs:196:25 [INFO] [stdout] | [INFO] [stdout] 196 | fail_alert_tx.send(()); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 196 | let _ = fail_alert_tx.send(()); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/client/client_optimized.rs:23:10 [INFO] [stdout] | [INFO] [stdout] 23 | let (mut tx, mut rx) = tokio::sync::mpsc::unbounded_channel::>(); [INFO] [stdout] | ----^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/quic/client/client.rs:21:10 [INFO] [stdout] | [INFO] [stdout] 21 | let (mut connection, mut endpoint) = setup_unsafe(addr).await.unwrap(); [INFO] [stdout] | ----^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/quic/client/client.rs:21:26 [INFO] [stdout] | [INFO] [stdout] 21 | let (mut connection, mut endpoint) = setup_unsafe(addr).await.unwrap(); [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/quic/client/client.rs:22:10 [INFO] [stdout] | [INFO] [stdout] 22 | let (mut send_stream, mut recv_stream) = connection.accept_bi().await.unwrap(); [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/quic/client/client.rs:30:9 [INFO] [stdout] | [INFO] [stdout] 30 | let mut s1 = sink.clone(); [INFO] [stdout] | ----^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `x` [INFO] [stdout] --> src/quic/client/client.rs:37:20 [INFO] [stdout] | [INFO] [stdout] 37 | Ok(x) => { [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_x` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `e` [INFO] [stdout] --> src/quic/client/client.rs:53:21 [INFO] [stdout] | [INFO] [stdout] 53 | Err(e) => { [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_e` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `endpoint` [INFO] [stdout] --> src/quic/client/client.rs:21:26 [INFO] [stdout] | [INFO] [stdout] 21 | let (mut connection, mut endpoint) = setup_unsafe(addr).await.unwrap(); [INFO] [stdout] | ^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_endpoint` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `send_stream` [INFO] [stdout] --> src/quic/client/client.rs:22:10 [INFO] [stdout] | [INFO] [stdout] 22 | let (mut send_stream, mut recv_stream) = connection.accept_bi().await.unwrap(); [INFO] [stdout] | ^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_send_stream` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `stream` [INFO] [stdout] --> src/quic/client/client.rs:24:10 [INFO] [stdout] | [INFO] [stdout] 24 | let (stream, stream_handle) = rodio::OutputStream::try_default().unwrap(); [INFO] [stdout] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_stream` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `run_unsafe_client` is never used [INFO] [stdout] --> src/quic/client/client_util/mod.rs:53:14 [INFO] [stdout] | [INFO] [stdout] 53 | pub async fn run_unsafe_client( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/client/client_optimized.rs:147:10 [INFO] [stdout] | [INFO] [stdout] 147 | let (mut song_request_sender, mut song_request_receiver) = channel(1); [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/server/server_struct.rs:208:14 [INFO] [stdout] | [INFO] [stdout] 208 | let (mut song_tx, mut song_rx) = mpsc::channel(100); [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/server/server_struct.rs:208:27 [INFO] [stdout] | [INFO] [stdout] 208 | let (mut song_tx, mut song_rx) = mpsc::channel(100); [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/client/client_optimized.rs:147:35 [INFO] [stdout] | [INFO] [stdout] 147 | let (mut song_request_sender, mut song_request_receiver) = channel(1); [INFO] [stdout] | ----^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: irrefutable `if let` pattern [INFO] [stdout] --> src/server/server_struct.rs:141:27 [INFO] [stdout] | [INFO] [stdout] 141 | } else if let x = std::str::from_utf8(&buf[..len]) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this pattern will always match, so the `if let` is useless [INFO] [stdout] = help: consider replacing the `if let` with a `let` [INFO] [stdout] = note: `#[warn(irrefutable_let_patterns)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/quic/client/client.rs:45:21 [INFO] [stdout] | [INFO] [stdout] 45 | sender.send(res); [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] = note: `#[warn(unused_must_use)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 45 | let _ = sender.send(res); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/quic/client/client.rs:61:21 [INFO] [stdout] | [INFO] [stdout] 61 | sender.send(res); [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 61 | let _ = sender.send(res); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `SocketAddrV4` [INFO] [stdout] --> src/quic/server/server.rs:3:23 [INFO] [stdout] | [INFO] [stdout] 3 | net::{SocketAddr, SocketAddrV4}, time::Duration, [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 import: `rustls::crypto::aws_lc_rs::default_provider` [INFO] [stdout] --> src/quic/server/server.rs:6:5 [INFO] [stdout] | [INFO] [stdout] 6 | use rustls::crypto::aws_lc_rs::default_provider; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `TransportConfig` [INFO] [stdout] --> src/quic/server/server_util.rs:1:37 [INFO] [stdout] | [INFO] [stdout] 1 | use quinn::{Endpoint, ServerConfig, TransportConfig}; [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/client/client_optimized.rs:231:20 [INFO] [stdout] | [INFO] [stdout] 231 | let (chunk_tx, mut chunk_rx) = unbounded_channel(); [INFO] [stdout] | ----^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: value assigned to `user_req` is never read [INFO] [stdout] --> src/server/server_struct/song_processing.rs:28:28 [INFO] [stdout] | [INFO] [stdout] 28 | let mut user_req: u8 = 0; // -> request chunk [INFO] [stdout] | ^ [INFO] [stdout] | [INFO] [stdout] = help: maybe it is overwritten before being read? [INFO] [stdout] = note: `#[warn(unused_assignments)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/server/server_struct/song_processing.rs:148:8 [INFO] [stdout] | [INFO] [stdout] 148 | fn add(mut i: u8) -> u8 { [INFO] [stdout] | ----^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `SocketAddrV4` [INFO] [stdout] --> src/quic/server/server.rs:3:23 [INFO] [stdout] | [INFO] [stdout] 3 | net::{SocketAddr, SocketAddrV4}, time::Duration, [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 import: `rustls::crypto::aws_lc_rs::default_provider` [INFO] [stdout] --> src/quic/server/server.rs:6:5 [INFO] [stdout] | [INFO] [stdout] 6 | use rustls::crypto::aws_lc_rs::default_provider; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `TransportConfig` [INFO] [stdout] --> src/quic/server/server_util.rs:1:37 [INFO] [stdout] | [INFO] [stdout] 1 | use quinn::{Endpoint, ServerConfig, TransportConfig}; [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `string` [INFO] [stdout] --> src/client/client.rs:5:5 [INFO] [stdout] | [INFO] [stdout] 5 | string, [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: `Receiver`, `UnboundedSender`, `net::UdpSocket`, and `unbounded_channel` [INFO] [stdout] --> src/client/client.rs:11:5 [INFO] [stdout] | [INFO] [stdout] 11 | net::UdpSocket, [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] 12 | sync::mpsc::{ [INFO] [stdout] 13 | self, Receiver, Sender, UnboundedReceiver, UnboundedSender, channel, unbounded_channel, [INFO] [stdout] | ^^^^^^^^ ^^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `Decoder` [INFO] [stdout] --> src/client/client.rs:18:13 [INFO] [stdout] | [INFO] [stdout] 18 | use rodio::{Decoder, OutputStream, Sink}; [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `io::Read` [INFO] [stdout] --> src/quic/server/server.rs:2:5 [INFO] [stdout] | [INFO] [stdout] 2 | io::Read, [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `io::Read` [INFO] [stdout] --> src/quic/server/server.rs:2:5 [INFO] [stdout] | [INFO] [stdout] 2 | io::Read, [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/experimental/experimental.rs:22:10 [INFO] [stdout] | [INFO] [stdout] 22 | let (mut tx, mut rx) = tokio::sync::mpsc::unbounded_channel(); [INFO] [stdout] | ----^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/client/client.rs:124:14 [INFO] [stdout] | [INFO] [stdout] 124 | let (tx, mut rx) = mpsc::unbounded_channel::(); [INFO] [stdout] | ----^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `stream` [INFO] [stdout] --> src/experimental/experimental.rs:20:10 [INFO] [stdout] | [INFO] [stdout] 20 | let (stream, stream_handle) = OutputStream::try_default().unwrap(); [INFO] [stdout] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_stream` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `e` [INFO] [stdout] --> src/server/server_struct.rs:153:29 [INFO] [stdout] | [INFO] [stdout] 153 | Err(e) => { [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_e` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/experimental/experimental.rs:89:9 [INFO] [stdout] | [INFO] [stdout] 89 | let mut vec2 = vec![4, 5, 6, 8]; [INFO] [stdout] | ----^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: value assigned to `vec1` is never read [INFO] [stdout] --> src/experimental/experimental.rs:88:20 [INFO] [stdout] | [INFO] [stdout] 88 | let mut vec1 = Vec::with_capacity(300); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: maybe it is overwritten before being read? [INFO] [stdout] = note: `#[warn(unused_assignments)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/client/client_optimized.rs:283:17 [INFO] [stdout] | [INFO] [stdout] 283 | let mut res: Vec = buf [INFO] [stdout] | ----^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `timeout` [INFO] [stdout] --> src/server/server_struct.rs:192:9 [INFO] [stdout] | [INFO] [stdout] 192 | timeout: Duration, [INFO] [stdout] | ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_timeout` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/experimental/experimental.rs:128:10 [INFO] [stdout] | [INFO] [stdout] 128 | let (mut tx, mut rx) = tokio::sync::mpsc::unbounded_channel(); [INFO] [stdout] | ----^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `stream` [INFO] [stdout] --> src/experimental/experimental.rs:125:10 [INFO] [stdout] | [INFO] [stdout] 125 | let (stream, stream_handle) = OutputStream::try_default().unwrap(); [INFO] [stdout] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_stream` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/quic/server/server.rs:35:9 [INFO] [stdout] | [INFO] [stdout] 35 | let mut conn = incoming.await.unwrap(); [INFO] [stdout] | ----^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/experimental/experimental.rs:192:10 [INFO] [stdout] | [INFO] [stdout] 192 | let (mut tx, mut rx) = unbounded_channel(); [INFO] [stdout] | ----^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `i` [INFO] [stdout] --> src/experimental/experimental.rs:200:9 [INFO] [stdout] | [INFO] [stdout] 200 | for i in 0..3 { [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_i` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `stream` [INFO] [stdout] --> src/client/client_optimized.rs:21:10 [INFO] [stdout] | [INFO] [stdout] 21 | let (stream, stream_handle) = OutputStream::try_default().unwrap(); [INFO] [stdout] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_stream` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/experimental/experimental.rs:44:13 [INFO] [stdout] | [INFO] [stdout] 44 | tx.send(res); [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] = note: `#[warn(unused_must_use)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 44 | let _ = tx.send(res); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `tx` [INFO] [stdout] --> src/client/client_optimized.rs:23:10 [INFO] [stdout] | [INFO] [stdout] 23 | let (mut tx, mut rx) = tokio::sync::mpsc::unbounded_channel::>(); [INFO] [stdout] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_tx` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/quic/server/server.rs:42:9 [INFO] [stdout] | [INFO] [stdout] 42 | bi.0.write_all(chunk).await; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] = note: `#[warn(unused_must_use)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 42 | let _ = bi.0.write_all(chunk).await; [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/quic/server/server.rs:45:9 [INFO] [stdout] | [INFO] [stdout] 45 | bi.0.flush().await; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 45 | let _ = bi.0.flush().await; [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/quic/server/server.rs:60:5 [INFO] [stdout] | [INFO] [stdout] 60 | bi.0.finish(); [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 60 | let _ = bi.0.finish(); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/quic/server/server.rs:61:5 [INFO] [stdout] | [INFO] [stdout] 61 | bi.0.shutdown().await; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 61 | let _ = bi.0.shutdown().await; [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/experimental/experimental.rs:146:13 [INFO] [stdout] | [INFO] [stdout] 146 | tx.send(res.to_owned()); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 146 | let _ = tx.send(res.to_owned()); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/experimental/experimental.rs:173:5 [INFO] [stdout] | [INFO] [stdout] 173 | t.await; [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 173 | let _ = t.await; [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/experimental/experimental.rs:174:5 [INFO] [stdout] | [INFO] [stdout] 174 | t2.await; [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 174 | let _ = t2.await; [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/experimental/experimental.rs:175:5 [INFO] [stdout] | [INFO] [stdout] 175 | t3.await; [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 175 | let _ = t3.await; [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/experimental/experimental.rs:195:13 [INFO] [stdout] | [INFO] [stdout] 195 | tx.send(1); [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 195 | let _ = tx.send(1); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/experimental/experimental.rs:209:5 [INFO] [stdout] | [INFO] [stdout] 209 | t1.await; [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 209 | let _ = t1.await; [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/client/client.rs:28:9 [INFO] [stdout] | [INFO] [stdout] 28 | let mut client_socket = tokio::net::UdpSocket::bind("0.0.0.0:0").await.unwrap(); [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/client/client.rs:29:9 [INFO] [stdout] | [INFO] [stdout] 29 | let mut client_socket = Arc::new(client_socket); [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/client/client.rs:57:9 [INFO] [stdout] | [INFO] [stdout] 57 | let mut present: u8 = 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/client/client.rs:58:9 [INFO] [stdout] | [INFO] [stdout] 58 | let mut size: usize = 0; [INFO] [stdout] | ----^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `stream` [INFO] [stdout] --> src/client/client.rs:33:10 [INFO] [stdout] | [INFO] [stdout] 33 | let (stream, stream_handle) = OutputStream::try_default().unwrap(); [INFO] [stdout] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_stream` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `present` [INFO] [stdout] --> src/client/client.rs:57:9 [INFO] [stdout] | [INFO] [stdout] 57 | let mut present: u8 = 0; [INFO] [stdout] | ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_present` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `size` [INFO] [stdout] --> src/client/client.rs:58:9 [INFO] [stdout] | [INFO] [stdout] 58 | let mut size: usize = 0; [INFO] [stdout] | ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_size` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `tx` [INFO] [stdout] --> src/client/client.rs:124:10 [INFO] [stdout] | [INFO] [stdout] 124 | let (tx, mut rx) = mpsc::unbounded_channel::(); [INFO] [stdout] | ^^ help: if this is intentional, prefix it with an underscore: `_tx` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `control_instance` is never used [INFO] [stdout] --> src/client/client.rs:123:4 [INFO] [stdout] | [INFO] [stdout] 123 | fn control_instance() -> (impl Future, UnboundedReceiver) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `sound_instance` is never used [INFO] [stdout] --> src/client/client.rs:134:4 [INFO] [stdout] | [INFO] [stdout] 134 | fn sound_instance() {} [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/client/client.rs:35:5 [INFO] [stdout] | [INFO] [stdout] 35 | client_socket.send("".as_bytes()).await; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] = note: `#[warn(unused_must_use)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 35 | let _ = client_socket.send("".as_bytes()).await; [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/client/client.rs:39:9 [INFO] [stdout] | [INFO] [stdout] 39 | client_socket.recv_buf(&mut buf).await; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 39 | let _ = client_socket.recv_buf(&mut buf).await; [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/client/client.rs:56:5 [INFO] [stdout] | [INFO] [stdout] 56 | client_socket.send(&song).await; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 56 | let _ = client_socket.send(&song).await; [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/client/client.rs:67:9 [INFO] [stdout] | [INFO] [stdout] 67 | client_socket.send(&seq).await; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 67 | let _ = client_socket.send(&seq).await; [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/client/client.rs:80:9 [INFO] [stdout] | [INFO] [stdout] 80 | sender.send(buf[..buf.len() - 1].to_vec()).await; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 80 | let _ = sender.send(buf[..buf.len() - 1].to_vec()).await; [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/client/client.rs:97:5 [INFO] [stdout] | [INFO] [stdout] 97 | t1.await; [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 97 | let _ = t1.await; [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/client/client_optimized.rs:89:9 [INFO] [stdout] | [INFO] [stdout] 89 | let mut client_socket = tokio::net::UdpSocket::bind("0.0.0.0:0").await.unwrap(); [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/client/client_optimized.rs:90:9 [INFO] [stdout] | [INFO] [stdout] 90 | let mut client_socket = Arc::new(client_socket); [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/client/client_optimized.rs:95:9 [INFO] [stdout] | [INFO] [stdout] 95 | let mut client_socket_network_block = client_socket.clone(); [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/client/client_optimized.rs:114:19 [INFO] [stdout] | [INFO] [stdout] 114 | let (control, mut receiver) = control_block(); [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/client/client_optimized.rs:115:10 [INFO] [stdout] | [INFO] [stdout] 115 | let (mut data_rx, network_loop) = network_block(receiver, client_socket_network_block); [INFO] [stdout] | ----^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `t1` [INFO] [stdout] --> src/client/client_optimized.rs:117:9 [INFO] [stdout] | [INFO] [stdout] 117 | let t1 = tokio::spawn(control); [INFO] [stdout] | ^^ help: if this is intentional, prefix it with an underscore: `_t1` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `t2` [INFO] [stdout] --> src/client/client_optimized.rs:118:9 [INFO] [stdout] | [INFO] [stdout] 118 | let t2 = tokio::spawn(network_loop); [INFO] [stdout] | ^^ help: if this is intentional, prefix it with an underscore: `_t2` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `adding` is never used [INFO] [stdout] --> src/server/server_struct/song_processing.rs:100:4 [INFO] [stdout] | [INFO] [stdout] 100 | fn adding(i: u8) -> u8 { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `stream` [INFO] [stdout] --> src/client/client_optimized.rs:274:10 [INFO] [stdout] | [INFO] [stdout] 274 | let (stream, stream_handle) = OutputStream::try_default().unwrap(); [INFO] [stdout] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_stream` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `main2` is never used [INFO] [stdout] --> src/client/client_optimized.rs:19:10 [INFO] [stdout] | [INFO] [stdout] 19 | async fn main2() { [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/quic/server/server.rs:35:9 [INFO] [stdout] | [INFO] [stdout] 35 | let mut conn = incoming.await.unwrap(); [INFO] [stdout] | ----^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/client/client_optimized.rs:99:5 [INFO] [stdout] | [INFO] [stdout] 99 | client_socket.send("".as_bytes()).await; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] = note: `#[warn(unused_must_use)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 99 | let _ = client_socket.send("".as_bytes()).await; [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/client/client_optimized.rs:103:9 [INFO] [stdout] | [INFO] [stdout] 103 | client_socket.recv_buf(&mut buf).await; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 103 | let _ = client_socket.recv_buf(&mut buf).await; [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/client/client_optimized.rs:235:13 [INFO] [stdout] | [INFO] [stdout] 235 | client_socket.send(&res).await; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 235 | let _ = client_socket.send(&res).await; [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/client/client_optimized.rs:239:17 [INFO] [stdout] | [INFO] [stdout] 239 | client_socket.send(&seq).await; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 239 | let _ = client_socket.send(&seq).await; [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/client/client_optimized.rs:253:17 [INFO] [stdout] | [INFO] [stdout] 253 | chunk_tx.send(buf[..buf.len() - 1].to_vec()); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 253 | let _ = chunk_tx.send(buf[..buf.len() - 1].to_vec()); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/server/server_struct.rs:227:25 [INFO] [stdout] | [INFO] [stdout] 227 | socket.send_to(i.as_bytes(), addr).await; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] = note: `#[warn(unused_must_use)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 227 | let _ = socket.send_to(i.as_bytes(), addr).await; [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/server/server_struct.rs:230:25 [INFO] [stdout] | [INFO] [stdout] 230 | socket.send_to("".as_bytes(), addr).await; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 230 | let _ = socket.send_to("".as_bytes(), addr).await; [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/server/server_struct.rs:234:25 [INFO] [stdout] | [INFO] [stdout] 234 | song_tx.send((buf,len)).await; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 234 | let _ = song_tx.send((buf,len)).await; [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/server/server_struct/song_processing.rs:73:13 [INFO] [stdout] | [INFO] [stdout] 73 | socket.send_to(&cache, addr).await; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 73 | let _ = socket.send_to(&cache, addr).await; [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/quic/server/server.rs:42:9 [INFO] [stdout] | [INFO] [stdout] 42 | bi.0.write_all(chunk).await; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] = note: `#[warn(unused_must_use)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 42 | let _ = bi.0.write_all(chunk).await; [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/server/server_struct/song_processing.rs:81:13 [INFO] [stdout] | [INFO] [stdout] 81 | socket.send_to(&cache, addr).await; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 81 | let _ = socket.send_to(&cache, addr).await; [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/quic/server/server.rs:45:9 [INFO] [stdout] | [INFO] [stdout] 45 | bi.0.flush().await; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 45 | let _ = bi.0.flush().await; [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/server/server_struct/song_processing.rs:116:13 [INFO] [stdout] | [INFO] [stdout] 116 | chunk_tx.send(vec![]); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 116 | let _ = chunk_tx.send(vec![]); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/quic/server/server.rs:60:5 [INFO] [stdout] | [INFO] [stdout] 60 | bi.0.finish(); [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 60 | let _ = bi.0.finish(); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/server/server_struct/song_processing.rs:138:13 [INFO] [stdout] | [INFO] [stdout] 138 | chunk_tx.send(res); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 138 | let _ = chunk_tx.send(res); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/quic/server/server.rs:61:5 [INFO] [stdout] | [INFO] [stdout] 61 | bi.0.shutdown().await; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 61 | let _ = bi.0.shutdown().await; [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/server/server_struct/song_processing.rs:184:17 [INFO] [stdout] | [INFO] [stdout] 184 | seq_tx.send(seq_num); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 184 | let _ = seq_tx.send(seq_num); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/server/server_struct/song_processing.rs:189:21 [INFO] [stdout] | [INFO] [stdout] 189 | fail_alert_tx.send(()); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 189 | let _ = fail_alert_tx.send(()); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/server/server_struct/song_processing.rs:193:25 [INFO] [stdout] | [INFO] [stdout] 193 | find_song_tx.send(res); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 193 | let _ = find_song_tx.send(res); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/server/server_struct/song_processing.rs:196:25 [INFO] [stdout] | [INFO] [stdout] 196 | fail_alert_tx.send(()); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 196 | let _ = fail_alert_tx.send(()); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished `dev` profile [unoptimized + debuginfo] target(s) in 1m 32s [INFO] running `Command { std: "docker" "inspect" "be8752ef2ba294ecdcd7552b96b509387d48900ab4ffa6e15ad90c256076c165", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "be8752ef2ba294ecdcd7552b96b509387d48900ab4ffa6e15ad90c256076c165", kill_on_drop: false }` [INFO] [stdout] be8752ef2ba294ecdcd7552b96b509387d48900ab4ffa6e15ad90c256076c165