[INFO] cloning repository https://github.com/qw4990/kvs
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/qw4990/kvs" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fqw4990%2Fkvs", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fqw4990%2Fkvs'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] c976d535c960094d41ab588ed0217fe4b4efeb2d
[INFO] testing qw4990/kvs/c976d535c960094d41ab588ed0217fe4b4efeb2d against master#cced03bfd61a304243a34504618ecec86c17063f for pr-154065-2
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fqw4990%2Fkvs" "/workspace/builds/worker-2-tc1/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-2-tc1/source'...
[INFO] [stderr] done.
[INFO] started tweaking git repo https://github.com/qw4990/kvs
[INFO] finished tweaking git repo https://github.com/qw4990/kvs
[INFO] tweaked toml for git repo https://github.com/qw4990/kvs written to /workspace/builds/worker-2-tc1/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/qw4990/kvs on toolchain cced03bfd61a304243a34504618ecec86c17063f
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+cced03bfd61a304243a34504618ecec86c17063f" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate git repo https://github.com/qw4990/kvs 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" "+cced03bfd61a304243a34504618ecec86c17063f" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Updating crates.io index
[INFO] [stderr]  Downloading crates ...
[INFO] [stderr]   Downloaded walkdir v2.2.7
[INFO] [stderr]   Downloaded winapi-util v0.1.2
[INFO] [stderr]   Downloaded bitflags v1.1.0
[INFO] [stderr]   Downloaded same-file v1.0.4
[INFO] [stderr]   Downloaded quick-error v1.2.2
[INFO] [stderr]   Downloaded rand_xoshiro v0.1.0
[INFO] [stderr]   Downloaded termcolor v1.0.5
[INFO] [stderr]   Downloaded wincolor v1.0.1
[INFO] [stderr]   Downloaded float-cmp v0.4.0
[INFO] [stderr]   Downloaded cast v0.2.2
[INFO] [stderr]   Downloaded humantime v1.2.0
[INFO] [stderr]   Downloaded predicates-core v1.0.0
[INFO] [stderr]   Downloaded predicates-tree v1.0.0
[INFO] [stderr]   Downloaded treeline v0.1.0
[INFO] [stderr]   Downloaded predicates v1.0.1
[INFO] [stderr]   Downloaded normalize-line-endings v0.2.2
[INFO] [stderr]   Downloaded byteorder v1.3.2
[INFO] [stderr]   Downloaded tinytemplate v1.0.2
[INFO] [stderr]   Downloaded criterion-plot v0.3.1
[INFO] [stderr]   Downloaded assert_cmd v0.11.1
[INFO] [stderr]   Downloaded escargot v0.4.0
[INFO] [stderr]   Downloaded env_logger v0.6.1
[INFO] [stderr]   Downloaded serde_derive v1.0.92
[INFO] [stderr]   Downloaded num-traits v0.2.8
[INFO] [stderr]   Downloaded serde v1.0.92
[INFO] [stderr]   Downloaded backtrace v0.3.30
[INFO] [stderr]   Downloaded criterion v0.2.11
[INFO] [stderr]   Downloaded difference v2.0.0
[INFO] [stderr]   Downloaded rayon v1.0.3
[INFO] [stderr]   Downloaded libc v0.2.58
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-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:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+cced03bfd61a304243a34504618ecec86c17063f" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] cdac6e0f100abb97b522726cbe0bfd2dc57e9a1b35757c9c5666dda3764cfa7f
[INFO] running `Command { std: "docker" "start" "-a" "cdac6e0f100abb97b522726cbe0bfd2dc57e9a1b35757c9c5666dda3764cfa7f", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "cdac6e0f100abb97b522726cbe0bfd2dc57e9a1b35757c9c5666dda3764cfa7f", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "cdac6e0f100abb97b522726cbe0bfd2dc57e9a1b35757c9c5666dda3764cfa7f", kill_on_drop: false }`
[INFO] [stdout] cdac6e0f100abb97b522726cbe0bfd2dc57e9a1b35757c9c5666dda3764cfa7f
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-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:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+cced03bfd61a304243a34504618ecec86c17063f" "build" "--frozen" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 1df417f3c6211cf846ab0db275445a389ef36b59b4d6ad4082ed8172cd23bf55
[INFO] running `Command { std: "docker" "start" "-a" "1df417f3c6211cf846ab0db275445a389ef36b59b4d6ad4082ed8172cd23bf55", kill_on_drop: false }`
[INFO] [stderr]    Compiling libc v0.2.58
[INFO] [stderr]    Compiling serde v1.0.92
[INFO] [stderr]    Compiling bitflags v1.1.0
[INFO] [stderr]    Compiling backtrace v0.3.30
[INFO] [stderr]    Compiling unicode-width v0.1.5
[INFO] [stderr]    Compiling quick-error v1.2.2
[INFO] [stderr]    Compiling log v0.4.6
[INFO] [stderr]    Compiling termcolor v1.0.5
[INFO] [stderr]    Compiling strsim v0.8.0
[INFO] [stderr]    Compiling vec_map v0.8.1
[INFO] [stderr]    Compiling ansi_term v0.11.0
[INFO] [stderr]    Compiling serde_derive v1.0.92
[INFO] [stderr]    Compiling failure_derive v0.1.5
[INFO] [stderr]    Compiling humantime v1.2.0
[INFO] [stderr]    Compiling textwrap v0.11.0
[INFO] [stderr]    Compiling memchr v2.2.0
[INFO] [stderr]    Compiling backtrace-sys v0.1.28
[INFO] [stderr]    Compiling atty v0.2.11
[INFO] [stderr]    Compiling clap v2.33.0
[INFO] [stderr]    Compiling failure v0.1.5
[INFO] [stderr]    Compiling aho-corasick v0.7.3
[INFO] [stderr]    Compiling regex v1.1.6
[INFO] [stderr]    Compiling env_logger v0.6.1
[INFO] [stderr]    Compiling serde_json v1.0.39
[INFO] [stderr]    Compiling kvs v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unused import: `std::result`
[INFO] [stdout]  --> src/lib.rs:9:5
[INFO] [stdout]   |
[INFO] [stdout] 9 | use std::result;
[INFO] [stdout]   |     ^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `clap::ErrorKind`
[INFO] [stdout]   --> src/lib.rs:11:5
[INFO] [stdout]    |
[INFO] [stdout] 11 | use clap::ErrorKind;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unexpected `cfg` condition value: `cargo-clippy`
[INFO] [stdout]   --> src/lib.rs:47:10
[INFO] [stdout]    |
[INFO] [stdout] 47 | #[derive(Serialize, Deserialize, Debug)]
[INFO] [stdout]    |          ^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: no expected values for `feature`
[INFO] [stdout]    = note: using a cfg inside a derive macro will use the cfgs from the destination crate and not the ones from the defining crate
[INFO] [stdout]    = help: try referring to `Serialize` crate for guidance on how handle this unexpected cfg
[INFO] [stdout]    = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stdout]    = note: `#[warn(unexpected_cfgs)]` on by default
[INFO] [stdout]    = note: this warning originates in the derive macro `Serialize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unexpected `cfg` condition value: `cargo-clippy`
[INFO] [stdout]   --> src/lib.rs:47:21
[INFO] [stdout]    |
[INFO] [stdout] 47 | #[derive(Serialize, Deserialize, Debug)]
[INFO] [stdout]    |                     ^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: no expected values for `feature`
[INFO] [stdout]    = note: using a cfg inside a derive macro will use the cfgs from the destination crate and not the ones from the defining crate
[INFO] [stdout]    = help: try referring to `Deserialize` crate for guidance on how handle this unexpected cfg
[INFO] [stdout]    = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stdout]    = note: this warning originates in the derive macro `Deserialize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unexpected `cfg` condition value: `cargo-clippy`
[INFO] [stdout]   --> src/lib.rs:54:10
[INFO] [stdout]    |
[INFO] [stdout] 54 | #[derive(Serialize, Deserialize, Debug)]
[INFO] [stdout]    |          ^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: no expected values for `feature`
[INFO] [stdout]    = note: using a cfg inside a derive macro will use the cfgs from the destination crate and not the ones from the defining crate
[INFO] [stdout]    = help: try referring to `Serialize` crate for guidance on how handle this unexpected cfg
[INFO] [stdout]    = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stdout]    = note: this warning originates in the derive macro `Serialize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unexpected `cfg` condition value: `cargo-clippy`
[INFO] [stdout]   --> src/lib.rs:54:21
[INFO] [stdout]    |
[INFO] [stdout] 54 | #[derive(Serialize, Deserialize, Debug)]
[INFO] [stdout]    |                     ^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: no expected values for `feature`
[INFO] [stdout]    = note: using a cfg inside a derive macro will use the cfgs from the destination crate and not the ones from the defining crate
[INFO] [stdout]    = help: try referring to `Deserialize` crate for guidance on how handle this unexpected cfg
[INFO] [stdout]    = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stdout]    = note: this warning originates in the derive macro `Deserialize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/lib.rs:23:10
[INFO] [stdout]    |
[INFO] [stdout] 23 | #[derive(Fail, Debug)]
[INFO] [stdout]    |          ^---
[INFO] [stdout]    |          |
[INFO] [stdout]    |          `Fail` is not local
[INFO] [stdout]    |          move the `impl` block outside of this constant `_DERIVE_failure_Fail_FOR_KvsError`
[INFO] [stdout] 24 | pub enum KvsError {
[INFO] [stdout]    |          -------- `KvsError` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `Fail` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `Fail` may come from an old version of the `failure_derive` crate, try updating your dependency with `cargo update -p failure_derive`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]    = note: `#[warn(non_local_definitions)]` on by default
[INFO] [stdout]    = note: this warning originates in the derive macro `Fail` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/lib.rs:23:10
[INFO] [stdout]    |
[INFO] [stdout] 23 | #[derive(Fail, Debug)]
[INFO] [stdout]    |          ^---
[INFO] [stdout]    |          |
[INFO] [stdout]    |          `Display` is not local
[INFO] [stdout]    |          move the `impl` block outside of this constant `_DERIVE_failure_core_fmt_Display_FOR_KvsError`
[INFO] [stdout] 24 | pub enum KvsError {
[INFO] [stdout]    |          -------- `KvsError` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `Fail` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `Fail` may come from an old version of the `failure_derive` crate, try updating your dependency with `cargo update -p failure_derive`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]    = note: this warning originates in the derive macro `Fail` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/lib.rs:47:10
[INFO] [stdout]    |
[INFO] [stdout] 47 | #[derive(Serialize, Deserialize, Debug)]
[INFO] [stdout]    |          ^--------
[INFO] [stdout]    |          |
[INFO] [stdout]    |          `Serialize` is not local
[INFO] [stdout]    |          move the `impl` block outside of this constant `_IMPL_SERIALIZE_FOR_KvsCmd`
[INFO] [stdout] 48 | pub enum KvsCmd {
[INFO] [stdout]    |          ------ `KvsCmd` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `Serialize` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `Serialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_derive`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]    = note: this warning originates in the derive macro `Serialize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/lib.rs:47:21
[INFO] [stdout]    |
[INFO] [stdout] 47 | #[derive(Serialize, Deserialize, Debug)]
[INFO] [stdout]    |                     ^----------
[INFO] [stdout]    |                     |
[INFO] [stdout]    |                     `Deserialize` is not local
[INFO] [stdout]    |                     move the `impl` block outside of this constant `_IMPL_DESERIALIZE_FOR_KvsCmd`
[INFO] [stdout] 48 | pub enum KvsCmd {
[INFO] [stdout]    |          ------ `KvsCmd` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `Deserialize` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `Deserialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_derive`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]    = note: this warning originates in the derive macro `Deserialize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/lib.rs:54:10
[INFO] [stdout]    |
[INFO] [stdout] 54 | #[derive(Serialize, Deserialize, Debug)]
[INFO] [stdout]    |          ^--------
[INFO] [stdout]    |          |
[INFO] [stdout]    |          `Serialize` is not local
[INFO] [stdout]    |          move the `impl` block outside of this constant `_IMPL_SERIALIZE_FOR_KvsResp`
[INFO] [stdout] 55 | pub struct KvsResp {
[INFO] [stdout]    |            ------- `KvsResp` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `Serialize` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `Serialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_derive`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]    = note: this warning originates in the derive macro `Serialize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/lib.rs:54:21
[INFO] [stdout]    |
[INFO] [stdout] 54 | #[derive(Serialize, Deserialize, Debug)]
[INFO] [stdout]    |                     ^----------
[INFO] [stdout]    |                     |
[INFO] [stdout]    |                     `Deserialize` is not local
[INFO] [stdout]    |                     move the `impl` block outside of this constant `_IMPL_DESERIALIZE_FOR_KvsResp`
[INFO] [stdout] 55 | pub struct KvsResp {
[INFO] [stdout]    |            ------- `KvsResp` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `Deserialize` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `Deserialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_derive`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]    = note: this warning originates in the derive macro `Deserialize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `log::Level`
[INFO] [stdout]   --> src/bin/kvs-server.rs:13:5
[INFO] [stdout]    |
[INFO] [stdout] 13 | use log::Level;
[INFO] [stdout]    |     ^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Deserialize` and `Serialize`
[INFO] [stdout]   --> src/bin/kvs-server.rs:14:13
[INFO] [stdout]    |
[INFO] [stdout] 14 | use serde::{Deserialize, Serialize};
[INFO] [stdout]    |             ^^^^^^^^^^^  ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `KvsError`
[INFO] [stdout]   --> src/bin/kvs-server.rs:17:30
[INFO] [stdout]    |
[INFO] [stdout] 17 | use kvs::{KvsCmd, KvsEngine, KvsError, KvStore, Result};
[INFO] [stdout]    |                              ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::path`
[INFO] [stdout]  --> src/bin/kvs-client.rs:6:5
[INFO] [stdout]   |
[INFO] [stdout] 6 | use std::path;
[INFO] [stdout]   |     ^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `KvStore`, `KvsEngine`, and `KvsError`
[INFO] [stdout]   --> src/bin/kvs-client.rs:12:19
[INFO] [stdout]    |
[INFO] [stdout] 12 | use kvs::{KvsCmd, KvsEngine, KvsError, KvsResp, KvStore, Result};
[INFO] [stdout]    |                   ^^^^^^^^^  ^^^^^^^^           ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unreachable pattern
[INFO] [stdout]   --> src/bin/kvs-server.rs:97:17
[INFO] [stdout]    |
[INFO] [stdout] 97 |                 _ => {
[INFO] [stdout]    |                 ^ no value can reach this
[INFO] [stdout]    |
[INFO] [stdout] note: multiple earlier patterns match some of the same values
[INFO] [stdout]   --> src/bin/kvs-server.rs:97:17
[INFO] [stdout]    |
[INFO] [stdout] 79 |                 KvsCmd::Rm { key } => {
[INFO] [stdout]    |                 ------------------ matches some of the same values
[INFO] [stdout] ...
[INFO] [stdout] 83 |                 KvsCmd::Set { key, val } => {
[INFO] [stdout]    |                 ------------------------ matches some of the same values
[INFO] [stdout] ...
[INFO] [stdout] 87 |                 KvsCmd::Get { key } => {
[INFO] [stdout]    |                 ------------------- matches some of the same values
[INFO] [stdout] ...
[INFO] [stdout] 97 |                 _ => {
[INFO] [stdout]    |                 ^ collectively making this unreachable
[INFO] [stdout]    = note: `#[warn(unreachable_patterns)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `resp`
[INFO] [stdout]   --> src/bin/kvs-client.rs:85:9
[INFO] [stdout]    |
[INFO] [stdout] 85 |     let resp = request(db_stream, &KvsCmd::Set { key, val })?;
[INFO] [stdout]    |         ^^^^ help: if this is intentional, prefix it with an underscore: `_resp`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `resp`
[INFO] [stdout]   --> src/bin/kvs-client.rs:90:9
[INFO] [stdout]    |
[INFO] [stdout] 90 |     let resp = request(db_stream, &KvsCmd::Rm { key })?;
[INFO] [stdout]    |         ^^^^ help: if this is intentional, prefix it with an underscore: `_resp`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 9.50s
[INFO] running `Command { std: "docker" "inspect" "1df417f3c6211cf846ab0db275445a389ef36b59b4d6ad4082ed8172cd23bf55", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "1df417f3c6211cf846ab0db275445a389ef36b59b4d6ad4082ed8172cd23bf55", kill_on_drop: false }`
[INFO] [stdout] 1df417f3c6211cf846ab0db275445a389ef36b59b4d6ad4082ed8172cd23bf55
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-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:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+cced03bfd61a304243a34504618ecec86c17063f" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 5b461875ee23308823c74a55faab12638db5d5768ca40fc173fb19303ade14d0
[INFO] running `Command { std: "docker" "start" "-a" "5b461875ee23308823c74a55faab12638db5d5768ca40fc173fb19303ade14d0", kill_on_drop: false }`
[INFO] [stderr]    Compiling num-traits v0.2.8
[INFO] [stderr]    Compiling crossbeam-utils v0.2.2
[INFO] [stderr]    Compiling byteorder v1.3.2
[INFO] [stderr]    Compiling either v1.5.2
[INFO] [stderr]    Compiling num_cpus v1.10.0
[INFO] [stderr]    Compiling rand_os v0.1.3
[INFO] [stderr]    Compiling rayon v1.0.3
[INFO] [stderr]    Compiling escargot v0.4.0
[INFO] [stderr]    Compiling predicates-core v1.0.0
[INFO] [stderr]    Compiling csv-core v0.1.5
[INFO] [stderr]    Compiling normalize-line-endings v0.2.2
[INFO] [stderr]    Compiling treeline v0.1.0
[INFO] [stderr]    Compiling cast v0.2.2
[INFO] [stdout] warning: unused import: `std::result`
[INFO] [stdout]  --> src/lib.rs:9:5
[INFO] [stdout]   |
[INFO] [stdout] 9 | use std::result;
[INFO] [stdout]   |     ^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `clap::ErrorKind`
[INFO] [stdout]   --> src/lib.rs:11:5
[INFO] [stdout]    |
[INFO] [stdout] 11 | use clap::ErrorKind;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unexpected `cfg` condition value: `cargo-clippy`
[INFO] [stdout]   --> src/lib.rs:47:10
[INFO] [stdout]    |
[INFO] [stdout] 47 | #[derive(Serialize, Deserialize, Debug)]
[INFO] [stdout]    |          ^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: no expected values for `feature`
[INFO] [stdout]    = note: using a cfg inside a derive macro will use the cfgs from the destination crate and not the ones from the defining crate
[INFO] [stdout]    = help: try referring to `Serialize` crate for guidance on how handle this unexpected cfg
[INFO] [stdout]    = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stdout]    = note: `#[warn(unexpected_cfgs)]` on by default
[INFO] [stdout]    = note: this warning originates in the derive macro `Serialize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unexpected `cfg` condition value: `cargo-clippy`
[INFO] [stdout]   --> src/lib.rs:47:21
[INFO] [stdout]    |
[INFO] [stdout] 47 | #[derive(Serialize, Deserialize, Debug)]
[INFO] [stdout]    |                     ^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: no expected values for `feature`
[INFO] [stdout]    = note: using a cfg inside a derive macro will use the cfgs from the destination crate and not the ones from the defining crate
[INFO] [stdout]    = help: try referring to `Deserialize` crate for guidance on how handle this unexpected cfg
[INFO] [stdout]    = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stdout]    = note: this warning originates in the derive macro `Deserialize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unexpected `cfg` condition value: `cargo-clippy`
[INFO] [stdout]   --> src/lib.rs:54:10
[INFO] [stdout]    |
[INFO] [stdout] 54 | #[derive(Serialize, Deserialize, Debug)]
[INFO] [stdout]    |          ^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: no expected values for `feature`
[INFO] [stdout]    = note: using a cfg inside a derive macro will use the cfgs from the destination crate and not the ones from the defining crate
[INFO] [stdout]    = help: try referring to `Serialize` crate for guidance on how handle this unexpected cfg
[INFO] [stdout]    = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stdout]    = note: this warning originates in the derive macro `Serialize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unexpected `cfg` condition value: `cargo-clippy`
[INFO] [stdout]   --> src/lib.rs:54:21
[INFO] [stdout]    |
[INFO] [stdout] 54 | #[derive(Serialize, Deserialize, Debug)]
[INFO] [stdout]    |                     ^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: no expected values for `feature`
[INFO] [stdout]    = note: using a cfg inside a derive macro will use the cfgs from the destination crate and not the ones from the defining crate
[INFO] [stdout]    = help: try referring to `Deserialize` crate for guidance on how handle this unexpected cfg
[INFO] [stdout]    = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stdout]    = note: this warning originates in the derive macro `Deserialize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/lib.rs:23:10
[INFO] [stdout]    |
[INFO] [stdout] 23 | #[derive(Fail, Debug)]
[INFO] [stdout]    |          ^---
[INFO] [stdout]    |          |
[INFO] [stdout]    |          `Fail` is not local
[INFO] [stdout]    |          move the `impl` block outside of this constant `_DERIVE_failure_Fail_FOR_KvsError`
[INFO] [stdout] 24 | pub enum KvsError {
[INFO] [stdout]    |          -------- `KvsError` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `Fail` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `Fail` may come from an old version of the `failure_derive` crate, try updating your dependency with `cargo update -p failure_derive`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]    = note: `#[warn(non_local_definitions)]` on by default
[INFO] [stdout]    = note: this warning originates in the derive macro `Fail` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/lib.rs:23:10
[INFO] [stdout]    |
[INFO] [stdout] 23 | #[derive(Fail, Debug)]
[INFO] [stdout]    |          ^---
[INFO] [stdout]    |          |
[INFO] [stdout]    |          `Display` is not local
[INFO] [stdout]    |          move the `impl` block outside of this constant `_DERIVE_failure_core_fmt_Display_FOR_KvsError`
[INFO] [stdout] 24 | pub enum KvsError {
[INFO] [stdout]    |          -------- `KvsError` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `Fail` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `Fail` may come from an old version of the `failure_derive` crate, try updating your dependency with `cargo update -p failure_derive`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]    = note: this warning originates in the derive macro `Fail` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]    Compiling same-file v1.0.4
[INFO] [stderr]    Compiling difference v2.0.0
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/lib.rs:47:10
[INFO] [stdout]    |
[INFO] [stdout] 47 | #[derive(Serialize, Deserialize, Debug)]
[INFO] [stdout]    |          ^--------
[INFO] [stdout]    |          |
[INFO] [stdout]    |          `Serialize` is not local
[INFO] [stdout]    |          move the `impl` block outside of this constant `_IMPL_SERIALIZE_FOR_KvsCmd`
[INFO] [stdout] 48 | pub enum KvsCmd {
[INFO] [stdout]    |          ------ `KvsCmd` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `Serialize` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `Serialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_derive`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]    = note: this warning originates in the derive macro `Serialize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/lib.rs:47:21
[INFO] [stdout]    |
[INFO] [stdout] 47 | #[derive(Serialize, Deserialize, Debug)]
[INFO] [stdout]    |                     ^----------
[INFO] [stdout]    |                     |
[INFO] [stdout]    |                     `Deserialize` is not local
[INFO] [stdout]    |                     move the `impl` block outside of this constant `_IMPL_DESERIALIZE_FOR_KvsCmd`
[INFO] [stdout] 48 | pub enum KvsCmd {
[INFO] [stdout]    |          ------ `KvsCmd` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `Deserialize` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `Deserialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_derive`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]    = note: this warning originates in the derive macro `Deserialize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/lib.rs:54:10
[INFO] [stdout]    |
[INFO] [stdout] 54 | #[derive(Serialize, Deserialize, Debug)]
[INFO] [stdout]    |          ^--------
[INFO] [stdout]    |          |
[INFO] [stdout]    |          `Serialize` is not local
[INFO] [stdout]    |          move the `impl` block outside of this constant `_IMPL_SERIALIZE_FOR_KvsResp`
[INFO] [stdout] 55 | pub struct KvsResp {
[INFO] [stdout]    |            ------- `KvsResp` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `Serialize` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `Serialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_derive`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]    = note: this warning originates in the derive macro `Serialize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/lib.rs:54:21
[INFO] [stdout]    |
[INFO] [stdout] 54 | #[derive(Serialize, Deserialize, Debug)]
[INFO] [stdout]    |                     ^----------
[INFO] [stdout]    |                     |
[INFO] [stdout]    |                     `Deserialize` is not local
[INFO] [stdout]    |                     move the `impl` block outside of this constant `_IMPL_DESERIALIZE_FOR_KvsResp`
[INFO] [stdout] 55 | pub struct KvsResp {
[INFO] [stdout]    |            ------- `KvsResp` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `Deserialize` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `Deserialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_derive`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]    = note: this warning originates in the derive macro `Deserialize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]    Compiling tinytemplate v1.0.2
[INFO] [stderr]    Compiling crossbeam-epoch v0.3.1
[INFO] [stderr]    Compiling itertools v0.8.0
[INFO] [stderr]    Compiling rand v0.6.5
[INFO] [stderr]    Compiling csv v1.0.7
[INFO] [stderr]    Compiling predicates-tree v1.0.0
[INFO] [stderr]    Compiling walkdir v2.2.7
[INFO] [stderr]    Compiling remove_dir_all v0.5.1
[INFO] [stdout] warning: unused import: `std::path`
[INFO] [stdout]  --> src/bin/kvs-client.rs:6:5
[INFO] [stdout]   |
[INFO] [stdout] 6 | use std::path;
[INFO] [stdout]   |     ^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `KvStore`, `KvsEngine`, and `KvsError`
[INFO] [stdout]   --> src/bin/kvs-client.rs:12:19
[INFO] [stdout]    |
[INFO] [stdout] 12 | use kvs::{KvsCmd, KvsEngine, KvsError, KvsResp, KvStore, Result};
[INFO] [stdout]    |                   ^^^^^^^^^  ^^^^^^^^           ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `resp`
[INFO] [stdout]   --> src/bin/kvs-client.rs:85:9
[INFO] [stdout]    |
[INFO] [stdout] 85 |     let resp = request(db_stream, &KvsCmd::Set { key, val })?;
[INFO] [stdout]    |         ^^^^ help: if this is intentional, prefix it with an underscore: `_resp`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `resp`
[INFO] [stdout]   --> src/bin/kvs-client.rs:90:9
[INFO] [stdout]    |
[INFO] [stdout] 90 |     let resp = request(db_stream, &KvsCmd::Rm { key })?;
[INFO] [stdout]    |         ^^^^ help: if this is intentional, prefix it with an underscore: `_resp`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `log::Level`
[INFO] [stdout]   --> src/bin/kvs-server.rs:13:5
[INFO] [stdout]    |
[INFO] [stdout] 13 | use log::Level;
[INFO] [stdout]    |     ^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Deserialize` and `Serialize`
[INFO] [stdout]   --> src/bin/kvs-server.rs:14:13
[INFO] [stdout]    |
[INFO] [stdout] 14 | use serde::{Deserialize, Serialize};
[INFO] [stdout]    |             ^^^^^^^^^^^  ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `KvsError`
[INFO] [stdout]   --> src/bin/kvs-server.rs:17:30
[INFO] [stdout]    |
[INFO] [stdout] 17 | use kvs::{KvsCmd, KvsEngine, KvsError, KvStore, Result};
[INFO] [stdout]    |                              ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unreachable pattern
[INFO] [stdout]   --> src/bin/kvs-server.rs:97:17
[INFO] [stdout]    |
[INFO] [stdout] 97 |                 _ => {
[INFO] [stdout]    |                 ^ no value can reach this
[INFO] [stdout]    |
[INFO] [stdout] note: multiple earlier patterns match some of the same values
[INFO] [stdout]   --> src/bin/kvs-server.rs:97:17
[INFO] [stdout]    |
[INFO] [stdout] 79 |                 KvsCmd::Rm { key } => {
[INFO] [stdout]    |                 ------------------ matches some of the same values
[INFO] [stdout] ...
[INFO] [stdout] 83 |                 KvsCmd::Set { key, val } => {
[INFO] [stdout]    |                 ------------------------ matches some of the same values
[INFO] [stdout] ...
[INFO] [stdout] 87 |                 KvsCmd::Get { key } => {
[INFO] [stdout]    |                 ------------------- matches some of the same values
[INFO] [stdout] ...
[INFO] [stdout] 97 |                 _ => {
[INFO] [stdout]    |                 ^ collectively making this unreachable
[INFO] [stdout]    = note: `#[warn(unreachable_patterns)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]    Compiling rand_xoshiro v0.1.0
[INFO] [stderr]    Compiling crossbeam-deque v0.2.0
[INFO] [stderr]    Compiling rayon-core v1.4.1
[INFO] [stderr]    Compiling criterion-plot v0.3.1
[INFO] [stderr]    Compiling tempfile v3.0.8
[INFO] [stderr]    Compiling float-cmp v0.4.0
[INFO] [stderr]    Compiling predicates v1.0.1
[INFO] [stderr]    Compiling assert_cmd v0.11.1
[INFO] [stderr]    Compiling criterion v0.2.11
[INFO] [stderr]    Compiling kvs v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unused import: `std::path`
[INFO] [stdout]  --> src/bin/kvs-client.rs:6:5
[INFO] [stdout]   |
[INFO] [stdout] 6 | use std::path;
[INFO] [stdout]   |     ^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `KvStore`, `KvsEngine`, and `KvsError`
[INFO] [stdout]   --> src/bin/kvs-client.rs:12:19
[INFO] [stdout]    |
[INFO] [stdout] 12 | use kvs::{KvsCmd, KvsEngine, KvsError, KvsResp, KvStore, Result};
[INFO] [stdout]    |                   ^^^^^^^^^  ^^^^^^^^           ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::result`
[INFO] [stdout]  --> src/lib.rs:9:5
[INFO] [stdout]   |
[INFO] [stdout] 9 | use std::result;
[INFO] [stdout]   |     ^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `clap::ErrorKind`
[INFO] [stdout]   --> src/lib.rs:11:5
[INFO] [stdout]    |
[INFO] [stdout] 11 | use clap::ErrorKind;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unexpected `cfg` condition value: `cargo-clippy`
[INFO] [stdout]   --> src/lib.rs:47:10
[INFO] [stdout]    |
[INFO] [stdout] 47 | #[derive(Serialize, Deserialize, Debug)]
[INFO] [stdout]    |          ^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: no expected values for `feature`
[INFO] [stdout]    = note: using a cfg inside a derive macro will use the cfgs from the destination crate and not the ones from the defining crate
[INFO] [stdout]    = help: try referring to `Serialize` crate for guidance on how handle this unexpected cfg
[INFO] [stdout]    = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stdout]    = note: `#[warn(unexpected_cfgs)]` on by default
[INFO] [stdout]    = note: this warning originates in the derive macro `Serialize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unexpected `cfg` condition value: `cargo-clippy`
[INFO] [stdout]   --> src/lib.rs:47:21
[INFO] [stdout]    |
[INFO] [stdout] 47 | #[derive(Serialize, Deserialize, Debug)]
[INFO] [stdout]    |                     ^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: no expected values for `feature`
[INFO] [stdout]    = note: using a cfg inside a derive macro will use the cfgs from the destination crate and not the ones from the defining crate
[INFO] [stdout]    = help: try referring to `Deserialize` crate for guidance on how handle this unexpected cfg
[INFO] [stdout]    = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stdout]    = note: this warning originates in the derive macro `Deserialize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unexpected `cfg` condition value: `cargo-clippy`
[INFO] [stdout]   --> src/lib.rs:54:10
[INFO] [stdout]    |
[INFO] [stdout] 54 | #[derive(Serialize, Deserialize, Debug)]
[INFO] [stdout]    |          ^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: no expected values for `feature`
[INFO] [stdout]    = note: using a cfg inside a derive macro will use the cfgs from the destination crate and not the ones from the defining crate
[INFO] [stdout]    = help: try referring to `Serialize` crate for guidance on how handle this unexpected cfg
[INFO] [stdout]    = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stdout]    = note: this warning originates in the derive macro `Serialize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unexpected `cfg` condition value: `cargo-clippy`
[INFO] [stdout]   --> src/lib.rs:54:21
[INFO] [stdout]    |
[INFO] [stdout] 54 | #[derive(Serialize, Deserialize, Debug)]
[INFO] [stdout]    |                     ^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: no expected values for `feature`
[INFO] [stdout]    = note: using a cfg inside a derive macro will use the cfgs from the destination crate and not the ones from the defining crate
[INFO] [stdout]    = help: try referring to `Deserialize` crate for guidance on how handle this unexpected cfg
[INFO] [stdout]    = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stdout]    = note: this warning originates in the derive macro `Deserialize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `resp`
[INFO] [stdout]   --> src/bin/kvs-client.rs:85:9
[INFO] [stdout]    |
[INFO] [stdout] 85 |     let resp = request(db_stream, &KvsCmd::Set { key, val })?;
[INFO] [stdout]    |         ^^^^ help: if this is intentional, prefix it with an underscore: `_resp`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `resp`
[INFO] [stdout]   --> src/bin/kvs-client.rs:90:9
[INFO] [stdout]    |
[INFO] [stdout] 90 |     let resp = request(db_stream, &KvsCmd::Rm { key })?;
[INFO] [stdout]    |         ^^^^ help: if this is intentional, prefix it with an underscore: `_resp`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `log::Level`
[INFO] [stdout]   --> src/bin/kvs-server.rs:13:5
[INFO] [stdout]    |
[INFO] [stdout] 13 | use log::Level;
[INFO] [stdout]    |     ^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Deserialize` and `Serialize`
[INFO] [stdout]   --> src/bin/kvs-server.rs:14:13
[INFO] [stdout]    |
[INFO] [stdout] 14 | use serde::{Deserialize, Serialize};
[INFO] [stdout]    |             ^^^^^^^^^^^  ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `KvsError`
[INFO] [stdout]   --> src/bin/kvs-server.rs:17:30
[INFO] [stdout]    |
[INFO] [stdout] 17 | use kvs::{KvsCmd, KvsEngine, KvsError, KvStore, Result};
[INFO] [stdout]    |                              ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unreachable pattern
[INFO] [stdout]   --> src/bin/kvs-server.rs:97:17
[INFO] [stdout]    |
[INFO] [stdout] 97 |                 _ => {
[INFO] [stdout]    |                 ^ no value can reach this
[INFO] [stdout]    |
[INFO] [stdout] note: multiple earlier patterns match some of the same values
[INFO] [stdout]   --> src/bin/kvs-server.rs:97:17
[INFO] [stdout]    |
[INFO] [stdout] 79 |                 KvsCmd::Rm { key } => {
[INFO] [stdout]    |                 ------------------ matches some of the same values
[INFO] [stdout] ...
[INFO] [stdout] 83 |                 KvsCmd::Set { key, val } => {
[INFO] [stdout]    |                 ------------------------ matches some of the same values
[INFO] [stdout] ...
[INFO] [stdout] 87 |                 KvsCmd::Get { key } => {
[INFO] [stdout]    |                 ------------------- matches some of the same values
[INFO] [stdout] ...
[INFO] [stdout] 97 |                 _ => {
[INFO] [stdout]    |                 ^ collectively making this unreachable
[INFO] [stdout]    = note: `#[warn(unreachable_patterns)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/lib.rs:23:10
[INFO] [stdout]    |
[INFO] [stdout] 23 | #[derive(Fail, Debug)]
[INFO] [stdout]    |          ^---
[INFO] [stdout]    |          |
[INFO] [stdout]    |          `Fail` is not local
[INFO] [stdout]    |          move the `impl` block outside of this constant `_DERIVE_failure_Fail_FOR_KvsError`
[INFO] [stdout] 24 | pub enum KvsError {
[INFO] [stdout]    |          -------- `KvsError` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `Fail` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `Fail` may come from an old version of the `failure_derive` crate, try updating your dependency with `cargo update -p failure_derive`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]    = note: `#[warn(non_local_definitions)]` on by default
[INFO] [stdout]    = note: this warning originates in the derive macro `Fail` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/lib.rs:23:10
[INFO] [stdout]    |
[INFO] [stdout] 23 | #[derive(Fail, Debug)]
[INFO] [stdout]    |          ^---
[INFO] [stdout]    |          |
[INFO] [stdout]    |          `Display` is not local
[INFO] [stdout]    |          move the `impl` block outside of this constant `_DERIVE_failure_core_fmt_Display_FOR_KvsError`
[INFO] [stdout] 24 | pub enum KvsError {
[INFO] [stdout]    |          -------- `KvsError` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `Fail` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `Fail` may come from an old version of the `failure_derive` crate, try updating your dependency with `cargo update -p failure_derive`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]    = note: this warning originates in the derive macro `Fail` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/lib.rs:47:10
[INFO] [stdout]    |
[INFO] [stdout] 47 | #[derive(Serialize, Deserialize, Debug)]
[INFO] [stdout]    |          ^--------
[INFO] [stdout]    |          |
[INFO] [stdout]    |          `Serialize` is not local
[INFO] [stdout]    |          move the `impl` block outside of this constant `_IMPL_SERIALIZE_FOR_KvsCmd`
[INFO] [stdout] 48 | pub enum KvsCmd {
[INFO] [stdout]    |          ------ `KvsCmd` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `Serialize` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `Serialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_derive`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]    = note: this warning originates in the derive macro `Serialize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/lib.rs:47:21
[INFO] [stdout]    |
[INFO] [stdout] 47 | #[derive(Serialize, Deserialize, Debug)]
[INFO] [stdout]    |                     ^----------
[INFO] [stdout]    |                     |
[INFO] [stdout]    |                     `Deserialize` is not local
[INFO] [stdout]    |                     move the `impl` block outside of this constant `_IMPL_DESERIALIZE_FOR_KvsCmd`
[INFO] [stdout] 48 | pub enum KvsCmd {
[INFO] [stdout]    |          ------ `KvsCmd` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `Deserialize` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `Deserialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_derive`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]    = note: this warning originates in the derive macro `Deserialize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/lib.rs:54:10
[INFO] [stdout]    |
[INFO] [stdout] 54 | #[derive(Serialize, Deserialize, Debug)]
[INFO] [stdout]    |          ^--------
[INFO] [stdout]    |          |
[INFO] [stdout]    |          `Serialize` is not local
[INFO] [stdout]    |          move the `impl` block outside of this constant `_IMPL_SERIALIZE_FOR_KvsResp`
[INFO] [stdout] 55 | pub struct KvsResp {
[INFO] [stdout]    |            ------- `KvsResp` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `Serialize` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `Serialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_derive`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]    = note: this warning originates in the derive macro `Serialize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/lib.rs:54:21
[INFO] [stdout]    |
[INFO] [stdout] 54 | #[derive(Serialize, Deserialize, Debug)]
[INFO] [stdout]    |                     ^----------
[INFO] [stdout]    |                     |
[INFO] [stdout]    |                     `Deserialize` is not local
[INFO] [stdout]    |                     move the `impl` block outside of this constant `_IMPL_DESERIALIZE_FOR_KvsResp`
[INFO] [stdout] 55 | pub struct KvsResp {
[INFO] [stdout]    |            ------- `KvsResp` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `Deserialize` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `Deserialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_derive`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]    = note: this warning originates in the derive macro `Deserialize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 8.26s
[INFO] [stderr] warning: the following packages contain code that will be rejected by a future version of Rust: criterion v0.2.11
[INFO] [stderr] note: to see what the problems were, use the option `--future-incompat-report`, or run `cargo report future-incompatibilities --id 2`
[INFO] running `Command { std: "docker" "inspect" "5b461875ee23308823c74a55faab12638db5d5768ca40fc173fb19303ade14d0", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "5b461875ee23308823c74a55faab12638db5d5768ca40fc173fb19303ade14d0", kill_on_drop: false }`
[INFO] [stdout] 5b461875ee23308823c74a55faab12638db5d5768ca40fc173fb19303ade14d0
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-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:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+cced03bfd61a304243a34504618ecec86c17063f" "test" "--frozen", kill_on_drop: false }`
[INFO] [stdout] af751ef56355e1a6a908ec1b6dd44355c163197b3662f3aea8569a57b4ef1709
[INFO] running `Command { std: "docker" "start" "-a" "af751ef56355e1a6a908ec1b6dd44355c163197b3662f3aea8569a57b4ef1709", kill_on_drop: false }`
[INFO] [stderr] warning: unused import: `std::result`
[INFO] [stderr]  --> src/lib.rs:9:5
[INFO] [stderr]   |
[INFO] [stderr] 9 | use std::result;
[INFO] [stderr]   |     ^^^^^^^^^^^
[INFO] [stderr]   |
[INFO] [stderr]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `clap::ErrorKind`
[INFO] [stderr]   --> src/lib.rs:11:5
[INFO] [stderr]    |
[INFO] [stderr] 11 | use clap::ErrorKind;
[INFO] [stderr]    |     ^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unexpected `cfg` condition value: `cargo-clippy`
[INFO] [stderr]   --> src/lib.rs:47:10
[INFO] [stderr]    |
[INFO] [stderr] 47 | #[derive(Serialize, Deserialize, Debug)]
[INFO] [stderr]    |          ^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: no expected values for `feature`
[INFO] [stderr]    = note: using a cfg inside a derive macro will use the cfgs from the destination crate and not the ones from the defining crate
[INFO] [stderr]    = help: try referring to `Serialize` crate for guidance on how handle this unexpected cfg
[INFO] [stderr]    = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stderr]    = note: `#[warn(unexpected_cfgs)]` on by default
[INFO] [stderr]    = note: this warning originates in the derive macro `Serialize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: unexpected `cfg` condition value: `cargo-clippy`
[INFO] [stderr]   --> src/lib.rs:47:21
[INFO] [stderr]    |
[INFO] [stderr] 47 | #[derive(Serialize, Deserialize, Debug)]
[INFO] [stderr]    |                     ^^^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: no expected values for `feature`
[INFO] [stderr]    = note: using a cfg inside a derive macro will use the cfgs from the destination crate and not the ones from the defining crate
[INFO] [stderr]    = help: try referring to `Deserialize` crate for guidance on how handle this unexpected cfg
[INFO] [stderr]    = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stderr]    = note: this warning originates in the derive macro `Deserialize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: unexpected `cfg` condition value: `cargo-clippy`
[INFO] [stderr]   --> src/lib.rs:54:10
[INFO] [stderr]    |
[INFO] [stderr] 54 | #[derive(Serialize, Deserialize, Debug)]
[INFO] [stderr]    |          ^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: no expected values for `feature`
[INFO] [stderr]    = note: using a cfg inside a derive macro will use the cfgs from the destination crate and not the ones from the defining crate
[INFO] [stderr]    = help: try referring to `Serialize` crate for guidance on how handle this unexpected cfg
[INFO] [stderr]    = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stderr]    = note: this warning originates in the derive macro `Serialize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: unexpected `cfg` condition value: `cargo-clippy`
[INFO] [stderr]   --> src/lib.rs:54:21
[INFO] [stderr]    |
[INFO] [stderr] 54 | #[derive(Serialize, Deserialize, Debug)]
[INFO] [stderr]    |                     ^^^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: no expected values for `feature`
[INFO] [stderr]    = note: using a cfg inside a derive macro will use the cfgs from the destination crate and not the ones from the defining crate
[INFO] [stderr]    = help: try referring to `Deserialize` crate for guidance on how handle this unexpected cfg
[INFO] [stderr]    = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stderr]    = note: this warning originates in the derive macro `Deserialize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stderr]   --> src/lib.rs:23:10
[INFO] [stderr]    |
[INFO] [stderr] 23 | #[derive(Fail, Debug)]
[INFO] [stderr]    |          ^---
[INFO] [stderr]    |          |
[INFO] [stderr]    |          `Fail` is not local
[INFO] [stderr]    |          move the `impl` block outside of this constant `_DERIVE_failure_Fail_FOR_KvsError`
[INFO] [stderr] 24 | pub enum KvsError {
[INFO] [stderr]    |          -------- `KvsError` is not local
[INFO] [stderr]    |
[INFO] [stderr]    = note: the derive macro `Fail` defines the non-local `impl`, and may need to be changed
[INFO] [stderr]    = note: the derive macro `Fail` may come from an old version of the `failure_derive` crate, try updating your dependency with `cargo update -p failure_derive`
[INFO] [stderr]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stderr]    = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stderr]    = note: `#[warn(non_local_definitions)]` on by default
[INFO] [stderr]    = note: this warning originates in the derive macro `Fail` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stderr]   --> src/lib.rs:23:10
[INFO] [stderr]    |
[INFO] [stderr] 23 | #[derive(Fail, Debug)]
[INFO] [stderr]    |          ^---
[INFO] [stderr]    |          |
[INFO] [stderr]    |          `Display` is not local
[INFO] [stderr]    |          move the `impl` block outside of this constant `_DERIVE_failure_core_fmt_Display_FOR_KvsError`
[INFO] [stderr] 24 | pub enum KvsError {
[INFO] [stderr]    |          -------- `KvsError` is not local
[INFO] [stderr]    |
[INFO] [stderr]    = note: the derive macro `Fail` defines the non-local `impl`, and may need to be changed
[INFO] [stderr]    = note: the derive macro `Fail` may come from an old version of the `failure_derive` crate, try updating your dependency with `cargo update -p failure_derive`
[INFO] [stderr]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stderr]    = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stderr]    = note: this warning originates in the derive macro `Fail` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stderr]   --> src/lib.rs:47:10
[INFO] [stderr]    |
[INFO] [stderr] 47 | #[derive(Serialize, Deserialize, Debug)]
[INFO] [stderr]    |          ^--------
[INFO] [stderr]    |          |
[INFO] [stderr]    |          `Serialize` is not local
[INFO] [stderr]    |          move the `impl` block outside of this constant `_IMPL_SERIALIZE_FOR_KvsCmd`
[INFO] [stderr] 48 | pub enum KvsCmd {
[INFO] [stderr]    |          ------ `KvsCmd` is not local
[INFO] [stderr]    |
[INFO] [stderr]    = note: the derive macro `Serialize` defines the non-local `impl`, and may need to be changed
[INFO] [stderr]    = note: the derive macro `Serialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_derive`
[INFO] [stderr]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stderr]    = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stderr]    = note: this warning originates in the derive macro `Serialize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stderr]   --> src/lib.rs:47:21
[INFO] [stderr]    |
[INFO] [stderr] 47 | #[derive(Serialize, Deserialize, Debug)]
[INFO] [stderr]    |                     ^----------
[INFO] [stderr]    |                     |
[INFO] [stderr]    |                     `Deserialize` is not local
[INFO] [stderr]    |                     move the `impl` block outside of this constant `_IMPL_DESERIALIZE_FOR_KvsCmd`
[INFO] [stderr] 48 | pub enum KvsCmd {
[INFO] [stderr]    |          ------ `KvsCmd` is not local
[INFO] [stderr]    |
[INFO] [stderr]    = note: the derive macro `Deserialize` defines the non-local `impl`, and may need to be changed
[INFO] [stderr]    = note: the derive macro `Deserialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_derive`
[INFO] [stderr]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stderr]    = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stderr]    = note: this warning originates in the derive macro `Deserialize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stderr]   --> src/lib.rs:54:10
[INFO] [stderr]    |
[INFO] [stderr] 54 | #[derive(Serialize, Deserialize, Debug)]
[INFO] [stderr]    |          ^--------
[INFO] [stderr]    |          |
[INFO] [stderr]    |          `Serialize` is not local
[INFO] [stderr]    |          move the `impl` block outside of this constant `_IMPL_SERIALIZE_FOR_KvsResp`
[INFO] [stderr] 55 | pub struct KvsResp {
[INFO] [stderr]    |            ------- `KvsResp` is not local
[INFO] [stderr]    |
[INFO] [stderr]    = note: the derive macro `Serialize` defines the non-local `impl`, and may need to be changed
[INFO] [stderr]    = note: the derive macro `Serialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_derive`
[INFO] [stderr]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stderr]    = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stderr]    = note: this warning originates in the derive macro `Serialize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stderr]   --> src/lib.rs:54:21
[INFO] [stderr]    |
[INFO] [stderr] 54 | #[derive(Serialize, Deserialize, Debug)]
[INFO] [stderr]    |                     ^----------
[INFO] [stderr]    |                     |
[INFO] [stderr]    |                     `Deserialize` is not local
[INFO] [stderr]    |                     move the `impl` block outside of this constant `_IMPL_DESERIALIZE_FOR_KvsResp`
[INFO] [stderr] 55 | pub struct KvsResp {
[INFO] [stderr]    |            ------- `KvsResp` is not local
[INFO] [stderr]    |
[INFO] [stderr]    = note: the derive macro `Deserialize` defines the non-local `impl`, and may need to be changed
[INFO] [stderr]    = note: the derive macro `Deserialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_derive`
[INFO] [stderr]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stderr]    = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stderr]    = note: this warning originates in the derive macro `Deserialize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: `kvs` (lib) generated 12 warnings (run `cargo fix --lib -p kvs` to apply 2 suggestions)
[INFO] [stderr] warning: unused import: `log::Level`
[INFO] [stderr]   --> src/bin/kvs-server.rs:13:5
[INFO] [stderr]    |
[INFO] [stderr] 13 | use log::Level;
[INFO] [stderr]    |     ^^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unused imports: `Deserialize` and `Serialize`
[INFO] [stderr]   --> src/bin/kvs-server.rs:14:13
[INFO] [stderr]    |
[INFO] [stderr] 14 | use serde::{Deserialize, Serialize};
[INFO] [stderr]    |             ^^^^^^^^^^^  ^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `KvsError`
[INFO] [stderr]   --> src/bin/kvs-server.rs:17:30
[INFO] [stderr]    |
[INFO] [stderr] 17 | use kvs::{KvsCmd, KvsEngine, KvsError, KvStore, Result};
[INFO] [stderr]    |                              ^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unreachable pattern
[INFO] [stderr]   --> src/bin/kvs-server.rs:97:17
[INFO] [stderr]    |
[INFO] [stderr] 97 |                 _ => {
[INFO] [stderr]    |                 ^ no value can reach this
[INFO] [stderr]    |
[INFO] [stderr] note: multiple earlier patterns match some of the same values
[INFO] [stderr]   --> src/bin/kvs-server.rs:97:17
[INFO] [stderr]    |
[INFO] [stderr] 79 |                 KvsCmd::Rm { key } => {
[INFO] [stderr]    |                 ------------------ matches some of the same values
[INFO] [stderr] ...
[INFO] [stderr] 83 |                 KvsCmd::Set { key, val } => {
[INFO] [stderr]    |                 ------------------------ matches some of the same values
[INFO] [stderr] ...
[INFO] [stderr] 87 |                 KvsCmd::Get { key } => {
[INFO] [stderr]    |                 ------------------- matches some of the same values
[INFO] [stderr] ...
[INFO] [stderr] 97 |                 _ => {
[INFO] [stderr]    |                 ^ collectively making this unreachable
[INFO] [stderr]    = note: `#[warn(unreachable_patterns)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `std::path`
[INFO] [stderr]  --> src/bin/kvs-client.rs:6:5
[INFO] [stderr]   |
[INFO] [stderr] 6 | use std::path;
[INFO] [stderr]   |     ^^^^^^^^^
[INFO] [stderr]   |
[INFO] [stderr]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unused imports: `KvStore`, `KvsEngine`, and `KvsError`
[INFO] [stderr]   --> src/bin/kvs-client.rs:12:19
[INFO] [stderr]    |
[INFO] [stderr] 12 | use kvs::{KvsCmd, KvsEngine, KvsError, KvsResp, KvStore, Result};
[INFO] [stderr]    |                   ^^^^^^^^^  ^^^^^^^^           ^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `resp`
[INFO] [stderr]   --> src/bin/kvs-client.rs:85:9
[INFO] [stderr]    |
[INFO] [stderr] 85 |     let resp = request(db_stream, &KvsCmd::Set { key, val })?;
[INFO] [stderr]    |         ^^^^ help: if this is intentional, prefix it with an underscore: `_resp`
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `resp`
[INFO] [stderr]   --> src/bin/kvs-client.rs:90:9
[INFO] [stderr]    |
[INFO] [stderr] 90 |     let resp = request(db_stream, &KvsCmd::Rm { key })?;
[INFO] [stderr]    |         ^^^^ help: if this is intentional, prefix it with an underscore: `_resp`
[INFO] [stderr] 
[INFO] [stderr] warning: `kvs` (bin "kvs-server") generated 4 warnings (run `cargo fix --bin "kvs-server" -p kvs` to apply 3 suggestions)
[INFO] [stderr] warning: `kvs` (bin "kvs-client") generated 4 warnings (run `cargo fix --bin "kvs-client" -p kvs` to apply 4 suggestions)
[INFO] [stderr] warning: `kvs` (bin "kvs-client" test) generated 4 warnings (4 duplicates)
[INFO] [stderr] warning: `kvs` (bin "kvs-server" test) generated 4 warnings (4 duplicates)
[INFO] [stderr] warning: `kvs` (lib test) generated 12 warnings (12 duplicates)
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 0.15s
[INFO] [stderr] warning: the following packages contain code that will be rejected by a future version of Rust: criterion v0.2.11
[INFO] [stderr] note: to see what the problems were, use the option `--future-incompat-report`, or run `cargo report future-incompatibilities --id 2`
[INFO] [stderr]      Running unittests src/lib.rs (/opt/rustwide/target/debug/deps/kvs-f0adb9ca667fda30)
[INFO] [stdout] 
[INFO] [stdout] running 0 tests
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s
[INFO] [stdout] 
[INFO] [stderr]      Running unittests src/bin/kvs-client.rs (/opt/rustwide/target/debug/deps/kvs_client-1bfa3bbd3bb56dd7)
[INFO] [stdout] 
[INFO] [stdout] running 0 tests
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s
[INFO] [stdout] 
[INFO] [stderr]      Running unittests src/bin/kvs-server.rs (/opt/rustwide/target/debug/deps/kvs_server-389c6f5326a330f2)
[INFO] [stdout] 
[INFO] [stdout] running 0 tests
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s
[INFO] [stdout] 
[INFO] [stderr]      Running tests/cli.rs (/opt/rustwide/target/debug/deps/cli-5d05c6217670382a)
[INFO] [stdout] 
[INFO] [stdout] running 11 tests
[INFO] [stderr] [2026-06-13T09:31:44Z ERROR kvs_server] servr starting...
[INFO] [stderr] [2026-06-13T09:31:44Z ERROR kvs_server] Version: "0.1.0", Addr: "127.0.0.1:4004", Engine: "kvs"
[INFO] [stderr] [2026-06-13T09:31:44Z ERROR kvs_server] servr starting...
[INFO] [stderr] [2026-06-13T09:31:44Z ERROR kvs_server] Version: "0.1.0", Addr: "127.0.0.1:4002", Engine: "sled"
[INFO] [stdout] test server_cli_version ... ok
[INFO] [stdout] test client_cli_invalid_subcommand ... ok
[INFO] [stdout] test client_cli_version ... ok
[INFO] [stderr] [2026-06-13T09:31:44Z ERROR kvs_server] servr starting...
[INFO] [stderr] [2026-06-13T09:31:44Z ERROR kvs_server] Version: "0.1.0", Addr: "127.0.0.1:4005", Engine: "sled"
[INFO] [stdout] test client_cli_invalid_get ... ok
[INFO] [stdout] test client_cli_invalid_rm ... ok
[INFO] [stdout] test client_cli_no_args ... ok
[INFO] [stdout] test client_cli_invalid_set ... ok
[INFO] [stdout] test cli_log_configuration ... ok
[INFO] [stdout] test cli_access_server_kvs_engine ... FAILED
[INFO] [stdout] test cli_access_server_sled_engine ... FAILED
[INFO] [stdout] test cli_wrong_engine has been running for over 60 seconds
[ERROR] error running command: no output for 300 seconds
[INFO] running `Command { std: "docker" "inspect" "af751ef56355e1a6a908ec1b6dd44355c163197b3662f3aea8569a57b4ef1709", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "af751ef56355e1a6a908ec1b6dd44355c163197b3662f3aea8569a57b4ef1709", kill_on_drop: false }`
[INFO] [stdout] af751ef56355e1a6a908ec1b6dd44355c163197b3662f3aea8569a57b4ef1709
