[INFO] cloning repository https://github.com/yuanpx/sundfs
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/yuanpx/sundfs" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fyuanpx%2Fsundfs", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fyuanpx%2Fsundfs'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] e8a69517e362a53133f1ef553c0ad518e8339c02
[INFO] checking yuanpx/sundfs against master#bca37a20bd376ce3fd138e7cdee7fe704e0f8814 for pr-139493-3
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fyuanpx%2Fsundfs" "/workspace/builds/worker-7-tc1/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-7-tc1/source'...
[INFO] [stderr] done.
[INFO] started tweaking git repo https://github.com/yuanpx/sundfs
[INFO] finished tweaking git repo https://github.com/yuanpx/sundfs
[INFO] tweaked toml for git repo https://github.com/yuanpx/sundfs written to /workspace/builds/worker-7-tc1/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/yuanpx/sundfs on toolchain bca37a20bd376ce3fd138e7cdee7fe704e0f8814
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+bca37a20bd376ce3fd138e7cdee7fe704e0f8814" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate git repo https://github.com/yuanpx/sundfs 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" "+bca37a20bd376ce3fd138e7cdee7fe704e0f8814" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr] warning: no edition set: defaulting to the 2015 edition while the latest is 2024
[INFO] [stderr]  Downloading crates ...
[INFO] [stderr]   Downloaded log v0.3.6
[INFO] [stderr]   Downloaded miow v0.2.0
[INFO] [stderr]   Downloaded net2 v0.2.26
[INFO] [stderr]   Downloaded cfg-if v0.1.0
[INFO] [stderr]   Downloaded lazycell v0.4.0
[INFO] [stderr]   Downloaded libc v0.2.21
[INFO] [stderr]   Downloaded mio v0.6.4
[INFO] [stderr]   Downloaded tokio-core v0.1.4
[INFO] [stderr]   Downloaded futures v0.1.10
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-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:aa71247004a7fa38d13ec170f48f06cdedf5bc50b2a8645e56ed7e992e6fa513" "/opt/rustwide/cargo-home/bin/cargo" "+bca37a20bd376ce3fd138e7cdee7fe704e0f8814" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] 7540bb35af6da40fcf43f71c0a80f8a8b39a237e9567a20b26f193bc6eca8c1e
[INFO] running `Command { std: "docker" "start" "-a" "7540bb35af6da40fcf43f71c0a80f8a8b39a237e9567a20b26f193bc6eca8c1e", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "7540bb35af6da40fcf43f71c0a80f8a8b39a237e9567a20b26f193bc6eca8c1e", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "7540bb35af6da40fcf43f71c0a80f8a8b39a237e9567a20b26f193bc6eca8c1e", kill_on_drop: false }`
[INFO] [stdout] 7540bb35af6da40fcf43f71c0a80f8a8b39a237e9567a20b26f193bc6eca8c1e
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-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:aa71247004a7fa38d13ec170f48f06cdedf5bc50b2a8645e56ed7e992e6fa513" "/opt/rustwide/cargo-home/bin/cargo" "+bca37a20bd376ce3fd138e7cdee7fe704e0f8814" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 9b02f1fe6eb7712adb64d3df3f92f3719adb390412b434f47640e00e75612796
[INFO] running `Command { std: "docker" "start" "-a" "9b02f1fe6eb7712adb64d3df3f92f3719adb390412b434f47640e00e75612796", kill_on_drop: false }`
[INFO] [stderr] warning: no edition set: defaulting to the 2015 edition while the latest is 2024
[INFO] [stderr]     Checking log v0.3.6
[INFO] [stderr]     Checking libc v0.2.21
[INFO] [stderr]     Checking cfg-if v0.1.0
[INFO] [stderr]     Checking slab v0.3.0
[INFO] [stderr]     Checking lazycell v0.4.0
[INFO] [stderr]     Checking scoped-tls v0.1.0
[INFO] [stderr]     Checking futures v0.1.10
[INFO] [stderr]     Checking net2 v0.2.26
[INFO] [stderr]     Checking mio v0.6.4
[INFO] [stderr]     Checking tokio-core v0.1.4
[INFO] [stderr]     Checking sundfs v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unused import: `std::ops::Range`
[INFO] [stdout]  --> src/raft/raft.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | use std::ops::Range;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/storage/dio.rs:57:9
[INFO] [stdout]    |
[INFO] [stdout] 57 |         try!(file.seek(SeekFrom::Start(self.offset)));
[INFO] [stdout]    |         ^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(deprecated)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/storage/dio.rs:52:32
[INFO] [stdout]    |
[INFO] [stdout] 52 |                 let mut file = try!(self.option.open(&self.filename));
[INFO] [stdout]    |                                ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/storage/dio.rs:64:9
[INFO] [stdout]    |
[INFO] [stdout] 64 |         try!(self.open_file());
[INFO] [stdout]    |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/storage/dio.rs:76:20
[INFO] [stdout]    |
[INFO] [stdout] 76 |             size = try!(file.read(buf));
[INFO] [stdout]    |                    ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/storage/dio.rs:87:13
[INFO] [stdout]    |
[INFO] [stdout] 87 |             try!(self.open_file())
[INFO] [stdout]    |             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/storage/dio.rs:93:20
[INFO] [stdout]    |
[INFO] [stdout] 93 |             size = try!(file.write(buf));
[INFO] [stdout]    |                    ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/storage/dio.rs:106:13
[INFO] [stdout]     |
[INFO] [stdout] 106 |             try!(self.open_file());
[INFO] [stdout]     |             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/storage/dio.rs:110:13
[INFO] [stdout]     |
[INFO] [stdout] 110 |             try!(file.set_len(self.offset));
[INFO] [stdout]     |             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::env`
[INFO] [stdout]  --> src/storage/nio.rs:5:5
[INFO] [stdout]   |
[INFO] [stdout] 5 | use std::env;
[INFO] [stdout]   |     ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `self::tokio_core::reactor::Interval`
[INFO] [stdout]   --> src/storage/nio.rs:19:5
[INFO] [stdout]    |
[INFO] [stdout] 19 | use self::tokio_core::reactor::Interval;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `CANCEL_TIMEOUT` should have an upper camel case name
[INFO] [stdout]   --> src/storage/nio.rs:35:5
[INFO] [stdout]    |
[INFO] [stdout] 35 |     CANCEL_TIMEOUT(usize),
[INFO] [stdout]    |     ^^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `CancelTimeout`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(non_camel_case_types)]` (part of `#[warn(nonstandard_style)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/storage/nio.rs:51:24
[INFO] [stdout]    |
[INFO] [stdout] 51 |         let mut core = try!(Core::new());
[INFO] [stdout]    |                        ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/storage/nio.rs:153:28
[INFO] [stdout]     |
[INFO] [stdout] 153 |         let mut listener = try!(TcpListener::bind(address, &handle));
[INFO] [stdout]     |                            ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::collections::HashMap`
[INFO] [stdout]  --> src/storage/logic.rs:2:5
[INFO] [stdout]   |
[INFO] [stdout] 2 | use std::collections::HashMap;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::rc::Rc`
[INFO] [stdout]  --> src/storage/logic.rs:3:5
[INFO] [stdout]   |
[INFO] [stdout] 3 | use std::rc::Rc;
[INFO] [stdout]   |     ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::iter`
[INFO] [stdout]  --> src/storage/logic.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | use std::iter;
[INFO] [stdout]   |     ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::env`
[INFO] [stdout]  --> src/storage/logic.rs:5:5
[INFO] [stdout]   |
[INFO] [stdout] 5 | use std::env;
[INFO] [stdout]   |     ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `ErrorKind` and `Error`
[INFO] [stdout]  --> src/storage/logic.rs:8:15
[INFO] [stdout]   |
[INFO] [stdout] 8 | use std::io::{Error, ErrorKind};
[INFO] [stdout]   |               ^^^^^  ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::time::Duration`
[INFO] [stdout]  --> src/storage/logic.rs:9:5
[INFO] [stdout]   |
[INFO] [stdout] 9 | use std::time::Duration;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::cell::RefCell`
[INFO] [stdout]   --> src/storage/logic.rs:11:5
[INFO] [stdout]    |
[INFO] [stdout] 11 | use std::cell::RefCell;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::cell::Cell`
[INFO] [stdout]   --> src/storage/logic.rs:12:5
[INFO] [stdout]    |
[INFO] [stdout] 12 | use std::cell::Cell;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `self::tokio_core::net::TcpListener`
[INFO] [stdout]   --> src/storage/logic.rs:14:5
[INFO] [stdout]    |
[INFO] [stdout] 14 | use self::tokio_core::net::TcpListener;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `self::tokio_core::net::TcpStream`
[INFO] [stdout]   --> src/storage/logic.rs:15:5
[INFO] [stdout]    |
[INFO] [stdout] 15 | use self::tokio_core::net::TcpStream;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `self::tokio_core::reactor::Timeout`
[INFO] [stdout]   --> src/storage/logic.rs:17:5
[INFO] [stdout]    |
[INFO] [stdout] 17 | use self::tokio_core::reactor::Timeout;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `self::tokio_core::reactor::Interval`
[INFO] [stdout]   --> src/storage/logic.rs:18:5
[INFO] [stdout]    |
[INFO] [stdout] 18 | use self::tokio_core::reactor::Interval;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `self::tokio_core::reactor::Handle`
[INFO] [stdout]   --> src/storage/logic.rs:19:5
[INFO] [stdout]    |
[INFO] [stdout] 19 | use self::tokio_core::reactor::Handle;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `self::tokio_core::io`
[INFO] [stdout]   --> src/storage/logic.rs:20:5
[INFO] [stdout]    |
[INFO] [stdout] 20 | use self::tokio_core::io;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `self::tokio_core::io::Io`
[INFO] [stdout]   --> src/storage/logic.rs:21:5
[INFO] [stdout]    |
[INFO] [stdout] 21 | use self::tokio_core::io::Io;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `self::futures::stream`
[INFO] [stdout]   --> src/storage/logic.rs:22:5
[INFO] [stdout]    |
[INFO] [stdout] 22 | use self::futures::stream;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `self::futures::sync::mpsc::UnboundedReceiver`
[INFO] [stdout]   --> src/storage/logic.rs:26:5
[INFO] [stdout]    |
[INFO] [stdout] 26 | use self::futures::sync::mpsc::UnboundedReceiver;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `self::futures::sync::mpsc`
[INFO] [stdout]   --> src/storage/logic.rs:27:5
[INFO] [stdout]    |
[INFO] [stdout] 27 | use self::futures::sync::mpsc;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `NetService`
[INFO] [stdout]  --> src/main.rs:4:20
[INFO] [stdout]   |
[INFO] [stdout] 4 | use storage::nio::{NetService, NetEvent};
[INFO] [stdout]   |                    ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `service`
[INFO] [stdout]   --> src/raft/raft.rs:73:32
[INFO] [stdout]    |
[INFO] [stdout] 73 |     fn process_init(&mut self, service: &mut Service) {
[INFO] [stdout]    |                                ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_service`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `event`
[INFO] [stdout]   --> src/raft/raft.rs:78:34
[INFO] [stdout]    |
[INFO] [stdout] 78 |             NetEvent::CONNECTED((event,id)) => {
[INFO] [stdout]    |                                  ^^^^^ help: if this is intentional, prefix it with an underscore: `_event`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `event`
[INFO] [stdout]   --> src/raft/raft.rs:81:37
[INFO] [stdout]    |
[INFO] [stdout] 81 |             NetEvent::DISCONNECTED((event,id))=> {
[INFO] [stdout]    |                                     ^^^^^ help: if this is intentional, prefix it with an underscore: `_event`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `buf`
[INFO] [stdout]   --> src/raft/raft.rs:85:36
[INFO] [stdout]    |
[INFO] [stdout] 85 |             NetEvent::MESSAGE((id, buf)) => {
[INFO] [stdout]    |                                    ^^^ help: if this is intentional, prefix it with an underscore: `_buf`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `service`
[INFO] [stdout]    --> src/raft/raft.rs:152:57
[INFO] [stdout]     |
[INFO] [stdout] 152 |     fn process_candidate_requestvote_timeout(&mut self, service: &mut Service) {
[INFO] [stdout]     |                                                         ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_service`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `entry`
[INFO] [stdout]    --> src/raft/raft.rs:163:41
[INFO] [stdout]     |
[INFO] [stdout] 163 |     fn process_appendentries(&mut self, entry: AppendEntry) {
[INFO] [stdout]     |                                         ^^^^^ help: if this is intentional, prefix it with an underscore: `_entry`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `request`
[INFO] [stdout]    --> src/raft/raft.rs:171:39
[INFO] [stdout]     |
[INFO] [stdout] 171 |     fn process_requestvote(&mut self, request: RequestVote) {
[INFO] [stdout]     |                                       ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_request`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/storage/dio.rs:52:21
[INFO] [stdout]    |
[INFO] [stdout] 52 |                 let mut file = try!(self.option.open(&self.filename));
[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: variable does not need to be mutable
[INFO] [stdout]   --> src/storage/dio.rs:65:13
[INFO] [stdout]    |
[INFO] [stdout] 65 |         let mut remain_bytes = self.end - self.offset;
[INFO] [stdout]    |             ----^^^^^^^^^^^^
[INFO] [stdout]    |             |
[INFO] [stdout]    |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/storage/dio.rs:67:13
[INFO] [stdout]    |
[INFO] [stdout] 67 |         let mut capacity_bytes = buf.len(); 
[INFO] [stdout]    |             ----^^^^^^^^^^^^^^
[INFO] [stdout]    |             |
[INFO] [stdout]    |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `read_bytes`
[INFO] [stdout]   --> src/storage/dio.rs:70:17
[INFO] [stdout]    |
[INFO] [stdout] 70 |             let read_bytes = if capacity_bytes < remain_bytes as usize {
[INFO] [stdout]    |                 ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_read_bytes`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `size` is never read
[INFO] [stdout]   --> src/storage/dio.rs:66:31
[INFO] [stdout]    |
[INFO] [stdout] 66 |         let mut size: usize = 0;
[INFO] [stdout]    |                               ^
[INFO] [stdout]    |
[INFO] [stdout]    = help: maybe it is overwritten before being read?
[INFO] [stdout]    = note: `#[warn(unused_assignments)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `size` is never read
[INFO] [stdout]   --> src/storage/dio.rs:90:31
[INFO] [stdout]    |
[INFO] [stdout] 90 |         let mut size: usize = 0;
[INFO] [stdout]    |                               ^
[INFO] [stdout]    |
[INFO] [stdout]    = help: maybe it is overwritten before being read?
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/storage/nio.rs:51:13
[INFO] [stdout]    |
[INFO] [stdout] 51 |         let mut core = try!(Core::new());
[INFO] [stdout]    |             ----^^^^
[INFO] [stdout]    |             |
[INFO] [stdout]    |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `core`
[INFO] [stdout]   --> src/storage/nio.rs:51:13
[INFO] [stdout]    |
[INFO] [stdout] 51 |         let mut core = try!(Core::new());
[INFO] [stdout]    |             ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_core`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/storage/nio.rs:98:21
[INFO] [stdout]    |
[INFO] [stdout] 98 |                 let mut body_vec = vec![0; body_len];
[INFO] [stdout]    |                     ----^^^^^^^^
[INFO] [stdout]    |                     |
[INFO] [stdout]    |                     help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/storage/nio.rs:84:13
[INFO] [stdout]    |
[INFO] [stdout] 84 |         let mut header_vec: Vec<u8> = vec![0;1];
[INFO] [stdout]    |             ----^^^^^^^^^^
[INFO] [stdout]    |             |
[INFO] [stdout]    |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/storage/nio.rs:153:13
[INFO] [stdout]     |
[INFO] [stdout] 153 |         let mut listener = try!(TcpListener::bind(address, &handle));
[INFO] [stdout]     |             ----^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/storage/logic.rs:69:13
[INFO] [stdout]    |
[INFO] [stdout] 69 |         let mut net_service = NetService::new().unwrap();
[INFO] [stdout]    |             ----^^^^^^^^^^^
[INFO] [stdout]    |             |
[INFO] [stdout]    |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `service`
[INFO] [stdout]   --> src/main.rs:19:33
[INFO] [stdout]    |
[INFO] [stdout] 19 |     fn process_event(&mut self, service: &mut Service, ev: NetEvent) {
[INFO] [stdout]    |                                 ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_service`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `event`
[INFO] [stdout]   --> src/main.rs:21:34
[INFO] [stdout]    |
[INFO] [stdout] 21 |             NetEvent::CONNECTED((event,id)) => {
[INFO] [stdout]    |                                  ^^^^^ help: if this is intentional, prefix it with an underscore: `_event`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `event`
[INFO] [stdout]   --> src/main.rs:24:37
[INFO] [stdout]    |
[INFO] [stdout] 24 |             NetEvent::DISCONNECTED((event,id))=> {
[INFO] [stdout]    |                                     ^^^^^ help: if this is intentional, prefix it with an underscore: `_event`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `buf`
[INFO] [stdout]   --> src/main.rs:28:36
[INFO] [stdout]    |
[INFO] [stdout] 28 |             NetEvent::MESSAGE((id, buf)) => {
[INFO] [stdout]    |                                    ^^^ help: if this is intentional, prefix it with an underscore: `_buf`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `Role` is never used
[INFO] [stdout]  --> src/raft/raft.rs:9:6
[INFO] [stdout]   |
[INFO] [stdout] 9 | enum Role {
[INFO] [stdout]   |      ^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `Phase` is never used
[INFO] [stdout]   --> src/raft/raft.rs:15:6
[INFO] [stdout]    |
[INFO] [stdout] 15 | enum Phase {
[INFO] [stdout]    |      ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Node` is never constructed
[INFO] [stdout]   --> src/raft/raft.rs:19:8
[INFO] [stdout]    |
[INFO] [stdout] 19 | struct Node {
[INFO] [stdout]    |        ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Config` is never constructed
[INFO] [stdout]   --> src/raft/raft.rs:25:8
[INFO] [stdout]    |
[INFO] [stdout] 25 | struct Config {
[INFO] [stdout]    |        ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Raft` is never constructed
[INFO] [stdout]   --> src/raft/raft.rs:34:8
[INFO] [stdout]    |
[INFO] [stdout] 34 | struct Raft {
[INFO] [stdout]    |        ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `Log` is never used
[INFO] [stdout]   --> src/raft/raft.rs:45:6
[INFO] [stdout]    |
[INFO] [stdout] 45 | enum Log {
[INFO] [stdout]    |      ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `Message` is never used
[INFO] [stdout]   --> src/raft/raft.rs:49:6
[INFO] [stdout]    |
[INFO] [stdout] 49 | enum Message {
[INFO] [stdout]    |      ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `RequestVote` is never constructed
[INFO] [stdout]   --> src/raft/raft.rs:55:8
[INFO] [stdout]    |
[INFO] [stdout] 55 | struct RequestVote{
[INFO] [stdout]    |        ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `ResponseVote` is never constructed
[INFO] [stdout]   --> src/raft/raft.rs:60:8
[INFO] [stdout]    |
[INFO] [stdout] 60 | struct ResponseVote {
[INFO] [stdout]    |        ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `AppendEntry` is never constructed
[INFO] [stdout]   --> src/raft/raft.rs:64:8
[INFO] [stdout]    |
[INFO] [stdout] 64 | struct AppendEntry{
[INFO] [stdout]    |        ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple methods are never used
[INFO] [stdout]    --> src/raft/raft.rs:106:8
[INFO] [stdout]     |
[INFO] [stdout] 105 | impl Raft {
[INFO] [stdout]     | --------- methods in this implementation
[INFO] [stdout] 106 |     fn major(&self) -> usize {
[INFO] [stdout]     |        ^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 110 |     fn send_requestvote(&mut self) {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 113 |     fn send_appendentries(&mut self) {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 117 |     fn send_leader_heartbeat(&mut self) {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 121 |     fn begin_leader_heartbeat_timeout(&self, service: &mut Service) {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 125 |     fn begin_follower_heartbeat_timeout(&self, service:&mut Service) {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 129 |     fn begin_candidate_requestvote_timeout(&self, service:&mut Service) {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 133 |     fn process_leader_heartbeat_timeout(&mut self, service: &mut Service) {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 144 |     fn process_follower_heartbeat_timeout(&mut self, service: &mut Service) {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 152 |     fn process_candidate_requestvote_timeout(&mut self, service: &mut Service) {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 163 |     fn process_appendentries(&mut self, entry: AppendEntry) {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 167 |     fn process_leader_heartbeat(&mut self) {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 171 |     fn process_requestvote(&mut self, request: RequestVote) {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 175 |     fn become_follower(&mut self) {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 179 |     fn become_candidate(&mut self) {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 182 |     fn become_leader(&mut self) {
[INFO] [stdout]     |        ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Upload` is never constructed
[INFO] [stdout]   --> src/storage/dio.rs:10:8
[INFO] [stdout]    |
[INFO] [stdout] 10 | struct Upload{
[INFO] [stdout]    |        ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `SetMeta` is never constructed
[INFO] [stdout]   --> src/storage/dio.rs:15:8
[INFO] [stdout]    |
[INFO] [stdout] 15 | struct SetMeta{
[INFO] [stdout]    |        ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `ExtraInfo` is never used
[INFO] [stdout]   --> src/storage/dio.rs:19:6
[INFO] [stdout]    |
[INFO] [stdout] 19 | enum ExtraInfo {
[INFO] [stdout]    |      ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `FileContext` is never constructed
[INFO] [stdout]   --> src/storage/dio.rs:24:12
[INFO] [stdout]    |
[INFO] [stdout] 24 | pub struct FileContext {
[INFO] [stdout]    |            ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new`, `set_option`, `open_file`, `read_file`, `write_file`, and `truncate_file` are never used
[INFO] [stdout]    --> src/storage/dio.rs:34:14
[INFO] [stdout]     |
[INFO] [stdout]  32 | impl FileContext {
[INFO] [stdout]     | ---------------- associated items in this implementation
[INFO] [stdout]  33 |
[INFO] [stdout]  34 |     pub   fn new(file_name: &str) -> FileContext {
[INFO] [stdout]     |              ^^^
[INFO] [stdout] ...
[INFO] [stdout]  44 |     pub    fn set_option(&mut self, option: OpenOptions) {
[INFO] [stdout]     |               ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  48 |     pub fn open_file(&mut self) -> Result<()> {
[INFO] [stdout]     |            ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  63 |     pub fn read_file(&mut self, buf: &mut [u8]) -> Result<usize> {
[INFO] [stdout]     |            ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  85 |     pub fn write_file(&mut self, buf: &[u8]) -> Result<usize> {
[INFO] [stdout]     |            ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 104 |     pub fn truncate_file(&mut self) -> Result<()> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variants `SEND` and `CANCEL_TIMEOUT` are never constructed
[INFO] [stdout]   --> src/storage/nio.rs:33:5
[INFO] [stdout]    |
[INFO] [stdout] 30 | pub enum NetCommand {
[INFO] [stdout]    |          ---------- variants in this enum
[INFO] [stdout] ...
[INFO] [stdout] 33 |     SEND((usize, Vec<u8>)),
[INFO] [stdout]    |     ^^^^
[INFO] [stdout] 34 |     TIMEOUT((usize, usize)),
[INFO] [stdout] 35 |     CANCEL_TIMEOUT(usize),
[INFO] [stdout]    |     ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `send` and `cancel_timeout` are never used
[INFO] [stdout]   --> src/storage/logic.rs:55:12
[INFO] [stdout]    |
[INFO] [stdout] 40 | impl Service {
[INFO] [stdout]    | ------------ methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 55 |     pub fn send(&mut self, id: usize, buf: Vec<u8>) {
[INFO] [stdout]    |            ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 63 |     pub fn cancel_timeout(&mut self, id: usize) {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]   --> src/main.rs:42:5
[INFO] [stdout]    |
[INFO] [stdout] 42 |     s.start(&mut t);
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout]    = note: `#[warn(unused_must_use)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]    |
[INFO] [stdout] 42 |     let _ = s.start(&mut t);
[INFO] [stdout]    |     +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: structure field `candidate_process__timeout` should have a snake case name
[INFO] [stdout]   --> src/raft/raft.rs:31:5
[INFO] [stdout]    |
[INFO] [stdout] 31 |     candidate_process__timeout: usize,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^ help: convert the identifier to snake case: `candidate_process_timeout`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(non_snake_case)]` (part of `#[warn(nonstandard_style)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]   --> src/storage/nio.rs:71:17
[INFO] [stdout]    |
[INFO] [stdout] 71 |                 Self::process_cancel_timeout(id, timeouts);
[INFO] [stdout]    |                 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]    |
[INFO] [stdout] 71 |                 let _ = Self::process_cancel_timeout(id, timeouts);
[INFO] [stdout]    |                 +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::ops::Range`
[INFO] [stdout]  --> src/raft/raft.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | use std::ops::Range;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/storage/dio.rs:57:9
[INFO] [stdout]    |
[INFO] [stdout] 57 |         try!(file.seek(SeekFrom::Start(self.offset)));
[INFO] [stdout]    |         ^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(deprecated)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/storage/dio.rs:52:32
[INFO] [stdout]    |
[INFO] [stdout] 52 |                 let mut file = try!(self.option.open(&self.filename));
[INFO] [stdout]    |                                ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/storage/dio.rs:64:9
[INFO] [stdout]    |
[INFO] [stdout] 64 |         try!(self.open_file());
[INFO] [stdout]    |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/storage/dio.rs:76:20
[INFO] [stdout]    |
[INFO] [stdout] 76 |             size = try!(file.read(buf));
[INFO] [stdout]    |                    ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/storage/dio.rs:87:13
[INFO] [stdout]    |
[INFO] [stdout] 87 |             try!(self.open_file())
[INFO] [stdout]    |             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/storage/dio.rs:93:20
[INFO] [stdout]    |
[INFO] [stdout] 93 |             size = try!(file.write(buf));
[INFO] [stdout]    |                    ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/storage/dio.rs:106:13
[INFO] [stdout]     |
[INFO] [stdout] 106 |             try!(self.open_file());
[INFO] [stdout]     |             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/storage/dio.rs:110:13
[INFO] [stdout]     |
[INFO] [stdout] 110 |             try!(file.set_len(self.offset));
[INFO] [stdout]     |             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::env`
[INFO] [stdout]  --> src/storage/nio.rs:5:5
[INFO] [stdout]   |
[INFO] [stdout] 5 | use std::env;
[INFO] [stdout]   |     ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `self::tokio_core::reactor::Interval`
[INFO] [stdout]   --> src/storage/nio.rs:19:5
[INFO] [stdout]    |
[INFO] [stdout] 19 | use self::tokio_core::reactor::Interval;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `CANCEL_TIMEOUT` should have an upper camel case name
[INFO] [stdout]   --> src/storage/nio.rs:35:5
[INFO] [stdout]    |
[INFO] [stdout] 35 |     CANCEL_TIMEOUT(usize),
[INFO] [stdout]    |     ^^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `CancelTimeout`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(non_camel_case_types)]` (part of `#[warn(nonstandard_style)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/storage/nio.rs:51:24
[INFO] [stdout]    |
[INFO] [stdout] 51 |         let mut core = try!(Core::new());
[INFO] [stdout]    |                        ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/storage/nio.rs:153:28
[INFO] [stdout]     |
[INFO] [stdout] 153 |         let mut listener = try!(TcpListener::bind(address, &handle));
[INFO] [stdout]     |                            ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::collections::HashMap`
[INFO] [stdout]  --> src/storage/logic.rs:2:5
[INFO] [stdout]   |
[INFO] [stdout] 2 | use std::collections::HashMap;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::rc::Rc`
[INFO] [stdout]  --> src/storage/logic.rs:3:5
[INFO] [stdout]   |
[INFO] [stdout] 3 | use std::rc::Rc;
[INFO] [stdout]   |     ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::iter`
[INFO] [stdout]  --> src/storage/logic.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | use std::iter;
[INFO] [stdout]   |     ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::env`
[INFO] [stdout]  --> src/storage/logic.rs:5:5
[INFO] [stdout]   |
[INFO] [stdout] 5 | use std::env;
[INFO] [stdout]   |     ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `ErrorKind` and `Error`
[INFO] [stdout]  --> src/storage/logic.rs:8:15
[INFO] [stdout]   |
[INFO] [stdout] 8 | use std::io::{Error, ErrorKind};
[INFO] [stdout]   |               ^^^^^  ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::time::Duration`
[INFO] [stdout]  --> src/storage/logic.rs:9:5
[INFO] [stdout]   |
[INFO] [stdout] 9 | use std::time::Duration;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::cell::RefCell`
[INFO] [stdout]   --> src/storage/logic.rs:11:5
[INFO] [stdout]    |
[INFO] [stdout] 11 | use std::cell::RefCell;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::cell::Cell`
[INFO] [stdout]   --> src/storage/logic.rs:12:5
[INFO] [stdout]    |
[INFO] [stdout] 12 | use std::cell::Cell;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `self::tokio_core::net::TcpListener`
[INFO] [stdout]   --> src/storage/logic.rs:14:5
[INFO] [stdout]    |
[INFO] [stdout] 14 | use self::tokio_core::net::TcpListener;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `self::tokio_core::net::TcpStream`
[INFO] [stdout]   --> src/storage/logic.rs:15:5
[INFO] [stdout]    |
[INFO] [stdout] 15 | use self::tokio_core::net::TcpStream;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `self::tokio_core::reactor::Timeout`
[INFO] [stdout]   --> src/storage/logic.rs:17:5
[INFO] [stdout]    |
[INFO] [stdout] 17 | use self::tokio_core::reactor::Timeout;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `self::tokio_core::reactor::Interval`
[INFO] [stdout]   --> src/storage/logic.rs:18:5
[INFO] [stdout]    |
[INFO] [stdout] 18 | use self::tokio_core::reactor::Interval;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `self::tokio_core::reactor::Handle`
[INFO] [stdout]   --> src/storage/logic.rs:19:5
[INFO] [stdout]    |
[INFO] [stdout] 19 | use self::tokio_core::reactor::Handle;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `self::tokio_core::io`
[INFO] [stdout]   --> src/storage/logic.rs:20:5
[INFO] [stdout]    |
[INFO] [stdout] 20 | use self::tokio_core::io;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `self::tokio_core::io::Io`
[INFO] [stdout]   --> src/storage/logic.rs:21:5
[INFO] [stdout]    |
[INFO] [stdout] 21 | use self::tokio_core::io::Io;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `self::futures::stream`
[INFO] [stdout]   --> src/storage/logic.rs:22:5
[INFO] [stdout]    |
[INFO] [stdout] 22 | use self::futures::stream;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `self::futures::sync::mpsc::UnboundedReceiver`
[INFO] [stdout]   --> src/storage/logic.rs:26:5
[INFO] [stdout]    |
[INFO] [stdout] 26 | use self::futures::sync::mpsc::UnboundedReceiver;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `self::futures::sync::mpsc`
[INFO] [stdout]   --> src/storage/logic.rs:27:5
[INFO] [stdout]    |
[INFO] [stdout] 27 | use self::futures::sync::mpsc;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `NetService`
[INFO] [stdout]  --> src/main.rs:4:20
[INFO] [stdout]   |
[INFO] [stdout] 4 | use storage::nio::{NetService, NetEvent};
[INFO] [stdout]   |                    ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `service`
[INFO] [stdout]   --> src/raft/raft.rs:73:32
[INFO] [stdout]    |
[INFO] [stdout] 73 |     fn process_init(&mut self, service: &mut Service) {
[INFO] [stdout]    |                                ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_service`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `event`
[INFO] [stdout]   --> src/raft/raft.rs:78:34
[INFO] [stdout]    |
[INFO] [stdout] 78 |             NetEvent::CONNECTED((event,id)) => {
[INFO] [stdout]    |                                  ^^^^^ help: if this is intentional, prefix it with an underscore: `_event`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `event`
[INFO] [stdout]   --> src/raft/raft.rs:81:37
[INFO] [stdout]    |
[INFO] [stdout] 81 |             NetEvent::DISCONNECTED((event,id))=> {
[INFO] [stdout]    |                                     ^^^^^ help: if this is intentional, prefix it with an underscore: `_event`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `buf`
[INFO] [stdout]   --> src/raft/raft.rs:85:36
[INFO] [stdout]    |
[INFO] [stdout] 85 |             NetEvent::MESSAGE((id, buf)) => {
[INFO] [stdout]    |                                    ^^^ help: if this is intentional, prefix it with an underscore: `_buf`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `service`
[INFO] [stdout]    --> src/raft/raft.rs:152:57
[INFO] [stdout]     |
[INFO] [stdout] 152 |     fn process_candidate_requestvote_timeout(&mut self, service: &mut Service) {
[INFO] [stdout]     |                                                         ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_service`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `entry`
[INFO] [stdout]    --> src/raft/raft.rs:163:41
[INFO] [stdout]     |
[INFO] [stdout] 163 |     fn process_appendentries(&mut self, entry: AppendEntry) {
[INFO] [stdout]     |                                         ^^^^^ help: if this is intentional, prefix it with an underscore: `_entry`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `request`
[INFO] [stdout]    --> src/raft/raft.rs:171:39
[INFO] [stdout]     |
[INFO] [stdout] 171 |     fn process_requestvote(&mut self, request: RequestVote) {
[INFO] [stdout]     |                                       ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_request`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/storage/dio.rs:52:21
[INFO] [stdout]    |
[INFO] [stdout] 52 |                 let mut file = try!(self.option.open(&self.filename));
[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: variable does not need to be mutable
[INFO] [stdout]   --> src/storage/dio.rs:65:13
[INFO] [stdout]    |
[INFO] [stdout] 65 |         let mut remain_bytes = self.end - self.offset;
[INFO] [stdout]    |             ----^^^^^^^^^^^^
[INFO] [stdout]    |             |
[INFO] [stdout]    |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/storage/dio.rs:67:13
[INFO] [stdout]    |
[INFO] [stdout] 67 |         let mut capacity_bytes = buf.len(); 
[INFO] [stdout]    |             ----^^^^^^^^^^^^^^
[INFO] [stdout]    |             |
[INFO] [stdout]    |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `read_bytes`
[INFO] [stdout]   --> src/storage/dio.rs:70:17
[INFO] [stdout]    |
[INFO] [stdout] 70 |             let read_bytes = if capacity_bytes < remain_bytes as usize {
[INFO] [stdout]    |                 ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_read_bytes`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `size` is never read
[INFO] [stdout]   --> src/storage/dio.rs:66:31
[INFO] [stdout]    |
[INFO] [stdout] 66 |         let mut size: usize = 0;
[INFO] [stdout]    |                               ^
[INFO] [stdout]    |
[INFO] [stdout]    = help: maybe it is overwritten before being read?
[INFO] [stdout]    = note: `#[warn(unused_assignments)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `size` is never read
[INFO] [stdout]   --> src/storage/dio.rs:90:31
[INFO] [stdout]    |
[INFO] [stdout] 90 |         let mut size: usize = 0;
[INFO] [stdout]    |                               ^
[INFO] [stdout]    |
[INFO] [stdout]    = help: maybe it is overwritten before being read?
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/storage/dio.rs:144:9
[INFO] [stdout]     |
[INFO] [stdout] 144 |     let mut txt = String::from_utf8(vec).unwrap();
[INFO] [stdout]     |         ----^^^
[INFO] [stdout]     |         |
[INFO] [stdout]     |         help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/storage/nio.rs:51:13
[INFO] [stdout]    |
[INFO] [stdout] 51 |         let mut core = try!(Core::new());
[INFO] [stdout]    |             ----^^^^
[INFO] [stdout]    |             |
[INFO] [stdout]    |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `core`
[INFO] [stdout]   --> src/storage/nio.rs:51:13
[INFO] [stdout]    |
[INFO] [stdout] 51 |         let mut core = try!(Core::new());
[INFO] [stdout]    |             ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_core`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/storage/nio.rs:98:21
[INFO] [stdout]    |
[INFO] [stdout] 98 |                 let mut body_vec = vec![0; body_len];
[INFO] [stdout]    |                     ----^^^^^^^^
[INFO] [stdout]    |                     |
[INFO] [stdout]    |                     help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/storage/nio.rs:84:13
[INFO] [stdout]    |
[INFO] [stdout] 84 |         let mut header_vec: Vec<u8> = vec![0;1];
[INFO] [stdout]    |             ----^^^^^^^^^^
[INFO] [stdout]    |             |
[INFO] [stdout]    |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/storage/nio.rs:153:13
[INFO] [stdout]     |
[INFO] [stdout] 153 |         let mut listener = try!(TcpListener::bind(address, &handle));
[INFO] [stdout]     |             ----^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/storage/logic.rs:69:13
[INFO] [stdout]    |
[INFO] [stdout] 69 |         let mut net_service = NetService::new().unwrap();
[INFO] [stdout]    |             ----^^^^^^^^^^^
[INFO] [stdout]    |             |
[INFO] [stdout]    |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `service`
[INFO] [stdout]   --> src/main.rs:19:33
[INFO] [stdout]    |
[INFO] [stdout] 19 |     fn process_event(&mut self, service: &mut Service, ev: NetEvent) {
[INFO] [stdout]    |                                 ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_service`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `event`
[INFO] [stdout]   --> src/main.rs:21:34
[INFO] [stdout]    |
[INFO] [stdout] 21 |             NetEvent::CONNECTED((event,id)) => {
[INFO] [stdout]    |                                  ^^^^^ help: if this is intentional, prefix it with an underscore: `_event`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `event`
[INFO] [stdout]   --> src/main.rs:24:37
[INFO] [stdout]    |
[INFO] [stdout] 24 |             NetEvent::DISCONNECTED((event,id))=> {
[INFO] [stdout]    |                                     ^^^^^ help: if this is intentional, prefix it with an underscore: `_event`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `buf`
[INFO] [stdout]   --> src/main.rs:28:36
[INFO] [stdout]    |
[INFO] [stdout] 28 |             NetEvent::MESSAGE((id, buf)) => {
[INFO] [stdout]    |                                    ^^^ help: if this is intentional, prefix it with an underscore: `_buf`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `Role` is never used
[INFO] [stdout]  --> src/raft/raft.rs:9:6
[INFO] [stdout]   |
[INFO] [stdout] 9 | enum Role {
[INFO] [stdout]   |      ^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `Phase` is never used
[INFO] [stdout]   --> src/raft/raft.rs:15:6
[INFO] [stdout]    |
[INFO] [stdout] 15 | enum Phase {
[INFO] [stdout]    |      ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Node` is never constructed
[INFO] [stdout]   --> src/raft/raft.rs:19:8
[INFO] [stdout]    |
[INFO] [stdout] 19 | struct Node {
[INFO] [stdout]    |        ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Config` is never constructed
[INFO] [stdout]   --> src/raft/raft.rs:25:8
[INFO] [stdout]    |
[INFO] [stdout] 25 | struct Config {
[INFO] [stdout]    |        ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Raft` is never constructed
[INFO] [stdout]   --> src/raft/raft.rs:34:8
[INFO] [stdout]    |
[INFO] [stdout] 34 | struct Raft {
[INFO] [stdout]    |        ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `Log` is never used
[INFO] [stdout]   --> src/raft/raft.rs:45:6
[INFO] [stdout]    |
[INFO] [stdout] 45 | enum Log {
[INFO] [stdout]    |      ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `Message` is never used
[INFO] [stdout]   --> src/raft/raft.rs:49:6
[INFO] [stdout]    |
[INFO] [stdout] 49 | enum Message {
[INFO] [stdout]    |      ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `RequestVote` is never constructed
[INFO] [stdout]   --> src/raft/raft.rs:55:8
[INFO] [stdout]    |
[INFO] [stdout] 55 | struct RequestVote{
[INFO] [stdout]    |        ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `ResponseVote` is never constructed
[INFO] [stdout]   --> src/raft/raft.rs:60:8
[INFO] [stdout]    |
[INFO] [stdout] 60 | struct ResponseVote {
[INFO] [stdout]    |        ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `AppendEntry` is never constructed
[INFO] [stdout]   --> src/raft/raft.rs:64:8
[INFO] [stdout]    |
[INFO] [stdout] 64 | struct AppendEntry{
[INFO] [stdout]    |        ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple methods are never used
[INFO] [stdout]    --> src/raft/raft.rs:106:8
[INFO] [stdout]     |
[INFO] [stdout] 105 | impl Raft {
[INFO] [stdout]     | --------- methods in this implementation
[INFO] [stdout] 106 |     fn major(&self) -> usize {
[INFO] [stdout]     |        ^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 110 |     fn send_requestvote(&mut self) {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 113 |     fn send_appendentries(&mut self) {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 117 |     fn send_leader_heartbeat(&mut self) {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 121 |     fn begin_leader_heartbeat_timeout(&self, service: &mut Service) {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 125 |     fn begin_follower_heartbeat_timeout(&self, service:&mut Service) {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 129 |     fn begin_candidate_requestvote_timeout(&self, service:&mut Service) {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 133 |     fn process_leader_heartbeat_timeout(&mut self, service: &mut Service) {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 144 |     fn process_follower_heartbeat_timeout(&mut self, service: &mut Service) {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 152 |     fn process_candidate_requestvote_timeout(&mut self, service: &mut Service) {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 163 |     fn process_appendentries(&mut self, entry: AppendEntry) {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 167 |     fn process_leader_heartbeat(&mut self) {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 171 |     fn process_requestvote(&mut self, request: RequestVote) {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 175 |     fn become_follower(&mut self) {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 179 |     fn become_candidate(&mut self) {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 182 |     fn become_leader(&mut self) {
[INFO] [stdout]     |        ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Upload` is never constructed
[INFO] [stdout]   --> src/storage/dio.rs:10:8
[INFO] [stdout]    |
[INFO] [stdout] 10 | struct Upload{
[INFO] [stdout]    |        ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `SetMeta` is never constructed
[INFO] [stdout]   --> src/storage/dio.rs:15:8
[INFO] [stdout]    |
[INFO] [stdout] 15 | struct SetMeta{
[INFO] [stdout]    |        ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `ExtraInfo` is never used
[INFO] [stdout]   --> src/storage/dio.rs:19:6
[INFO] [stdout]    |
[INFO] [stdout] 19 | enum ExtraInfo {
[INFO] [stdout]    |      ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `truncate_file` is never used
[INFO] [stdout]    --> src/storage/dio.rs:104:12
[INFO] [stdout]     |
[INFO] [stdout]  32 | impl FileContext {
[INFO] [stdout]     | ---------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 104 |     pub fn truncate_file(&mut self) -> Result<()> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variants `SEND` and `CANCEL_TIMEOUT` are never constructed
[INFO] [stdout]   --> src/storage/nio.rs:33:5
[INFO] [stdout]    |
[INFO] [stdout] 30 | pub enum NetCommand {
[INFO] [stdout]    |          ---------- variants in this enum
[INFO] [stdout] ...
[INFO] [stdout] 33 |     SEND((usize, Vec<u8>)),
[INFO] [stdout]    |     ^^^^
[INFO] [stdout] 34 |     TIMEOUT((usize, usize)),
[INFO] [stdout] 35 |     CANCEL_TIMEOUT(usize),
[INFO] [stdout]    |     ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `send` and `cancel_timeout` are never used
[INFO] [stdout]   --> src/storage/logic.rs:55:12
[INFO] [stdout]    |
[INFO] [stdout] 40 | impl Service {
[INFO] [stdout]    | ------------ methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 55 |     pub fn send(&mut self, id: usize, buf: Vec<u8>) {
[INFO] [stdout]    |            ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 63 |     pub fn cancel_timeout(&mut self, id: usize) {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]   --> src/main.rs:42:5
[INFO] [stdout]    |
[INFO] [stdout] 42 |     s.start(&mut t);
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout]    = note: `#[warn(unused_must_use)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]    |
[INFO] [stdout] 42 |     let _ = s.start(&mut t);
[INFO] [stdout]    |     +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: structure field `candidate_process__timeout` should have a snake case name
[INFO] [stdout]   --> src/raft/raft.rs:31:5
[INFO] [stdout]    |
[INFO] [stdout] 31 |     candidate_process__timeout: usize,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^ help: convert the identifier to snake case: `candidate_process_timeout`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(non_snake_case)]` (part of `#[warn(nonstandard_style)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]   --> src/storage/nio.rs:71:17
[INFO] [stdout]    |
[INFO] [stdout] 71 |                 Self::process_cancel_timeout(id, timeouts);
[INFO] [stdout]    |                 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]    |
[INFO] [stdout] 71 |                 let _ = Self::process_cancel_timeout(id, timeouts);
[INFO] [stdout]    |                 +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 2.72s
[INFO] running `Command { std: "docker" "inspect" "9b02f1fe6eb7712adb64d3df3f92f3719adb390412b434f47640e00e75612796", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "9b02f1fe6eb7712adb64d3df3f92f3719adb390412b434f47640e00e75612796", kill_on_drop: false }`
[INFO] [stdout] 9b02f1fe6eb7712adb64d3df3f92f3719adb390412b434f47640e00e75612796
