[INFO] cloning repository https://github.com/zhanpengqiu/Redis-codecrafter-challenge [INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/zhanpengqiu/Redis-codecrafter-challenge" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fzhanpengqiu%2FRedis-codecrafter-challenge", kill_on_drop: false }` [INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fzhanpengqiu%2FRedis-codecrafter-challenge'... [INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }` [INFO] [stdout] c97097f90cfac44ac7fb24330907666b4da48aa1 [INFO] checking zhanpengqiu/Redis-codecrafter-challenge against master#8365fcb2b840c95eeb0bc377af8bd498fad22245 for pr-145605 [INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fzhanpengqiu%2FRedis-codecrafter-challenge" "/workspace/builds/worker-3-tc1/source", kill_on_drop: false }` [INFO] [stderr] Cloning into '/workspace/builds/worker-3-tc1/source'... [INFO] [stderr] done. [INFO] started tweaking git repo https://github.com/zhanpengqiu/Redis-codecrafter-challenge [INFO] finished tweaking git repo https://github.com/zhanpengqiu/Redis-codecrafter-challenge [INFO] tweaked toml for git repo https://github.com/zhanpengqiu/Redis-codecrafter-challenge written to /workspace/builds/worker-3-tc1/source/Cargo.toml [INFO] validating manifest of git repo https://github.com/zhanpengqiu/Redis-codecrafter-challenge on toolchain 8365fcb2b840c95eeb0bc377af8bd498fad22245 [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+8365fcb2b840c95eeb0bc377af8bd498fad22245" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] crate git repo https://github.com/zhanpengqiu/Redis-codecrafter-challenge 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" "+8365fcb2b840c95eeb0bc377af8bd498fad22245" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:7ad1b28ee6f5f7f699f6cf7015098d6ccdd96d6f2d78dd06228f5b4c9faf309c" "/opt/rustwide/cargo-home/bin/cargo" "+8365fcb2b840c95eeb0bc377af8bd498fad22245" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] d5bfc74918ad1f0f1ca1d11f8686b7996497c9fe371fc6a5ed46d42f11183d75 [INFO] running `Command { std: "docker" "start" "-a" "d5bfc74918ad1f0f1ca1d11f8686b7996497c9fe371fc6a5ed46d42f11183d75", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "d5bfc74918ad1f0f1ca1d11f8686b7996497c9fe371fc6a5ed46d42f11183d75", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "d5bfc74918ad1f0f1ca1d11f8686b7996497c9fe371fc6a5ed46d42f11183d75", kill_on_drop: false }` [INFO] [stdout] d5bfc74918ad1f0f1ca1d11f8686b7996497c9fe371fc6a5ed46d42f11183d75 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:7ad1b28ee6f5f7f699f6cf7015098d6ccdd96d6f2d78dd06228f5b4c9faf309c" "/opt/rustwide/cargo-home/bin/cargo" "+8365fcb2b840c95eeb0bc377af8bd498fad22245" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] 9cc9410c634936628497509a7e2e1b99c304ae9cad084e8a40a747d8bbb319c5 [INFO] running `Command { std: "docker" "start" "-a" "9cc9410c634936628497509a7e2e1b99c304ae9cad084e8a40a747d8bbb319c5", kill_on_drop: false }` [INFO] [stderr] Compiling proc-macro2 v1.0.86 [INFO] [stderr] Compiling unicode-ident v1.0.12 [INFO] [stderr] Compiling libc v0.2.155 [INFO] [stderr] Compiling autocfg v1.3.0 [INFO] [stderr] Compiling parking_lot_core v0.9.10 [INFO] [stderr] Checking memchr v2.7.4 [INFO] [stderr] Checking cfg-if v1.0.0 [INFO] [stderr] Checking scopeguard v1.2.0 [INFO] [stderr] Checking smallvec v1.13.2 [INFO] [stderr] Compiling serde v1.0.210 [INFO] [stderr] Checking regex-syntax v0.8.5 [INFO] [stderr] Compiling thiserror v1.0.61 [INFO] [stderr] Compiling anyhow v1.0.86 [INFO] [stderr] Compiling serde_json v1.0.132 [INFO] [stderr] Checking ryu v1.0.18 [INFO] [stderr] Checking bytes v1.6.0 [INFO] [stderr] Checking itoa v1.0.11 [INFO] [stderr] Checking pin-project-lite v0.2.14 [INFO] [stderr] Checking byteorder v1.5.0 [INFO] [stderr] Checking hex v0.4.3 [INFO] [stderr] Compiling lock_api v0.4.12 [INFO] [stderr] Checking aho-corasick v1.1.3 [INFO] [stderr] Compiling quote v1.0.36 [INFO] [stderr] Compiling syn v2.0.69 [INFO] [stderr] Checking mio v0.8.11 [INFO] [stderr] Checking num_cpus v1.16.0 [INFO] [stderr] Checking signal-hook-registry v1.4.2 [INFO] [stderr] Checking socket2 v0.5.7 [INFO] [stderr] Checking parking_lot v0.12.3 [INFO] [stderr] Checking regex-automata v0.4.8 [INFO] [stderr] Checking regex v1.11.1 [INFO] [stderr] Compiling serde_derive v1.0.210 [INFO] [stderr] Compiling thiserror-impl v1.0.61 [INFO] [stderr] Compiling tokio-macros v2.3.0 [INFO] [stderr] Checking tokio v1.38.0 [INFO] [stderr] Checking redis-starter-rust v0.1.0 (/opt/rustwide/workdir) [INFO] [stdout] warning: unused variable: `bytes_consumed` [INFO] [stdout] --> src/resp.rs:88:17 [INFO] [stdout] | [INFO] [stdout] 88 | let (v, bytes_consumed) = parse_message(self.buffer.split()) [INFO] [stdout] | ^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_bytes_consumed` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `bytes_consumed` [INFO] [stdout] --> src/resp.rs:88:17 [INFO] [stdout] | [INFO] [stdout] 88 | let (v, bytes_consumed) = parse_message(self.buffer.split()) [INFO] [stdout] | ^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_bytes_consumed` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `e` [INFO] [stdout] --> src/db.rs:320:33 [INFO] [stdout] | [INFO] [stdout] 320 | ... Err(e) => return Value::Error("Err block num".to_string()) [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_e` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `e` [INFO] [stdout] --> src/db.rs:320:33 [INFO] [stdout] | [INFO] [stdout] 320 | ... Err(e) => return Value::Error("Err block num".to_string()) [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_e` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/db.rs:340:41 [INFO] [stdout] | [INFO] [stdout] 340 | ... let mut config_lock=config.lock().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/db.rs:340:41 [INFO] [stdout] | [INFO] [stdout] 340 | ... let mut config_lock=config.lock().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: value assigned to `response` is never read [INFO] [stdout] --> src/main.rs:139:17 [INFO] [stdout] | [INFO] [stdout] 139 | let mut response = Value::BulkString(None); [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: maybe it is overwritten before being read? [INFO] [stdout] = note: `#[warn(unused_assignments)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: value assigned to `response` is never read [INFO] [stdout] --> src/main.rs:139:17 [INFO] [stdout] | [INFO] [stdout] 139 | let mut response = Value::BulkString(None); [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: maybe it is overwritten before being read? [INFO] [stdout] = note: `#[warn(unused_assignments)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: value assigned to `end_of_bulk_str` is never read [INFO] [stdout] --> src/resp.rs:169:13 [INFO] [stdout] | [INFO] [stdout] 169 | let mut end_of_bulk_str = 0 as usize; [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: maybe it is overwritten before being read? [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: value assigned to `total_parsed` is never read [INFO] [stdout] --> src/resp.rs:170:13 [INFO] [stdout] | [INFO] [stdout] 170 | let mut total_parsed = 0 as usize; [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: maybe it is overwritten before being read? [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: value assigned to `end_of_bulk_str` is never read [INFO] [stdout] --> src/resp.rs:169:13 [INFO] [stdout] | [INFO] [stdout] 169 | let mut end_of_bulk_str = 0 as usize; [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: maybe it is overwritten before being read? [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: value assigned to `total_parsed` is never read [INFO] [stdout] --> src/resp.rs:170:13 [INFO] [stdout] | [INFO] [stdout] 170 | let mut total_parsed = 0 as usize; [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: maybe it is overwritten before being read? [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `index` [INFO] [stdout] --> src/slave_stream.rs:110:14 [INFO] [stdout] | [INFO] [stdout] 110 | for (index, item) in self.slave_offsets.iter_mut().enumerate() { [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_index` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `slave_num` [INFO] [stdout] --> src/slave_stream.rs:107:28 [INFO] [stdout] | [INFO] [stdout] 107 | pub fn wait(&mut self, slave_num:i32)->Result{ [INFO] [stdout] | ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_slave_num` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `entry` [INFO] [stdout] --> src/stream.rs:72:26 [INFO] [stdout] | [INFO] [stdout] 72 | for (id, entry) in stream_name_hashmap.iter() { [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_entry` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `id_no_tail` [INFO] [stdout] --> src/stream.rs:160:21 [INFO] [stdout] | [INFO] [stdout] 160 | let id_no_tail = remove_trailing(&id); [INFO] [stdout] | ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_id_no_tail` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `sequence` [INFO] [stdout] --> src/stream.rs:216:21 [INFO] [stdout] | [INFO] [stdout] 216 | let sequence = 0; [INFO] [stdout] | ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_sequence` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/stream.rs:235:53 [INFO] [stdout] | [INFO] [stdout] 235 | fn generate_unique_id(&mut self, name_key:Value,mut base_id: String) -> Value { [INFO] [stdout] | ----^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `parse_resizedb_field`, `parse_expiry_time_seconds`, and `parse_expiry_time_milliseconds` are never used [INFO] [stdout] --> src/config.rs:408:8 [INFO] [stdout] | [INFO] [stdout] 34 | impl Config { [INFO] [stdout] | ----------- methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 408 | fn parse_resizedb_field(&mut self, cursor: &mut Cursor>) -> io::Result<()> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 427 | fn parse_expiry_time_seconds(&mut self, cursor: &mut Cursor>) -> io::Result<()> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 434 | fn parse_expiry_time_milliseconds(&mut self, cursor: &mut Cursor>) -> io::Result<()> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/main.rs:297:37 [INFO] [stdout] | [INFO] [stdout] 297 | ... handler.write_value(respon).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] 297 | let _ = handler.write_value(respon).await; [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/slave_stream.rs:59:25 [INFO] [stdout] | [INFO] [stdout] 59 | handler.write_value(command.clone()).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] 59 | let _ = handler.write_value(command.clone()).await; [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/slave_stream.rs:74:21 [INFO] [stdout] | [INFO] [stdout] 74 | handler.write_value(Value::Array(getack_cmd_vec.clone())).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] 74 | let _ = handler.write_value(Value::Array(getack_cmd_vec.clone())).await; [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: using `.clone()` on a double reference, which returns `&Value` instead of cloning the inner type [INFO] [stdout] --> src/stream.rs:56:49 [INFO] [stdout] | [INFO] [stdout] 56 | .max_by(|a, b| compare_ids(a.clone().clone(), b.clone().clone())) [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(suspicious_double_ref_op)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: using `.clone()` on a double reference, which returns `&Value` instead of cloning the inner type [INFO] [stdout] --> src/stream.rs:56:68 [INFO] [stdout] | [INFO] [stdout] 56 | .max_by(|a, b| compare_ids(a.clone().clone(), b.clone().clone())) [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `index` [INFO] [stdout] --> src/slave_stream.rs:110:14 [INFO] [stdout] | [INFO] [stdout] 110 | for (index, item) in self.slave_offsets.iter_mut().enumerate() { [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_index` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `slave_num` [INFO] [stdout] --> src/slave_stream.rs:107:28 [INFO] [stdout] | [INFO] [stdout] 107 | pub fn wait(&mut self, slave_num:i32)->Result{ [INFO] [stdout] | ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_slave_num` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `entry` [INFO] [stdout] --> src/stream.rs:72:26 [INFO] [stdout] | [INFO] [stdout] 72 | for (id, entry) in stream_name_hashmap.iter() { [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_entry` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `id_no_tail` [INFO] [stdout] --> src/stream.rs:160:21 [INFO] [stdout] | [INFO] [stdout] 160 | let id_no_tail = remove_trailing(&id); [INFO] [stdout] | ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_id_no_tail` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `sequence` [INFO] [stdout] --> src/stream.rs:216:21 [INFO] [stdout] | [INFO] [stdout] 216 | let sequence = 0; [INFO] [stdout] | ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_sequence` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/stream.rs:235:53 [INFO] [stdout] | [INFO] [stdout] 235 | fn generate_unique_id(&mut self, name_key:Value,mut base_id: String) -> Value { [INFO] [stdout] | ----^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `parse_resizedb_field`, `parse_expiry_time_seconds`, and `parse_expiry_time_milliseconds` are never used [INFO] [stdout] --> src/config.rs:408:8 [INFO] [stdout] | [INFO] [stdout] 34 | impl Config { [INFO] [stdout] | ----------- methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 408 | fn parse_resizedb_field(&mut self, cursor: &mut Cursor>) -> io::Result<()> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 427 | fn parse_expiry_time_seconds(&mut self, cursor: &mut Cursor>) -> io::Result<()> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 434 | fn parse_expiry_time_milliseconds(&mut self, cursor: &mut Cursor>) -> io::Result<()> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/main.rs:297:37 [INFO] [stdout] | [INFO] [stdout] 297 | ... handler.write_value(respon).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] 297 | let _ = handler.write_value(respon).await; [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/slave_stream.rs:59:25 [INFO] [stdout] | [INFO] [stdout] 59 | handler.write_value(command.clone()).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] 59 | let _ = handler.write_value(command.clone()).await; [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/slave_stream.rs:74:21 [INFO] [stdout] | [INFO] [stdout] 74 | handler.write_value(Value::Array(getack_cmd_vec.clone())).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] 74 | let _ = handler.write_value(Value::Array(getack_cmd_vec.clone())).await; [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: using `.clone()` on a double reference, which returns `&Value` instead of cloning the inner type [INFO] [stdout] --> src/stream.rs:56:49 [INFO] [stdout] | [INFO] [stdout] 56 | .max_by(|a, b| compare_ids(a.clone().clone(), b.clone().clone())) [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(suspicious_double_ref_op)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: using `.clone()` on a double reference, which returns `&Value` instead of cloning the inner type [INFO] [stdout] --> src/stream.rs:56:68 [INFO] [stdout] | [INFO] [stdout] 56 | .max_by(|a, b| compare_ids(a.clone().clone(), b.clone().clone())) [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished `dev` profile [unoptimized + debuginfo] target(s) in 15.06s [INFO] running `Command { std: "docker" "inspect" "9cc9410c634936628497509a7e2e1b99c304ae9cad084e8a40a747d8bbb319c5", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "9cc9410c634936628497509a7e2e1b99c304ae9cad084e8a40a747d8bbb319c5", kill_on_drop: false }` [INFO] [stdout] 9cc9410c634936628497509a7e2e1b99c304ae9cad084e8a40a747d8bbb319c5