[INFO] cloning repository https://github.com/xieshuaihu/kvs
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/xieshuaihu/kvs" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fxieshuaihu%2Fkvs", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fxieshuaihu%2Fkvs'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] 6198e01ce2eb04f1bc1f47249bdec09c2a49b1d1
[INFO] checking xieshuaihu/kvs against f1c52bf13c990fc425c542cc90a0396a87db24ba for pr-164812
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fxieshuaihu%2Fkvs" "/workspace/builds/worker-0-tc2/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-0-tc2/source'...
[INFO] [stderr] done.
[INFO] started tweaking git repo https://github.com/xieshuaihu/kvs
[INFO] finished tweaking git repo https://github.com/xieshuaihu/kvs
[INFO] tweaked toml for git repo https://github.com/xieshuaihu/kvs written to /workspace/builds/worker-0-tc2/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/xieshuaihu/kvs on toolchain f1c52bf13c990fc425c542cc90a0396a87db24ba
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+f1c52bf13c990fc425c542cc90a0396a87db24ba" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate git repo https://github.com/xieshuaihu/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" "+f1c52bf13c990fc425c542cc90a0396a87db24ba" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Blocking waiting for file lock on package cache
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc2/target:/opt/rustwide/target:rw,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" "-m" "1610612736" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:c0af3998e971868164375a7dfb646c9933ddd1a3bdb00fa2041266763dc1eeab" "sleep" "infinity", kill_on_drop: false }`
[INFO] [stdout] c4fb34667507e0a0693c977ca8c8b5354cf476437b8ed98f95edc5163e093e89
[INFO] running `Command { std: "docker" "start" "c4fb34667507e0a0693c977ca8c8b5354cf476437b8ed98f95edc5163e093e89", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "c4fb34667507e0a0693c977ca8c8b5354cf476437b8ed98f95edc5163e093e89", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "exec" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-w" "/opt/rustwide/workdir" "--user" "0:0" "c4fb34667507e0a0693c977ca8c8b5354cf476437b8ed98f95edc5163e093e89" "/opt/rustwide/cargo-home/bin/cargo" "+f1c52bf13c990fc425c542cc90a0396a87db24ba" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "c4fb34667507e0a0693c977ca8c8b5354cf476437b8ed98f95edc5163e093e89", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "exec" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-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" "-w" "/opt/rustwide/workdir" "--user" "0:0" "c4fb34667507e0a0693c977ca8c8b5354cf476437b8ed98f95edc5163e093e89" "/opt/rustwide/cargo-home/bin/cargo" "+f1c52bf13c990fc425c542cc90a0396a87db24ba" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stderr]    Compiling libc v0.2.98
[INFO] [stderr]    Compiling proc-macro2 v1.0.27
[INFO] [stderr]    Compiling syn v1.0.73
[INFO] [stderr]    Compiling serde_derive v1.0.126
[INFO] [stderr]    Compiling serde v1.0.126
[INFO] [stderr]    Compiling version_check v0.9.3
[INFO] [stderr]    Compiling ryu v1.0.5
[INFO] [stderr]    Compiling memchr v2.4.0
[INFO] [stderr]    Compiling protobuf v2.25.1
[INFO] [stderr]    Compiling serde_json v1.0.64
[INFO] [stderr]    Compiling ppv-lite86 v0.2.10
[INFO] [stderr]     Checking itoa v0.4.7
[INFO] [stderr]     Checking unicode-width v0.1.8
[INFO] [stderr]    Compiling crossbeam-utils v0.8.5
[INFO] [stderr]    Compiling either v1.6.1
[INFO] [stderr]    Compiling semver v1.0.3
[INFO] [stderr]    Compiling log v0.4.14
[INFO] [stderr]    Compiling memoffset v0.6.4
[INFO] [stderr]    Compiling remove_dir_all v0.5.3
[INFO] [stderr]    Compiling indexmap v1.7.0
[INFO] [stderr]    Compiling num-traits v0.2.14
[INFO] [stderr]    Compiling crossbeam-epoch v0.9.5
[INFO] [stderr]    Compiling unicode-segmentation v1.8.0
[INFO] [stderr]    Compiling rayon-core v1.9.1
[INFO] [stderr]     Checking textwrap v0.12.1
[INFO] [stderr]     Checking rand_core v0.4.2
[INFO] [stderr]     Checking os_str_bytes v2.4.0
[INFO] [stderr]    Compiling proc-macro-error-attr v1.0.4
[INFO] [stderr]    Compiling proc-macro-error v1.0.4
[INFO] [stderr]     Checking termcolor v1.1.2
[INFO] [stderr]     Checking strsim v0.10.0
[INFO] [stderr]     Checking crossbeam-channel v0.5.1
[INFO] [stderr]    Compiling rayon v1.5.1
[INFO] [stderr]     Checking getrandom v0.2.3
[INFO] [stderr]     Checking atty v0.2.14
[INFO] [stderr]     Checking num_cpus v1.13.0
[INFO] [stderr]     Checking predicates-core v1.0.2
[INFO] [stderr]    Compiling heck v0.3.3
[INFO] [stderr]     Checking rand_core v0.6.3
[INFO] [stderr]    Compiling rustc_version v0.4.0
[INFO] [stderr]    Compiling which v4.2.2
[INFO] [stderr]     Checking regex-automata v0.1.10
[INFO] [stderr]     Checking byteorder v1.4.3
[INFO] [stderr]    Compiling escargot v0.4.0
[INFO] [stderr]     Checking crossbeam-deque v0.8.0
[INFO] [stderr]     Checking aho-corasick v0.7.18
[INFO] [stderr]     Checking csv-core v0.1.10
[INFO] [stderr]     Checking rand_chacha v0.3.1
[INFO] [stderr]     Checking float-cmp v0.8.0
[INFO] [stderr]    Compiling protoc v2.25.1
[INFO] [stderr]     Checking itertools v0.8.2
[INFO] [stderr]     Checking rand_core v0.3.1
[INFO] [stderr]    Compiling quote v1.0.9
[INFO] [stderr]     Checking textwrap v0.11.0
[INFO] [stderr]     Checking difference v2.0.0
[INFO] [stderr]     Checking normalize-line-endings v0.3.0
[INFO] [stderr]     Checking treeline v0.1.0
[INFO] [stderr]     Checking rand_xoshiro v0.1.0
[INFO] [stderr]    Compiling cast v0.2.7
[INFO] [stderr]     Checking clap v2.33.3
[INFO] [stderr]     Checking rand_os v0.1.3
[INFO] [stderr]     Checking predicates-tree v1.0.2
[INFO] [stderr]     Checking rand v0.8.4
[INFO] [stderr]     Checking regex v1.5.4
[INFO] [stderr]     Checking tempfile v3.2.0
[INFO] [stderr]     Checking criterion-plot v0.3.1
[INFO] [stderr]     Checking predicates v1.0.8
[INFO] [stderr]    Compiling protobuf-codegen v2.25.1
[INFO] [stderr]    Compiling clap_derive v3.0.0-beta.2
[INFO] [stderr]    Compiling protoc-rust v2.25.1
[INFO] [stderr]     Checking clap v3.0.0-beta.2
[INFO] [stderr]    Compiling kvs v0.1.0 (/opt/rustwide/workdir)
[INFO] [stderr]     Checking bstr v0.2.16
[INFO] [stderr]     Checking csv v1.1.6
[INFO] [stderr]     Checking tinytemplate v1.2.1
[INFO] [stdout] warning: lint `box_pointers` has been removed: it does not detect other kinds of allocations, and existed only for historical reasons
[INFO] [stdout]   --> /opt/rustwide/target/debug/build/kvs/4adebd11eff03b1a/out/command/command.rs:11:10
[INFO] [stdout]    |
[INFO] [stdout] 11 | #![allow(box_pointers)]
[INFO] [stdout]    |          ^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(renamed_and_removed_lints)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around type
[INFO] [stdout]    --> /opt/rustwide/target/debug/build/kvs/4adebd11eff03b1a/out/command/command.rs:150:30
[INFO] [stdout]     |
[INFO] [stdout] 150 |     fn as_any(&self) -> &dyn (::std::any::Any) {
[INFO] [stdout]     |                              ^               ^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_parens)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]     |
[INFO] [stdout] 150 -     fn as_any(&self) -> &dyn (::std::any::Any) {
[INFO] [stdout] 150 +     fn as_any(&self) -> &dyn ::std::any::Any {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around type
[INFO] [stdout]    --> /opt/rustwide/target/debug/build/kvs/4adebd11eff03b1a/out/command/command.rs:151:22
[INFO] [stdout]     |
[INFO] [stdout] 151 |         self as &dyn (::std::any::Any)
[INFO] [stdout]     |                      ^               ^
[INFO] [stdout]     |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]     |
[INFO] [stdout] 151 -         self as &dyn (::std::any::Any)
[INFO] [stdout] 151 +         self as &dyn ::std::any::Any
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around type
[INFO] [stdout]    --> /opt/rustwide/target/debug/build/kvs/4adebd11eff03b1a/out/command/command.rs:153:42
[INFO] [stdout]     |
[INFO] [stdout] 153 |     fn as_any_mut(&mut self) -> &mut dyn (::std::any::Any) {
[INFO] [stdout]     |                                          ^               ^
[INFO] [stdout]     |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]     |
[INFO] [stdout] 153 -     fn as_any_mut(&mut self) -> &mut dyn (::std::any::Any) {
[INFO] [stdout] 153 +     fn as_any_mut(&mut self) -> &mut dyn ::std::any::Any {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around type
[INFO] [stdout]    --> /opt/rustwide/target/debug/build/kvs/4adebd11eff03b1a/out/command/command.rs:154:26
[INFO] [stdout]     |
[INFO] [stdout] 154 |         self as &mut dyn (::std::any::Any)
[INFO] [stdout]     |                          ^               ^
[INFO] [stdout]     |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]     |
[INFO] [stdout] 154 -         self as &mut dyn (::std::any::Any)
[INFO] [stdout] 154 +         self as &mut dyn ::std::any::Any
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around type
[INFO] [stdout]    --> /opt/rustwide/target/debug/build/kvs/4adebd11eff03b1a/out/command/command.rs:156:73
[INFO] [stdout]     |
[INFO] [stdout] 156 |     fn into_any(self: ::std::boxed::Box<Self>) -> ::std::boxed::Box<dyn (::std::any::Any)> {
[INFO] [stdout]     |                                                                         ^               ^
[INFO] [stdout]     |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]     |
[INFO] [stdout] 156 -     fn into_any(self: ::std::boxed::Box<Self>) -> ::std::boxed::Box<dyn (::std::any::Any)> {
[INFO] [stdout] 156 +     fn into_any(self: ::std::boxed::Box<Self>) -> ::std::boxed::Box<dyn ::std::any::Any> {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around type
[INFO] [stdout]    --> /opt/rustwide/target/debug/build/kvs/4adebd11eff03b1a/out/command/command.rs:351:30
[INFO] [stdout]     |
[INFO] [stdout] 351 |     fn as_any(&self) -> &dyn (::std::any::Any) {
[INFO] [stdout]     |                              ^               ^
[INFO] [stdout]     |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]     |
[INFO] [stdout] 351 -     fn as_any(&self) -> &dyn (::std::any::Any) {
[INFO] [stdout] 351 +     fn as_any(&self) -> &dyn ::std::any::Any {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around type
[INFO] [stdout]    --> /opt/rustwide/target/debug/build/kvs/4adebd11eff03b1a/out/command/command.rs:352:22
[INFO] [stdout]     |
[INFO] [stdout] 352 |         self as &dyn (::std::any::Any)
[INFO] [stdout]     |                      ^               ^
[INFO] [stdout]     |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]     |
[INFO] [stdout] 352 -         self as &dyn (::std::any::Any)
[INFO] [stdout] 352 +         self as &dyn ::std::any::Any
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around type
[INFO] [stdout]    --> /opt/rustwide/target/debug/build/kvs/4adebd11eff03b1a/out/command/command.rs:354:42
[INFO] [stdout]     |
[INFO] [stdout] 354 |     fn as_any_mut(&mut self) -> &mut dyn (::std::any::Any) {
[INFO] [stdout]     |                                          ^               ^
[INFO] [stdout]     |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]     |
[INFO] [stdout] 354 -     fn as_any_mut(&mut self) -> &mut dyn (::std::any::Any) {
[INFO] [stdout] 354 +     fn as_any_mut(&mut self) -> &mut dyn ::std::any::Any {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around type
[INFO] [stdout]    --> /opt/rustwide/target/debug/build/kvs/4adebd11eff03b1a/out/command/command.rs:355:26
[INFO] [stdout]     |
[INFO] [stdout] 355 |         self as &mut dyn (::std::any::Any)
[INFO] [stdout]     |                          ^               ^
[INFO] [stdout]     |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]     |
[INFO] [stdout] 355 -         self as &mut dyn (::std::any::Any)
[INFO] [stdout] 355 +         self as &mut dyn ::std::any::Any
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around type
[INFO] [stdout]    --> /opt/rustwide/target/debug/build/kvs/4adebd11eff03b1a/out/command/command.rs:357:73
[INFO] [stdout]     |
[INFO] [stdout] 357 |     fn into_any(self: ::std::boxed::Box<Self>) -> ::std::boxed::Box<dyn (::std::any::Any)> {
[INFO] [stdout]     |                                                                         ^               ^
[INFO] [stdout]     |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]     |
[INFO] [stdout] 357 -     fn into_any(self: ::std::boxed::Box<Self>) -> ::std::boxed::Box<dyn (::std::any::Any)> {
[INFO] [stdout] 357 +     fn into_any(self: ::std::boxed::Box<Self>) -> ::std::boxed::Box<dyn ::std::any::Any> {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around type
[INFO] [stdout]    --> /opt/rustwide/target/debug/build/kvs/4adebd11eff03b1a/out/command/command.rs:516:30
[INFO] [stdout]     |
[INFO] [stdout] 516 |     fn as_any(&self) -> &dyn (::std::any::Any) {
[INFO] [stdout]     |                              ^               ^
[INFO] [stdout]     |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]     |
[INFO] [stdout] 516 -     fn as_any(&self) -> &dyn (::std::any::Any) {
[INFO] [stdout] 516 +     fn as_any(&self) -> &dyn ::std::any::Any {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around type
[INFO] [stdout]    --> /opt/rustwide/target/debug/build/kvs/4adebd11eff03b1a/out/command/command.rs:517:22
[INFO] [stdout]     |
[INFO] [stdout] 517 |         self as &dyn (::std::any::Any)
[INFO] [stdout]     |                      ^               ^
[INFO] [stdout]     |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]     |
[INFO] [stdout] 517 -         self as &dyn (::std::any::Any)
[INFO] [stdout] 517 +         self as &dyn ::std::any::Any
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around type
[INFO] [stdout]    --> /opt/rustwide/target/debug/build/kvs/4adebd11eff03b1a/out/command/command.rs:519:42
[INFO] [stdout]     |
[INFO] [stdout] 519 |     fn as_any_mut(&mut self) -> &mut dyn (::std::any::Any) {
[INFO] [stdout]     |                                          ^               ^
[INFO] [stdout]     |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]     |
[INFO] [stdout] 519 -     fn as_any_mut(&mut self) -> &mut dyn (::std::any::Any) {
[INFO] [stdout] 519 +     fn as_any_mut(&mut self) -> &mut dyn ::std::any::Any {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around type
[INFO] [stdout]    --> /opt/rustwide/target/debug/build/kvs/4adebd11eff03b1a/out/command/command.rs:520:26
[INFO] [stdout]     |
[INFO] [stdout] 520 |         self as &mut dyn (::std::any::Any)
[INFO] [stdout]     |                          ^               ^
[INFO] [stdout]     |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]     |
[INFO] [stdout] 520 -         self as &mut dyn (::std::any::Any)
[INFO] [stdout] 520 +         self as &mut dyn ::std::any::Any
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around type
[INFO] [stdout]    --> /opt/rustwide/target/debug/build/kvs/4adebd11eff03b1a/out/command/command.rs:522:73
[INFO] [stdout]     |
[INFO] [stdout] 522 |     fn into_any(self: ::std::boxed::Box<Self>) -> ::std::boxed::Box<dyn (::std::any::Any)> {
[INFO] [stdout]     |                                                                         ^               ^
[INFO] [stdout]     |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]     |
[INFO] [stdout] 522 -     fn into_any(self: ::std::boxed::Box<Self>) -> ::std::boxed::Box<dyn (::std::any::Any)> {
[INFO] [stdout] 522 +     fn into_any(self: ::std::boxed::Box<Self>) -> ::std::boxed::Box<dyn ::std::any::Any> {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around type
[INFO] [stdout]    --> /opt/rustwide/target/debug/build/kvs/4adebd11eff03b1a/out/command/command.rs:675:30
[INFO] [stdout]     |
[INFO] [stdout] 675 |     fn as_any(&self) -> &dyn (::std::any::Any) {
[INFO] [stdout]     |                              ^               ^
[INFO] [stdout]     |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]     |
[INFO] [stdout] 675 -     fn as_any(&self) -> &dyn (::std::any::Any) {
[INFO] [stdout] 675 +     fn as_any(&self) -> &dyn ::std::any::Any {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around type
[INFO] [stdout]    --> /opt/rustwide/target/debug/build/kvs/4adebd11eff03b1a/out/command/command.rs:676:22
[INFO] [stdout]     |
[INFO] [stdout] 676 |         self as &dyn (::std::any::Any)
[INFO] [stdout]     |                      ^               ^
[INFO] [stdout]     |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]     |
[INFO] [stdout] 676 -         self as &dyn (::std::any::Any)
[INFO] [stdout] 676 +         self as &dyn ::std::any::Any
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around type
[INFO] [stdout]    --> /opt/rustwide/target/debug/build/kvs/4adebd11eff03b1a/out/command/command.rs:678:42
[INFO] [stdout]     |
[INFO] [stdout] 678 |     fn as_any_mut(&mut self) -> &mut dyn (::std::any::Any) {
[INFO] [stdout]     |                                          ^               ^
[INFO] [stdout]     |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]     |
[INFO] [stdout] 678 -     fn as_any_mut(&mut self) -> &mut dyn (::std::any::Any) {
[INFO] [stdout] 678 +     fn as_any_mut(&mut self) -> &mut dyn ::std::any::Any {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around type
[INFO] [stdout]    --> /opt/rustwide/target/debug/build/kvs/4adebd11eff03b1a/out/command/command.rs:679:26
[INFO] [stdout]     |
[INFO] [stdout] 679 |         self as &mut dyn (::std::any::Any)
[INFO] [stdout]     |                          ^               ^
[INFO] [stdout]     |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]     |
[INFO] [stdout] 679 -         self as &mut dyn (::std::any::Any)
[INFO] [stdout] 679 +         self as &mut dyn ::std::any::Any
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around type
[INFO] [stdout]    --> /opt/rustwide/target/debug/build/kvs/4adebd11eff03b1a/out/command/command.rs:681:73
[INFO] [stdout]     |
[INFO] [stdout] 681 |     fn into_any(self: ::std::boxed::Box<Self>) -> ::std::boxed::Box<dyn (::std::any::Any)> {
[INFO] [stdout]     |                                                                         ^               ^
[INFO] [stdout]     |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]     |
[INFO] [stdout] 681 -     fn into_any(self: ::std::boxed::Box<Self>) -> ::std::boxed::Box<dyn (::std::any::Any)> {
[INFO] [stdout] 681 +     fn into_any(self: ::std::boxed::Box<Self>) -> ::std::boxed::Box<dyn ::std::any::Any> {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around type
[INFO] [stdout]    --> /opt/rustwide/target/debug/build/kvs/4adebd11eff03b1a/out/command/command.rs:834:30
[INFO] [stdout]     |
[INFO] [stdout] 834 |     fn as_any(&self) -> &dyn (::std::any::Any) {
[INFO] [stdout]     |                              ^               ^
[INFO] [stdout]     |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]     |
[INFO] [stdout] 834 -     fn as_any(&self) -> &dyn (::std::any::Any) {
[INFO] [stdout] 834 +     fn as_any(&self) -> &dyn ::std::any::Any {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around type
[INFO] [stdout]    --> /opt/rustwide/target/debug/build/kvs/4adebd11eff03b1a/out/command/command.rs:835:22
[INFO] [stdout]     |
[INFO] [stdout] 835 |         self as &dyn (::std::any::Any)
[INFO] [stdout]     |                      ^               ^
[INFO] [stdout]     |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]     |
[INFO] [stdout] 835 -         self as &dyn (::std::any::Any)
[INFO] [stdout] 835 +         self as &dyn ::std::any::Any
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around type
[INFO] [stdout]    --> /opt/rustwide/target/debug/build/kvs/4adebd11eff03b1a/out/command/command.rs:837:42
[INFO] [stdout]     |
[INFO] [stdout] 837 |     fn as_any_mut(&mut self) -> &mut dyn (::std::any::Any) {
[INFO] [stdout]     |                                          ^               ^
[INFO] [stdout]     |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]     |
[INFO] [stdout] 837 -     fn as_any_mut(&mut self) -> &mut dyn (::std::any::Any) {
[INFO] [stdout] 837 +     fn as_any_mut(&mut self) -> &mut dyn ::std::any::Any {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around type
[INFO] [stdout]    --> /opt/rustwide/target/debug/build/kvs/4adebd11eff03b1a/out/command/command.rs:838:26
[INFO] [stdout]     |
[INFO] [stdout] 838 |         self as &mut dyn (::std::any::Any)
[INFO] [stdout]     |                          ^               ^
[INFO] [stdout]     |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]     |
[INFO] [stdout] 838 -         self as &mut dyn (::std::any::Any)
[INFO] [stdout] 838 +         self as &mut dyn ::std::any::Any
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around type
[INFO] [stdout]    --> /opt/rustwide/target/debug/build/kvs/4adebd11eff03b1a/out/command/command.rs:840:73
[INFO] [stdout]     |
[INFO] [stdout] 840 |     fn into_any(self: ::std::boxed::Box<Self>) -> ::std::boxed::Box<dyn (::std::any::Any)> {
[INFO] [stdout]     |                                                                         ^               ^
[INFO] [stdout]     |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]     |
[INFO] [stdout] 840 -     fn into_any(self: ::std::boxed::Box<Self>) -> ::std::boxed::Box<dyn (::std::any::Any)> {
[INFO] [stdout] 840 +     fn into_any(self: ::std::boxed::Box<Self>) -> ::std::boxed::Box<dyn ::std::any::Any> {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0053]: method `set` has an incompatible type for trait
[INFO] [stdout]   --> src/engine/kv.rs:78:54
[INFO] [stdout]    |
[INFO] [stdout] 78 |     fn set(&mut self, key: String, value: String) -> Result<(), Box<dyn Error>> {
[INFO] [stdout]    |                                                      ^^^^^^^^^^^^^^^^^^^^^^^^^^ expected `error::Error`, found `Box<(dyn std::error::Error + 'static)>`
[INFO] [stdout]    |
[INFO] [stdout] note: type in trait
[INFO] [stdout]   --> src/engine/mod.rs:10:54
[INFO] [stdout]    |
[INFO] [stdout] 10 |     fn set(&mut self, key: String, value: String) -> Result<()>;
[INFO] [stdout]    |                                                      ^^^^^^^^^^
[INFO] [stdout]    = note: expected signature `fn(&mut KvStore, String, String) -> Result<_, error::Error>`
[INFO] [stdout]               found signature `fn(&mut KvStore, String, String) -> Result<_, Box<(dyn std::error::Error + 'static)>>`
[INFO] [stdout] help: change the output type to match the trait
[INFO] [stdout]    |
[INFO] [stdout] 78 -     fn set(&mut self, key: String, value: String) -> Result<(), Box<dyn Error>> {
[INFO] [stdout] 78 +     fn set(&mut self, key: String, value: String) -> std::result::Result<(), error::Error> {
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0053]: method `get` has an incompatible type for trait
[INFO] [stdout]   --> src/engine/kv.rs:85:39
[INFO] [stdout]    |
[INFO] [stdout] 85 |     fn get(&mut self, key: String) -> Result<Option<String>, Box<dyn Error>> {
[INFO] [stdout]    |                                       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ expected `error::Error`, found `Box<(dyn std::error::Error + 'static)>`
[INFO] [stdout]    |
[INFO] [stdout] note: type in trait
[INFO] [stdout]   --> src/engine/mod.rs:12:39
[INFO] [stdout]    |
[INFO] [stdout] 12 |     fn get(&mut self, key: String) -> Result<Option<String>>;
[INFO] [stdout]    |                                       ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    = note: expected signature `fn(&mut KvStore, String) -> Result<_, error::Error>`
[INFO] [stdout]               found signature `fn(&mut KvStore, String) -> Result<_, Box<(dyn std::error::Error + 'static)>>`
[INFO] [stdout] help: change the output type to match the trait
[INFO] [stdout]    |
[INFO] [stdout] 85 -     fn get(&mut self, key: String) -> Result<Option<String>, Box<dyn Error>> {
[INFO] [stdout] 85 +     fn get(&mut self, key: String) -> std::result::Result<std::option::Option<std::string::String>, error::Error> {
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0053]: method `remove` has an incompatible type for trait
[INFO] [stdout]   --> src/engine/kv.rs:89:42
[INFO] [stdout]    |
[INFO] [stdout] 89 |     fn remove(&mut self, key: String) -> Result<(), Box<dyn Error>> {
[INFO] [stdout]    |                                          ^^^^^^^^^^^^^^^^^^^^^^^^^^ expected `error::Error`, found `Box<(dyn std::error::Error + 'static)>`
[INFO] [stdout]    |
[INFO] [stdout] note: type in trait
[INFO] [stdout]   --> src/engine/mod.rs:14:42
[INFO] [stdout]    |
[INFO] [stdout] 14 |     fn remove(&mut self, key: String) -> Result<()>;
[INFO] [stdout]    |                                          ^^^^^^^^^^
[INFO] [stdout]    = note: expected signature `fn(&mut KvStore, String) -> Result<_, error::Error>`
[INFO] [stdout]               found signature `fn(&mut KvStore, String) -> Result<_, Box<(dyn std::error::Error + 'static)>>`
[INFO] [stdout] help: change the output type to match the trait
[INFO] [stdout]    |
[INFO] [stdout] 89 -     fn remove(&mut self, key: String) -> Result<(), Box<dyn Error>> {
[INFO] [stdout] 89 +     fn remove(&mut self, key: String) -> std::result::Result<(), error::Error> {
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: `?` couldn't convert the error: `OsString: std::error::Error` is not satisfied
[INFO] [stdout]   --> src/engine/kv.rs:29:60
[INFO] [stdout]    |
[INFO] [stdout] 29 |             let file_name = entry.file_name().into_string()?;
[INFO] [stdout]    |                                               -------------^ the trait `std::error::Error` is not implemented for `OsString`
[INFO] [stdout]    |                                               |
[INFO] [stdout]    |                                               this has type `Result<_, OsString>`
[INFO] [stdout]    |
[INFO] [stdout]    = note: the question mark operation (`?`) implicitly performs a conversion on the error value using the `From` trait
[INFO] [stdout]    = note: required for `Box<dyn std::error::Error>` to implement `From<OsString>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Checking criterion v0.2.11
[INFO] [stdout] error[E0277]: the trait bound `std::string::String: Borrow<&str>` is not satisfied
[INFO] [stdout]   --> src/engine/kv.rs:67:49
[INFO] [stdout]    |
[INFO] [stdout] 67 |                         self.memory_date.remove(key);
[INFO] [stdout]    |                                          ------ ^^^ the trait `Borrow<&str>` is not implemented for `std::string::String`
[INFO] [stdout]    |                                          |
[INFO] [stdout]    |                                          required by a bound introduced by this call
[INFO] [stdout]    |
[INFO] [stdout] help: the trait `Borrow<&_>` is not implemented for `std::string::String`
[INFO] [stdout]       but trait `Borrow<_>` is implemented for it
[INFO] [stdout]   --> /rustc/f1c52bf13c990fc425c542cc90a0396a87db24ba/library/alloc/src/str.rs:239:0
[INFO] [stdout]    = help: for that trait implementation, expected `str`, found `&str`
[INFO] [stdout] note: required by a bound in `HashMap::<K, V, S, A>::remove`
[INFO] [stdout]   --> /rustc/f1c52bf13c990fc425c542cc90a0396a87db24ba/library/std/src/collections/hash/map.rs:1390:4
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `key`
[INFO] [stdout]  --> src/engine/sled.rs:7:23
[INFO] [stdout]   |
[INFO] [stdout] 7 |     fn set(&mut self, key: String, value: String) -> Result<()> {
[INFO] [stdout]   |                       ^^^ help: if this is intentional, prefix it with an underscore: `_key`
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `value`
[INFO] [stdout]  --> src/engine/sled.rs:7:36
[INFO] [stdout]   |
[INFO] [stdout] 7 |     fn set(&mut self, key: String, value: String) -> Result<()> {
[INFO] [stdout]   |                                    ^^^^^ help: if this is intentional, prefix it with an underscore: `_value`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `key`
[INFO] [stdout]   --> src/engine/sled.rs:11:23
[INFO] [stdout]    |
[INFO] [stdout] 11 |     fn get(&mut self, key: String) -> Result<Option<String>> {
[INFO] [stdout]    |                       ^^^ help: if this is intentional, prefix it with an underscore: `_key`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `key`
[INFO] [stdout]   --> src/engine/sled.rs:15:26
[INFO] [stdout]    |
[INFO] [stdout] 15 |     fn remove(&mut self, key: String) -> Result<()> {
[INFO] [stdout]    |                          ^^^ help: if this is intentional, prefix it with an underscore: `_key`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0596]: cannot borrow `path` as mutable, as it is not declared as mutable
[INFO] [stdout]   --> src/engine/kv.rs:44:11
[INFO] [stdout]    |
[INFO] [stdout] 44 |           path.push(format!("kv-{}", number));
[INFO] [stdout]    |           ^^^^ cannot borrow as mutable
[INFO] [stdout]    |
[INFO] [stdout] help: consider changing this to be mutable
[INFO] [stdout]    |
[INFO] [stdout] 43 |           let mut path = PathBuf::from(path);
[INFO] [stdout]    |               +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `key`
[INFO] [stdout]   --> src/engine/kv.rs:85:23
[INFO] [stdout]    |
[INFO] [stdout] 85 |     fn get(&mut self, key: String) -> Result<Option<String>, Box<dyn Error>> {
[INFO] [stdout]    |                       ^^^ help: if this is intentional, prefix it with an underscore: `_key`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `key`
[INFO] [stdout]   --> src/engine/kv.rs:89:26
[INFO] [stdout]    |
[INFO] [stdout] 89 |     fn remove(&mut self, key: String) -> Result<(), Box<dyn Error>> {
[INFO] [stdout]    |                          ^^^ help: if this is intentional, prefix it with an underscore: `_key`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] Some errors have detailed explanations: E0053, E0277, E0596.
[INFO] [stdout] 
[INFO] [stdout] For more information about an error, try `rustc --explain E0053`.
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `kvs` (lib) due to 6 previous errors; 32 warnings emitted
[INFO] [stderr] warning: build failed, waiting for other jobs to finish...
[INFO] running `Command { std: "docker" "inspect" "c4fb34667507e0a0693c977ca8c8b5354cf476437b8ed98f95edc5163e093e89", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "c4fb34667507e0a0693c977ca8c8b5354cf476437b8ed98f95edc5163e093e89", kill_on_drop: false }`
[INFO] [stdout] c4fb34667507e0a0693c977ca8c8b5354cf476437b8ed98f95edc5163e093e89
