[INFO] cloning repository https://github.com/WWWWMMM/first_rust
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/WWWWMMM/first_rust" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FWWWWMMM%2Ffirst_rust", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FWWWWMMM%2Ffirst_rust'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] 9e2c493b1a69950f562a1e9c4c3369b5105bb9b4
[INFO] checking WWWWMMM/first_rust against 1.95.0 for pr-155915
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FWWWWMMM%2Ffirst_rust" "/workspace/builds/worker-2-tc1/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-2-tc1/source'...
[INFO] [stderr] done.
[INFO] started tweaking git repo https://github.com/WWWWMMM/first_rust
[INFO] finished tweaking git repo https://github.com/WWWWMMM/first_rust
[INFO] tweaked toml for git repo https://github.com/WWWWMMM/first_rust written to /workspace/builds/worker-2-tc1/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/WWWWMMM/first_rust on toolchain 1.95.0
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+1.95.0" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate git repo https://github.com/WWWWMMM/first_rust already has a lockfile, it will not be regenerated
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+1.95.0" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Blocking waiting for file lock on package cache
[INFO] [stderr]  Downloading crates ...
[INFO] [stderr]   Downloaded virtue v0.0.13
[INFO] [stderr]   Downloaded arrow v49.0.0
[INFO] [stderr]   Downloaded anyhow v1.0.76
[INFO] [stderr]   Downloaded arrow-string v49.0.0
[INFO] [stderr]   Downloaded delegate v0.12.0
[INFO] [stderr]   Downloaded crossbeam-epoch v0.9.16
[INFO] [stderr]   Downloaded bincode_derive v2.0.0-rc.3
[INFO] [stderr]   Downloaded crossbeam-utils v0.8.17
[INFO] [stderr]   Downloaded arrow-select v49.0.0
[INFO] [stderr]   Downloaded arrow-arith v49.0.0
[INFO] [stderr]   Downloaded arrow-schema v49.0.0
[INFO] [stderr]   Downloaded arrow-csv v49.0.0
[INFO] [stderr]   Downloaded arrow-ord v49.0.0
[INFO] [stderr]   Downloaded arrow-cast v49.0.0
[INFO] [stderr]   Downloaded arrow-buffer v49.0.0
[INFO] [stderr]   Downloaded arrow-data v49.0.0
[INFO] [stderr]   Downloaded arrow-row v49.0.0
[INFO] [stderr]   Downloaded arrow-array v49.0.0
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+1.95.0" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] 378ec8d9882fefbf94ebf588f94e7ff7ff83486cdd3a71a1fa8463e97cc07fa7
[INFO] running `Command { std: "docker" "start" "-a" "378ec8d9882fefbf94ebf588f94e7ff7ff83486cdd3a71a1fa8463e97cc07fa7", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "378ec8d9882fefbf94ebf588f94e7ff7ff83486cdd3a71a1fa8463e97cc07fa7", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "378ec8d9882fefbf94ebf588f94e7ff7ff83486cdd3a71a1fa8463e97cc07fa7", kill_on_drop: false }`
[INFO] [stdout] 378ec8d9882fefbf94ebf588f94e7ff7ff83486cdd3a71a1fa8463e97cc07fa7
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+1.95.0" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 8ffc592dd5b8bb38b406a235b4d7bbde789406376f1c2f1d11afafe7e724ee54
[INFO] running `Command { std: "docker" "start" "-a" "8ffc592dd5b8bb38b406a235b4d7bbde789406376f1c2f1d11afafe7e724ee54", kill_on_drop: false }`
[INFO] [stderr]    Compiling proc-macro2 v1.0.70
[INFO] [stderr]    Compiling libm v0.2.8
[INFO] [stderr]    Compiling num-traits v0.2.17
[INFO] [stderr]     Checking once_cell v1.19.0
[INFO] [stderr]    Compiling num-bigint v0.4.4
[INFO] [stderr]    Compiling num-rational v0.4.1
[INFO] [stderr]    Compiling num-iter v0.1.43
[INFO] [stderr]    Compiling ahash v0.8.6
[INFO] [stderr]    Compiling anyhow v1.0.76
[INFO] [stderr]     Checking zerocopy v0.7.32
[INFO] [stderr]     Checking arrow-schema v49.0.0
[INFO] [stderr]     Checking iana-time-zone v0.1.58
[INFO] [stderr]    Compiling futures-task v0.3.29
[INFO] [stderr]    Compiling futures-util v0.3.29
[INFO] [stderr]    Compiling serde v1.0.193
[INFO] [stderr]    Compiling crossbeam-utils v0.8.17
[INFO] [stderr]    Compiling futures-channel v0.3.29
[INFO] [stderr]     Checking aho-corasick v1.1.2
[INFO] [stderr]    Compiling async-trait v0.1.75
[INFO] [stderr]     Checking regex-syntax v0.8.2
[INFO] [stderr]     Checking tracing-core v0.1.32
[INFO] [stderr]    Compiling tempfile v3.8.1
[INFO] [stderr]     Checking csv-core v0.1.11
[INFO] [stderr]    Compiling rayon-core v1.12.0
[INFO] [stderr]     Checking ryu v1.0.16
[INFO] [stderr]    Compiling virtue v0.0.13
[INFO] [stderr]     Checking miniz_oxide v0.7.1
[INFO] [stderr]     Checking crossbeam-epoch v0.9.16
[INFO] [stderr]    Compiling quote v1.0.33
[INFO] [stderr]    Compiling bincode_derive v2.0.0-rc.3
[INFO] [stderr]     Checking flate2 v1.0.28
[INFO] [stderr]    Compiling syn v2.0.41
[INFO] [stderr]     Checking num-integer v0.1.45
[INFO] [stderr]     Checking num-complex v0.4.4
[INFO] [stderr]     Checking half v2.3.1
[INFO] [stderr]     Checking chrono v0.4.31
[INFO] [stderr]     Checking crossbeam-deque v0.8.4
[INFO] [stderr]     Checking bincode v2.0.0-rc.3
[INFO] [stderr]     Checking regex-automata v0.4.3
[INFO] [stderr]     Checking rayon v1.8.0
[INFO] [stderr]     Checking num v0.4.1
[INFO] [stderr]     Checking arrow-buffer v49.0.0
[INFO] [stderr]     Checking csv v1.3.0
[INFO] [stderr]     Checking arrow-data v49.0.0
[INFO] [stderr]     Checking arrow-array v49.0.0
[INFO] [stderr]     Checking regex v1.10.2
[INFO] [stderr]     Checking arrow-select v49.0.0
[INFO] [stderr]     Checking arrow-row v49.0.0
[INFO] [stderr]     Checking arrow-arith v49.0.0
[INFO] [stderr]    Compiling prettyplease v0.2.15
[INFO] [stderr]     Checking arrow-cast v49.0.0
[INFO] [stderr]     Checking arrow-string v49.0.0
[INFO] [stderr]     Checking arrow-ord v49.0.0
[INFO] [stderr]    Compiling tokio-macros v2.2.0
[INFO] [stderr]    Compiling prost-derive v0.12.3
[INFO] [stderr]    Compiling tracing-attributes v0.1.27
[INFO] [stderr]    Compiling pin-project-internal v1.1.3
[INFO] [stderr]    Compiling async-stream-impl v0.3.5
[INFO] [stderr]    Compiling delegate v0.12.0
[INFO] [stderr]     Checking async-stream v0.3.5
[INFO] [stderr]     Checking tokio v1.35.1
[INFO] [stderr]     Checking axum-core v0.3.4
[INFO] [stderr]     Checking pin-project v1.1.3
[INFO] [stderr]     Checking arrow-csv v49.0.0
[INFO] [stderr]     Checking arrow v49.0.0
[INFO] [stderr]     Checking tracing v0.1.40
[INFO] [stderr]    Compiling prost v0.12.3
[INFO] [stderr]    Compiling prost-types v0.12.3
[INFO] [stderr]    Compiling prost-build v0.12.3
[INFO] [stderr]     Checking tokio-util v0.7.10
[INFO] [stderr]     Checking tokio-io-timeout v1.2.0
[INFO] [stderr]     Checking tokio-stream v0.1.14
[INFO] [stderr]    Compiling tonic-build v0.10.2
[INFO] [stderr]     Checking h2 v0.3.22
[INFO] [stderr]     Checking tower v0.4.13
[INFO] [stderr]    Compiling first_rust v0.1.0 (/opt/rustwide/workdir)
[INFO] [stderr]     Checking hyper v0.14.28
[INFO] [stderr]     Checking axum v0.6.20
[INFO] [stderr]     Checking hyper-timeout v0.4.1
[INFO] [stderr]     Checking tonic v0.10.2
[INFO] [stdout] warning: unused import: `arrow::array::ArrayRef`
[INFO] [stdout]  --> src/common/base_structure/edge.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use arrow::array::ArrayRef;
[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: `DataType`, `Field`, and `Schema`
[INFO] [stdout]  --> src/common/base_structure/edge.rs:2:20
[INFO] [stdout]   |
[INFO] [stdout] 2 | use arrow_schema::{Schema, Field, DataType};
[INFO] [stdout]   |                    ^^^^^^  ^^^^^  ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::str::FromStr`
[INFO] [stdout]  --> src/common/base_structure/vertex.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::str::FromStr;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `arrow::array::ArrayRef`
[INFO] [stdout]  --> src/common/base_structure/vertex.rs:3:5
[INFO] [stdout]   |
[INFO] [stdout] 3 | use arrow::array::ArrayRef;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `super::data::Data`
[INFO] [stdout]  --> src/common/base_structure/vertex.rs:5:5
[INFO] [stdout]   |
[INFO] [stdout] 5 | use super::data::Data;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::fmt::Debug`
[INFO] [stdout]  --> src/io.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::fmt::Debug;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `flate2::read::GzDecoder`
[INFO] [stdout]  --> src/io.rs:5:5
[INFO] [stdout]   |
[INFO] [stdout] 5 | use flate2::read::GzDecoder;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `BufReader`, `fmt::format`, `str::FromStr`, and `time::Instant`
[INFO] [stdout]  --> src/io/csv.rs:1:11
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::{fmt::format, sync::Arc, str::FromStr, time::Instant, fs::File, io::{BufReader, BufRead}};
[INFO] [stdout]   |           ^^^^^^^^^^^             ^^^^^^^^^^^^  ^^^^^^^^^^^^^                 ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `ArrayRef`, `ArrowPrimitiveType`, `Int32Array`, `Int32Type`, and `PrimitiveArray`
[INFO] [stdout]  --> src/io/csv.rs:3:50
[INFO] [stdout]   |
[INFO] [stdout] 3 | ...ray::{AsArray, Int32Array, Array, PrimitiveArray, ArrayRef}, datatypes::{Int32Type, UInt32Type, ArrowPrimitiveType}};
[INFO] [stdout]   |                   ^^^^^^^^^^         ^^^^^^^^^^^^^^  ^^^^^^^^               ^^^^^^^^^              ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `rayon::iter::ParallelExtend`
[INFO] [stdout]  --> src/io/csv.rs:5:5
[INFO] [stdout]   |
[INFO] [stdout] 5 | use rayon::iter::ParallelExtend;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `data::*`
[INFO] [stdout]  --> src/io.rs:9:5
[INFO] [stdout]   |
[INFO] [stdout] 9 | use data::*;
[INFO] [stdout]   |     ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `tokio::runtime::Runtime`
[INFO] [stdout]   --> src/parallel/server.rs:12:5
[INFO] [stdout]    |
[INFO] [stdout] 12 | use tokio::runtime::Runtime;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `ParallelDrainFull`
[INFO] [stdout]  --> src/graph.rs:2:62
[INFO] [stdout]   |
[INFO] [stdout] 2 | use rayon::iter::{IntoParallelRefIterator, ParallelIterator, ParallelDrainFull, IntoParallelIterator, IndexedParallelIterator, Parall...
[INFO] [stdout]   |                                                              ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::sync::Arc`
[INFO] [stdout]  --> src/graph.rs:9:5
[INFO] [stdout]   |
[INFO] [stdout] 9 | use std::sync::Arc;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `IntoParallelRefIterator` and `IntoParallelRefMutIterator`
[INFO] [stdout]  --> src/algo.rs:3:19
[INFO] [stdout]   |
[INFO] [stdout] 3 | use rayon::iter::{IntoParallelRefMutIterator, IntoParallelRefIterator, ParallelIterator, IntoParallelIterator, IndexedParallelIterator};
[INFO] [stdout]   |                   ^^^^^^^^^^^^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Vid`
[INFO] [stdout]  --> src/algo.rs:5:86
[INFO] [stdout]   |
[INFO] [stdout] 5 | use crate::{graph::{Graph, SeqPartition, NearGraph}, common::{base_structure::{Edge, Vid}, util::SharedPtr}, parallel::server::MyMpi};
[INFO] [stdout]   |                                                                                      ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `arrow::array::ArrayRef`
[INFO] [stdout]  --> src/common/base_structure/edge.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use arrow::array::ArrayRef;
[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: `DataType`, `Field`, and `Schema`
[INFO] [stdout]  --> src/common/base_structure/edge.rs:2:20
[INFO] [stdout]   |
[INFO] [stdout] 2 | use arrow_schema::{Schema, Field, DataType};
[INFO] [stdout]   |                    ^^^^^^  ^^^^^  ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::str::FromStr`
[INFO] [stdout]  --> src/common/base_structure/vertex.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::str::FromStr;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `arrow::array::ArrayRef`
[INFO] [stdout]  --> src/common/base_structure/vertex.rs:3:5
[INFO] [stdout]   |
[INFO] [stdout] 3 | use arrow::array::ArrayRef;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `super::data::Data`
[INFO] [stdout]  --> src/common/base_structure/vertex.rs:5:5
[INFO] [stdout]   |
[INFO] [stdout] 5 | use super::data::Data;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Decode` and `Encode`
[INFO] [stdout]  --> src/common/util/serilaze.rs:1:23
[INFO] [stdout]   |
[INFO] [stdout] 1 | use bincode::{config, Decode, Encode};
[INFO] [stdout]   |                       ^^^^^^  ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::fmt::Debug`
[INFO] [stdout]  --> src/io.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::fmt::Debug;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `flate2::read::GzDecoder`
[INFO] [stdout]  --> src/io.rs:5:5
[INFO] [stdout]   |
[INFO] [stdout] 5 | use flate2::read::GzDecoder;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `BufReader`, `fmt::format`, `str::FromStr`, and `time::Instant`
[INFO] [stdout]  --> src/io/csv.rs:1:11
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::{fmt::format, sync::Arc, str::FromStr, time::Instant, fs::File, io::{BufReader, BufRead}};
[INFO] [stdout]   |           ^^^^^^^^^^^             ^^^^^^^^^^^^  ^^^^^^^^^^^^^                 ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `ArrayRef`, `ArrowPrimitiveType`, `Int32Array`, `Int32Type`, and `PrimitiveArray`
[INFO] [stdout]  --> src/io/csv.rs:3:50
[INFO] [stdout]   |
[INFO] [stdout] 3 | ...ray::{AsArray, Int32Array, Array, PrimitiveArray, ArrayRef}, datatypes::{Int32Type, UInt32Type, ArrowPrimitiveType}};
[INFO] [stdout]   |                   ^^^^^^^^^^         ^^^^^^^^^^^^^^  ^^^^^^^^               ^^^^^^^^^              ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `rayon::iter::ParallelExtend`
[INFO] [stdout]  --> src/io/csv.rs:5:5
[INFO] [stdout]   |
[INFO] [stdout] 5 | use rayon::iter::ParallelExtend;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `data::*`
[INFO] [stdout]  --> src/io.rs:9:5
[INFO] [stdout]   |
[INFO] [stdout] 9 | use data::*;
[INFO] [stdout]   |     ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `tokio::runtime::Runtime`
[INFO] [stdout]   --> src/parallel/server.rs:12:5
[INFO] [stdout]    |
[INFO] [stdout] 12 | use tokio::runtime::Runtime;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `ParallelDrainFull`
[INFO] [stdout]  --> src/graph.rs:2:62
[INFO] [stdout]   |
[INFO] [stdout] 2 | use rayon::iter::{IntoParallelRefIterator, ParallelIterator, ParallelDrainFull, IntoParallelIterator, IndexedParallelIterator, Parall...
[INFO] [stdout]   |                                                              ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::sync::Arc`
[INFO] [stdout]  --> src/graph.rs:9:5
[INFO] [stdout]   |
[INFO] [stdout] 9 | use std::sync::Arc;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `IntoParallelRefIterator` and `IntoParallelRefMutIterator`
[INFO] [stdout]  --> src/algo.rs:3:19
[INFO] [stdout]   |
[INFO] [stdout] 3 | use rayon::iter::{IntoParallelRefMutIterator, IntoParallelRefIterator, ParallelIterator, IntoParallelIterator, IndexedParallelIterator};
[INFO] [stdout]   |                   ^^^^^^^^^^^^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Vid`
[INFO] [stdout]  --> src/algo.rs:5:86
[INFO] [stdout]   |
[INFO] [stdout] 5 | use crate::{graph::{Graph, SeqPartition, NearGraph}, common::{base_structure::{Edge, Vid}, util::SharedPtr}, parallel::server::MyMpi};
[INFO] [stdout]   |                                                                                      ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `IndexedParallelIterator`
[INFO] [stdout]  --> src/algo.rs:3:112
[INFO] [stdout]   |
[INFO] [stdout] 3 | use rayon::iter::{IntoParallelRefMutIterator, IntoParallelRefIterator, ParallelIterator, IntoParallelIterator, IndexedParallelIterator};
[INFO] [stdout]   |                                                                                                                ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Array`
[INFO] [stdout]  --> src/io/csv.rs:3:62
[INFO] [stdout]   |
[INFO] [stdout] 3 | use arrow::{csv::ReaderBuilder, array::{AsArray, Int32Array, Array, PrimitiveArray, ArrayRef}, datatypes::{Int32Type, UInt32Type, Arr...
[INFO] [stdout]   |                                                              ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `x`
[INFO] [stdout]    --> src/common/base_structure/data.rs:164:29
[INFO] [stdout]     |
[INFO] [stdout] 164 |         let closure = move |x: &DataUnit| -> bool {
[INFO] [stdout]     |                             ^ help: if this is intentional, prefix it with an underscore: `_x`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `constrain`
[INFO] [stdout]    --> src/common/base_structure/data.rs:162:21
[INFO] [stdout]     |
[INFO] [stdout] 162 |     fn create_judge(constrain: &str, data_type : Self) -> Box<dyn Fn(&DataUnit) -> bool> {
[INFO] [stdout]     |                     ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_constrain`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `data_type`
[INFO] [stdout]    --> src/common/base_structure/data.rs:162:38
[INFO] [stdout]     |
[INFO] [stdout] 162 |     fn create_judge(constrain: &str, data_type : Self) -> Box<dyn Fn(&DataUnit) -> bool> {
[INFO] [stdout]     |                                      ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_data_type`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `str`
[INFO] [stdout]    --> src/common/base_structure/data.rs:254:15
[INFO] [stdout]     |
[INFO] [stdout] 254 |     fn judge1(str : &str) -> Box<dyn Fn(&Data) -> bool> {
[INFO] [stdout]     |               ^^^ help: if this is intentional, prefix it with an underscore: `_str`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `str`
[INFO] [stdout]    --> src/common/base_structure/data.rs:258:15
[INFO] [stdout]     |
[INFO] [stdout] 258 |     fn judge2(str : &str) -> Box<dyn Fn(&Data, &Data) -> bool> {
[INFO] [stdout]     |               ^^^ help: if this is intentional, prefix it with an underscore: `_str`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `str`
[INFO] [stdout]    --> src/common/base_structure/data.rs:262:15
[INFO] [stdout]     |
[INFO] [stdout] 262 |     fn judge3(str : &str) -> Box<dyn Fn(&Data, &Data, &Data) -> bool> {
[INFO] [stdout]     |               ^^^ help: if this is intentional, prefix it with an underscore: `_str`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `str`
[INFO] [stdout]    --> src/common/base_structure/data.rs:266:17
[INFO] [stdout]     |
[INFO] [stdout] 266 |     fn combine1(str : &str) -> Box<dyn Fn(&Data) -> Data> {
[INFO] [stdout]     |                 ^^^ help: if this is intentional, prefix it with an underscore: `_str`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `str`
[INFO] [stdout]    --> src/common/base_structure/data.rs:270:17
[INFO] [stdout]     |
[INFO] [stdout] 270 |     fn combine2(str : &str) -> Box<dyn Fn(&Data, &Data) -> Data> {
[INFO] [stdout]     |                 ^^^ help: if this is intentional, prefix it with an underscore: `_str`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `str`
[INFO] [stdout]    --> src/common/base_structure/data.rs:274:17
[INFO] [stdout]     |
[INFO] [stdout] 274 |     fn combine3(str : &str) -> Box<dyn Fn(&Data, &Data, &Data) -> Data> {
[INFO] [stdout]     |                 ^^^ help: if this is intentional, prefix it with an underscore: `_str`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `path`
[INFO] [stdout]   --> src/io/csv.rs:96:34
[INFO] [stdout]    |
[INFO] [stdout] 96 |     fn read_vertex<VDATA>(&self, path : String, option : ReadOption)-> Vec<Vertex<VDATA>>
[INFO] [stdout]    |                                  ^^^^ help: if this is intentional, prefix it with an underscore: `_path`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `option`
[INFO] [stdout]   --> src/io/csv.rs:96:49
[INFO] [stdout]    |
[INFO] [stdout] 96 |     fn read_vertex<VDATA>(&self, path : String, option : ReadOption)-> Vec<Vertex<VDATA>>
[INFO] [stdout]    |                                                 ^^^^^^ help: if this is intentional, prefix it with an underscore: `_option`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `len`
[INFO] [stdout]   --> src/io/example.rs:17:41
[INFO] [stdout]    |
[INFO] [stdout] 17 |     fn from(arrow_data : Vec<ArrayRef>, len : usize) -> Vec<Self>
[INFO] [stdout]    |                                         ^^^ help: if this is intentional, prefix it with an underscore: `_len`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `arrow_data`
[INFO] [stdout]   --> src/io/example.rs:38:13
[INFO] [stdout]    |
[INFO] [stdout] 38 |     fn from(arrow_data : Vec<ArrayRef>, len : usize) -> Vec<Self>
[INFO] [stdout]    |             ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_arrow_data`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `edges`
[INFO] [stdout]   --> src/io/example.rs:69:13
[INFO] [stdout]    |
[INFO] [stdout] 69 |         let edges = a.read_edge::<MyEmpty>("data/pagerank.csv".into(), read);
[INFO] [stdout]    |             ^^^^^ help: if this is intentional, prefix it with an underscore: `_edges`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Array`
[INFO] [stdout]  --> src/io/csv.rs:3:62
[INFO] [stdout]   |
[INFO] [stdout] 3 | use arrow::{csv::ReaderBuilder, array::{AsArray, Int32Array, Array, PrimitiveArray, ArrayRef}, datatypes::{Int32Type, UInt32Type, Arr...
[INFO] [stdout]   |                                                              ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `IndexedParallelIterator`
[INFO] [stdout]  --> src/algo.rs:3:112
[INFO] [stdout]   |
[INFO] [stdout] 3 | use rayon::iter::{IntoParallelRefMutIterator, IntoParallelRefIterator, ParallelIterator, IntoParallelIterator, IndexedParallelIterator};
[INFO] [stdout]   |                                                                                                                ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `x`
[INFO] [stdout]    --> src/common/base_structure/data.rs:164:29
[INFO] [stdout]     |
[INFO] [stdout] 164 |         let closure = move |x: &DataUnit| -> bool {
[INFO] [stdout]     |                             ^ help: if this is intentional, prefix it with an underscore: `_x`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `constrain`
[INFO] [stdout]    --> src/common/base_structure/data.rs:162:21
[INFO] [stdout]     |
[INFO] [stdout] 162 |     fn create_judge(constrain: &str, data_type : Self) -> Box<dyn Fn(&DataUnit) -> bool> {
[INFO] [stdout]     |                     ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_constrain`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `data_type`
[INFO] [stdout]    --> src/common/base_structure/data.rs:162:38
[INFO] [stdout]     |
[INFO] [stdout] 162 |     fn create_judge(constrain: &str, data_type : Self) -> Box<dyn Fn(&DataUnit) -> bool> {
[INFO] [stdout]     |                                      ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_data_type`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `str`
[INFO] [stdout]    --> src/common/base_structure/data.rs:254:15
[INFO] [stdout]     |
[INFO] [stdout] 254 |     fn judge1(str : &str) -> Box<dyn Fn(&Data) -> bool> {
[INFO] [stdout]     |               ^^^ help: if this is intentional, prefix it with an underscore: `_str`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `str`
[INFO] [stdout]    --> src/common/base_structure/data.rs:258:15
[INFO] [stdout]     |
[INFO] [stdout] 258 |     fn judge2(str : &str) -> Box<dyn Fn(&Data, &Data) -> bool> {
[INFO] [stdout]     |               ^^^ help: if this is intentional, prefix it with an underscore: `_str`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `str`
[INFO] [stdout]    --> src/common/base_structure/data.rs:262:15
[INFO] [stdout]     |
[INFO] [stdout] 262 |     fn judge3(str : &str) -> Box<dyn Fn(&Data, &Data, &Data) -> bool> {
[INFO] [stdout]     |               ^^^ help: if this is intentional, prefix it with an underscore: `_str`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `str`
[INFO] [stdout]    --> src/common/base_structure/data.rs:266:17
[INFO] [stdout]     |
[INFO] [stdout] 266 |     fn combine1(str : &str) -> Box<dyn Fn(&Data) -> Data> {
[INFO] [stdout]     |                 ^^^ help: if this is intentional, prefix it with an underscore: `_str`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `str`
[INFO] [stdout]    --> src/common/base_structure/data.rs:270:17
[INFO] [stdout]     |
[INFO] [stdout] 270 |     fn combine2(str : &str) -> Box<dyn Fn(&Data, &Data) -> Data> {
[INFO] [stdout]     |                 ^^^ help: if this is intentional, prefix it with an underscore: `_str`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `str`
[INFO] [stdout]    --> src/common/base_structure/data.rs:274:17
[INFO] [stdout]     |
[INFO] [stdout] 274 |     fn combine3(str : &str) -> Box<dyn Fn(&Data, &Data, &Data) -> Data> {
[INFO] [stdout]     |                 ^^^ help: if this is intentional, prefix it with an underscore: `_str`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `path`
[INFO] [stdout]   --> src/io/csv.rs:96:34
[INFO] [stdout]    |
[INFO] [stdout] 96 |     fn read_vertex<VDATA>(&self, path : String, option : ReadOption)-> Vec<Vertex<VDATA>>
[INFO] [stdout]    |                                  ^^^^ help: if this is intentional, prefix it with an underscore: `_path`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `option`
[INFO] [stdout]   --> src/io/csv.rs:96:49
[INFO] [stdout]    |
[INFO] [stdout] 96 |     fn read_vertex<VDATA>(&self, path : String, option : ReadOption)-> Vec<Vertex<VDATA>>
[INFO] [stdout]    |                                                 ^^^^^^ help: if this is intentional, prefix it with an underscore: `_option`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `len`
[INFO] [stdout]   --> src/io/example.rs:17:41
[INFO] [stdout]    |
[INFO] [stdout] 17 |     fn from(arrow_data : Vec<ArrayRef>, len : usize) -> Vec<Self>
[INFO] [stdout]    |                                         ^^^ help: if this is intentional, prefix it with an underscore: `_len`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `arrow_data`
[INFO] [stdout]   --> src/io/example.rs:38:13
[INFO] [stdout]    |
[INFO] [stdout] 38 |     fn from(arrow_data : Vec<ArrayRef>, len : usize) -> Vec<Self>
[INFO] [stdout]    |             ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_arrow_data`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/parallel/server.rs:96:13
[INFO] [stdout]    |
[INFO] [stdout] 96 |         let mut all_length = msgs.iter().map(|x| x.len()).fold(0u64, |a, b| a + b as u64);
[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: `t0`
[INFO] [stdout]    --> src/parallel/server.rs:198:13
[INFO] [stdout]     |
[INFO] [stdout] 198 |         let t0 = Instant::now();
[INFO] [stdout]     |             ^^ help: if this is intentional, prefix it with an underscore: `_t0`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `t1`
[INFO] [stdout]    --> src/parallel/server.rs:208:13
[INFO] [stdout]     |
[INFO] [stdout] 208 |         let t1 = Instant::now();
[INFO] [stdout]     |             ^^ help: if this is intentional, prefix it with an underscore: `_t1`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `item`
[INFO] [stdout]   --> src/graph.rs:25:31
[INFO] [stdout]    |
[INFO] [stdout] 25 |     data.par_iter().for_each(|item| {
[INFO] [stdout]    |                               ^^^^ help: if this is intentional, prefix it with an underscore: `_item`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/parallel/server.rs:96:13
[INFO] [stdout]    |
[INFO] [stdout] 96 |         let mut all_length = msgs.iter().map(|x| x.len()).fold(0u64, |a, b| a + b as u64);
[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: `degrees`
[INFO] [stdout]    --> src/graph.rs:108:12
[INFO] [stdout]     |
[INFO] [stdout] 108 |     fn new(degrees : Vec<Vid>, graph_info : &GraphInfo, cluster_info : &ClusterInfo) -> Self {
[INFO] [stdout]     |            ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_degrees`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/graph.rs:149:18
[INFO] [stdout]     |
[INFO] [stdout] 149 |                 |mut vec1, vec2| {
[INFO] [stdout]     |                  ----^^^^
[INFO] [stdout]     |                  |
[INFO] [stdout]     |                  help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `vertexs`
[INFO] [stdout]   --> src/algo.rs:14:9
[INFO] [stdout]    |
[INFO] [stdout] 14 |     let vertexs = graph.graph_info.vertex_num as usize;
[INFO] [stdout]    |         ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_vertexs`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `t0`
[INFO] [stdout]    --> src/parallel/server.rs:198:13
[INFO] [stdout]     |
[INFO] [stdout] 198 |         let t0 = Instant::now();
[INFO] [stdout]     |             ^^ help: if this is intentional, prefix it with an underscore: `_t0`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `t1`
[INFO] [stdout]    --> src/parallel/server.rs:208:13
[INFO] [stdout]     |
[INFO] [stdout] 208 |         let t1 = Instant::now();
[INFO] [stdout]     |             ^^ help: if this is intentional, prefix it with an underscore: `_t1`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Empty` is never constructed
[INFO] [stdout]  --> src/common/base_structure/data.rs:5:8
[INFO] [stdout]   |
[INFO] [stdout] 5 | struct Empty;
[INFO] [stdout]   |        ^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `data` is never read
[INFO] [stdout]  --> src/common/base_structure/data.rs:8:5
[INFO] [stdout]   |
[INFO] [stdout] 7 | pub struct Data {
[INFO] [stdout]   |            ---- field in this struct
[INFO] [stdout] 8 |     data : Vec<DataUnit>
[INFO] [stdout]   |     ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated functions `get_type`, `from`, and `create_judge` are never used
[INFO] [stdout]    --> src/common/base_structure/data.rs:136:8
[INFO] [stdout]     |
[INFO] [stdout] 134 | impl DataUnit {
[INFO] [stdout]     | ------------- associated functions in this implementation
[INFO] [stdout] 135 |     /// 获得字符串所表达的类型，返回值用于 `from` 和 `create_judge` 函数的第二个参数。
[INFO] [stdout] 136 |     fn get_type(data_type : &str) -> Self {
[INFO] [stdout]     |        ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 149 |     fn from(data : &str, data_type : &Self) -> Self {
[INFO] [stdout]     |        ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 162 |     fn create_judge(constrain: &str, data_type : Self) -> Box<dyn Fn(&DataUnit) -> bool> {
[INFO] [stdout]     |        ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `OperationBuilder` is never constructed
[INFO] [stdout]    --> src/common/base_structure/data.rs:245:8
[INFO] [stdout]     |
[INFO] [stdout] 245 | struct OperationBuilder {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple associated functions are never used
[INFO] [stdout]    --> src/common/base_structure/data.rs:250:8
[INFO] [stdout]     |
[INFO] [stdout] 249 | impl OperationBuilder {
[INFO] [stdout]     | --------------------- associated functions in this implementation
[INFO] [stdout] 250 |     fn new() -> Self {
[INFO] [stdout]     |        ^^^
[INFO] [stdout] ...
[INFO] [stdout] 254 |     fn judge1(str : &str) -> Box<dyn Fn(&Data) -> bool> {
[INFO] [stdout]     |        ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 258 |     fn judge2(str : &str) -> Box<dyn Fn(&Data, &Data) -> bool> {
[INFO] [stdout]     |        ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 262 |     fn judge3(str : &str) -> Box<dyn Fn(&Data, &Data, &Data) -> bool> {
[INFO] [stdout]     |        ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 266 |     fn combine1(str : &str) -> Box<dyn Fn(&Data) -> Data> {
[INFO] [stdout]     |        ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 270 |     fn combine2(str : &str) -> Box<dyn Fn(&Data, &Data) -> Data> {
[INFO] [stdout]     |        ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 274 |     fn combine3(str : &str) -> Box<dyn Fn(&Data, &Data, &Data) -> Data> {
[INFO] [stdout]     |        ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `id` and `data` are never read
[INFO] [stdout]   --> src/common/base_structure/vertex.rs:10:5
[INFO] [stdout]    |
[INFO] [stdout]  9 | pub struct Vertexus {
[INFO] [stdout]    |            -------- fields in this struct
[INFO] [stdout] 10 |     id : Vid,
[INFO] [stdout]    |     ^^
[INFO] [stdout] 11 |     data : String
[INFO] [stdout]    |     ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `id` and `data` are never read
[INFO] [stdout]   --> src/common/base_structure/vertex.rs:15:5
[INFO] [stdout]    |
[INFO] [stdout] 14 | pub struct Vertex<T> {
[INFO] [stdout]    |            ------ fields in this struct
[INFO] [stdout] 15 |     id : Vid,
[INFO] [stdout]    |     ^^
[INFO] [stdout] 16 |     data : T
[INFO] [stdout]    |     ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `from`, `to`, and `data` are never read
[INFO] [stdout]  --> src/io/data.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 3 | pub struct Edgesss {
[INFO] [stdout]   |            ------- fields in this struct
[INFO] [stdout] 4 |     from : String,
[INFO] [stdout]   |     ^^^^
[INFO] [stdout] 5 |     to : String,
[INFO] [stdout]   |     ^^
[INFO] [stdout] 6 |     data : String,
[INFO] [stdout]   |     ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `from`, `to`, and `data` are never read
[INFO] [stdout]   --> src/io/data.rs:10:5
[INFO] [stdout]    |
[INFO] [stdout]  9 | pub struct Edgeuss {
[INFO] [stdout]    |            ------- fields in this struct
[INFO] [stdout] 10 |     from : Vid,
[INFO] [stdout]    |     ^^^^
[INFO] [stdout] 11 |     to : String,
[INFO] [stdout]    |     ^^
[INFO] [stdout] 12 |     data : String,
[INFO] [stdout]    |     ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `process_vec` is never used
[INFO] [stdout]   --> src/graph.rs:24:4
[INFO] [stdout]    |
[INFO] [stdout] 24 | fn process_vec<T: Send + Sync>(data: &Vec<T>) {
[INFO] [stdout]    |    ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `HashPartition` is never constructed
[INFO] [stdout]   --> src/graph.rs:71:8
[INFO] [stdout]    |
[INFO] [stdout] 71 | struct HashPartition {}
[INFO] [stdout]    |        ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `hash` is never used
[INFO] [stdout]   --> src/graph.rs:74:8
[INFO] [stdout]    |
[INFO] [stdout] 73 | impl HashPartition {
[INFO] [stdout]    | ------------------ method in this implementation
[INFO] [stdout] 74 |     fn hash(&self, vid : &Vid) -> u64{
[INFO] [stdout]    |        ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `data` is never read
[INFO] [stdout]    --> src/graph.rs:199:5
[INFO] [stdout]     |
[INFO] [stdout] 197 | pub struct NearEdge<EDATA> {
[INFO] [stdout]     |            -------- field in this struct
[INFO] [stdout] 198 |     pub to : Vid,
[INFO] [stdout] 199 |     data : EDATA,
[INFO] [stdout]     |     ^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `NearEdge` has derived impls for the traits `Debug` and `Clone`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `LEN` is never used
[INFO] [stdout]    --> src/graph.rs:315:11
[INFO] [stdout]     |
[INFO] [stdout] 315 |     const LEN : usize = 1000000;
[INFO] [stdout]     |           ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `TestMsg` is never constructed
[INFO] [stdout]    --> src/graph.rs:318:12
[INFO] [stdout]     |
[INFO] [stdout] 318 |     struct TestMsg {
[INFO] [stdout]     |            ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `item`
[INFO] [stdout]   --> src/graph.rs:25:31
[INFO] [stdout]    |
[INFO] [stdout] 25 |     data.par_iter().for_each(|item| {
[INFO] [stdout]    |                               ^^^^ help: if this is intentional, prefix it with an underscore: `_item`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `degrees`
[INFO] [stdout]    --> src/graph.rs:108:12
[INFO] [stdout]     |
[INFO] [stdout] 108 |     fn new(degrees : Vec<Vid>, graph_info : &GraphInfo, cluster_info : &ClusterInfo) -> Self {
[INFO] [stdout]     |            ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_degrees`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/graph.rs:149:18
[INFO] [stdout]     |
[INFO] [stdout] 149 |                 |mut vec1, vec2| {
[INFO] [stdout]     |                  ----^^^^
[INFO] [stdout]     |                  |
[INFO] [stdout]     |                  help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `vertexs`
[INFO] [stdout]   --> src/algo.rs:14:9
[INFO] [stdout]    |
[INFO] [stdout] 14 |     let vertexs = graph.graph_info.vertex_num as usize;
[INFO] [stdout]    |         ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_vertexs`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Empty` is never constructed
[INFO] [stdout]  --> src/common/base_structure/data.rs:5:8
[INFO] [stdout]   |
[INFO] [stdout] 5 | struct Empty;
[INFO] [stdout]   |        ^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `data` is never read
[INFO] [stdout]  --> src/common/base_structure/data.rs:8:5
[INFO] [stdout]   |
[INFO] [stdout] 7 | pub struct Data {
[INFO] [stdout]   |            ---- field in this struct
[INFO] [stdout] 8 |     data : Vec<DataUnit>
[INFO] [stdout]   |     ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated functions `get_type`, `from`, and `create_judge` are never used
[INFO] [stdout]    --> src/common/base_structure/data.rs:136:8
[INFO] [stdout]     |
[INFO] [stdout] 134 | impl DataUnit {
[INFO] [stdout]     | ------------- associated functions in this implementation
[INFO] [stdout] 135 |     /// 获得字符串所表达的类型，返回值用于 `from` 和 `create_judge` 函数的第二个参数。
[INFO] [stdout] 136 |     fn get_type(data_type : &str) -> Self {
[INFO] [stdout]     |        ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 149 |     fn from(data : &str, data_type : &Self) -> Self {
[INFO] [stdout]     |        ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 162 |     fn create_judge(constrain: &str, data_type : Self) -> Box<dyn Fn(&DataUnit) -> bool> {
[INFO] [stdout]     |        ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `convert_to` is never used
[INFO] [stdout]    --> src/common/base_structure/data.rs:175:4
[INFO] [stdout]     |
[INFO] [stdout] 175 | fn convert_to<T>(data: DataUnit) -> T
[INFO] [stdout]     |    ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `OperationBuilder` is never constructed
[INFO] [stdout]    --> src/common/base_structure/data.rs:245:8
[INFO] [stdout]     |
[INFO] [stdout] 245 | struct OperationBuilder {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple associated functions are never used
[INFO] [stdout]    --> src/common/base_structure/data.rs:250:8
[INFO] [stdout]     |
[INFO] [stdout] 249 | impl OperationBuilder {
[INFO] [stdout]     | --------------------- associated functions in this implementation
[INFO] [stdout] 250 |     fn new() -> Self {
[INFO] [stdout]     |        ^^^
[INFO] [stdout] ...
[INFO] [stdout] 254 |     fn judge1(str : &str) -> Box<dyn Fn(&Data) -> bool> {
[INFO] [stdout]     |        ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 258 |     fn judge2(str : &str) -> Box<dyn Fn(&Data, &Data) -> bool> {
[INFO] [stdout]     |        ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 262 |     fn judge3(str : &str) -> Box<dyn Fn(&Data, &Data, &Data) -> bool> {
[INFO] [stdout]     |        ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 266 |     fn combine1(str : &str) -> Box<dyn Fn(&Data) -> Data> {
[INFO] [stdout]     |        ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 270 |     fn combine2(str : &str) -> Box<dyn Fn(&Data, &Data) -> Data> {
[INFO] [stdout]     |        ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 274 |     fn combine3(str : &str) -> Box<dyn Fn(&Data, &Data, &Data) -> Data> {
[INFO] [stdout]     |        ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `id` and `data` are never read
[INFO] [stdout]   --> src/common/base_structure/vertex.rs:10:5
[INFO] [stdout]    |
[INFO] [stdout]  9 | pub struct Vertexus {
[INFO] [stdout]    |            -------- fields in this struct
[INFO] [stdout] 10 |     id : Vid,
[INFO] [stdout]    |     ^^
[INFO] [stdout] 11 |     data : String
[INFO] [stdout]    |     ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `id` and `data` are never read
[INFO] [stdout]   --> src/common/base_structure/vertex.rs:15:5
[INFO] [stdout]    |
[INFO] [stdout] 14 | pub struct Vertex<T> {
[INFO] [stdout]    |            ------ fields in this struct
[INFO] [stdout] 15 |     id : Vid,
[INFO] [stdout]    |     ^^
[INFO] [stdout] 16 |     data : T
[INFO] [stdout]    |     ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `from`, `to`, and `data` are never read
[INFO] [stdout]  --> src/io/data.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 3 | pub struct Edgesss {
[INFO] [stdout]   |            ------- fields in this struct
[INFO] [stdout] 4 |     from : String,
[INFO] [stdout]   |     ^^^^
[INFO] [stdout] 5 |     to : String,
[INFO] [stdout]   |     ^^
[INFO] [stdout] 6 |     data : String,
[INFO] [stdout]   |     ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `from`, `to`, and `data` are never read
[INFO] [stdout]   --> src/io/data.rs:10:5
[INFO] [stdout]    |
[INFO] [stdout]  9 | pub struct Edgeuss {
[INFO] [stdout]    |            ------- fields in this struct
[INFO] [stdout] 10 |     from : Vid,
[INFO] [stdout]    |     ^^^^
[INFO] [stdout] 11 |     to : String,
[INFO] [stdout]    |     ^^
[INFO] [stdout] 12 |     data : String,
[INFO] [stdout]    |     ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `process_vec` is never used
[INFO] [stdout]   --> src/graph.rs:24:4
[INFO] [stdout]    |
[INFO] [stdout] 24 | fn process_vec<T: Send + Sync>(data: &Vec<T>) {
[INFO] [stdout]    |    ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `HashPartition` is never constructed
[INFO] [stdout]   --> src/graph.rs:71:8
[INFO] [stdout]    |
[INFO] [stdout] 71 | struct HashPartition {}
[INFO] [stdout]    |        ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `hash` is never used
[INFO] [stdout]   --> src/graph.rs:74:8
[INFO] [stdout]    |
[INFO] [stdout] 73 | impl HashPartition {
[INFO] [stdout]    | ------------------ method in this implementation
[INFO] [stdout] 74 |     fn hash(&self, vid : &Vid) -> u64{
[INFO] [stdout]    |        ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `data` is never read
[INFO] [stdout]    --> src/graph.rs:199:5
[INFO] [stdout]     |
[INFO] [stdout] 197 | pub struct NearEdge<EDATA> {
[INFO] [stdout]     |            -------- field in this struct
[INFO] [stdout] 198 |     pub to : Vid,
[INFO] [stdout] 199 |     data : EDATA,
[INFO] [stdout]     |     ^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `NearEdge` has derived impls for the traits `Debug` and `Clone`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `iter::IntoParallelRefIterator` and `slice::ParallelSliceMut`
[INFO] [stdout]  --> src/b.rs:4:13
[INFO] [stdout]   |
[INFO] [stdout] 4 | use rayon::{iter::IntoParallelRefIterator, slice::ParallelSliceMut};
[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: `iter::IntoParallelRefIterator` and `slice::ParallelSliceMut`
[INFO] [stdout]  --> src/b.rs:4:13
[INFO] [stdout]   |
[INFO] [stdout] 4 | use rayon::{iter::IntoParallelRefIterator, slice::ParallelSliceMut};
[INFO] [stdout]   |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/b.rs:20:9
[INFO] [stdout]    |
[INFO] [stdout] 20 |     let mut pr = pool.install(||pagerank(graph, &communicatoner));
[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/b.rs:20:9
[INFO] [stdout]    |
[INFO] [stdout] 20 |     let mut pr = pool.install(||pagerank(graph, &communicatoner));
[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 imports: `Decode` and `Encode`
[INFO] [stdout]  --> src/main.rs:1:15
[INFO] [stdout]   |
[INFO] [stdout] 1 | use bincode::{Encode, Decode};
[INFO] [stdout]   |               ^^^^^^  ^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `common::base_structure::Edge`
[INFO] [stdout]  --> src/main.rs:2:5
[INFO] [stdout]   |
[INFO] [stdout] 2 | use common::base_structure::Edge;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `IndexedParallelIterator`, `IntoParallelIterator`, `IntoParallelRefIterator`, `ParallelExtend`, and `ParallelIterator`
[INFO] [stdout]  --> src/main.rs:3:19
[INFO] [stdout]   |
[INFO] [stdout] 3 | use rayon::iter::{IntoParallelRefIterator, ParallelIterator, IntoParallelIterator, IndexedParallelIterator, ParallelExtend};
[INFO] [stdout]   |                   ^^^^^^^^^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `FileRead`, `ReadOption`, and `example::MyEDATA`
[INFO] [stdout]  --> src/main.rs:5:17
[INFO] [stdout]   |
[INFO] [stdout] 5 | use crate::io::{FileRead, ReadOption, example::MyEDATA};
[INFO] [stdout]   |                 ^^^^^^^^  ^^^^^^^^^^  ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `fmt::Debug` and `sync::Arc`
[INFO] [stdout]  --> src/main.rs:7:11
[INFO] [stdout]   |
[INFO] [stdout] 7 | use std::{fmt::Debug, sync::Arc};
[INFO] [stdout]   |           ^^^^^^^^^^  ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `arrow::array::ArrayRef`
[INFO] [stdout]  --> src/common/base_structure/edge.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use arrow::array::ArrayRef;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `DataType`, `Field`, and `Schema`
[INFO] [stdout]  --> src/common/base_structure/edge.rs:2:20
[INFO] [stdout]   |
[INFO] [stdout] 2 | use arrow_schema::{Schema, Field, DataType};
[INFO] [stdout]   |                    ^^^^^^  ^^^^^  ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::str::FromStr`
[INFO] [stdout]  --> src/common/base_structure/vertex.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::str::FromStr;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `arrow::array::ArrayRef`
[INFO] [stdout]  --> src/common/base_structure/vertex.rs:3:5
[INFO] [stdout]   |
[INFO] [stdout] 3 | use arrow::array::ArrayRef;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `super::data::Data`
[INFO] [stdout]  --> src/common/base_structure/vertex.rs:5:5
[INFO] [stdout]   |
[INFO] [stdout] 5 | use super::data::Data;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Decode` and `Encode`
[INFO] [stdout]  --> src/common/util/serilaze.rs:1:23
[INFO] [stdout]   |
[INFO] [stdout] 1 | use bincode::{config, Decode, Encode};
[INFO] [stdout]   |                       ^^^^^^  ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::fmt::Debug`
[INFO] [stdout]  --> src/io.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::fmt::Debug;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `flate2::read::GzDecoder`
[INFO] [stdout]  --> src/io.rs:5:5
[INFO] [stdout]   |
[INFO] [stdout] 5 | use flate2::read::GzDecoder;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `BufReader`, `fmt::format`, `str::FromStr`, and `time::Instant`
[INFO] [stdout]  --> src/io/csv.rs:1:11
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::{fmt::format, sync::Arc, str::FromStr, time::Instant, fs::File, io::{BufReader, BufRead}};
[INFO] [stdout]   |           ^^^^^^^^^^^             ^^^^^^^^^^^^  ^^^^^^^^^^^^^                 ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `ArrayRef`, `ArrowPrimitiveType`, `Int32Array`, `Int32Type`, and `PrimitiveArray`
[INFO] [stdout]  --> src/io/csv.rs:3:50
[INFO] [stdout]   |
[INFO] [stdout] 3 | ...ray::{AsArray, Int32Array, Array, PrimitiveArray, ArrayRef}, datatypes::{Int32Type, UInt32Type, ArrowPrimitiveType}};
[INFO] [stdout]   |                   ^^^^^^^^^^         ^^^^^^^^^^^^^^  ^^^^^^^^               ^^^^^^^^^              ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `rayon::iter::ParallelExtend`
[INFO] [stdout]  --> src/io/csv.rs:5:5
[INFO] [stdout]   |
[INFO] [stdout] 5 | use rayon::iter::ParallelExtend;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `data::*`
[INFO] [stdout]  --> src/io.rs:9:5
[INFO] [stdout]   |
[INFO] [stdout] 9 | use data::*;
[INFO] [stdout]   |     ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `tokio::runtime::Runtime`
[INFO] [stdout]   --> src/parallel/server.rs:12:5
[INFO] [stdout]    |
[INFO] [stdout] 12 | use tokio::runtime::Runtime;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `ParallelDrainFull`
[INFO] [stdout]  --> src/graph.rs:2:62
[INFO] [stdout]   |
[INFO] [stdout] 2 | use rayon::iter::{IntoParallelRefIterator, ParallelIterator, ParallelDrainFull, IntoParallelIterator, IndexedParallelIterator, Parall...
[INFO] [stdout]   |                                                              ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::sync::Arc`
[INFO] [stdout]  --> src/graph.rs:9:5
[INFO] [stdout]   |
[INFO] [stdout] 9 | use std::sync::Arc;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `IntoParallelRefIterator` and `IntoParallelRefMutIterator`
[INFO] [stdout]  --> src/algo.rs:3:19
[INFO] [stdout]   |
[INFO] [stdout] 3 | use rayon::iter::{IntoParallelRefMutIterator, IntoParallelRefIterator, ParallelIterator, IntoParallelIterator, IndexedParallelIterator};
[INFO] [stdout]   |                   ^^^^^^^^^^^^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Vid`
[INFO] [stdout]  --> src/algo.rs:5:86
[INFO] [stdout]   |
[INFO] [stdout] 5 | use crate::{graph::{Graph, SeqPartition, NearGraph}, common::{base_structure::{Edge, Vid}, util::SharedPtr}, parallel::server::MyMpi};
[INFO] [stdout]   |                                                                                      ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `iter::IntoParallelRefIterator` and `slice::ParallelSliceMut`
[INFO] [stdout]  --> src/b.rs:4:13
[INFO] [stdout]   |
[INFO] [stdout] 4 | use rayon::{iter::IntoParallelRefIterator, slice::ParallelSliceMut};
[INFO] [stdout]   |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Decode` and `Encode`
[INFO] [stdout]  --> src/main.rs:1:15
[INFO] [stdout]   |
[INFO] [stdout] 1 | use bincode::{Encode, Decode};
[INFO] [stdout]   |               ^^^^^^  ^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `common::base_structure::Edge`
[INFO] [stdout]  --> src/main.rs:2:5
[INFO] [stdout]   |
[INFO] [stdout] 2 | use common::base_structure::Edge;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `IndexedParallelIterator`, `IntoParallelIterator`, `IntoParallelRefIterator`, `ParallelExtend`, and `ParallelIterator`
[INFO] [stdout]  --> src/main.rs:3:19
[INFO] [stdout]   |
[INFO] [stdout] 3 | use rayon::iter::{IntoParallelRefIterator, ParallelIterator, IntoParallelIterator, IndexedParallelIterator, ParallelExtend};
[INFO] [stdout]   |                   ^^^^^^^^^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `FileRead`, `ReadOption`, and `example::MyEDATA`
[INFO] [stdout]  --> src/main.rs:5:17
[INFO] [stdout]   |
[INFO] [stdout] 5 | use crate::io::{FileRead, ReadOption, example::MyEDATA};
[INFO] [stdout]   |                 ^^^^^^^^  ^^^^^^^^^^  ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `fmt::Debug` and `sync::Arc`
[INFO] [stdout]  --> src/main.rs:7:11
[INFO] [stdout]   |
[INFO] [stdout] 7 | use std::{fmt::Debug, sync::Arc};
[INFO] [stdout]   |           ^^^^^^^^^^  ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `arrow::array::ArrayRef`
[INFO] [stdout]  --> src/common/base_structure/edge.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use arrow::array::ArrayRef;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `DataType`, `Field`, and `Schema`
[INFO] [stdout]  --> src/common/base_structure/edge.rs:2:20
[INFO] [stdout]   |
[INFO] [stdout] 2 | use arrow_schema::{Schema, Field, DataType};
[INFO] [stdout]   |                    ^^^^^^  ^^^^^  ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::str::FromStr`
[INFO] [stdout]  --> src/common/base_structure/vertex.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::str::FromStr;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `arrow::array::ArrayRef`
[INFO] [stdout]  --> src/common/base_structure/vertex.rs:3:5
[INFO] [stdout]   |
[INFO] [stdout] 3 | use arrow::array::ArrayRef;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `super::data::Data`
[INFO] [stdout]  --> src/common/base_structure/vertex.rs:5:5
[INFO] [stdout]   |
[INFO] [stdout] 5 | use super::data::Data;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::fmt::Debug`
[INFO] [stdout]  --> src/io.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::fmt::Debug;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `flate2::read::GzDecoder`
[INFO] [stdout]  --> src/io.rs:5:5
[INFO] [stdout]   |
[INFO] [stdout] 5 | use flate2::read::GzDecoder;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `BufReader`, `fmt::format`, `str::FromStr`, and `time::Instant`
[INFO] [stdout]  --> src/io/csv.rs:1:11
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::{fmt::format, sync::Arc, str::FromStr, time::Instant, fs::File, io::{BufReader, BufRead}};
[INFO] [stdout]   |           ^^^^^^^^^^^             ^^^^^^^^^^^^  ^^^^^^^^^^^^^                 ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `ArrayRef`, `ArrowPrimitiveType`, `Int32Array`, `Int32Type`, and `PrimitiveArray`
[INFO] [stdout]  --> src/io/csv.rs:3:50
[INFO] [stdout]   |
[INFO] [stdout] 3 | ...ray::{AsArray, Int32Array, Array, PrimitiveArray, ArrayRef}, datatypes::{Int32Type, UInt32Type, ArrowPrimitiveType}};
[INFO] [stdout]   |                   ^^^^^^^^^^         ^^^^^^^^^^^^^^  ^^^^^^^^               ^^^^^^^^^              ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `rayon::iter::ParallelExtend`
[INFO] [stdout]  --> src/io/csv.rs:5:5
[INFO] [stdout]   |
[INFO] [stdout] 5 | use rayon::iter::ParallelExtend;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `data::*`
[INFO] [stdout]  --> src/io.rs:9:5
[INFO] [stdout]   |
[INFO] [stdout] 9 | use data::*;
[INFO] [stdout]   |     ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `tokio::runtime::Runtime`
[INFO] [stdout]   --> src/parallel/server.rs:12:5
[INFO] [stdout]    |
[INFO] [stdout] 12 | use tokio::runtime::Runtime;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `ParallelDrainFull`
[INFO] [stdout]  --> src/graph.rs:2:62
[INFO] [stdout]   |
[INFO] [stdout] 2 | use rayon::iter::{IntoParallelRefIterator, ParallelIterator, ParallelDrainFull, IntoParallelIterator, IndexedParallelIterator, Parall...
[INFO] [stdout]   |                                                              ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::sync::Arc`
[INFO] [stdout]  --> src/graph.rs:9:5
[INFO] [stdout]   |
[INFO] [stdout] 9 | use std::sync::Arc;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `IntoParallelRefIterator` and `IntoParallelRefMutIterator`
[INFO] [stdout]  --> src/algo.rs:3:19
[INFO] [stdout]   |
[INFO] [stdout] 3 | use rayon::iter::{IntoParallelRefMutIterator, IntoParallelRefIterator, ParallelIterator, IntoParallelIterator, IndexedParallelIterator};
[INFO] [stdout]   |                   ^^^^^^^^^^^^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Vid`
[INFO] [stdout]  --> src/algo.rs:5:86
[INFO] [stdout]   |
[INFO] [stdout] 5 | use crate::{graph::{Graph, SeqPartition, NearGraph}, common::{base_structure::{Edge, Vid}, util::SharedPtr}, parallel::server::MyMpi};
[INFO] [stdout]   |                                                                                      ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `iter::IntoParallelRefIterator` and `slice::ParallelSliceMut`
[INFO] [stdout]  --> src/b.rs:4:13
[INFO] [stdout]   |
[INFO] [stdout] 4 | use rayon::{iter::IntoParallelRefIterator, slice::ParallelSliceMut};
[INFO] [stdout]   |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Array`
[INFO] [stdout]  --> src/io/csv.rs:3:62
[INFO] [stdout]   |
[INFO] [stdout] 3 | use arrow::{csv::ReaderBuilder, array::{AsArray, Int32Array, Array, PrimitiveArray, ArrayRef}, datatypes::{Int32Type, UInt32Type, Arr...
[INFO] [stdout]   |                                                              ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `IndexedParallelIterator`
[INFO] [stdout]  --> src/algo.rs:3:112
[INFO] [stdout]   |
[INFO] [stdout] 3 | use rayon::iter::{IntoParallelRefMutIterator, IntoParallelRefIterator, ParallelIterator, IntoParallelIterator, IndexedParallelIterator};
[INFO] [stdout]   |                                                                                                                ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `x`
[INFO] [stdout]    --> src/common/base_structure/data.rs:164:29
[INFO] [stdout]     |
[INFO] [stdout] 164 |         let closure = move |x: &DataUnit| -> bool {
[INFO] [stdout]     |                             ^ help: if this is intentional, prefix it with an underscore: `_x`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `constrain`
[INFO] [stdout]    --> src/common/base_structure/data.rs:162:21
[INFO] [stdout]     |
[INFO] [stdout] 162 |     fn create_judge(constrain: &str, data_type : Self) -> Box<dyn Fn(&DataUnit) -> bool> {
[INFO] [stdout]     |                     ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_constrain`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `data_type`
[INFO] [stdout]    --> src/common/base_structure/data.rs:162:38
[INFO] [stdout]     |
[INFO] [stdout] 162 |     fn create_judge(constrain: &str, data_type : Self) -> Box<dyn Fn(&DataUnit) -> bool> {
[INFO] [stdout]     |                                      ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_data_type`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `str`
[INFO] [stdout]    --> src/common/base_structure/data.rs:254:15
[INFO] [stdout]     |
[INFO] [stdout] 254 |     fn judge1(str : &str) -> Box<dyn Fn(&Data) -> bool> {
[INFO] [stdout]     |               ^^^ help: if this is intentional, prefix it with an underscore: `_str`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `str`
[INFO] [stdout]    --> src/common/base_structure/data.rs:258:15
[INFO] [stdout]     |
[INFO] [stdout] 258 |     fn judge2(str : &str) -> Box<dyn Fn(&Data, &Data) -> bool> {
[INFO] [stdout]     |               ^^^ help: if this is intentional, prefix it with an underscore: `_str`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `str`
[INFO] [stdout]    --> src/common/base_structure/data.rs:262:15
[INFO] [stdout]     |
[INFO] [stdout] 262 |     fn judge3(str : &str) -> Box<dyn Fn(&Data, &Data, &Data) -> bool> {
[INFO] [stdout]     |               ^^^ help: if this is intentional, prefix it with an underscore: `_str`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `str`
[INFO] [stdout]    --> src/common/base_structure/data.rs:266:17
[INFO] [stdout]     |
[INFO] [stdout] 266 |     fn combine1(str : &str) -> Box<dyn Fn(&Data) -> Data> {
[INFO] [stdout]     |                 ^^^ help: if this is intentional, prefix it with an underscore: `_str`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `str`
[INFO] [stdout]    --> src/common/base_structure/data.rs:270:17
[INFO] [stdout]     |
[INFO] [stdout] 270 |     fn combine2(str : &str) -> Box<dyn Fn(&Data, &Data) -> Data> {
[INFO] [stdout]     |                 ^^^ help: if this is intentional, prefix it with an underscore: `_str`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `str`
[INFO] [stdout]    --> src/common/base_structure/data.rs:274:17
[INFO] [stdout]     |
[INFO] [stdout] 274 |     fn combine3(str : &str) -> Box<dyn Fn(&Data, &Data, &Data) -> Data> {
[INFO] [stdout]     |                 ^^^ help: if this is intentional, prefix it with an underscore: `_str`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `path`
[INFO] [stdout]   --> src/io/csv.rs:96:34
[INFO] [stdout]    |
[INFO] [stdout] 96 |     fn read_vertex<VDATA>(&self, path : String, option : ReadOption)-> Vec<Vertex<VDATA>>
[INFO] [stdout]    |                                  ^^^^ help: if this is intentional, prefix it with an underscore: `_path`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `option`
[INFO] [stdout]   --> src/io/csv.rs:96:49
[INFO] [stdout]    |
[INFO] [stdout] 96 |     fn read_vertex<VDATA>(&self, path : String, option : ReadOption)-> Vec<Vertex<VDATA>>
[INFO] [stdout]    |                                                 ^^^^^^ help: if this is intentional, prefix it with an underscore: `_option`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `len`
[INFO] [stdout]   --> src/io/example.rs:17:41
[INFO] [stdout]    |
[INFO] [stdout] 17 |     fn from(arrow_data : Vec<ArrayRef>, len : usize) -> Vec<Self>
[INFO] [stdout]    |                                         ^^^ help: if this is intentional, prefix it with an underscore: `_len`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `arrow_data`
[INFO] [stdout]   --> src/io/example.rs:38:13
[INFO] [stdout]    |
[INFO] [stdout] 38 |     fn from(arrow_data : Vec<ArrayRef>, len : usize) -> Vec<Self>
[INFO] [stdout]    |             ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_arrow_data`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/parallel/server.rs:96:13
[INFO] [stdout]    |
[INFO] [stdout] 96 |         let mut all_length = msgs.iter().map(|x| x.len()).fold(0u64, |a, b| a + b as u64);
[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: `t0`
[INFO] [stdout]    --> src/parallel/server.rs:198:13
[INFO] [stdout]     |
[INFO] [stdout] 198 |         let t0 = Instant::now();
[INFO] [stdout]     |             ^^ help: if this is intentional, prefix it with an underscore: `_t0`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `t1`
[INFO] [stdout]    --> src/parallel/server.rs:208:13
[INFO] [stdout]     |
[INFO] [stdout] 208 |         let t1 = Instant::now();
[INFO] [stdout]     |             ^^ help: if this is intentional, prefix it with an underscore: `_t1`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Array`
[INFO] [stdout]  --> src/io/csv.rs:3:62
[INFO] [stdout]   |
[INFO] [stdout] 3 | use arrow::{csv::ReaderBuilder, array::{AsArray, Int32Array, Array, PrimitiveArray, ArrayRef}, datatypes::{Int32Type, UInt32Type, Arr...
[INFO] [stdout]   |                                                              ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `IndexedParallelIterator`
[INFO] [stdout]  --> src/algo.rs:3:112
[INFO] [stdout]   |
[INFO] [stdout] 3 | use rayon::iter::{IntoParallelRefMutIterator, IntoParallelRefIterator, ParallelIterator, IntoParallelIterator, IndexedParallelIterator};
[INFO] [stdout]   |                                                                                                                ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `item`
[INFO] [stdout]   --> src/graph.rs:25:31
[INFO] [stdout]    |
[INFO] [stdout] 25 |     data.par_iter().for_each(|item| {
[INFO] [stdout]    |                               ^^^^ help: if this is intentional, prefix it with an underscore: `_item`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `degrees`
[INFO] [stdout]    --> src/graph.rs:108:12
[INFO] [stdout]     |
[INFO] [stdout] 108 |     fn new(degrees : Vec<Vid>, graph_info : &GraphInfo, cluster_info : &ClusterInfo) -> Self {
[INFO] [stdout]     |            ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_degrees`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/graph.rs:149:18
[INFO] [stdout]     |
[INFO] [stdout] 149 |                 |mut vec1, vec2| {
[INFO] [stdout]     |                  ----^^^^
[INFO] [stdout]     |                  |
[INFO] [stdout]     |                  help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `x`
[INFO] [stdout]    --> src/common/base_structure/data.rs:164:29
[INFO] [stdout]     |
[INFO] [stdout] 164 |         let closure = move |x: &DataUnit| -> bool {
[INFO] [stdout]     |                             ^ help: if this is intentional, prefix it with an underscore: `_x`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `constrain`
[INFO] [stdout]    --> src/common/base_structure/data.rs:162:21
[INFO] [stdout]     |
[INFO] [stdout] 162 |     fn create_judge(constrain: &str, data_type : Self) -> Box<dyn Fn(&DataUnit) -> bool> {
[INFO] [stdout]     |                     ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_constrain`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `data_type`
[INFO] [stdout]    --> src/common/base_structure/data.rs:162:38
[INFO] [stdout]     |
[INFO] [stdout] 162 |     fn create_judge(constrain: &str, data_type : Self) -> Box<dyn Fn(&DataUnit) -> bool> {
[INFO] [stdout]     |                                      ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_data_type`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `str`
[INFO] [stdout]    --> src/common/base_structure/data.rs:254:15
[INFO] [stdout]     |
[INFO] [stdout] 254 |     fn judge1(str : &str) -> Box<dyn Fn(&Data) -> bool> {
[INFO] [stdout]     |               ^^^ help: if this is intentional, prefix it with an underscore: `_str`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `str`
[INFO] [stdout]    --> src/common/base_structure/data.rs:258:15
[INFO] [stdout]     |
[INFO] [stdout] 258 |     fn judge2(str : &str) -> Box<dyn Fn(&Data, &Data) -> bool> {
[INFO] [stdout]     |               ^^^ help: if this is intentional, prefix it with an underscore: `_str`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `str`
[INFO] [stdout]    --> src/common/base_structure/data.rs:262:15
[INFO] [stdout]     |
[INFO] [stdout] 262 |     fn judge3(str : &str) -> Box<dyn Fn(&Data, &Data, &Data) -> bool> {
[INFO] [stdout]     |               ^^^ help: if this is intentional, prefix it with an underscore: `_str`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `str`
[INFO] [stdout]    --> src/common/base_structure/data.rs:266:17
[INFO] [stdout]     |
[INFO] [stdout] 266 |     fn combine1(str : &str) -> Box<dyn Fn(&Data) -> Data> {
[INFO] [stdout]     |                 ^^^ help: if this is intentional, prefix it with an underscore: `_str`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `str`
[INFO] [stdout]    --> src/common/base_structure/data.rs:270:17
[INFO] [stdout]     |
[INFO] [stdout] 270 |     fn combine2(str : &str) -> Box<dyn Fn(&Data, &Data) -> Data> {
[INFO] [stdout]     |                 ^^^ help: if this is intentional, prefix it with an underscore: `_str`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `str`
[INFO] [stdout]    --> src/common/base_structure/data.rs:274:17
[INFO] [stdout]     |
[INFO] [stdout] 274 |     fn combine3(str : &str) -> Box<dyn Fn(&Data, &Data, &Data) -> Data> {
[INFO] [stdout]     |                 ^^^ help: if this is intentional, prefix it with an underscore: `_str`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `vertexs`
[INFO] [stdout]   --> src/algo.rs:14:9
[INFO] [stdout]    |
[INFO] [stdout] 14 |     let vertexs = graph.graph_info.vertex_num as usize;
[INFO] [stdout]    |         ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_vertexs`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/b.rs:20:9
[INFO] [stdout]    |
[INFO] [stdout] 20 |     let mut pr = pool.install(||pagerank(graph, &communicatoner));
[INFO] [stdout]    |         ----^^
[INFO] [stdout]    |         |
[INFO] [stdout]    |         help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Empty` is never constructed
[INFO] [stdout]  --> src/common/base_structure/data.rs:5:8
[INFO] [stdout]   |
[INFO] [stdout] 5 | struct Empty;
[INFO] [stdout]   |        ^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `data` is never read
[INFO] [stdout]  --> src/common/base_structure/data.rs:8:5
[INFO] [stdout]   |
[INFO] [stdout] 7 | pub struct Data {
[INFO] [stdout]   |            ---- field in this struct
[INFO] [stdout] 8 |     data : Vec<DataUnit>
[INFO] [stdout]   |     ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated functions `get_type`, `from`, and `create_judge` are never used
[INFO] [stdout]    --> src/common/base_structure/data.rs:136:8
[INFO] [stdout]     |
[INFO] [stdout] 134 | impl DataUnit {
[INFO] [stdout]     | ------------- associated functions in this implementation
[INFO] [stdout] 135 |     /// 获得字符串所表达的类型，返回值用于 `from` 和 `create_judge` 函数的第二个参数。
[INFO] [stdout] 136 |     fn get_type(data_type : &str) -> Self {
[INFO] [stdout]     |        ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 149 |     fn from(data : &str, data_type : &Self) -> Self {
[INFO] [stdout]     |        ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 162 |     fn create_judge(constrain: &str, data_type : Self) -> Box<dyn Fn(&DataUnit) -> bool> {
[INFO] [stdout]     |        ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `convert_to` is never used
[INFO] [stdout]    --> src/common/base_structure/data.rs:175:4
[INFO] [stdout]     |
[INFO] [stdout] 175 | fn convert_to<T>(data: DataUnit) -> T
[INFO] [stdout]     |    ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `OperationBuilder` is never constructed
[INFO] [stdout]    --> src/common/base_structure/data.rs:245:8
[INFO] [stdout]     |
[INFO] [stdout] 245 | struct OperationBuilder {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple associated functions are never used
[INFO] [stdout]    --> src/common/base_structure/data.rs:250:8
[INFO] [stdout]     |
[INFO] [stdout] 249 | impl OperationBuilder {
[INFO] [stdout]     | --------------------- associated functions in this implementation
[INFO] [stdout] 250 |     fn new() -> Self {
[INFO] [stdout]     |        ^^^
[INFO] [stdout] ...
[INFO] [stdout] 254 |     fn judge1(str : &str) -> Box<dyn Fn(&Data) -> bool> {
[INFO] [stdout]     |        ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 258 |     fn judge2(str : &str) -> Box<dyn Fn(&Data, &Data) -> bool> {
[INFO] [stdout]     |        ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 262 |     fn judge3(str : &str) -> Box<dyn Fn(&Data, &Data, &Data) -> bool> {
[INFO] [stdout]     |        ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 266 |     fn combine1(str : &str) -> Box<dyn Fn(&Data) -> Data> {
[INFO] [stdout]     |        ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 270 |     fn combine2(str : &str) -> Box<dyn Fn(&Data, &Data) -> Data> {
[INFO] [stdout]     |        ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 274 |     fn combine3(str : &str) -> Box<dyn Fn(&Data, &Data, &Data) -> Data> {
[INFO] [stdout]     |        ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `id` and `data` are never read
[INFO] [stdout]   --> src/common/base_structure/vertex.rs:10:5
[INFO] [stdout]    |
[INFO] [stdout]  9 | pub struct Vertexus {
[INFO] [stdout]    |            -------- fields in this struct
[INFO] [stdout] 10 |     id : Vid,
[INFO] [stdout]    |     ^^
[INFO] [stdout] 11 |     data : String
[INFO] [stdout]    |     ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `id` and `data` are never read
[INFO] [stdout]   --> src/common/base_structure/vertex.rs:15:5
[INFO] [stdout]    |
[INFO] [stdout] 14 | pub struct Vertex<T> {
[INFO] [stdout]    |            ------ fields in this struct
[INFO] [stdout] 15 |     id : Vid,
[INFO] [stdout]    |     ^^
[INFO] [stdout] 16 |     data : T
[INFO] [stdout]    |     ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `from`, `to`, and `data` are never read
[INFO] [stdout]  --> src/io/data.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 3 | pub struct Edgesss {
[INFO] [stdout]   |            ------- fields in this struct
[INFO] [stdout] 4 |     from : String,
[INFO] [stdout]   |     ^^^^
[INFO] [stdout] 5 |     to : String,
[INFO] [stdout]   |     ^^
[INFO] [stdout] 6 |     data : String,
[INFO] [stdout]   |     ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `from`, `to`, and `data` are never read
[INFO] [stdout]   --> src/io/data.rs:10:5
[INFO] [stdout]    |
[INFO] [stdout]  9 | pub struct Edgeuss {
[INFO] [stdout]    |            ------- fields in this struct
[INFO] [stdout] 10 |     from : Vid,
[INFO] [stdout]    |     ^^^^
[INFO] [stdout] 11 |     to : String,
[INFO] [stdout]    |     ^^
[INFO] [stdout] 12 |     data : String,
[INFO] [stdout]    |     ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `process_vec` is never used
[INFO] [stdout]   --> src/graph.rs:24:4
[INFO] [stdout]    |
[INFO] [stdout] 24 | fn process_vec<T: Send + Sync>(data: &Vec<T>) {
[INFO] [stdout]    |    ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `HashPartition` is never constructed
[INFO] [stdout]   --> src/graph.rs:71:8
[INFO] [stdout]    |
[INFO] [stdout] 71 | struct HashPartition {}
[INFO] [stdout]    |        ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `hash` is never used
[INFO] [stdout]   --> src/graph.rs:74:8
[INFO] [stdout]    |
[INFO] [stdout] 73 | impl HashPartition {
[INFO] [stdout]    | ------------------ method in this implementation
[INFO] [stdout] 74 |     fn hash(&self, vid : &Vid) -> u64{
[INFO] [stdout]    |        ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `data` is never read
[INFO] [stdout]    --> src/graph.rs:199:5
[INFO] [stdout]     |
[INFO] [stdout] 197 | pub struct NearEdge<EDATA> {
[INFO] [stdout]     |            -------- field in this struct
[INFO] [stdout] 198 |     pub to : Vid,
[INFO] [stdout] 199 |     data : EDATA,
[INFO] [stdout]     |     ^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `NearEdge` has derived impls for the traits `Debug` and `Clone`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `main` is never used
[INFO] [stdout]  --> src/a.rs:2:4
[INFO] [stdout]   |
[INFO] [stdout] 2 | fn main() {
[INFO] [stdout]   |    ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `main` is never used
[INFO] [stdout]  --> src/b.rs:6:4
[INFO] [stdout]   |
[INFO] [stdout] 6 | fn main() {
[INFO] [stdout]   |    ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `path`
[INFO] [stdout]   --> src/io/csv.rs:96:34
[INFO] [stdout]    |
[INFO] [stdout] 96 |     fn read_vertex<VDATA>(&self, path : String, option : ReadOption)-> Vec<Vertex<VDATA>>
[INFO] [stdout]    |                                  ^^^^ help: if this is intentional, prefix it with an underscore: `_path`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `option`
[INFO] [stdout]   --> src/io/csv.rs:96:49
[INFO] [stdout]    |
[INFO] [stdout] 96 |     fn read_vertex<VDATA>(&self, path : String, option : ReadOption)-> Vec<Vertex<VDATA>>
[INFO] [stdout]    |                                                 ^^^^^^ help: if this is intentional, prefix it with an underscore: `_option`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `len`
[INFO] [stdout]   --> src/io/example.rs:17:41
[INFO] [stdout]    |
[INFO] [stdout] 17 |     fn from(arrow_data : Vec<ArrayRef>, len : usize) -> Vec<Self>
[INFO] [stdout]    |                                         ^^^ help: if this is intentional, prefix it with an underscore: `_len`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `arrow_data`
[INFO] [stdout]   --> src/io/example.rs:38:13
[INFO] [stdout]    |
[INFO] [stdout] 38 |     fn from(arrow_data : Vec<ArrayRef>, len : usize) -> Vec<Self>
[INFO] [stdout]    |             ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_arrow_data`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `edges`
[INFO] [stdout]   --> src/io/example.rs:69:13
[INFO] [stdout]    |
[INFO] [stdout] 69 |         let edges = a.read_edge::<MyEmpty>("data/pagerank.csv".into(), read);
[INFO] [stdout]    |             ^^^^^ help: if this is intentional, prefix it with an underscore: `_edges`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/parallel/server.rs:96:13
[INFO] [stdout]    |
[INFO] [stdout] 96 |         let mut all_length = msgs.iter().map(|x| x.len()).fold(0u64, |a, b| a + b as u64);
[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: `t0`
[INFO] [stdout]    --> src/parallel/server.rs:198:13
[INFO] [stdout]     |
[INFO] [stdout] 198 |         let t0 = Instant::now();
[INFO] [stdout]     |             ^^ help: if this is intentional, prefix it with an underscore: `_t0`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `t1`
[INFO] [stdout]    --> src/parallel/server.rs:208:13
[INFO] [stdout]     |
[INFO] [stdout] 208 |         let t1 = Instant::now();
[INFO] [stdout]     |             ^^ help: if this is intentional, prefix it with an underscore: `_t1`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `item`
[INFO] [stdout]   --> src/graph.rs:25:31
[INFO] [stdout]    |
[INFO] [stdout] 25 |     data.par_iter().for_each(|item| {
[INFO] [stdout]    |                               ^^^^ help: if this is intentional, prefix it with an underscore: `_item`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `degrees`
[INFO] [stdout]    --> src/graph.rs:108:12
[INFO] [stdout]     |
[INFO] [stdout] 108 |     fn new(degrees : Vec<Vid>, graph_info : &GraphInfo, cluster_info : &ClusterInfo) -> Self {
[INFO] [stdout]     |            ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_degrees`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/graph.rs:149:18
[INFO] [stdout]     |
[INFO] [stdout] 149 |                 |mut vec1, vec2| {
[INFO] [stdout]     |                  ----^^^^
[INFO] [stdout]     |                  |
[INFO] [stdout]     |                  help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `vertexs`
[INFO] [stdout]   --> src/algo.rs:14:9
[INFO] [stdout]    |
[INFO] [stdout] 14 |     let vertexs = graph.graph_info.vertex_num as usize;
[INFO] [stdout]    |         ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_vertexs`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/b.rs:20:9
[INFO] [stdout]    |
[INFO] [stdout] 20 |     let mut pr = pool.install(||pagerank(graph, &communicatoner));
[INFO] [stdout]    |         ----^^
[INFO] [stdout]    |         |
[INFO] [stdout]    |         help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Empty` is never constructed
[INFO] [stdout]  --> src/common/base_structure/data.rs:5:8
[INFO] [stdout]   |
[INFO] [stdout] 5 | struct Empty;
[INFO] [stdout]   |        ^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `data` is never read
[INFO] [stdout]  --> src/common/base_structure/data.rs:8:5
[INFO] [stdout]   |
[INFO] [stdout] 7 | pub struct Data {
[INFO] [stdout]   |            ---- field in this struct
[INFO] [stdout] 8 |     data : Vec<DataUnit>
[INFO] [stdout]   |     ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated functions `get_type`, `from`, and `create_judge` are never used
[INFO] [stdout]    --> src/common/base_structure/data.rs:136:8
[INFO] [stdout]     |
[INFO] [stdout] 134 | impl DataUnit {
[INFO] [stdout]     | ------------- associated functions in this implementation
[INFO] [stdout] 135 |     /// 获得字符串所表达的类型，返回值用于 `from` 和 `create_judge` 函数的第二个参数。
[INFO] [stdout] 136 |     fn get_type(data_type : &str) -> Self {
[INFO] [stdout]     |        ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 149 |     fn from(data : &str, data_type : &Self) -> Self {
[INFO] [stdout]     |        ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 162 |     fn create_judge(constrain: &str, data_type : Self) -> Box<dyn Fn(&DataUnit) -> bool> {
[INFO] [stdout]     |        ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `OperationBuilder` is never constructed
[INFO] [stdout]    --> src/common/base_structure/data.rs:245:8
[INFO] [stdout]     |
[INFO] [stdout] 245 | struct OperationBuilder {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple associated functions are never used
[INFO] [stdout]    --> src/common/base_structure/data.rs:250:8
[INFO] [stdout]     |
[INFO] [stdout] 249 | impl OperationBuilder {
[INFO] [stdout]     | --------------------- associated functions in this implementation
[INFO] [stdout] 250 |     fn new() -> Self {
[INFO] [stdout]     |        ^^^
[INFO] [stdout] ...
[INFO] [stdout] 254 |     fn judge1(str : &str) -> Box<dyn Fn(&Data) -> bool> {
[INFO] [stdout]     |        ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 258 |     fn judge2(str : &str) -> Box<dyn Fn(&Data, &Data) -> bool> {
[INFO] [stdout]     |        ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 262 |     fn judge3(str : &str) -> Box<dyn Fn(&Data, &Data, &Data) -> bool> {
[INFO] [stdout]     |        ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 266 |     fn combine1(str : &str) -> Box<dyn Fn(&Data) -> Data> {
[INFO] [stdout]     |        ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 270 |     fn combine2(str : &str) -> Box<dyn Fn(&Data, &Data) -> Data> {
[INFO] [stdout]     |        ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 274 |     fn combine3(str : &str) -> Box<dyn Fn(&Data, &Data, &Data) -> Data> {
[INFO] [stdout]     |        ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `id` and `data` are never read
[INFO] [stdout]   --> src/common/base_structure/vertex.rs:10:5
[INFO] [stdout]    |
[INFO] [stdout]  9 | pub struct Vertexus {
[INFO] [stdout]    |            -------- fields in this struct
[INFO] [stdout] 10 |     id : Vid,
[INFO] [stdout]    |     ^^
[INFO] [stdout] 11 |     data : String
[INFO] [stdout]    |     ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `id` and `data` are never read
[INFO] [stdout]   --> src/common/base_structure/vertex.rs:15:5
[INFO] [stdout]    |
[INFO] [stdout] 14 | pub struct Vertex<T> {
[INFO] [stdout]    |            ------ fields in this struct
[INFO] [stdout] 15 |     id : Vid,
[INFO] [stdout]    |     ^^
[INFO] [stdout] 16 |     data : T
[INFO] [stdout]    |     ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `from`, `to`, and `data` are never read
[INFO] [stdout]  --> src/io/data.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 3 | pub struct Edgesss {
[INFO] [stdout]   |            ------- fields in this struct
[INFO] [stdout] 4 |     from : String,
[INFO] [stdout]   |     ^^^^
[INFO] [stdout] 5 |     to : String,
[INFO] [stdout]   |     ^^
[INFO] [stdout] 6 |     data : String,
[INFO] [stdout]   |     ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `from`, `to`, and `data` are never read
[INFO] [stdout]   --> src/io/data.rs:10:5
[INFO] [stdout]    |
[INFO] [stdout]  9 | pub struct Edgeuss {
[INFO] [stdout]    |            ------- fields in this struct
[INFO] [stdout] 10 |     from : Vid,
[INFO] [stdout]    |     ^^^^
[INFO] [stdout] 11 |     to : String,
[INFO] [stdout]    |     ^^
[INFO] [stdout] 12 |     data : String,
[INFO] [stdout]    |     ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `process_vec` is never used
[INFO] [stdout]   --> src/graph.rs:24:4
[INFO] [stdout]    |
[INFO] [stdout] 24 | fn process_vec<T: Send + Sync>(data: &Vec<T>) {
[INFO] [stdout]    |    ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `HashPartition` is never constructed
[INFO] [stdout]   --> src/graph.rs:71:8
[INFO] [stdout]    |
[INFO] [stdout] 71 | struct HashPartition {}
[INFO] [stdout]    |        ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `hash` is never used
[INFO] [stdout]   --> src/graph.rs:74:8
[INFO] [stdout]    |
[INFO] [stdout] 73 | impl HashPartition {
[INFO] [stdout]    | ------------------ method in this implementation
[INFO] [stdout] 74 |     fn hash(&self, vid : &Vid) -> u64{
[INFO] [stdout]    |        ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `data` is never read
[INFO] [stdout]    --> src/graph.rs:199:5
[INFO] [stdout]     |
[INFO] [stdout] 197 | pub struct NearEdge<EDATA> {
[INFO] [stdout]     |            -------- field in this struct
[INFO] [stdout] 198 |     pub to : Vid,
[INFO] [stdout] 199 |     data : EDATA,
[INFO] [stdout]     |     ^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `NearEdge` has derived impls for the traits `Debug` and `Clone`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `LEN` is never used
[INFO] [stdout]    --> src/graph.rs:315:11
[INFO] [stdout]     |
[INFO] [stdout] 315 |     const LEN : usize = 1000000;
[INFO] [stdout]     |           ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `TestMsg` is never constructed
[INFO] [stdout]    --> src/graph.rs:318:12
[INFO] [stdout]     |
[INFO] [stdout] 318 |     struct TestMsg {
[INFO] [stdout]     |            ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `main` is never used
[INFO] [stdout]  --> src/a.rs:2:4
[INFO] [stdout]   |
[INFO] [stdout] 2 | fn main() {
[INFO] [stdout]   |    ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `main` is never used
[INFO] [stdout]  --> src/b.rs:6:4
[INFO] [stdout]   |
[INFO] [stdout] 6 | fn main() {
[INFO] [stdout]   |    ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 37.52s
[INFO] running `Command { std: "docker" "inspect" "8ffc592dd5b8bb38b406a235b4d7bbde789406376f1c2f1d11afafe7e724ee54", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "8ffc592dd5b8bb38b406a235b4d7bbde789406376f1c2f1d11afafe7e724ee54", kill_on_drop: false }`
[INFO] [stdout] 8ffc592dd5b8bb38b406a235b4d7bbde789406376f1c2f1d11afafe7e724ee54
