[INFO] cloning repository https://github.com/dopeter/rust-concept
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/dopeter/rust-concept" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fdopeter%2Frust-concept", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fdopeter%2Frust-concept'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] 217f1eb7b2076a94aef1e04a1fab896cfb0ee45b
[INFO] checking dopeter/rust-concept against 79c0559184f27f4433a6fbc260b950d06d4a4889 for pr-162233-crater-rollup
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fdopeter%2Frust-concept" "/workspace/builds/worker-1-tc2/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-1-tc2/source'...
[INFO] [stderr] done.
[INFO] started tweaking git repo https://github.com/dopeter/rust-concept
[INFO] finished tweaking git repo https://github.com/dopeter/rust-concept
[INFO] tweaked toml for git repo https://github.com/dopeter/rust-concept written to /workspace/builds/worker-1-tc2/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/dopeter/rust-concept on toolchain 79c0559184f27f4433a6fbc260b950d06d4a4889
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+79c0559184f27f4433a6fbc260b950d06d4a4889" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate git repo https://github.com/dopeter/rust-concept 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" "+79c0559184f27f4433a6fbc260b950d06d4a4889" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Blocking waiting for file lock on package cache
[INFO] [stderr]     Updating crates.io index
[INFO] [stderr]     Blocking waiting for file lock on package cache
[ERROR] error running command: no output for 300 seconds
[INFO] checking dopeter/rust-concept against 79c0559184f27f4433a6fbc260b950d06d4a4889 for pr-162233-crater-rollup
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fdopeter%2Frust-concept" "/workspace/builds/worker-1-tc2/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-1-tc2/source'...
[INFO] [stderr] done.
[INFO] started tweaking git repo https://github.com/dopeter/rust-concept
[INFO] finished tweaking git repo https://github.com/dopeter/rust-concept
[INFO] tweaked toml for git repo https://github.com/dopeter/rust-concept written to /workspace/builds/worker-1-tc2/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/dopeter/rust-concept on toolchain 79c0559184f27f4433a6fbc260b950d06d4a4889
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+79c0559184f27f4433a6fbc260b950d06d4a4889" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate git repo https://github.com/dopeter/rust-concept 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" "+79c0559184f27f4433a6fbc260b950d06d4a4889" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Blocking waiting for file lock on package cache
[INFO] [stderr]     Blocking waiting for file lock on package cache
[INFO] [stderr]  Downloading crates ...
[INFO] [stderr]   Downloaded serde_json v1.0.67
[INFO] [stderr]   Downloaded futures-core v0.3.16
[INFO] [stderr]   Downloaded serde_ignored v0.1.2
[INFO] [stderr]   Downloaded slab v0.4.3
[INFO] [stderr]   Downloaded futures-task v0.3.16
[INFO] [stderr]   Downloaded futures-macro v0.3.16
[INFO] [stderr]   Downloaded memoffset v0.6.4
[INFO] [stderr]   Downloaded futures-io v0.3.16
[INFO] [stderr]   Downloaded futures-sink v0.3.16
[INFO] [stderr]   Downloaded crossbeam v0.8.1
[INFO] [stderr]   Downloaded semver-parser v0.10.2
[INFO] [stderr]   Downloaded futures-channel v0.3.16
[INFO] [stderr]   Downloaded futures-executor v0.3.16
[INFO] [stderr]   Downloaded futures v0.3.16
[INFO] [stderr]   Downloaded crossbeam-epoch v0.9.5
[INFO] [stderr]   Downloaded derive_more v0.99.16
[INFO] [stderr]   Downloaded memchr v2.4.0
[INFO] [stderr]   Downloaded futures-util v0.3.16
[INFO] [stderr]   Downloaded futures v0.1.31
[INFO] [stderr]   Downloaded syn v1.0.74
[INFO] [stderr]   Downloaded libc v0.2.98
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-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:8683fc1fc2eb5c9ac98e0d076ab094b2ffac7f99da555d2b6a2e27f346de2ec7" "sleep" "infinity", kill_on_drop: false }`
[INFO] [stdout] c94b5bb5310b537ead679a4a5d7c4e70d1535322a7df14b63c30d4fc75ebc99a
[INFO] running `Command { std: "docker" "start" "c94b5bb5310b537ead679a4a5d7c4e70d1535322a7df14b63c30d4fc75ebc99a", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "c94b5bb5310b537ead679a4a5d7c4e70d1535322a7df14b63c30d4fc75ebc99a", 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" "c94b5bb5310b537ead679a4a5d7c4e70d1535322a7df14b63c30d4fc75ebc99a" "/opt/rustwide/cargo-home/bin/cargo" "+79c0559184f27f4433a6fbc260b950d06d4a4889" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "c94b5bb5310b537ead679a4a5d7c4e70d1535322a7df14b63c30d4fc75ebc99a", 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" "c94b5bb5310b537ead679a4a5d7c4e70d1535322a7df14b63c30d4fc75ebc99a" "/opt/rustwide/cargo-home/bin/cargo" "+79c0559184f27f4433a6fbc260b950d06d4a4889" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stderr]    Compiling proc-macro2 v1.0.28
[INFO] [stderr]    Compiling syn v1.0.74
[INFO] [stderr]    Compiling crossbeam-utils v0.8.5
[INFO] [stderr]    Compiling futures-core v0.3.16
[INFO] [stderr]    Compiling memoffset v0.6.4
[INFO] [stderr]    Compiling futures-macro v0.3.16
[INFO] [stderr]    Compiling futures-task v0.3.16
[INFO] [stderr]    Compiling memchr v2.4.0
[INFO] [stderr]    Compiling serde_derive v1.0.130
[INFO] [stderr]    Compiling futures-channel v0.3.16
[INFO] [stderr]    Compiling libc v0.2.98
[INFO] [stderr]    Compiling futures-util v0.3.16
[INFO] [stderr]    Compiling serde v1.0.130
[INFO] [stderr]    Compiling crossbeam-epoch v0.9.5
[INFO] [stderr]     Checking futures-sink v0.3.16
[INFO] [stderr]     Checking scopeguard v1.1.0
[INFO] [stderr]     Checking slab v0.4.3
[INFO] [stderr]    Compiling crossbeam-queue v0.3.2
[INFO] [stderr]     Checking futures v0.1.31
[INFO] [stderr]    Compiling ryu v1.0.5
[INFO] [stderr]     Checking futures-io v0.3.16
[INFO] [stderr]    Compiling serde_json v1.0.67
[INFO] [stderr]    Compiling convert_case v0.4.0
[INFO] [stderr]     Checking itoa v0.4.8
[INFO] [stderr]     Checking crossbeam-channel v0.5.1
[INFO] [stderr]     Checking crossbeam-deque v0.8.0
[INFO] [stderr]    Compiling quote v1.0.9
[INFO] [stderr]     Checking num_cpus v1.13.0
[INFO] [stderr]     Checking crossbeam v0.8.1
[INFO] [stderr]    Compiling derive_more v0.99.16
[INFO] [stderr]     Checking futures-executor v0.3.16
[INFO] [stderr]     Checking futures v0.3.16
[INFO] [stderr]     Checking serde_ignored v0.1.2
[INFO] [stderr]     Checking rust-concept v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unused imports: `BorrowMut` and `Borrow`
[INFO] [stdout]  --> src/tikv_batch/batch.rs:3:24
[INFO] [stdout]   |
[INFO] [stdout] 3 | use std::borrow::{Cow, Borrow, BorrowMut};
[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: `Receiver` and `Sender`
[INFO] [stdout]  --> src/tikv_batch/batch.rs:4:31
[INFO] [stdout]   |
[INFO] [stdout] 4 | use crate::tikv_batch::mpsc::{Sender, LooseBoundedSender, Receiver};
[INFO] [stdout]   |                               ^^^^^^                      ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::ops::Deref`
[INFO] [stdout]  --> src/tikv_batch/batch.rs:8:5
[INFO] [stdout]   |
[INFO] [stdout] 8 | use std::ops::Deref;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `SendError`
[INFO] [stdout]   --> src/tikv_batch/batch.rs:10:32
[INFO] [stdout]    |
[INFO] [stdout] 10 | use crossbeam::channel::{self, SendError};
[INFO] [stdout]    |                                ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Mutex`
[INFO] [stdout]   --> src/tikv_batch/batch.rs:13:22
[INFO] [stdout]    |
[INFO] [stdout] 13 | use std::sync::{Arc, Mutex};
[INFO] [stdout]    |                      ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::collections::HashMap`
[INFO] [stdout]   --> src/tikv_batch/batch.rs:15:5
[INFO] [stdout]    |
[INFO] [stdout] 15 | use std::collections::HashMap;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `RecvError`, `RecvTimeoutError`, `TryRecvError`, and `self`
[INFO] [stdout]  --> src/tikv_batch/mailbox.rs:6:5
[INFO] [stdout]   |
[INFO] [stdout] 6 |     self, RecvError, RecvTimeoutError, SendError, TryRecvError, TrySendError,
[INFO] [stdout]   |     ^^^^  ^^^^^^^^^  ^^^^^^^^^^^^^^^^             ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `AtomicUsize`
[INFO] [stdout]  --> src/tikv_batch/mpsc/mod.rs:4:25
[INFO] [stdout]   |
[INFO] [stdout] 4 | use std::sync::atomic::{AtomicUsize, AtomicBool, Ordering, AtomicIsize};
[INFO] [stdout]   |                         ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `super::*`
[INFO] [stdout]    --> src/tikv_batch/util/lru.rs:351:9
[INFO] [stdout]     |
[INFO] [stdout] 351 |     use super::*;
[INFO] [stdout]     |         ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Builder`, `HandleMetrics`, `Handler`, `Message`, and `Runner`
[INFO] [stdout]  --> src/tikv_batch/test_batch.rs:1:38
[INFO] [stdout]   |
[INFO] [stdout] 1 | use crate::tikv_batch::test_runner::{Runner, Builder, HandleMetrics, Message, Handler};
[INFO] [stdout]   |                                      ^^^^^^  ^^^^^^^  ^^^^^^^^^^^^^  ^^^^^^^  ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `PollHandler` and `create_system`
[INFO] [stdout]  --> src/tikv_batch/test_batch.rs:2:32
[INFO] [stdout]   |
[INFO] [stdout] 2 | use crate::tikv_batch::batch::{create_system, PollHandler};
[INFO] [stdout]   |                                ^^^^^^^^^^^^^  ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::tikv_batch::config::Config`
[INFO] [stdout]  --> src/tikv_batch/test_batch.rs:3:5
[INFO] [stdout]   |
[INFO] [stdout] 3 | use crate::tikv_batch::config::Config;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::tikv_batch::mpsc::unbounded`
[INFO] [stdout]  --> src/tikv_batch/test_batch.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | use crate::tikv_batch::mpsc::unbounded;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::tikv_batch::mailbox::BasicMailbox`
[INFO] [stdout]  --> src/tikv_batch/test_batch.rs:5:5
[INFO] [stdout]   |
[INFO] [stdout] 5 | use crate::tikv_batch::mailbox::BasicMailbox;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::sync::Arc`
[INFO] [stdout]  --> src/tikv_batch/test_batch.rs:6:5
[INFO] [stdout]   |
[INFO] [stdout] 6 | use std::sync::Arc;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::time::Duration`
[INFO] [stdout]  --> src/tikv_batch/test_batch.rs:7:5
[INFO] [stdout]   |
[INFO] [stdout] 7 | use std::time::Duration;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::thread::sleep`
[INFO] [stdout]  --> src/tikv_batch/test_batch.rs:8:5
[INFO] [stdout]   |
[INFO] [stdout] 8 | use std::thread::sleep;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::sync::atomic::AtomicUsize`
[INFO] [stdout]  --> src/tikv_batch/test_batch.rs:9:5
[INFO] [stdout]   |
[INFO] [stdout] 9 | use std::sync::atomic::AtomicUsize;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Fsm` and `Priority`
[INFO] [stdout]   --> src/tikv_batch/test_batch.rs:10:30
[INFO] [stdout]    |
[INFO] [stdout] 10 | use crate::tikv_batch::fsm::{Priority, Fsm};
[INFO] [stdout]    |                              ^^^^^^^^  ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Builder`
[INFO] [stdout]  --> src/tikv_batch/test_route.rs:3:64
[INFO] [stdout]   |
[INFO] [stdout] 3 | use crate::tikv_batch::test_runner::{Message, Handler, Runner, Builder};
[INFO] [stdout]   |                                                                ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::tikv_batch::mpsc::unbounded`
[INFO] [stdout]  --> src/tikv_batch/test_route.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | use crate::tikv_batch::mpsc::unbounded;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::tikv_batch::batch::create_system`
[INFO] [stdout]  --> src/tikv_batch/test_route.rs:5:5
[INFO] [stdout]   |
[INFO] [stdout] 5 | use crate::tikv_batch::batch::create_system;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::tikv_batch::config::Config`
[INFO] [stdout]  --> src/tikv_batch/test_route.rs:6:5
[INFO] [stdout]   |
[INFO] [stdout] 6 | use crate::tikv_batch::config::Config;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `RecvTimeoutError`, `SendError`, `TryRecvError`, and `TrySendError`
[INFO] [stdout]  --> src/tikv_batch/test_route.rs:7:26
[INFO] [stdout]   |
[INFO] [stdout] 7 | use crossbeam::channel::{SendError, TrySendError,TryRecvError,RecvTimeoutError};
[INFO] [stdout]   |                          ^^^^^^^^^  ^^^^^^^^^^^^ ^^^^^^^^^^^^ ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::tikv_batch::mailbox::BasicMailbox`
[INFO] [stdout]  --> src/tikv_batch/test_route.rs:8:5
[INFO] [stdout]   |
[INFO] [stdout] 8 | use crate::tikv_batch::mailbox::BasicMailbox;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::time::Duration`
[INFO] [stdout]  --> src/tikv_batch/test_route.rs:9:5
[INFO] [stdout]   |
[INFO] [stdout] 9 | use std::time::Duration;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `#[macro_use]` import
[INFO] [stdout]  --> src/lib.rs:7:1
[INFO] [stdout]   |
[INFO] [stdout] 7 | #[macro_use]
[INFO] [stdout]   | ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `transfer_owner`
[INFO] [stdout]   --> src/owner/struct_owner.rs:66:38
[INFO] [stdout]    |
[INFO] [stdout] 66 |     use crate::owner::struct_owner::{transfer_owner, test_struct_owner, test_struct_owner_of_ref};
[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: `BorrowMut` and `Borrow`
[INFO] [stdout]  --> src/tikv_batch/batch.rs:3:24
[INFO] [stdout]   |
[INFO] [stdout] 3 | use std::borrow::{Cow, Borrow, BorrowMut};
[INFO] [stdout]   |                        ^^^^^^  ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Receiver` and `Sender`
[INFO] [stdout]  --> src/tikv_batch/batch.rs:4:31
[INFO] [stdout]   |
[INFO] [stdout] 4 | use crate::tikv_batch::mpsc::{Sender, LooseBoundedSender, Receiver};
[INFO] [stdout]   |                               ^^^^^^                      ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::ops::Deref`
[INFO] [stdout]  --> src/tikv_batch/batch.rs:8:5
[INFO] [stdout]   |
[INFO] [stdout] 8 | use std::ops::Deref;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `SendError`
[INFO] [stdout]   --> src/tikv_batch/batch.rs:10:32
[INFO] [stdout]    |
[INFO] [stdout] 10 | use crossbeam::channel::{self, SendError};
[INFO] [stdout]    |                                ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Mutex`
[INFO] [stdout]   --> src/tikv_batch/batch.rs:13:22
[INFO] [stdout]    |
[INFO] [stdout] 13 | use std::sync::{Arc, Mutex};
[INFO] [stdout]    |                      ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::collections::HashMap`
[INFO] [stdout]   --> src/tikv_batch/batch.rs:15:5
[INFO] [stdout]    |
[INFO] [stdout] 15 | use std::collections::HashMap;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `RecvError`, `RecvTimeoutError`, `TryRecvError`, and `self`
[INFO] [stdout]  --> src/tikv_batch/mailbox.rs:6:5
[INFO] [stdout]   |
[INFO] [stdout] 6 |     self, RecvError, RecvTimeoutError, SendError, TryRecvError, TrySendError,
[INFO] [stdout]   |     ^^^^  ^^^^^^^^^  ^^^^^^^^^^^^^^^^             ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `AtomicUsize`
[INFO] [stdout]  --> src/tikv_batch/mpsc/mod.rs:4:25
[INFO] [stdout]   |
[INFO] [stdout] 4 | use std::sync::atomic::{AtomicUsize, AtomicBool, Ordering, AtomicIsize};
[INFO] [stdout]   |                         ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `#[macro_use]` import
[INFO] [stdout]  --> src/lib.rs:7:1
[INFO] [stdout]   |
[INFO] [stdout] 7 | #[macro_use]
[INFO] [stdout]   | ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `main_duration`
[INFO] [stdout]  --> src/thread_shared_obj/thread_test.rs:7:9
[INFO] [stdout]   |
[INFO] [stdout] 7 |     let main_duration = std::time::Duration::from_millis(20000);
[INFO] [stdout]   |         ^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_main_duration`
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `shared_string_obj_clone`
[INFO] [stdout]   --> src/thread_shared_obj/thread_test.rs:10:9
[INFO] [stdout]    |
[INFO] [stdout] 10 |     let shared_string_obj_clone = shared_string_obj.clone();
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_shared_string_obj_clone`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `shared_num_obj`
[INFO] [stdout]   --> src/thread_shared_obj/thread_test.rs:12:9
[INFO] [stdout]    |
[INFO] [stdout] 12 |     let shared_num_obj = SharedNumObj::new(21);
[INFO] [stdout]    |         ^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_shared_num_obj`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `test_num`
[INFO] [stdout]   --> src/thread_shared_obj/thread_test.rs:14:9
[INFO] [stdout]    |
[INFO] [stdout] 14 |     let test_num = 5;
[INFO] [stdout]    |         ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_test_num`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `shared_pointer_obj`
[INFO] [stdout]   --> src/thread_shared_obj/thread_test.rs:17:9
[INFO] [stdout]    |
[INFO] [stdout] 17 |     let shared_pointer_obj = SharedPointerObj::new(num_obj);
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_shared_pointer_obj`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `shared_pointer_obj_2_clone`
[INFO] [stdout]   --> src/thread_shared_obj/thread_test.rs:21:9
[INFO] [stdout]    |
[INFO] [stdout] 21 |     let shared_pointer_obj_2_clone = shared_pointer_obj_2.clone();
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_shared_pointer_obj_2_clone`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/owner/str_owner.rs:18:9
[INFO] [stdout]    |
[INFO] [stdout] 18 |     let mut name_ptr2=&mut name;
[INFO] [stdout]    |         ----^^^^^^^^^
[INFO] [stdout]    |         |
[INFO] [stdout]    |         help: remove this `mut`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `sss`
[INFO] [stdout]   --> src/owner/struct_owner.rs:42:9
[INFO] [stdout]    |
[INFO] [stdout] 42 |     let sss="123";
[INFO] [stdout]    |         ^^^ help: if this is intentional, prefix it with an underscore: `_sss`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `fsm`
[INFO] [stdout]   --> src/tikv_batch/batch.rs:54:53
[INFO] [stdout]    |
[INFO] [stdout] 54 |             Err(channel::SendError(FsmTypes::Normal(fsm))) => {}
[INFO] [stdout]    |                                                     ^^^ help: if this is intentional, prefix it with an underscore: `_fsm`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `fsm`
[INFO] [stdout]   --> src/tikv_batch/batch.rs:98:54
[INFO] [stdout]    |
[INFO] [stdout] 98 |             Err(channel::SendError(FsmTypes::Control(fsm))) => {}
[INFO] [stdout]    |                                                      ^^^ help: if this is intentional, prefix it with an underscore: `_fsm`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `main_duration`
[INFO] [stdout]  --> src/thread_shared_obj/thread_test.rs:7:9
[INFO] [stdout]   |
[INFO] [stdout] 7 |     let main_duration = std::time::Duration::from_millis(20000);
[INFO] [stdout]   |         ^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_main_duration`
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `shared_string_obj_clone`
[INFO] [stdout]   --> src/thread_shared_obj/thread_test.rs:10:9
[INFO] [stdout]    |
[INFO] [stdout] 10 |     let shared_string_obj_clone = shared_string_obj.clone();
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_shared_string_obj_clone`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `shared_num_obj`
[INFO] [stdout]   --> src/thread_shared_obj/thread_test.rs:12:9
[INFO] [stdout]    |
[INFO] [stdout] 12 |     let shared_num_obj = SharedNumObj::new(21);
[INFO] [stdout]    |         ^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_shared_num_obj`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `test_num`
[INFO] [stdout]   --> src/thread_shared_obj/thread_test.rs:14:9
[INFO] [stdout]    |
[INFO] [stdout] 14 |     let test_num = 5;
[INFO] [stdout]    |         ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_test_num`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `shared_pointer_obj`
[INFO] [stdout]   --> src/thread_shared_obj/thread_test.rs:17:9
[INFO] [stdout]    |
[INFO] [stdout] 17 |     let shared_pointer_obj = SharedPointerObj::new(num_obj);
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_shared_pointer_obj`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `shared_pointer_obj_2_clone`
[INFO] [stdout]   --> src/thread_shared_obj/thread_test.rs:21:9
[INFO] [stdout]    |
[INFO] [stdout] 21 |     let shared_pointer_obj_2_clone = shared_pointer_obj_2.clone();
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_shared_pointer_obj_2_clone`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/owner/str_owner.rs:18:9
[INFO] [stdout]    |
[INFO] [stdout] 18 |     let mut name_ptr2=&mut name;
[INFO] [stdout]    |         ----^^^^^^^^^
[INFO] [stdout]    |         |
[INFO] [stdout]    |         help: remove this `mut`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `sss`
[INFO] [stdout]   --> src/owner/struct_owner.rs:42:9
[INFO] [stdout]    |
[INFO] [stdout] 42 |     let sss="123";
[INFO] [stdout]    |         ^^^ help: if this is intentional, prefix it with an underscore: `_sss`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `fsm`
[INFO] [stdout]   --> src/tikv_batch/batch.rs:54:53
[INFO] [stdout]    |
[INFO] [stdout] 54 |             Err(channel::SendError(FsmTypes::Normal(fsm))) => {}
[INFO] [stdout]    |                                                     ^^^ help: if this is intentional, prefix it with an underscore: `_fsm`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `fsm`
[INFO] [stdout]   --> src/tikv_batch/batch.rs:98:54
[INFO] [stdout]    |
[INFO] [stdout] 98 |             Err(channel::SendError(FsmTypes::Control(fsm))) => {}
[INFO] [stdout]    |                                                      ^^^ help: if this is intentional, prefix it with an underscore: `_fsm`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `addr`
[INFO] [stdout]    --> src/tikv_batch/router.rs:256:14
[INFO] [stdout]     |
[INFO] [stdout] 256 |         for (addr,mailbox) in mailboxes.map.drain(){
[INFO] [stdout]     |              ^^^^ help: if this is intentional, prefix it with an underscore: `_addr`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `key`
[INFO] [stdout]    --> src/tikv_batch/util/lru.rs:156:29
[INFO] [stdout]     |
[INFO] [stdout] 156 |     fn on_insert(&mut self, key: &K, value: &V) {
[INFO] [stdout]     |                             ^^^ help: if this is intentional, prefix it with an underscore: `_key`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `value`
[INFO] [stdout]    --> src/tikv_batch/util/lru.rs:156:38
[INFO] [stdout]     |
[INFO] [stdout] 156 |     fn on_insert(&mut self, key: &K, value: &V) {
[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/tikv_batch/util/lru.rs:160:29
[INFO] [stdout]     |
[INFO] [stdout] 160 |     fn on_remove(&mut self, key: &K, value: &V) {
[INFO] [stdout]     |                             ^^^ help: if this is intentional, prefix it with an underscore: `_key`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `value`
[INFO] [stdout]    --> src/tikv_batch/util/lru.rs:160:38
[INFO] [stdout]     |
[INFO] [stdout] 160 |     fn on_remove(&mut self, key: &K, value: &V) {
[INFO] [stdout]     |                                      ^^^^^ help: if this is intentional, prefix it with an underscore: `_value`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/tikv_batch/util/lru.rs:257:21
[INFO] [stdout]     |
[INFO] [stdout] 257 |                 let mut entry = e.get_mut();
[INFO] [stdout]     |                     ----^^^^^
[INFO] [stdout]     |                     |
[INFO] [stdout]     |                     help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `batch_size`
[INFO] [stdout]   --> src/tikv_batch/test_runner.rs:99:25
[INFO] [stdout]    |
[INFO] [stdout] 99 |     fn begin(&mut self, batch_size: usize) {
[INFO] [stdout]    |                         ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_batch_size`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `batch`
[INFO] [stdout]    --> src/tikv_batch/test_runner.rs:113:23
[INFO] [stdout]     |
[INFO] [stdout] 113 |     fn end(&mut self, batch: &mut [Box<Runner>]) {
[INFO] [stdout]     |                       ^^^^^ help: if this is intentional, prefix it with an underscore: `_batch`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `addr`
[INFO] [stdout]    --> src/tikv_batch/router.rs:256:14
[INFO] [stdout]     |
[INFO] [stdout] 256 |         for (addr,mailbox) in mailboxes.map.drain(){
[INFO] [stdout]     |              ^^^^ help: if this is intentional, prefix it with an underscore: `_addr`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `name` is never read
[INFO] [stdout]  --> src/thread_shared_obj/shared_obj.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 3 | pub struct SharedStringObj {
[INFO] [stdout]   |            --------------- field in this struct
[INFO] [stdout] 4 |     name:String
[INFO] [stdout]   |     ^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `SharedStringObj` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout]   = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `age` is never read
[INFO] [stdout]   --> src/thread_shared_obj/shared_obj.rs:29:5
[INFO] [stdout]    |
[INFO] [stdout] 28 | pub struct SharedNumObj{
[INFO] [stdout]    |            ------------ field in this struct
[INFO] [stdout] 29 |     age:u8
[INFO] [stdout]    |     ^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `SharedNumObj` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `pointer` is never read
[INFO] [stdout]   --> src/thread_shared_obj/shared_obj.rs:40:5
[INFO] [stdout]    |
[INFO] [stdout] 39 | pub struct SharedPointerObj{
[INFO] [stdout]    |            ---------------- field in this struct
[INFO] [stdout] 40 |     pointer:SharedNumObj
[INFO] [stdout]    |     ^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `SharedPointerObj` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `pointer` is never read
[INFO] [stdout]   --> src/thread_shared_obj/shared_obj.rs:51:5
[INFO] [stdout]    |
[INFO] [stdout] 50 | pub struct ShardPointerObj2{
[INFO] [stdout]    |            ---------------- field in this struct
[INFO] [stdout] 51 |     pointer:SharedStringObj
[INFO] [stdout]    |     ^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `ShardPointerObj2` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `num1` and `num2` are never read
[INFO] [stdout]   --> src/thread_shared_obj/shared_obj.rs:68:5
[INFO] [stdout]    |
[INFO] [stdout] 67 | pub struct CopyableObj{
[INFO] [stdout]    |            ----------- fields in this struct
[INFO] [stdout] 68 |     num1:i64,
[INFO] [stdout]    |     ^^^^
[INFO] [stdout] 69 |     num2:u64
[INFO] [stdout]    |     ^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `CopyableObj` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `str1` is never read
[INFO] [stdout]   --> src/thread_shared_obj/shared_obj.rs:80:5
[INFO] [stdout]    |
[INFO] [stdout] 79 | pub struct UncopiableObj{
[INFO] [stdout]    |            ------------- field in this struct
[INFO] [stdout] 80 |     str1:String
[INFO] [stdout]    |     ^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `UncopiableObj` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `num_2` is never read
[INFO] [stdout]  --> src/owner/struct_owner.rs:5:5
[INFO] [stdout]   |
[INFO] [stdout] 3 | pub struct OwnerTest{
[INFO] [stdout]   |            --------- field in this struct
[INFO] [stdout] 4 |     num_1:u64,
[INFO] [stdout] 5 |     num_2:u64
[INFO] [stdout]   |     ^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `OwnerTest` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]    --> src/tikv_batch/batch.rs:305:13
[INFO] [stdout]     |
[INFO] [stdout] 305 |     Release(usize),
[INFO] [stdout]     |     ------- ^^^^^
[INFO] [stdout]     |     |
[INFO] [stdout]     |     field in this variant
[INFO] [stdout]     |
[INFO] [stdout] help: consider changing the field to be of unit type to suppress this warning while preserving the field numbering, or remove the field
[INFO] [stdout]     |
[INFO] [stdout] 305 -     Release(usize),
[INFO] [stdout] 305 +     Release(()),
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `priority` is never read
[INFO] [stdout]   --> src/tikv_batch/test_runner.rs:76:5
[INFO] [stdout]    |
[INFO] [stdout] 73 | pub struct Handler{
[INFO] [stdout]    |            ------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 76 |     priority:Priority
[INFO] [stdout]    |     ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `counter_closure` is never used
[INFO] [stdout]   --> src/tikv_batch/test_route.rs:11:4
[INFO] [stdout]    |
[INFO] [stdout] 11 | fn counter_closure(counter: &Arc<AtomicUsize>) -> Message {
[INFO] [stdout]    |    ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `noop` is never used
[INFO] [stdout]   --> src/tikv_batch/test_route.rs:18:4
[INFO] [stdout]    |
[INFO] [stdout] 18 | fn noop() -> Message { Message::Callback(Box::new(|_, _| ())) }
[INFO] [stdout]    |    ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `unreachable` is never used
[INFO] [stdout]   --> src/tikv_batch/test_route.rs:20:4
[INFO] [stdout]    |
[INFO] [stdout] 20 | fn unreachable() -> Message {
[INFO] [stdout]    |    ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `key`
[INFO] [stdout]    --> src/tikv_batch/util/lru.rs:156:29
[INFO] [stdout]     |
[INFO] [stdout] 156 |     fn on_insert(&mut self, key: &K, value: &V) {
[INFO] [stdout]     |                             ^^^ help: if this is intentional, prefix it with an underscore: `_key`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `value`
[INFO] [stdout]    --> src/tikv_batch/util/lru.rs:156:38
[INFO] [stdout]     |
[INFO] [stdout] 156 |     fn on_insert(&mut self, key: &K, value: &V) {
[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/tikv_batch/util/lru.rs:160:29
[INFO] [stdout]     |
[INFO] [stdout] 160 |     fn on_remove(&mut self, key: &K, value: &V) {
[INFO] [stdout]     |                             ^^^ help: if this is intentional, prefix it with an underscore: `_key`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `value`
[INFO] [stdout]    --> src/tikv_batch/util/lru.rs:160:38
[INFO] [stdout]     |
[INFO] [stdout] 160 |     fn on_remove(&mut self, key: &K, value: &V) {
[INFO] [stdout]     |                                      ^^^^^ help: if this is intentional, prefix it with an underscore: `_value`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/tikv_batch/util/lru.rs:257:21
[INFO] [stdout]     |
[INFO] [stdout] 257 |                 let mut entry = e.get_mut();
[INFO] [stdout]     |                     ----^^^^^
[INFO] [stdout]     |                     |
[INFO] [stdout]     |                     help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused return value of `Box::<T>::from_raw` that must be used
[INFO] [stdout]    --> src/tikv_batch/fsm.rs:115:28
[INFO] [stdout]     |
[INFO] [stdout] 115 |                     unsafe{Box::from_raw(ptr)};
[INFO] [stdout]     |                            ^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: call `drop(Box::from_raw(ptr))` if you intend to drop the `Box`
[INFO] [stdout]     = note: `#[warn(unused_must_use)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 115 |                     unsafe{let _ = Box::from_raw(ptr);};
[INFO] [stdout]     |                            +++++++                   +
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused return value of `Box::<T>::from_raw` that must be used
[INFO] [stdout]    --> src/tikv_batch/fsm.rs:134:21
[INFO] [stdout]     |
[INFO] [stdout] 134 |             unsafe {Box::from_raw(ptr);}
[INFO] [stdout]     |                     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: call `drop(Box::from_raw(ptr))` if you intend to drop the `Box`
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 134 |             unsafe {let _ = Box::from_raw(ptr);}
[INFO] [stdout]     |                     +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused return value of `Box::<T>::from_raw` that must be used
[INFO] [stdout]    --> src/tikv_batch/fsm.rs:145:21
[INFO] [stdout]     |
[INFO] [stdout] 145 |             unsafe {Box::from_raw(ptr)};
[INFO] [stdout]     |                     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: call `drop(Box::from_raw(ptr))` if you intend to drop the `Box`
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 145 |             unsafe {let _ = Box::from_raw(ptr);};
[INFO] [stdout]     |                     +++++++                   +
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/tikv_batch/util/lru.rs:313:17
[INFO] [stdout]     |
[INFO] [stdout] 313 |     pub fn iter(&self) -> Iter<K, V> {
[INFO] [stdout]     |                 ^^^^^     ^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                 |
[INFO] [stdout]     |                 the lifetime is elided here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout]     = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 313 |     pub fn iter(&self) -> Iter<'_, K, V> {
[INFO] [stdout]     |                                +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `batch_size`
[INFO] [stdout]   --> src/tikv_batch/test_runner.rs:99:25
[INFO] [stdout]    |
[INFO] [stdout] 99 |     fn begin(&mut self, batch_size: usize) {
[INFO] [stdout]    |                         ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_batch_size`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `batch`
[INFO] [stdout]    --> src/tikv_batch/test_runner.rs:113:23
[INFO] [stdout]     |
[INFO] [stdout] 113 |     fn end(&mut self, batch: &mut [Box<Runner>]) {
[INFO] [stdout]     |                       ^^^^^ help: if this is intentional, prefix it with an underscore: `_batch`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `name` is never read
[INFO] [stdout]  --> src/thread_shared_obj/shared_obj.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 3 | pub struct SharedStringObj {
[INFO] [stdout]   |            --------------- field in this struct
[INFO] [stdout] 4 |     name:String
[INFO] [stdout]   |     ^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `SharedStringObj` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout]   = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `age` is never read
[INFO] [stdout]   --> src/thread_shared_obj/shared_obj.rs:29:5
[INFO] [stdout]    |
[INFO] [stdout] 28 | pub struct SharedNumObj{
[INFO] [stdout]    |            ------------ field in this struct
[INFO] [stdout] 29 |     age:u8
[INFO] [stdout]    |     ^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `SharedNumObj` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `pointer` is never read
[INFO] [stdout]   --> src/thread_shared_obj/shared_obj.rs:40:5
[INFO] [stdout]    |
[INFO] [stdout] 39 | pub struct SharedPointerObj{
[INFO] [stdout]    |            ---------------- field in this struct
[INFO] [stdout] 40 |     pointer:SharedNumObj
[INFO] [stdout]    |     ^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `SharedPointerObj` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `pointer` is never read
[INFO] [stdout]   --> src/thread_shared_obj/shared_obj.rs:51:5
[INFO] [stdout]    |
[INFO] [stdout] 50 | pub struct ShardPointerObj2{
[INFO] [stdout]    |            ---------------- field in this struct
[INFO] [stdout] 51 |     pointer:SharedStringObj
[INFO] [stdout]    |     ^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `ShardPointerObj2` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `num1` and `num2` are never read
[INFO] [stdout]   --> src/thread_shared_obj/shared_obj.rs:68:5
[INFO] [stdout]    |
[INFO] [stdout] 67 | pub struct CopyableObj{
[INFO] [stdout]    |            ----------- fields in this struct
[INFO] [stdout] 68 |     num1:i64,
[INFO] [stdout]    |     ^^^^
[INFO] [stdout] 69 |     num2:u64
[INFO] [stdout]    |     ^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `CopyableObj` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `str1` is never read
[INFO] [stdout]   --> src/thread_shared_obj/shared_obj.rs:80:5
[INFO] [stdout]    |
[INFO] [stdout] 79 | pub struct UncopiableObj{
[INFO] [stdout]    |            ------------- field in this struct
[INFO] [stdout] 80 |     str1:String
[INFO] [stdout]    |     ^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `UncopiableObj` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `num_2` is never read
[INFO] [stdout]  --> src/owner/struct_owner.rs:5:5
[INFO] [stdout]   |
[INFO] [stdout] 3 | pub struct OwnerTest{
[INFO] [stdout]   |            --------- field in this struct
[INFO] [stdout] 4 |     num_1:u64,
[INFO] [stdout] 5 |     num_2:u64
[INFO] [stdout]   |     ^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `OwnerTest` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]    --> src/tikv_batch/batch.rs:305:13
[INFO] [stdout]     |
[INFO] [stdout] 305 |     Release(usize),
[INFO] [stdout]     |     ------- ^^^^^
[INFO] [stdout]     |     |
[INFO] [stdout]     |     field in this variant
[INFO] [stdout]     |
[INFO] [stdout] help: consider changing the field to be of unit type to suppress this warning while preserving the field numbering, or remove the field
[INFO] [stdout]     |
[INFO] [stdout] 305 -     Release(usize),
[INFO] [stdout] 305 +     Release(()),
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `priority` is never read
[INFO] [stdout]   --> src/tikv_batch/test_runner.rs:76:5
[INFO] [stdout]    |
[INFO] [stdout] 73 | pub struct Handler{
[INFO] [stdout]    |            ------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 76 |     priority:Priority
[INFO] [stdout]    |     ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused return value of `Box::<T>::from_raw` that must be used
[INFO] [stdout]    --> src/tikv_batch/fsm.rs:115:28
[INFO] [stdout]     |
[INFO] [stdout] 115 |                     unsafe{Box::from_raw(ptr)};
[INFO] [stdout]     |                            ^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: call `drop(Box::from_raw(ptr))` if you intend to drop the `Box`
[INFO] [stdout]     = note: `#[warn(unused_must_use)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 115 |                     unsafe{let _ = Box::from_raw(ptr);};
[INFO] [stdout]     |                            +++++++                   +
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused return value of `Box::<T>::from_raw` that must be used
[INFO] [stdout]    --> src/tikv_batch/fsm.rs:134:21
[INFO] [stdout]     |
[INFO] [stdout] 134 |             unsafe {Box::from_raw(ptr);}
[INFO] [stdout]     |                     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: call `drop(Box::from_raw(ptr))` if you intend to drop the `Box`
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 134 |             unsafe {let _ = Box::from_raw(ptr);}
[INFO] [stdout]     |                     +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused return value of `Box::<T>::from_raw` that must be used
[INFO] [stdout]    --> src/tikv_batch/fsm.rs:145:21
[INFO] [stdout]     |
[INFO] [stdout] 145 |             unsafe {Box::from_raw(ptr)};
[INFO] [stdout]     |                     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: call `drop(Box::from_raw(ptr))` if you intend to drop the `Box`
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 145 |             unsafe {let _ = Box::from_raw(ptr);};
[INFO] [stdout]     |                     +++++++                   +
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/tikv_batch/util/lru.rs:313:17
[INFO] [stdout]     |
[INFO] [stdout] 313 |     pub fn iter(&self) -> Iter<K, V> {
[INFO] [stdout]     |                 ^^^^^     ^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                 |
[INFO] [stdout]     |                 the lifetime is elided here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout]     = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 313 |     pub fn iter(&self) -> Iter<'_, K, V> {
[INFO] [stdout]     |                                +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr] warning: unused dependency `futures`
[INFO] [stderr]   --> Cargo.toml:11:15
[INFO] [stderr]    |
[INFO] [stderr] 11 | [dependencies.futures]
[INFO] [stderr]    |               ^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `cargo::unused_dependencies` is set to `warn` by default
[INFO] [stderr] help: consider removing the dependency on `futures`
[INFO] [stderr] warning: unused dependency `serde_ignored`
[INFO] [stderr]  --> Cargo.toml:5:1
[INFO] [stderr]   |
[INFO] [stderr] 5 | serde_ignored = "0.1"
[INFO] [stderr]   | ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]   |
[INFO] [stderr] help: consider removing the dependency on `serde_ignored`
[INFO] [stderr] warning: unused dependency `serde_json`
[INFO] [stderr]  --> Cargo.toml:6:1
[INFO] [stderr]   |
[INFO] [stderr] 6 | serde_json = "1.0"
[INFO] [stderr]   | ^^^^^^^^^^^^^^^^^^
[INFO] [stderr]   |
[INFO] [stderr] help: consider removing the dependency on `serde_json`
[INFO] [stderr] warning: `rust-concept` (manifest) generated 3 warnings
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 14.27s
[INFO] running `Command { std: "docker" "inspect" "c94b5bb5310b537ead679a4a5d7c4e70d1535322a7df14b63c30d4fc75ebc99a", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "c94b5bb5310b537ead679a4a5d7c4e70d1535322a7df14b63c30d4fc75ebc99a", kill_on_drop: false }`
[INFO] [stdout] c94b5bb5310b537ead679a4a5d7c4e70d1535322a7df14b63c30d4fc75ebc99a
