[INFO] cloning repository https://github.com/Jazzcort/Rusdis [INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/Jazzcort/Rusdis" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FJazzcort%2FRusdis", kill_on_drop: false }` [INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FJazzcort%2FRusdis'... [INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }` [INFO] [stdout] 318a3f648802e6a72c3159b2db6e8e08a3a6a53f [INFO] checking Jazzcort/Rusdis against try#d8a5ee01b913730aca7ab44c72c8f2722c0533ff for pr-139022 [INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FJazzcort%2FRusdis" "/workspace/builds/worker-1-tc2/source", kill_on_drop: false }` [INFO] [stderr] Cloning into '/workspace/builds/worker-1-tc2/source'... [INFO] [stderr] done. [INFO] validating manifest of git repo https://github.com/Jazzcort/Rusdis on toolchain d8a5ee01b913730aca7ab44c72c8f2722c0533ff [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+d8a5ee01b913730aca7ab44c72c8f2722c0533ff" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] started tweaking git repo https://github.com/Jazzcort/Rusdis [INFO] finished tweaking git repo https://github.com/Jazzcort/Rusdis [INFO] tweaked toml for git repo https://github.com/Jazzcort/Rusdis written to /workspace/builds/worker-1-tc2/source/Cargo.toml [INFO] crate git repo https://github.com/Jazzcort/Rusdis 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" "+d8a5ee01b913730aca7ab44c72c8f2722c0533ff" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] [stderr] Blocking waiting for file lock on package cache [INFO] [stderr] Blocking waiting for file lock on package cache [INFO] [stderr] Downloading crates ... [INFO] [stderr] Downloaded clap v4.5.12 [INFO] [stderr] Downloaded clap_builder v4.5.12 [INFO] [stderr] Downloaded anyhow v1.0.59 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-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:4b26683ee3c49f365255c425c23003cbf4366de097804722c29c5bbbee3624d2" "/opt/rustwide/cargo-home/bin/cargo" "+d8a5ee01b913730aca7ab44c72c8f2722c0533ff" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] 4dfef1e4080e1d99b514d1bb71d97f628c2396d7e18351b2e204a2e4481579d6 [INFO] running `Command { std: "docker" "start" "-a" "4dfef1e4080e1d99b514d1bb71d97f628c2396d7e18351b2e204a2e4481579d6", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "4dfef1e4080e1d99b514d1bb71d97f628c2396d7e18351b2e204a2e4481579d6", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "4dfef1e4080e1d99b514d1bb71d97f628c2396d7e18351b2e204a2e4481579d6", kill_on_drop: false }` [INFO] [stdout] 4dfef1e4080e1d99b514d1bb71d97f628c2396d7e18351b2e204a2e4481579d6 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-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:4b26683ee3c49f365255c425c23003cbf4366de097804722c29c5bbbee3624d2" "/opt/rustwide/cargo-home/bin/cargo" "+d8a5ee01b913730aca7ab44c72c8f2722c0533ff" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] ba21b80d2d5e44a64760a97544f9d0f64712ba18ab0cb3ed708263136c85b18c [INFO] running `Command { std: "docker" "start" "-a" "ba21b80d2d5e44a64760a97544f9d0f64712ba18ab0cb3ed708263136c85b18c", kill_on_drop: false }` [INFO] [stderr] Compiling proc-macro2 v1.0.89 [INFO] [stderr] Compiling unicode-ident v1.0.13 [INFO] [stderr] Compiling libc v0.2.164 [INFO] [stderr] Checking cfg-if v1.0.0 [INFO] [stderr] Compiling autocfg v1.1.0 [INFO] [stderr] Compiling syn v1.0.109 [INFO] [stderr] Compiling log v0.4.11 [INFO] [stderr] Checking memchr v2.7.4 [INFO] [stderr] Checking utf8parse v0.2.2 [INFO] [stderr] Compiling parking_lot_core v0.9.5 [INFO] [stderr] Checking byteorder v1.5.0 [INFO] [stderr] Checking colorchoice v1.0.3 [INFO] [stderr] Checking anstyle v1.0.10 [INFO] [stderr] Checking cfg-if v0.1.10 [INFO] [stderr] Checking anstyle-query v1.1.2 [INFO] [stderr] Checking scopeguard v1.1.0 [INFO] [stderr] Checking is_terminal_polyfill v1.70.1 [INFO] [stderr] Checking anstyle-parse v0.2.6 [INFO] [stderr] Checking smallvec v1.10.0 [INFO] [stderr] Compiling anyhow v1.0.59 [INFO] [stderr] Checking strsim v0.11.1 [INFO] [stderr] Checking clap_lex v0.7.2 [INFO] [stderr] Compiling heck v0.5.0 [INFO] [stderr] Checking regex-syntax v0.8.5 [INFO] [stderr] Checking pin-project-lite v0.2.9 [INFO] [stderr] Checking bytes v1.3.0 [INFO] [stderr] Checking lazy_static v1.5.0 [INFO] [stderr] Checking anstream v0.6.18 [INFO] [stderr] Compiling lock_api v0.4.9 [INFO] [stderr] Compiling tokio v1.23.0 [INFO] [stderr] Checking clap_builder v4.5.12 [INFO] [stderr] Checking aho-corasick v1.1.3 [INFO] [stderr] Compiling quote v1.0.37 [INFO] [stderr] Compiling syn v2.0.87 [INFO] [stderr] Checking getrandom v0.2.15 [INFO] [stderr] Checking mio v0.8.5 [INFO] [stderr] Checking socket2 v0.4.7 [INFO] [stderr] Checking signal-hook-registry v1.2.2 [INFO] [stderr] Checking num_cpus v1.13.0 [INFO] [stderr] Checking rand_core v0.6.4 [INFO] [stderr] Checking parking_lot v0.12.1 [INFO] [stderr] Checking regex-automata v0.4.8 [INFO] [stderr] Checking regex v1.11.1 [INFO] [stderr] Compiling tokio-macros v1.8.2 [INFO] [stderr] Compiling thiserror-impl v1.0.32 [INFO] [stderr] Compiling zerocopy-derive v0.7.35 [INFO] [stderr] Compiling clap_derive v4.5.11 [INFO] [stderr] Checking zerocopy v0.7.35 [INFO] [stderr] Checking thiserror v1.0.32 [INFO] [stderr] Checking ppv-lite86 v0.2.20 [INFO] [stderr] Checking rand_chacha v0.3.1 [INFO] [stderr] Checking clap v4.5.12 [INFO] [stderr] Checking rand v0.8.5 [INFO] [stderr] Checking redis-starter-rust v0.1.0 (/opt/rustwide/workdir) [INFO] [stdout] warning: unused import: `regex::Regex` [INFO] [stdout] --> src/command_parser.rs:2:5 [INFO] [stdout] | [INFO] [stdout] 2 | use regex::Regex; [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `Duration` [INFO] [stdout] --> src/data.rs:5:17 [INFO] [stdout] | [INFO] [stdout] 5 | use std::time::{Duration, SystemTime}; [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::fs::File` [INFO] [stdout] --> src/rdb_file_reader.rs:2:5 [INFO] [stdout] | [INFO] [stdout] 2 | use std::fs::File; [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::io::prelude::*` [INFO] [stdout] --> src/rdb_file_reader.rs:3:5 [INFO] [stdout] | [INFO] [stdout] 3 | use std::io::prelude::*; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::io::BufReader` [INFO] [stdout] --> src/rdb_file_reader.rs:4:5 [INFO] [stdout] | [INFO] [stdout] 4 | use std::io::BufReader; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `Database` [INFO] [stdout] --> src/main.rs:11:26 [INFO] [stdout] | [INFO] [stdout] 11 | use crate::data::{Admin, Database, ReplicaRole, ReplicationInfo, StringData}; [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `HashMap` and `VecDeque` [INFO] [stdout] --> src/main.rs:20:24 [INFO] [stdout] | [INFO] [stdout] 20 | use std::collections::{HashMap, VecDeque}; [INFO] [stdout] | ^^^^^^^ ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::iter::Peekable` [INFO] [stdout] --> src/main.rs:23:5 [INFO] [stdout] | [INFO] [stdout] 23 | use std::iter::Peekable; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `regex::Regex` [INFO] [stdout] --> src/command_parser.rs:2:5 [INFO] [stdout] | [INFO] [stdout] 2 | use regex::Regex; [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `ReadHalf` and `WriteHalf` [INFO] [stdout] --> src/main.rs:27:23 [INFO] [stdout] | [INFO] [stdout] 27 | use tokio::net::tcp::{ReadHalf, WriteHalf}; [INFO] [stdout] | ^^^^^^^^ ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::fs::File` [INFO] [stdout] --> src/rdb_file_reader.rs:2:5 [INFO] [stdout] | [INFO] [stdout] 2 | use std::fs::File; [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::io::prelude::*` [INFO] [stdout] --> src/rdb_file_reader.rs:3:5 [INFO] [stdout] | [INFO] [stdout] 3 | use std::io::prelude::*; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::io::BufReader` [INFO] [stdout] --> src/rdb_file_reader.rs:4:5 [INFO] [stdout] | [INFO] [stdout] 4 | use std::io::BufReader; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `Database` [INFO] [stdout] --> src/main.rs:11:26 [INFO] [stdout] | [INFO] [stdout] 11 | use crate::data::{Admin, Database, ReplicaRole, ReplicationInfo, StringData}; [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `HashMap` and `VecDeque` [INFO] [stdout] --> src/main.rs:20:24 [INFO] [stdout] | [INFO] [stdout] 20 | use std::collections::{HashMap, VecDeque}; [INFO] [stdout] | ^^^^^^^ ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::iter::Peekable` [INFO] [stdout] --> src/main.rs:23:5 [INFO] [stdout] | [INFO] [stdout] 23 | use std::iter::Peekable; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `ReadHalf` and `WriteHalf` [INFO] [stdout] --> src/main.rs:27:23 [INFO] [stdout] | [INFO] [stdout] 27 | use tokio::net::tcp::{ReadHalf, WriteHalf}; [INFO] [stdout] | ^^^^^^^^ ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `rdb_file` [INFO] [stdout] --> src/main.rs:249:9 [INFO] [stdout] | [INFO] [stdout] 249 | let rdb_file = read_rdb(buf.into_iter().peekable()); [INFO] [stdout] | ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_rdb_file` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `rdb_file` [INFO] [stdout] --> src/main.rs:249:9 [INFO] [stdout] | [INFO] [stdout] 249 | let rdb_file = read_rdb(buf.into_iter().peekable()); [INFO] [stdout] | ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_rdb_file` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `buf_length` [INFO] [stdout] --> src/main.rs:257:21 [INFO] [stdout] | [INFO] [stdout] 257 | let buf_length = buf.len(); [INFO] [stdout] | ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_buf_length` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `buf_length` [INFO] [stdout] --> src/main.rs:257:21 [INFO] [stdout] | [INFO] [stdout] 257 | let buf_length = buf.len(); [INFO] [stdout] | ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_buf_length` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `port` [INFO] [stdout] --> src/main.rs:645:51 [INFO] [stdout] | [INFO] [stdout] 645 | ReplconfSubcommand::ListeningPort(port) => { [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_port` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `options` [INFO] [stdout] --> src/main.rs:649:42 [INFO] [stdout] | [INFO] [stdout] 649 | ReplconfSubcommand::Capa(options) => { [INFO] [stdout] | ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_options` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `port` [INFO] [stdout] --> src/main.rs:645:51 [INFO] [stdout] | [INFO] [stdout] 645 | ReplconfSubcommand::ListeningPort(port) => { [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_port` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `options` [INFO] [stdout] --> src/main.rs:649:42 [INFO] [stdout] | [INFO] [stdout] 649 | ReplconfSubcommand::Capa(options) => { [INFO] [stdout] | ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_options` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `addr` [INFO] [stdout] --> src/main.rs:307:49 [INFO] [stdout] | [INFO] [stdout] 307 | async fn handle_commands(mut stream: TcpStream, addr: String) -> Result<(), RusdisError> { [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_addr` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `offset` [INFO] [stdout] --> src/main.rs:334:42 [INFO] [stdout] | [INFO] [stdout] 334 | Command::Psync { id, offset } => match id { [INFO] [stdout] | ^^^^^^ help: try ignoring the field: `offset: _` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `master_id` [INFO] [stdout] --> src/main.rs:335:30 [INFO] [stdout] | [INFO] [stdout] 335 | Some(master_id) => {} [INFO] [stdout] | ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_master_id` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `addr` [INFO] [stdout] --> src/main.rs:307:49 [INFO] [stdout] | [INFO] [stdout] 307 | async fn handle_commands(mut stream: TcpStream, addr: String) -> Result<(), RusdisError> { [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_addr` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `offset` [INFO] [stdout] --> src/main.rs:334:42 [INFO] [stdout] | [INFO] [stdout] 334 | Command::Psync { id, offset } => match id { [INFO] [stdout] | ^^^^^^ help: try ignoring the field: `offset: _` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `master_id` [INFO] [stdout] --> src/main.rs:335:30 [INFO] [stdout] | [INFO] [stdout] 335 | Some(master_id) => {} [INFO] [stdout] | ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_master_id` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/main.rs:314:13 [INFO] [stdout] | [INFO] [stdout] 314 | let mut buf = Vec::from(reader.fill_buf().await?); [INFO] [stdout] | ----^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_mut)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/main.rs:314:13 [INFO] [stdout] | [INFO] [stdout] 314 | let mut buf = Vec::from(reader.fill_buf().await?); [INFO] [stdout] | ----^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_mut)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unreachable statement [INFO] [stdout] --> src/main.rs:449:9 [INFO] [stdout] | [INFO] [stdout] 437 | / loop { [INFO] [stdout] 438 | | tokio::select! { [INFO] [stdout] 439 | | result = rx.recv() => { [INFO] [stdout] 440 | | if let Ok(cmd) = result { [INFO] [stdout] ... | [INFO] [stdout] 447 | | } [INFO] [stdout] | |_________- any code following this expression is unreachable [INFO] [stdout] 448 | [INFO] [stdout] 449 | let mut slaves_count_write = SLAVES_COUNT.write().await; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ unreachable statement [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unreachable_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unreachable statement [INFO] [stdout] --> src/main.rs:449:9 [INFO] [stdout] | [INFO] [stdout] 437 | / loop { [INFO] [stdout] 438 | | tokio::select! { [INFO] [stdout] 439 | | result = rx.recv() => { [INFO] [stdout] 440 | | if let Ok(cmd) = result { [INFO] [stdout] ... | [INFO] [stdout] 447 | | } [INFO] [stdout] | |_________- any code following this expression is unreachable [INFO] [stdout] 448 | [INFO] [stdout] 449 | let mut slaves_count_write = SLAVES_COUNT.write().await; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ unreachable statement [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unreachable_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `db_index` [INFO] [stdout] --> src/rdb_file_reader.rs:129:48 [INFO] [stdout] | [INFO] [stdout] 129 | let (mut phantom_iter, db_index) = decode_length(phantom_iter)?; [INFO] [stdout] | ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_db_index` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `string_data_arc` [INFO] [stdout] --> src/main.rs:131:9 [INFO] [stdout] | [INFO] [stdout] 131 | let string_data_arc = admin_handle.get_string_data_map(); [INFO] [stdout] | ^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_string_data_arc` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `db_index` [INFO] [stdout] --> src/rdb_file_reader.rs:129:48 [INFO] [stdout] | [INFO] [stdout] 129 | let (mut phantom_iter, db_index) = decode_length(phantom_iter)?; [INFO] [stdout] | ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_db_index` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/main.rs:48:9 [INFO] [stdout] | [INFO] [stdout] 48 | let mut args = Args::parse(); [INFO] [stdout] | ----^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `reader` [INFO] [stdout] --> src/main.rs:433:17 [INFO] [stdout] | [INFO] [stdout] 433 | let mut reader = BufReader::new(reader); [INFO] [stdout] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_reader` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/main.rs:433:13 [INFO] [stdout] | [INFO] [stdout] 433 | let mut reader = BufReader::new(reader); [INFO] [stdout] | ----^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `string_data_arc` [INFO] [stdout] --> src/main.rs:131:9 [INFO] [stdout] | [INFO] [stdout] 131 | let string_data_arc = admin_handle.get_string_data_map(); [INFO] [stdout] | ^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_string_data_arc` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/main.rs:48:9 [INFO] [stdout] | [INFO] [stdout] 48 | let mut args = Args::parse(); [INFO] [stdout] | ----^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `reader` [INFO] [stdout] --> src/main.rs:433:17 [INFO] [stdout] | [INFO] [stdout] 433 | let mut reader = BufReader::new(reader); [INFO] [stdout] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_reader` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/main.rs:433:13 [INFO] [stdout] | [INFO] [stdout] 433 | let mut reader = BufReader::new(reader); [INFO] [stdout] | ----^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `set_master_replid` is never used [INFO] [stdout] --> src/data.rs:46:12 [INFO] [stdout] | [INFO] [stdout] 21 | impl ReplicationInfo { [INFO] [stdout] | -------------------- method in this implementation [INFO] [stdout] ... [INFO] [stdout] 46 | pub fn set_master_replid(&mut self, id: String) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `select_database` is never used [INFO] [stdout] --> src/data.rs:127:12 [INFO] [stdout] | [INFO] [stdout] 96 | impl Admin { [INFO] [stdout] | ---------- method in this implementation [INFO] [stdout] ... [INFO] [stdout] 127 | pub fn select_database(&mut self, idx: usize) { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variants `InvalidCommand` and `InstantAdditionError` are never constructed [INFO] [stdout] --> src/error.rs:9:5 [INFO] [stdout] | [INFO] [stdout] 5 | pub enum RusdisError { [INFO] [stdout] | ----------- variants in this enum [INFO] [stdout] ... [INFO] [stdout] 9 | InvalidCommand, [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 17 | InstantAdditionError, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `RusdisError` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `SimpleError` is never constructed [INFO] [stdout] --> src/parser.rs:16:5 [INFO] [stdout] | [INFO] [stdout] 14 | pub enum Value { [INFO] [stdout] | ----- variant in this enum [INFO] [stdout] 15 | SimpleString(String), [INFO] [stdout] 16 | SimpleError(String), [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `Value` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `rdb_version` and `aux_fields` are never read [INFO] [stdout] --> src/rdb_file_reader.rs:17:9 [INFO] [stdout] | [INFO] [stdout] 16 | pub struct RDBFile { [INFO] [stdout] | ------- fields in this struct [INFO] [stdout] 17 | pub rdb_version: String, [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] 18 | pub aux_fields: Vec<(String, String)>, [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `RDBFile` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/main.rs:152:21 [INFO] [stdout] | [INFO] [stdout] 152 | handle_commands(stream, addr.to_string()).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)]` on by default [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 152 | let _ = handle_commands(stream, addr.to_string()).await; [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/main.rs:278:37 [INFO] [stdout] | [INFO] [stdout] 278 | ... writer.write_all(reply_msg.as_bytes()).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] 278 | let _ = writer.write_all(reply_msg.as_bytes()).await; [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/main.rs:343:29 [INFO] [stdout] | [INFO] [stdout] 343 | / ... writer [INFO] [stdout] 344 | | ... .write_all( [INFO] [stdout] 345 | | ... format!("+FULLRESYNC {} {}\r\n", master_id, cur_offset) [INFO] [stdout] 346 | | ... .as_bytes(), [INFO] [stdout] 347 | | ... ) [INFO] [stdout] 348 | | ... .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] 343 | let _ = writer [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/main.rs:365:29 [INFO] [stdout] | [INFO] [stdout] 365 | / ... writer [INFO] [stdout] 366 | | ... .write_all( [INFO] [stdout] 367 | | ... [prefix.as_bytes(), data_vec.as_slice()].concat().as_slice(), [INFO] [stdout] 368 | | ... ) [INFO] [stdout] 369 | | ... .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] 365 | let _ = writer [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/main.rs:388:25 [INFO] [stdout] | [INFO] [stdout] 388 | writer.write_all(b"+OK\r\n").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] 388 | let _ = writer.write_all(b"+OK\r\n").await; [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/main.rs:392:29 [INFO] [stdout] | [INFO] [stdout] 392 | ... writer.write_all(b"-ERR EXEC without MULTI\r\n").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] 392 | let _ = writer.write_all(b"-ERR EXEC without MULTI\r\n").await; [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/main.rs:399:25 [INFO] [stdout] | [INFO] [stdout] 399 | writer.write_all(reply_string.as_bytes()).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] 399 | let _ = writer.write_all(reply_string.as_bytes()).await; [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/main.rs:403:29 [INFO] [stdout] | [INFO] [stdout] 403 | ... writer.write_all(b"-ERR DISCARD without MULTI\r\n").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] 403 | let _ = writer.write_all(b"-ERR DISCARD without MULTI\r\n").await; [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/main.rs:409:25 [INFO] [stdout] | [INFO] [stdout] 409 | writer.write_all(b"+OK\r\n").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] 409 | let _ = writer.write_all(b"+OK\r\n").await; [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/main.rs:415:29 [INFO] [stdout] | [INFO] [stdout] 415 | ... writer.write_all(reply_string.as_bytes()).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] 415 | let _ = writer.write_all(reply_string.as_bytes()).await; [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/main.rs:418:29 [INFO] [stdout] | [INFO] [stdout] 418 | ... writer.write_all(b"+QUEUED\r\n").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] 418 | let _ = writer.write_all(b"+QUEUED\r\n").await; [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/main.rs:443:25 [INFO] [stdout] | [INFO] [stdout] 443 | writer.write_all(cmd.as_bytes()).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] 443 | let _ = writer.write_all(cmd.as_bytes()).await; [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `set_master_replid` is never used [INFO] [stdout] --> src/data.rs:46:12 [INFO] [stdout] | [INFO] [stdout] 21 | impl ReplicationInfo { [INFO] [stdout] | -------------------- method in this implementation [INFO] [stdout] ... [INFO] [stdout] 46 | pub fn set_master_replid(&mut self, id: String) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variants `InvalidCommand` and `InstantAdditionError` are never constructed [INFO] [stdout] --> src/error.rs:9:5 [INFO] [stdout] | [INFO] [stdout] 5 | pub enum RusdisError { [INFO] [stdout] | ----------- variants in this enum [INFO] [stdout] ... [INFO] [stdout] 9 | InvalidCommand, [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 17 | InstantAdditionError, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `RusdisError` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `SimpleError` is never constructed [INFO] [stdout] --> src/parser.rs:16:5 [INFO] [stdout] | [INFO] [stdout] 14 | pub enum Value { [INFO] [stdout] | ----- variant in this enum [INFO] [stdout] 15 | SimpleString(String), [INFO] [stdout] 16 | SimpleError(String), [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `Value` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `rdb_version` and `aux_fields` are never read [INFO] [stdout] --> src/rdb_file_reader.rs:17:9 [INFO] [stdout] | [INFO] [stdout] 16 | pub struct RDBFile { [INFO] [stdout] | ------- fields in this struct [INFO] [stdout] 17 | pub rdb_version: String, [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] 18 | pub aux_fields: Vec<(String, String)>, [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `RDBFile` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/main.rs:152:21 [INFO] [stdout] | [INFO] [stdout] 152 | handle_commands(stream, addr.to_string()).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)]` on by default [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 152 | let _ = handle_commands(stream, addr.to_string()).await; [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/main.rs:278:37 [INFO] [stdout] | [INFO] [stdout] 278 | ... writer.write_all(reply_msg.as_bytes()).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] 278 | let _ = writer.write_all(reply_msg.as_bytes()).await; [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/main.rs:343:29 [INFO] [stdout] | [INFO] [stdout] 343 | / ... writer [INFO] [stdout] 344 | | ... .write_all( [INFO] [stdout] 345 | | ... format!("+FULLRESYNC {} {}\r\n", master_id, cur_offset) [INFO] [stdout] 346 | | ... .as_bytes(), [INFO] [stdout] 347 | | ... ) [INFO] [stdout] 348 | | ... .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] 343 | let _ = writer [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/main.rs:365:29 [INFO] [stdout] | [INFO] [stdout] 365 | / ... writer [INFO] [stdout] 366 | | ... .write_all( [INFO] [stdout] 367 | | ... [prefix.as_bytes(), data_vec.as_slice()].concat().as_slice(), [INFO] [stdout] 368 | | ... ) [INFO] [stdout] 369 | | ... .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] 365 | let _ = writer [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/main.rs:388:25 [INFO] [stdout] | [INFO] [stdout] 388 | writer.write_all(b"+OK\r\n").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] 388 | let _ = writer.write_all(b"+OK\r\n").await; [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/main.rs:392:29 [INFO] [stdout] | [INFO] [stdout] 392 | ... writer.write_all(b"-ERR EXEC without MULTI\r\n").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] 392 | let _ = writer.write_all(b"-ERR EXEC without MULTI\r\n").await; [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/main.rs:399:25 [INFO] [stdout] | [INFO] [stdout] 399 | writer.write_all(reply_string.as_bytes()).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] 399 | let _ = writer.write_all(reply_string.as_bytes()).await; [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/main.rs:403:29 [INFO] [stdout] | [INFO] [stdout] 403 | ... writer.write_all(b"-ERR DISCARD without MULTI\r\n").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] 403 | let _ = writer.write_all(b"-ERR DISCARD without MULTI\r\n").await; [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/main.rs:409:25 [INFO] [stdout] | [INFO] [stdout] 409 | writer.write_all(b"+OK\r\n").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] 409 | let _ = writer.write_all(b"+OK\r\n").await; [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/main.rs:415:29 [INFO] [stdout] | [INFO] [stdout] 415 | ... writer.write_all(reply_string.as_bytes()).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] 415 | let _ = writer.write_all(reply_string.as_bytes()).await; [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/main.rs:418:29 [INFO] [stdout] | [INFO] [stdout] 418 | ... writer.write_all(b"+QUEUED\r\n").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] 418 | let _ = writer.write_all(b"+QUEUED\r\n").await; [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/main.rs:443:25 [INFO] [stdout] | [INFO] [stdout] 443 | writer.write_all(cmd.as_bytes()).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] 443 | let _ = writer.write_all(cmd.as_bytes()).await; [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished `dev` profile [unoptimized + debuginfo] target(s) in 7.36s [INFO] running `Command { std: "docker" "inspect" "ba21b80d2d5e44a64760a97544f9d0f64712ba18ab0cb3ed708263136c85b18c", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "ba21b80d2d5e44a64760a97544f9d0f64712ba18ab0cb3ed708263136c85b18c", kill_on_drop: false }` [INFO] [stdout] ba21b80d2d5e44a64760a97544f9d0f64712ba18ab0cb3ed708263136c85b18c