[INFO] cloning repository https://github.com/akishichinibu/codecrafters-redis-rust
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/akishichinibu/codecrafters-redis-rust" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fakishichinibu%2Fcodecrafters-redis-rust", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fakishichinibu%2Fcodecrafters-redis-rust'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] ecb20da00c4470cfada472095b956f875ff02600
[INFO] testing akishichinibu/codecrafters-redis-rust against master#1ef7943ee607160a564655b6596f83670ef95df5 for pr-146098-6
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fakishichinibu%2Fcodecrafters-redis-rust" "/workspace/builds/worker-5-tc1/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-5-tc1/source'...
[INFO] [stderr] done.
[INFO] started tweaking git repo https://github.com/akishichinibu/codecrafters-redis-rust
[INFO] finished tweaking git repo https://github.com/akishichinibu/codecrafters-redis-rust
[INFO] tweaked toml for git repo https://github.com/akishichinibu/codecrafters-redis-rust written to /workspace/builds/worker-5-tc1/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/akishichinibu/codecrafters-redis-rust on toolchain 1ef7943ee607160a564655b6596f83670ef95df5
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+1ef7943ee607160a564655b6596f83670ef95df5" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate git repo https://github.com/akishichinibu/codecrafters-redis-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" "+1ef7943ee607160a564655b6596f83670ef95df5" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]  Downloading crates ...
[INFO] [stderr]   Downloaded signal-hook-registry v1.2.2
[INFO] [stderr]   Downloaded anyhow v1.0.59
[INFO] [stderr]   Downloaded base64 v0.22.0
[INFO] [stderr]   Downloaded syn v1.0.67
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-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:4848fb76d95f26979359cc7e45710b1dbc8f3acb7aeedee7c460d7702230f228" "/opt/rustwide/cargo-home/bin/cargo" "+1ef7943ee607160a564655b6596f83670ef95df5" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] 582314f63a6fc507fe901f0eaa23bf95d9d576541e87e03d4f1bf6388e8c17b5
[INFO] running `Command { std: "docker" "start" "-a" "582314f63a6fc507fe901f0eaa23bf95d9d576541e87e03d4f1bf6388e8c17b5", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "582314f63a6fc507fe901f0eaa23bf95d9d576541e87e03d4f1bf6388e8c17b5", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "582314f63a6fc507fe901f0eaa23bf95d9d576541e87e03d4f1bf6388e8c17b5", kill_on_drop: false }`
[INFO] [stdout] 582314f63a6fc507fe901f0eaa23bf95d9d576541e87e03d4f1bf6388e8c17b5
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-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:4848fb76d95f26979359cc7e45710b1dbc8f3acb7aeedee7c460d7702230f228" "/opt/rustwide/cargo-home/bin/cargo" "+1ef7943ee607160a564655b6596f83670ef95df5" "build" "--frozen" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] d3f016ad21069b3e770d65b995d46895ba10bd6676ba890c022cf7e145fc0841
[INFO] running `Command { std: "docker" "start" "-a" "d3f016ad21069b3e770d65b995d46895ba10bd6676ba890c022cf7e145fc0841", kill_on_drop: false }`
[INFO] [stderr]    Compiling proc-macro2 v1.0.79
[INFO] [stderr]    Compiling libc v0.2.153
[INFO] [stderr]    Compiling syn v1.0.67
[INFO] [stderr]    Compiling log v0.4.11
[INFO] [stderr]    Compiling parking_lot_core v0.9.5
[INFO] [stderr]    Compiling cfg_aliases v0.1.1
[INFO] [stderr]    Compiling proc-macro-error-attr v1.0.4
[INFO] [stderr]    Compiling proc-macro-error v1.0.4
[INFO] [stderr]    Compiling unicode-segmentation v1.11.0
[INFO] [stderr]    Compiling textwrap v0.11.0
[INFO] [stderr]    Compiling tokio v1.23.0
[INFO] [stderr]    Compiling async-trait v0.1.77
[INFO] [stderr]    Compiling bitflags v2.4.2
[INFO] [stderr]    Compiling anyhow v1.0.59
[INFO] [stderr]    Compiling bytes v1.3.0
[INFO] [stderr]    Compiling base64 v0.22.0
[INFO] [stderr]    Compiling nix v0.28.0
[INFO] [stderr]    Compiling heck v0.3.3
[INFO] [stderr]    Compiling clap v2.34.0
[INFO] [stderr]    Compiling quote v1.0.35
[INFO] [stderr]    Compiling syn v2.0.52
[INFO] [stderr]    Compiling socket2 v0.4.7
[INFO] [stderr]    Compiling num_cpus v1.13.0
[INFO] [stderr]    Compiling mio v0.8.5
[INFO] [stderr]    Compiling signal-hook-registry v1.2.2
[INFO] [stderr]    Compiling parking_lot v0.12.1
[INFO] [stderr]    Compiling ctrlc v3.4.4
[INFO] [stderr]    Compiling tokio-macros v1.8.2
[INFO] [stderr]    Compiling thiserror-impl v1.0.32
[INFO] [stderr]    Compiling structopt-derive v0.4.18
[INFO] [stderr]    Compiling structopt v0.3.26
[INFO] [stderr]    Compiling thiserror v1.0.32
[INFO] [stderr]    Compiling redis-starter-rust v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unused import: `spawn`
[INFO] [stdout]   --> src/replica.rs:12:13
[INFO] [stdout]    |
[INFO] [stdout] 12 | use tokio::{spawn, task};
[INFO] [stdout]    |             ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unreachable statement
[INFO] [stdout]    --> src/replica.rs:140:5
[INFO] [stdout]     |
[INFO] [stdout] 104 | /     loop {
[INFO] [stdout] 105 | |         let (command, length) = match reader.read_command(&mut parser).await {
[INFO] [stdout] 106 | |             Ok(command) => command,
[INFO] [stdout] 107 | |             Err(e) => return Err(e),
[INFO] [stdout] ...   |
[INFO] [stdout] 138 | |         offset += length;
[INFO] [stdout] 139 | |     }
[INFO] [stdout]     | |_____- any code following this expression is unreachable
[INFO] [stdout] 140 |       println!("[replica progate] progation done");
[INFO] [stdout]     |       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ unreachable statement
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unreachable_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout]     = note: this warning originates in the macro `println` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unreachable pattern
[INFO] [stdout]    --> src/command.rs:196:17
[INFO] [stdout]     |
[INFO] [stdout] 185 |                 n => {
[INFO] [stdout]     |                 - matches any value
[INFO] [stdout] ...
[INFO] [stdout] 196 |                 n => return Err(RedisCommandError::DismatchedArgsNum(2, n)),
[INFO] [stdout]     |                 ^ no value can reach this
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unreachable_patterns)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `n`
[INFO] [stdout]    --> src/command.rs:185:17
[INFO] [stdout]     |
[INFO] [stdout] 185 |                 n => {
[INFO] [stdout]     |                 ^ help: if this is intentional, prefix it with an underscore: `_n`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `redis`
[INFO] [stdout]   --> src/replica.rs:83:5
[INFO] [stdout]    |
[INFO] [stdout] 83 |     redis: Redis,
[INFO] [stdout]    |     ^^^^^ help: if this is intentional, prefix it with an underscore: `_redis`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `is_replica`
[INFO] [stdout]   --> src/worker.rs:50:13
[INFO] [stdout]    |
[INFO] [stdout] 50 |         let is_replica = {
[INFO] [stdout]    |             ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_is_replica`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 22.79s
[INFO] running `Command { std: "docker" "inspect" "d3f016ad21069b3e770d65b995d46895ba10bd6676ba890c022cf7e145fc0841", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "d3f016ad21069b3e770d65b995d46895ba10bd6676ba890c022cf7e145fc0841", kill_on_drop: false }`
[INFO] [stdout] d3f016ad21069b3e770d65b995d46895ba10bd6676ba890c022cf7e145fc0841
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-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:4848fb76d95f26979359cc7e45710b1dbc8f3acb7aeedee7c460d7702230f228" "/opt/rustwide/cargo-home/bin/cargo" "+1ef7943ee607160a564655b6596f83670ef95df5" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 3ac4ad0d48e79a484b20f437b8205554d1de3e1b125db12dd3f52577cdc788c4
[INFO] running `Command { std: "docker" "start" "-a" "3ac4ad0d48e79a484b20f437b8205554d1de3e1b125db12dd3f52577cdc788c4", kill_on_drop: false }`
[INFO] [stderr]    Compiling redis-starter-rust v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unused import: `spawn`
[INFO] [stdout]   --> src/replica.rs:12:13
[INFO] [stdout]    |
[INFO] [stdout] 12 | use tokio::{spawn, task};
[INFO] [stdout]    |             ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unreachable statement
[INFO] [stdout]    --> src/replica.rs:140:5
[INFO] [stdout]     |
[INFO] [stdout] 104 | /     loop {
[INFO] [stdout] 105 | |         let (command, length) = match reader.read_command(&mut parser).await {
[INFO] [stdout] 106 | |             Ok(command) => command,
[INFO] [stdout] 107 | |             Err(e) => return Err(e),
[INFO] [stdout] ...   |
[INFO] [stdout] 138 | |         offset += length;
[INFO] [stdout] 139 | |     }
[INFO] [stdout]     | |_____- any code following this expression is unreachable
[INFO] [stdout] 140 |       println!("[replica progate] progation done");
[INFO] [stdout]     |       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ unreachable statement
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unreachable_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout]     = note: this warning originates in the macro `println` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unreachable pattern
[INFO] [stdout]    --> src/command.rs:196:17
[INFO] [stdout]     |
[INFO] [stdout] 185 |                 n => {
[INFO] [stdout]     |                 - matches any value
[INFO] [stdout] ...
[INFO] [stdout] 196 |                 n => return Err(RedisCommandError::DismatchedArgsNum(2, n)),
[INFO] [stdout]     |                 ^ no value can reach this
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unreachable_patterns)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `n`
[INFO] [stdout]    --> src/command.rs:185:17
[INFO] [stdout]     |
[INFO] [stdout] 185 |                 n => {
[INFO] [stdout]     |                 ^ help: if this is intentional, prefix it with an underscore: `_n`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `t`
[INFO] [stdout]    --> src/parser.rs:414:22
[INFO] [stdout]     |
[INFO] [stdout] 414 |         let (values, t) = parser.parse().unwrap();
[INFO] [stdout]     |                      ^ help: if this is intentional, prefix it with an underscore: `_t`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `t`
[INFO] [stdout]    --> src/parser.rs:417:22
[INFO] [stdout]     |
[INFO] [stdout] 417 |         let (values, t) = parser.parse().unwrap();
[INFO] [stdout]     |                      ^ help: if this is intentional, prefix it with an underscore: `_t`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `t`
[INFO] [stdout]    --> src/parser.rs:420:22
[INFO] [stdout]     |
[INFO] [stdout] 420 |         let (values, t) = parser.parse().unwrap();
[INFO] [stdout]     |                      ^ help: if this is intentional, prefix it with an underscore: `_t`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `t`
[INFO] [stdout]    --> src/parser.rs:445:22
[INFO] [stdout]     |
[INFO] [stdout] 445 |         let (values, t) = parser.parse().unwrap();
[INFO] [stdout]     |                      ^ help: if this is intentional, prefix it with an underscore: `_t`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `t`
[INFO] [stdout]    --> src/parser.rs:449:22
[INFO] [stdout]     |
[INFO] [stdout] 449 |         let (values, t) = parser.parse().unwrap();
[INFO] [stdout]     |                      ^ help: if this is intentional, prefix it with an underscore: `_t`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `input`
[INFO] [stdout]    --> src/parser.rs:473:13
[INFO] [stdout]     |
[INFO] [stdout] 473 |         let input = "*0\r\n".as_bytes();
[INFO] [stdout]     |             ^^^^^ help: if this is intentional, prefix it with an underscore: `_input`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `t`
[INFO] [stdout]    --> src/parser.rs:485:21
[INFO] [stdout]     |
[INFO] [stdout] 485 |         let (value, t) = parser.parse().unwrap();
[INFO] [stdout]     |                     ^ help: if this is intentional, prefix it with an underscore: `_t`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `redis`
[INFO] [stdout]   --> src/replica.rs:83:5
[INFO] [stdout]    |
[INFO] [stdout] 83 |     redis: Redis,
[INFO] [stdout]    |     ^^^^^ help: if this is intentional, prefix it with an underscore: `_redis`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `is_replica`
[INFO] [stdout]   --> src/worker.rs:50:13
[INFO] [stdout]    |
[INFO] [stdout] 50 |         let is_replica = {
[INFO] [stdout]    |             ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_is_replica`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 2.66s
[INFO] running `Command { std: "docker" "inspect" "3ac4ad0d48e79a484b20f437b8205554d1de3e1b125db12dd3f52577cdc788c4", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "3ac4ad0d48e79a484b20f437b8205554d1de3e1b125db12dd3f52577cdc788c4", kill_on_drop: false }`
[INFO] [stdout] 3ac4ad0d48e79a484b20f437b8205554d1de3e1b125db12dd3f52577cdc788c4
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-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:4848fb76d95f26979359cc7e45710b1dbc8f3acb7aeedee7c460d7702230f228" "/opt/rustwide/cargo-home/bin/cargo" "+1ef7943ee607160a564655b6596f83670ef95df5" "test" "--frozen", kill_on_drop: false }`
[INFO] [stdout] 5745b880da9cae5c9fce397d6d5eb1cc59d0df48b0d0bbe6718b36ca6439fee8
[INFO] running `Command { std: "docker" "start" "-a" "5745b880da9cae5c9fce397d6d5eb1cc59d0df48b0d0bbe6718b36ca6439fee8", kill_on_drop: false }`
[INFO] [stderr] warning: unused import: `spawn`
[INFO] [stdout] 
[INFO] [stderr]   --> src/replica.rs:12:13
[INFO] [stdout] running 6 tests
[INFO] [stderr]    |
[INFO] [stdout] test parser::tests::test_parser_bulk_string ... ok
[INFO] [stderr] 12 | use tokio::{spawn, task};
[INFO] [stdout] test value::tests::test_redis_value_to_string ... ok
[INFO] [stderr]    |             ^^^^^
[INFO] [stdout] test parser::tests::test_parse_simple_string ... ok
[INFO] [stderr]    |
[INFO] [stdout] test parser::tests::test_parse_array ... ok
[INFO] [stderr]    = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unreachable statement
[INFO] [stderr]    --> src/replica.rs:140:5
[INFO] [stderr]     |
[INFO] [stderr] 104 | /     loop {
[INFO] [stderr] 105 | |         let (command, length) = match reader.read_command(&mut parser).await {
[INFO] [stderr] 106 | |             Ok(command) => command,
[INFO] [stderr] 107 | |             Err(e) => return Err(e),
[INFO] [stderr] ...   |
[INFO] [stderr] 138 | |         offset += length;
[INFO] [stderr] 139 | |     }
[INFO] [stderr]     | |_____- any code following this expression is unreachable
[INFO] [stderr] 140 |       println!("[replica progate] progation done");
[INFO] [stderr]     |       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ unreachable statement
[INFO] [stderr]     |
[INFO] [stderr]     = note: `#[warn(unreachable_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr]     = note: this warning originates in the macro `println` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: unreachable pattern
[INFO] [stderr]    --> src/command.rs:196:17
[INFO] [stderr]     |
[INFO] [stderr] 185 |                 n => {
[INFO] [stderr]     |                 - matches any value
[INFO] [stderr] ...
[INFO] [stderr] 196 |                 n => return Err(RedisCommandError::DismatchedArgsNum(2, n)),
[INFO] [stderr]     |                 ^ no value can reach this
[INFO] [stderr]     |
[INFO] [stderr]     = note: `#[warn(unreachable_patterns)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `n`
[INFO] [stderr]    --> src/command.rs:185:17
[INFO] [stderr]     |
[INFO] [stderr] 185 |                 n => {
[INFO] [stderr]     |                 ^ help: if this is intentional, prefix it with an underscore: `_n`
[INFO] [stderr]     |
[INFO] [stderr]     = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `t`
[INFO] [stderr]    --> src/parser.rs:414:22
[INFO] [stderr]     |
[INFO] [stderr] 414 |         let (values, t) = parser.parse().unwrap();
[INFO] [stderr]     |                      ^ help: if this is intentional, prefix it with an underscore: `_t`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `t`
[INFO] [stderr]    --> src/parser.rs:417:22
[INFO] [stderr]     |
[INFO] [stderr] 417 |         let (values, t) = parser.parse().unwrap();
[INFO] [stderr]     |                      ^ help: if this is intentional, prefix it with an underscore: `_t`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `t`
[INFO] [stderr]    --> src/parser.rs:420:22
[INFO] [stderr]     |
[INFO] [stderr] 420 |         let (values, t) = parser.parse().unwrap();
[INFO] [stderr]     |                      ^ help: if this is intentional, prefix it with an underscore: `_t`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `t`
[INFO] [stderr]    --> src/parser.rs:445:22
[INFO] [stderr]     |
[INFO] [stderr] 445 |         let (values, t) = parser.parse().unwrap();
[INFO] [stderr]     |                      ^ help: if this is intentional, prefix it with an underscore: `_t`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `t`
[INFO] [stderr]    --> src/parser.rs:449:22
[INFO] [stderr]     |
[INFO] [stderr] 449 |         let (values, t) = parser.parse().unwrap();
[INFO] [stderr]     |                      ^ help: if this is intentional, prefix it with an underscore: `_t`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `input`
[INFO] [stderr]    --> src/parser.rs:473:13
[INFO] [stderr]     |
[INFO] [stderr] 473 |         let input = "*0\r\n".as_bytes();
[INFO] [stderr]     |             ^^^^^ help: if this is intentional, prefix it with an underscore: `_input`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `t`
[INFO] [stderr]    --> src/parser.rs:485:21
[INFO] [stderr]     |
[INFO] [stderr] 485 |         let (value, t) = parser.parse().unwrap();
[INFO] [stderr]     |                     ^ help: if this is intentional, prefix it with an underscore: `_t`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `redis`
[INFO] [stderr]   --> src/replica.rs:83:5
[INFO] [stderr]    |
[INFO] [stderr] 83 |     redis: Redis,
[INFO] [stderr]    |     ^^^^^ help: if this is intentional, prefix it with an underscore: `_redis`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `is_replica`
[INFO] [stderr]   --> src/worker.rs:50:13
[INFO] [stderr]    |
[INFO] [stderr] 50 |         let is_replica = {
[INFO] [stderr]    |             ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_is_replica`
[INFO] [stderr] 
[INFO] [stderr] warning: `redis-starter-rust` (bin "redis-starter-rust" test) generated 13 warnings (run `cargo fix --bin "redis-starter-rust" -p redis-starter-rust --tests` to apply 11 suggestions)
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 0.08s
[INFO] [stderr]      Running unittests src/main.rs (/opt/rustwide/target/debug/deps/redis_starter_rust-b39ec348f7dcc00b)
[INFO] [stdout] test value::tests::test_redis_value_to_string2 ... ok
[INFO] [stdout] test parser::tests::test_parse_empty_array ... FAILED
[INFO] [stdout] 
[INFO] [stdout] failures:
[INFO] [stdout] 
[INFO] [stdout] ---- parser::tests::test_parse_empty_array stdout ----
[INFO] [stdout] 
[INFO] [stdout] thread 'parser::tests::test_parse_empty_array' (26) panicked at src/parser.rs:476:9:
[INFO] [stdout] assertion `left == right` failed
[INFO] [stdout]   left: Some(Array[])
[INFO] [stdout]  right: None
[INFO] [stdout] stack backtrace:
[INFO] [stdout]    0:     0x592a7ccacf12 - std::backtrace_rs::backtrace::libunwind::trace::h786de35fecf3582f
[INFO] [stdout]                                at /rustc/1ef7943ee607160a564655b6596f83670ef95df5/library/std/src/../../backtrace/src/backtrace/libunwind.rs:117:9
[INFO] [stdout]    1:     0x592a7ccacf12 - std::backtrace_rs::backtrace::trace_unsynchronized::h4a7da1a2a64387f1
[INFO] [stdout]                                at /rustc/1ef7943ee607160a564655b6596f83670ef95df5/library/std/src/../../backtrace/src/backtrace/mod.rs:66:14
[INFO] [stdout]    2:     0x592a7ccacf12 - std::sys::backtrace::_print_fmt::h6bd7d500070c788c
[INFO] [stdout]                                at /rustc/1ef7943ee607160a564655b6596f83670ef95df5/library/std/src/sys/backtrace.rs:66:9
[INFO] [stdout]    3:     0x592a7ccacf12 - <std::sys::backtrace::BacktraceLock::print::DisplayBacktrace as core::fmt::Display>::fmt::h6d82c1afff976903
[INFO] [stdout]                                at /rustc/1ef7943ee607160a564655b6596f83670ef95df5/library/std/src/sys/backtrace.rs:39:26
[INFO] [stdout]    4:     0x592a7ccbcfdf - core::fmt::rt::Argument::fmt::hc4ce6d643d397690
[INFO] [stdout]                                at /rustc/1ef7943ee607160a564655b6596f83670ef95df5/library/core/src/fmt/rt.rs:173:76
[INFO] [stdout]    5:     0x592a7ccbcfdf - core::fmt::write::hb1e7ca88b6a3936e
[INFO] [stdout]                                at /rustc/1ef7943ee607160a564655b6596f83670ef95df5/library/core/src/fmt/mod.rs:1469:25
[INFO] [stdout]    6:     0x592a7cc7a8b3 - std::io::default_write_fmt::haffd49d96f1984a8
[INFO] [stdout]                                at /rustc/1ef7943ee607160a564655b6596f83670ef95df5/library/std/src/io/mod.rs:639:11
[INFO] [stdout]    7:     0x592a7cc7a8b3 - std::io::Write::write_fmt::h027871c57cf57c01
[INFO] [stdout]                                at /rustc/1ef7943ee607160a564655b6596f83670ef95df5/library/std/src/io/mod.rs:1954:13
[INFO] [stdout]    8:     0x592a7cc86782 - std::sys::backtrace::BacktraceLock::print::ha2430613ee79d059
[INFO] [stdout]                                at /rustc/1ef7943ee607160a564655b6596f83670ef95df5/library/std/src/sys/backtrace.rs:42:9
[INFO] [stdout]    9:     0x592a7cc8b25f - std::panicking::default_hook::{{closure}}::hdbd2db9e5c303cf6
[INFO] [stdout]                                at /rustc/1ef7943ee607160a564655b6596f83670ef95df5/library/std/src/panicking.rs:301:27
[INFO] [stdout]   10:     0x592a7cc8b0f1 - std::panicking::default_hook::hed93c70cba5fdcf0
[INFO] [stdout]                                at /rustc/1ef7943ee607160a564655b6596f83670ef95df5/library/std/src/panicking.rs:325:9
[INFO] [stdout]   11:     0x592a7cc4334e - <alloc::boxed::Box<F,A> as core::ops::function::Fn<Args>>::call::hd0ee8b569efc6a07
[INFO] [stdout]                                at /rustc/1ef7943ee607160a564655b6596f83670ef95df5/library/alloc/src/boxed.rs:2099:9
[INFO] [stdout]   12:     0x592a7cc4334e - test::test_main_with_exit_callback::{{closure}}::hf10864b576ecd15d
[INFO] [stdout]                                at /rustc/1ef7943ee607160a564655b6596f83670ef95df5/library/test/src/lib.rs:145:21
[INFO] [stdout]   13:     0x592a7cc8b86f - <alloc::boxed::Box<F,A> as core::ops::function::Fn<Args>>::call::h3a55ca34534c0d00
[INFO] [stdout]                                at /rustc/1ef7943ee607160a564655b6596f83670ef95df5/library/alloc/src/boxed.rs:2099:9
[INFO] [stdout]   14:     0x592a7cc8b86f - std::panicking::panic_with_hook::h3862d766c2cec19b
[INFO] [stdout]                                at /rustc/1ef7943ee607160a564655b6596f83670ef95df5/library/std/src/panicking.rs:842:13
[INFO] [stdout]   15:     0x592a7cc8b6ca - std::panicking::panic_handler::{{closure}}::hb95eb402b5e28ee1
[INFO] [stdout]                                at /rustc/1ef7943ee607160a564655b6596f83670ef95df5/library/std/src/panicking.rs:707:13
[INFO] [stdout]   16:     0x592a7cc868b9 - std::sys::backtrace::__rust_end_short_backtrace::hf73a26dc1835d85a
[INFO] [stdout]                                at /rustc/1ef7943ee607160a564655b6596f83670ef95df5/library/std/src/sys/backtrace.rs:174:18
[INFO] [stdout]   17:     0x592a7cc6f1ad - __rustc[6ed5915ee467787]::rust_begin_unwind
[INFO] [stdout]                                at /rustc/1ef7943ee607160a564655b6596f83670ef95df5/library/std/src/panicking.rs:698:5
[INFO] [stdout]   18:     0x592a7ccc4b60 - core::panicking::panic_fmt::h3454303eb8e6f7cd
[INFO] [stdout]                                at /rustc/1ef7943ee607160a564655b6596f83670ef95df5/library/core/src/panicking.rs:80:14
[INFO] [stdout]   19:     0x592a7ccc4963 - core::panicking::assert_failed_inner::hdcc703ae7c807131
[INFO] [stdout]                                at /rustc/1ef7943ee607160a564655b6596f83670ef95df5/library/core/src/panicking.rs:444:17
[INFO] [stdout]   20:     0x592a7cc17a26 - core::panicking::assert_failed::h6cdf3db1b3574973
[INFO] [stdout]                                at /rustc/1ef7943ee607160a564655b6596f83670ef95df5/library/core/src/panicking.rs:399:5
[INFO] [stdout]   21:     0x592a7cc2054f - redis_starter_rust::parser::tests::test_parse_empty_array::h4dae2b3bdadfd5d8
[INFO] [stdout]                                at /opt/rustwide/workdir/src/parser.rs:476:9
[INFO] [stdout]   22:     0x592a7cc20627 - redis_starter_rust::parser::tests::test_parse_empty_array::{{closure}}::h6e3167b10262f5d0
[INFO] [stdout]                                at /opt/rustwide/workdir/src/parser.rs:472:32
[INFO] [stdout]   23:     0x592a7cc15cc6 - core::ops::function::FnOnce::call_once::h35f86a9f13810297
[INFO] [stdout]                                at /rustc/1ef7943ee607160a564655b6596f83670ef95df5/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   24:     0x592a7cc4312b - core::ops::function::FnOnce::call_once::ha729ee35d2fab541
[INFO] [stdout]                                at /rustc/1ef7943ee607160a564655b6596f83670ef95df5/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   25:     0x592a7cc4312b - test::__rust_begin_short_backtrace::ha40f4db8207e1111
[INFO] [stdout]                                at /rustc/1ef7943ee607160a564655b6596f83670ef95df5/library/test/src/lib.rs:663:18
[INFO] [stdout]   26:     0x592a7cc571ad - test::run_test_in_process::{{closure}}::hc1b77cda5d44f0f3
[INFO] [stdout]                                at /rustc/1ef7943ee607160a564655b6596f83670ef95df5/library/test/src/lib.rs:686:74
[INFO] [stdout]   27:     0x592a7cc571ad - <core::panic::unwind_safe::AssertUnwindSafe<F> as core::ops::function::FnOnce<()>>::call_once::h1dbea1de64785521
[INFO] [stdout]                                at /rustc/1ef7943ee607160a564655b6596f83670ef95df5/library/core/src/panic/unwind_safe.rs:274:9
[INFO] [stdout]   28:     0x592a7cc571ad - std::panicking::catch_unwind::do_call::hd5febe9affd5a1b3
[INFO] [stdout]                                at /rustc/1ef7943ee607160a564655b6596f83670ef95df5/library/std/src/panicking.rs:590:40
[INFO] [stdout]   29:     0x592a7cc571ad - std::panicking::catch_unwind::h51ea89627559b6f4
[INFO] [stdout]                                at /rustc/1ef7943ee607160a564655b6596f83670ef95df5/library/std/src/panicking.rs:553:19
[INFO] [stdout]   30:     0x592a7cc571ad - std::panic::catch_unwind::hb8b8c2367cae3d66
[INFO] [stdout]                                at /rustc/1ef7943ee607160a564655b6596f83670ef95df5/library/std/src/panic.rs:359:14
[INFO] [stdout]   31:     0x592a7cc571ad - test::run_test_in_process::ha5b55801407ea100
[INFO] [stdout]                                at /rustc/1ef7943ee607160a564655b6596f83670ef95df5/library/test/src/lib.rs:686:27
[INFO] [stdout]   32:     0x592a7cc571ad - test::run_test::{{closure}}::h0b9d4072b527abf5
[INFO] [stdout]                                at /rustc/1ef7943ee607160a564655b6596f83670ef95df5/library/test/src/lib.rs:607:43
[INFO] [stdout]   33:     0x592a7cc306c4 - test::run_test::{{closure}}::hb1056b5731205822
[INFO] [stdout]                                at /rustc/1ef7943ee607160a564655b6596f83670ef95df5/library/test/src/lib.rs:637:41
[INFO] [stdout]   34:     0x592a7cc306c4 - std::sys::backtrace::__rust_begin_short_backtrace::hb61ff5a34023c7ef
[INFO] [stdout]                                at /rustc/1ef7943ee607160a564655b6596f83670ef95df5/library/std/src/sys/backtrace.rs:158:18
[INFO] [stdout]   35:     0x592a7cc33ffa - std::thread::Builder::spawn_unchecked_::{{closure}}::{{closure}}::hb0a83c0e8b353cff
[INFO] [stdout]                                at /rustc/1ef7943ee607160a564655b6596f83670ef95df5/library/std/src/thread/mod.rs:562:17
[INFO] [stdout]   36:     0x592a7cc33ffa - <core::panic::unwind_safe::AssertUnwindSafe<F> as core::ops::function::FnOnce<()>>::call_once::hb4f32cb008535298
[INFO] [stdout]                                at /rustc/1ef7943ee607160a564655b6596f83670ef95df5/library/core/src/panic/unwind_safe.rs:274:9
[INFO] [stdout]   37:     0x592a7cc33ffa - std::panicking::catch_unwind::do_call::h16d110e4fc35789a
[INFO] [stdout]                                at /rustc/1ef7943ee607160a564655b6596f83670ef95df5/library/std/src/panicking.rs:590:40
[INFO] [stdout]   38:     0x592a7cc33ffa - std::panicking::catch_unwind::hea9118f355699c4b
[INFO] [stdout]                                at /rustc/1ef7943ee607160a564655b6596f83670ef95df5/library/std/src/panicking.rs:553:19
[INFO] [stdout]   39:     0x592a7cc33ffa - std::panic::catch_unwind::hf4b3c2a06d3f42f5
[INFO] [stdout]                                at /rustc/1ef7943ee607160a564655b6596f83670ef95df5/library/std/src/panic.rs:359:14
[INFO] [stdout]   40:     0x592a7cc33ffa - std::thread::Builder::spawn_unchecked_::{{closure}}::h3f4cb733a52d53d5
[INFO] [stdout]                                at /rustc/1ef7943ee607160a564655b6596f83670ef95df5/library/std/src/thread/mod.rs:560:30
[INFO] [stdout]   41:     0x592a7cc33ffa - core::ops::function::FnOnce::call_once{{vtable.shim}}::h4052f0967b37caeb
[INFO] [stdout]                                at /rustc/1ef7943ee607160a564655b6596f83670ef95df5/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   42:     0x592a7cc81cbf - <alloc::boxed::Box<F,A> as core::ops::function::FnOnce<Args>>::call_once::h7ec433abd3f148b4
[INFO] [stdout]                                at /rustc/1ef7943ee607160a564655b6596f83670ef95df5/library/alloc/src/boxed.rs:2085:9
[INFO] [stdout]   43:     0x592a7cc81cbf - std::sys::thread::unix::Thread::new::thread_start::he514622d3d7ba65c
[INFO] [stdout]                                at /rustc/1ef7943ee607160a564655b6596f83670ef95df5/library/std/src/sys/thread/unix.rs:124:17
[INFO] [stdout]   44:     0x788e2293caa4 - <unknown>
[INFO] [stdout]   45:     0x788e229c9a64 - clone
[INFO] [stdout]   46:                0x0 - <unknown>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] failures:
[INFO] [stdout]     parser::tests::test_parse_empty_array
[INFO] [stdout] 
[INFO] [stdout] test result: FAILED. 5 passed; 1 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.05s
[INFO] [stdout] 
[INFO] [stderr] error: test failed, to rerun pass `--bin redis-starter-rust`
[INFO] running `Command { std: "docker" "inspect" "5745b880da9cae5c9fce397d6d5eb1cc59d0df48b0d0bbe6718b36ca6439fee8", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "5745b880da9cae5c9fce397d6d5eb1cc59d0df48b0d0bbe6718b36ca6439fee8", kill_on_drop: false }`
[INFO] [stdout] 5745b880da9cae5c9fce397d6d5eb1cc59d0df48b0d0bbe6718b36ca6439fee8
