[INFO] cloning repository https://github.com/stremin/highloadcup2018
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/stremin/highloadcup2018" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fstremin%2Fhighloadcup2018", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fstremin%2Fhighloadcup2018'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] fac8aa059923e85a4875f3e67aa7d0191a39b631
[INFO] checking stremin/highloadcup2018 against master#b389b0ab72cb0aa9acf4df0ae0c0e12090782da9 for pr-128351-1
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fstremin%2Fhighloadcup2018" "/workspace/builds/worker-1-tc1/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-1-tc1/source'...
[INFO] [stderr] done.
[INFO] validating manifest of git repo https://github.com/stremin/highloadcup2018 on toolchain b389b0ab72cb0aa9acf4df0ae0c0e12090782da9
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+b389b0ab72cb0aa9acf4df0ae0c0e12090782da9" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] removed /workspace/builds/worker-1-tc1/source/.cargo/config
[INFO] started tweaking git repo https://github.com/stremin/highloadcup2018
[INFO] finished tweaking git repo https://github.com/stremin/highloadcup2018
[INFO] tweaked toml for git repo https://github.com/stremin/highloadcup2018 written to /workspace/builds/worker-1-tc1/source/Cargo.toml
[INFO] crate git repo https://github.com/stremin/highloadcup2018 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" "+b389b0ab72cb0aa9acf4df0ae0c0e12090782da9" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Updating crates.io index
[INFO] [stderr]     Blocking waiting for file lock on package cache
[INFO] [stderr]  Downloading crates ...
[INFO] [stderr]   Downloaded time v0.1.41
[INFO] [stderr]   Downloaded bzip2 v0.3.3
[INFO] [stderr]   Downloaded adler32 v1.0.3
[INFO] [stderr]   Downloaded podio v0.1.6
[INFO] [stderr]   Downloaded enum-map-derive v0.4.0
[INFO] [stderr]   Downloaded redox_syscall v0.1.49
[INFO] [stderr]   Downloaded thread-id v3.3.0
[INFO] [stderr]   Downloaded parking_lot v0.3.8
[INFO] [stderr]   Downloaded parking_lot_core v0.2.14
[INFO] [stderr]   Downloaded chashmap v2.2.0
[INFO] [stderr]   Downloaded serde_json v1.0.34
[INFO] [stderr]   Downloaded spin v0.5.0
[INFO] [stderr]   Downloaded enum-map v0.4.1
[INFO] [stderr]   Downloaded nix v0.13.0
[INFO] [stderr]   Downloaded libflate v0.1.19
[INFO] [stderr]   Downloaded array-macro v1.0.3
[INFO] [stderr]   Downloaded reexport-proc-macro v1.0.5
[INFO] [stderr]   Downloaded crc32fast v1.1.2
[INFO] [stderr]   Downloaded zip v0.5.0
[INFO] [stderr]   Downloaded bzip2-sys v0.1.7
[INFO] [stderr]   Downloaded owning_ref v0.2.4
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-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:923055f121b5182466d55868a8b05e67af8ba4a3a3f6bad814e953ca3cd3ac2a" "/opt/rustwide/cargo-home/bin/cargo" "+b389b0ab72cb0aa9acf4df0ae0c0e12090782da9" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] 7247de621b2ea8f0d152388264277f4828aee9ffd38a1c5b52594b17a489fc31
[INFO] running `Command { std: "docker" "start" "-a" "7247de621b2ea8f0d152388264277f4828aee9ffd38a1c5b52594b17a489fc31", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "7247de621b2ea8f0d152388264277f4828aee9ffd38a1c5b52594b17a489fc31", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "7247de621b2ea8f0d152388264277f4828aee9ffd38a1c5b52594b17a489fc31", kill_on_drop: false }`
[INFO] [stdout] 7247de621b2ea8f0d152388264277f4828aee9ffd38a1c5b52594b17a489fc31
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-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:923055f121b5182466d55868a8b05e67af8ba4a3a3f6bad814e953ca3cd3ac2a" "/opt/rustwide/cargo-home/bin/cargo" "+b389b0ab72cb0aa9acf4df0ae0c0e12090782da9" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] f5e1a4fe0973192defdaf8de2333fab3cc3383f9403a2e00856c2095dc70a032
[INFO] running `Command { std: "docker" "start" "-a" "f5e1a4fe0973192defdaf8de2333fab3cc3383f9403a2e00856c2095dc70a032", kill_on_drop: false }`
[INFO] [stderr]    Compiling libc v0.2.47
[INFO] [stderr]     Checking void v1.0.2
[INFO] [stderr]    Compiling autocfg v0.1.2
[INFO] [stderr]    Compiling crc32fast v1.1.2
[INFO] [stderr]    Compiling num-traits v0.2.6
[INFO] [stderr]    Compiling serde v1.0.84
[INFO] [stderr]    Compiling bzip2-sys v0.1.7
[INFO] [stderr]    Compiling num-integer v0.1.39
[INFO] [stderr]     Checking adler32 v1.0.3
[INFO] [stderr]     Checking owning_ref v0.2.4
[INFO] [stderr]    Compiling nix v0.13.0
[INFO] [stderr]    Compiling syn v0.14.9
[INFO] [stderr]    Compiling syn v0.15.23
[INFO] [stderr]     Checking array-macro v1.0.3
[INFO] [stderr]     Checking podio v0.1.6
[INFO] [stderr]     Checking lazycell v1.2.1
[INFO] [stderr]     Checking unreachable v1.0.0
[INFO] [stderr]     Checking reexport-proc-macro v1.0.5
[INFO] [stderr]     Checking slab v0.4.1
[INFO] [stderr]     Checking smallvec v0.6.7
[INFO] [stderr]     Checking itertools v0.8.0
[INFO] [stderr]     Checking percent-encoding v1.0.1
[INFO] [stderr]     Checking spin v0.5.0
[INFO] [stderr]     Checking libflate v0.1.19
[INFO] [stderr]    Compiling rand_chacha v0.1.1
[INFO] [stderr]    Compiling rand v0.6.4
[INFO] [stderr]     Checking rand v0.4.5
[INFO] [stderr]     Checking memchr v2.1.2
[INFO] [stderr]     Checking thread-id v3.3.0
[INFO] [stderr]     Checking atty v0.2.11
[INFO] [stderr]     Checking time v0.1.41
[INFO] [stderr]     Checking iovec v0.1.2
[INFO] [stderr]     Checking rand_os v0.1.1
[INFO] [stderr]     Checking net2 v0.2.33
[INFO] [stderr]     Checking clap v2.32.0
[INFO] [stderr]     Checking aho-corasick v0.6.9
[INFO] [stderr]     Checking bzip2 v0.3.3
[INFO] [stderr]     Checking mio v0.6.16
[INFO] [stderr]     Checking zip v0.5.0
[INFO] [stderr]     Checking regex v1.1.0
[INFO] [stderr]     Checking chrono v0.4.6
[INFO] [stderr]     Checking parking_lot_core v0.2.14
[INFO] [stderr]    Compiling enum-map-derive v0.4.0
[INFO] [stderr]     Checking parking_lot v0.3.8
[INFO] [stderr]     Checking chashmap v2.2.0
[INFO] [stderr]     Checking env_logger v0.6.0
[INFO] [stderr]     Checking enum-map v0.4.1
[INFO] [stderr]    Compiling serde_derive v1.0.84
[INFO] [stderr]     Checking serde_json v1.0.34
[INFO] [stderr]     Checking hlc2018 v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unused import: `itertools::free::kmerge`
[INFO] [stdout]  --> src/filter.rs:5:5
[INFO] [stdout]   |
[INFO] [stdout] 5 | use itertools::free::kmerge;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `itertools::free::kmerge`
[INFO] [stdout]  --> src/filter.rs:5:5
[INFO] [stdout]   |
[INFO] [stdout] 5 | use itertools::free::kmerge;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/storage.rs:250:74
[INFO] [stdout]     |
[INFO] [stdout] 250 |     pub fn new_account(&mut self, bytes: &[u8], success_response_f: &mut FnMut(StatusCode) -> ()) -> Result<(), StatusCode> {
[INFO] [stdout]     |                                                                          ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: `#[warn(bare_trait_objects)]` on by default
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 250 |     pub fn new_account(&mut self, bytes: &[u8], success_response_f: &mut dyn FnMut(StatusCode) -> ()) -> Result<(), StatusCode> {
[INFO] [stdout]     |                                                                          +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/storage.rs:285:86
[INFO] [stdout]     |
[INFO] [stdout] 285 |     pub fn update_account(&mut self, id: i32, bytes: &[u8], success_response_f: &mut FnMut(StatusCode) -> ()) -> Result<(), StatusCode> {
[INFO] [stdout]     |                                                                                      ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 285 |     pub fn update_account(&mut self, id: i32, bytes: &[u8], success_response_f: &mut dyn FnMut(StatusCode) -> ()) -> Result<(), StatusCode> {
[INFO] [stdout]     |                                                                                      +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/storage.rs:354:75
[INFO] [stdout]     |
[INFO] [stdout] 354 |     pub fn update_likes(&mut self, bytes: &[u8], success_response_f: &mut FnMut(StatusCode) -> ()) -> Result<(), StatusCode> {
[INFO] [stdout]     |                                                                           ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 354 |     pub fn update_likes(&mut self, bytes: &[u8], success_response_f: &mut dyn FnMut(StatusCode) -> ()) -> Result<(), StatusCode> {
[INFO] [stdout]     |                                                                           +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/storage.rs:250:74
[INFO] [stdout]     |
[INFO] [stdout] 250 |     pub fn new_account(&mut self, bytes: &[u8], success_response_f: &mut FnMut(StatusCode) -> ()) -> Result<(), StatusCode> {
[INFO] [stdout]     |                                                                          ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: `#[warn(bare_trait_objects)]` on by default
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 250 |     pub fn new_account(&mut self, bytes: &[u8], success_response_f: &mut dyn FnMut(StatusCode) -> ()) -> Result<(), StatusCode> {
[INFO] [stdout]     |                                                                          +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/storage.rs:285:86
[INFO] [stdout]     |
[INFO] [stdout] 285 |     pub fn update_account(&mut self, id: i32, bytes: &[u8], success_response_f: &mut FnMut(StatusCode) -> ()) -> Result<(), StatusCode> {
[INFO] [stdout]     |                                                                                      ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 285 |     pub fn update_account(&mut self, id: i32, bytes: &[u8], success_response_f: &mut dyn FnMut(StatusCode) -> ()) -> Result<(), StatusCode> {
[INFO] [stdout]     |                                                                                      +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/storage.rs:354:75
[INFO] [stdout]     |
[INFO] [stdout] 354 |     pub fn update_likes(&mut self, bytes: &[u8], success_response_f: &mut FnMut(StatusCode) -> ()) -> Result<(), StatusCode> {
[INFO] [stdout]     |                                                                           ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 354 |     pub fn update_likes(&mut self, bytes: &[u8], success_response_f: &mut dyn FnMut(StatusCode) -> ()) -> Result<(), StatusCode> {
[INFO] [stdout]     |                                                                           +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `consts`
[INFO] [stdout]   --> src/filter_index.rs:89:57
[INFO] [stdout]    |
[INFO] [stdout] 89 |     pub fn update_account(&mut self, account: &Account, consts: &Consts) {
[INFO] [stdout]    |                                                         ^^^^^^ help: if this is intentional, prefix it with an underscore: `_consts`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `similarity` is never read
[INFO] [stdout]   --> src/storage.rs:66:9
[INFO] [stdout]    |
[INFO] [stdout] 49 | pub struct Indexes {
[INFO] [stdout]    |            ------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 66 |     pub similarity: HashMap<(i32, i32), f32>,
[INFO] [stdout]    |         ^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `StatKey` is never constructed
[INFO] [stdout]    --> src/stats.rs:200:8
[INFO] [stdout]     |
[INFO] [stdout] 200 | struct StatKey {
[INFO] [stdout]     |        ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `other_status1` is never used
[INFO] [stdout]    --> src/filter_index.rs:205:4
[INFO] [stdout]     |
[INFO] [stdout] 205 | fn other_status1(status: i32, consts: &Consts) -> i32 {
[INFO] [stdout]     |    ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `other_status2` is never used
[INFO] [stdout]    --> src/filter_index.rs:217:4
[INFO] [stdout]     |
[INFO] [stdout] 217 | fn other_status2(status: i32, consts: &Consts) -> i32 {
[INFO] [stdout]     |    ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: static variable `keys_to_filter_mode` should have an upper case name
[INFO] [stdout]   --> src/filter.rs:33:16
[INFO] [stdout]    |
[INFO] [stdout] 33 |     static ref keys_to_filter_mode: HashMap<KeySet, Mode> = {
[INFO] [stdout]    |                ^^^^^^^^^^^^^^^^^^^ help: convert the identifier to upper case: `KEYS_TO_FILTER_MODE`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(non_upper_case_globals)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: static variable `keys_to_group_type` should have an upper case name
[INFO] [stdout]   --> src/group_index.rs:53:16
[INFO] [stdout]    |
[INFO] [stdout] 53 |     static ref keys_to_group_type: HashMap<KeySet, GroupType> = {
[INFO] [stdout]    |                ^^^^^^^^^^^^^^^^^^ help: convert the identifier to upper case: `KEYS_TO_GROUP_TYPE`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: static variable `keys_to_filter_type` should have an upper case name
[INFO] [stdout]   --> src/filter_index.rs:48:16
[INFO] [stdout]    |
[INFO] [stdout] 48 |     static ref keys_to_filter_type: HashMap<KeySet, FilterType> = {
[INFO] [stdout]    |                ^^^^^^^^^^^^^^^^^^^ help: convert the identifier to upper case: `KEYS_TO_FILTER_TYPE`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]   --> src/process.rs:92:21
[INFO] [stdout]    |
[INFO] [stdout] 92 |                     &storage.read().unwrap().stats.register("NEW_EARLY", elapsed_early.unwrap(), &params);
[INFO] [stdout]    |                     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the borrow produces a value
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_must_use)]` on by default
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]    |
[INFO] [stdout] 92 |                     let _ = &storage.read().unwrap().stats.register("NEW_EARLY", elapsed_early.unwrap(), &params);
[INFO] [stdout]    |                     +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]   --> src/process.rs:94:17
[INFO] [stdout]    |
[INFO] [stdout] 94 |                 &storage.read().unwrap().stats.register("NEW", start.unwrap().elapsed(), &params);
[INFO] [stdout]    |                 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the borrow produces a value
[INFO] [stdout]    |
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]    |
[INFO] [stdout] 94 |                 let _ = &storage.read().unwrap().stats.register("NEW", start.unwrap().elapsed(), &params);
[INFO] [stdout]    |                 +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]    --> src/process.rs:114:21
[INFO] [stdout]     |
[INFO] [stdout] 114 |                     &storage.read().unwrap().stats.register("UPDATE_EARLY", elapsed_early.unwrap(), &params);
[INFO] [stdout]     |                     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the borrow produces a value
[INFO] [stdout]     |
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 114 |                     let _ = &storage.read().unwrap().stats.register("UPDATE_EARLY", elapsed_early.unwrap(), &params);
[INFO] [stdout]     |                     +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]    --> src/process.rs:116:17
[INFO] [stdout]     |
[INFO] [stdout] 116 |                 &storage.read().unwrap().stats.register("UPDATE", start.unwrap().elapsed(), &params);
[INFO] [stdout]     |                 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the borrow produces a value
[INFO] [stdout]     |
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 116 |                 let _ = &storage.read().unwrap().stats.register("UPDATE", start.unwrap().elapsed(), &params);
[INFO] [stdout]     |                 +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]    --> src/process.rs:135:21
[INFO] [stdout]     |
[INFO] [stdout] 135 |                     &storage.read().unwrap().stats.register("LIKES_EARLY", elapsed_early.unwrap(), &params);
[INFO] [stdout]     |                     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the borrow produces a value
[INFO] [stdout]     |
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 135 |                     let _ = &storage.read().unwrap().stats.register("LIKES_EARLY", elapsed_early.unwrap(), &params);
[INFO] [stdout]     |                     +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]    --> src/process.rs:137:17
[INFO] [stdout]     |
[INFO] [stdout] 137 |                 &storage.read().unwrap().stats.register("LIKES", start.unwrap().elapsed(), &params);
[INFO] [stdout]     |                 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the borrow produces a value
[INFO] [stdout]     |
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 137 |                 let _ = &storage.read().unwrap().stats.register("LIKES", start.unwrap().elapsed(), &params);
[INFO] [stdout]     |                 +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]    --> src/process.rs:158:17
[INFO] [stdout]     |
[INFO] [stdout] 158 |                 &storage.read().unwrap().stats.register(name_cache, start.unwrap().elapsed(), &params);
[INFO] [stdout]     |                 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the borrow produces a value
[INFO] [stdout]     |
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 158 |                 let _ = &storage.read().unwrap().stats.register(name_cache, start.unwrap().elapsed(), &params);
[INFO] [stdout]     |                 +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]    --> src/process.rs:167:9
[INFO] [stdout]     |
[INFO] [stdout] 167 |         &storage.read().unwrap().stats.register(name, start.unwrap().elapsed(), &params);
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the borrow produces a value
[INFO] [stdout]     |
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 167 |         let _ = &storage.read().unwrap().stats.register(name, start.unwrap().elapsed(), &params);
[INFO] [stdout]     |         +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: 20 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `consts`
[INFO] [stdout]   --> src/filter_index.rs:89:57
[INFO] [stdout]    |
[INFO] [stdout] 89 |     pub fn update_account(&mut self, account: &Account, consts: &Consts) {
[INFO] [stdout]    |                                                         ^^^^^^ help: if this is intentional, prefix it with an underscore: `_consts`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `similarity` is never read
[INFO] [stdout]   --> src/storage.rs:66:9
[INFO] [stdout]    |
[INFO] [stdout] 49 | pub struct Indexes {
[INFO] [stdout]    |            ------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 66 |     pub similarity: HashMap<(i32, i32), f32>,
[INFO] [stdout]    |         ^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `StatKey` is never constructed
[INFO] [stdout]    --> src/stats.rs:200:8
[INFO] [stdout]     |
[INFO] [stdout] 200 | struct StatKey {
[INFO] [stdout]     |        ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `other_status1` is never used
[INFO] [stdout]    --> src/filter_index.rs:205:4
[INFO] [stdout]     |
[INFO] [stdout] 205 | fn other_status1(status: i32, consts: &Consts) -> i32 {
[INFO] [stdout]     |    ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `other_status2` is never used
[INFO] [stdout]    --> src/filter_index.rs:217:4
[INFO] [stdout]     |
[INFO] [stdout] 217 | fn other_status2(status: i32, consts: &Consts) -> i32 {
[INFO] [stdout]     |    ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: static variable `keys_to_filter_mode` should have an upper case name
[INFO] [stdout]   --> src/filter.rs:33:16
[INFO] [stdout]    |
[INFO] [stdout] 33 |     static ref keys_to_filter_mode: HashMap<KeySet, Mode> = {
[INFO] [stdout]    |                ^^^^^^^^^^^^^^^^^^^ help: convert the identifier to upper case: `KEYS_TO_FILTER_MODE`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(non_upper_case_globals)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: static variable `keys_to_group_type` should have an upper case name
[INFO] [stdout]   --> src/group_index.rs:53:16
[INFO] [stdout]    |
[INFO] [stdout] 53 |     static ref keys_to_group_type: HashMap<KeySet, GroupType> = {
[INFO] [stdout]    |                ^^^^^^^^^^^^^^^^^^ help: convert the identifier to upper case: `KEYS_TO_GROUP_TYPE`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: static variable `keys_to_filter_type` should have an upper case name
[INFO] [stdout]   --> src/filter_index.rs:48:16
[INFO] [stdout]    |
[INFO] [stdout] 48 |     static ref keys_to_filter_type: HashMap<KeySet, FilterType> = {
[INFO] [stdout]    |                ^^^^^^^^^^^^^^^^^^^ help: convert the identifier to upper case: `KEYS_TO_FILTER_TYPE`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]   --> src/process.rs:92:21
[INFO] [stdout]    |
[INFO] [stdout] 92 |                     &storage.read().unwrap().stats.register("NEW_EARLY", elapsed_early.unwrap(), &params);
[INFO] [stdout]    |                     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the borrow produces a value
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_must_use)]` on by default
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]    |
[INFO] [stdout] 92 |                     let _ = &storage.read().unwrap().stats.register("NEW_EARLY", elapsed_early.unwrap(), &params);
[INFO] [stdout]    |                     +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]   --> src/process.rs:94:17
[INFO] [stdout]    |
[INFO] [stdout] 94 |                 &storage.read().unwrap().stats.register("NEW", start.unwrap().elapsed(), &params);
[INFO] [stdout]    |                 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the borrow produces a value
[INFO] [stdout]    |
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]    |
[INFO] [stdout] 94 |                 let _ = &storage.read().unwrap().stats.register("NEW", start.unwrap().elapsed(), &params);
[INFO] [stdout]    |                 +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]    --> src/process.rs:114:21
[INFO] [stdout]     |
[INFO] [stdout] 114 |                     &storage.read().unwrap().stats.register("UPDATE_EARLY", elapsed_early.unwrap(), &params);
[INFO] [stdout]     |                     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the borrow produces a value
[INFO] [stdout]     |
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 114 |                     let _ = &storage.read().unwrap().stats.register("UPDATE_EARLY", elapsed_early.unwrap(), &params);
[INFO] [stdout]     |                     +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]    --> src/process.rs:116:17
[INFO] [stdout]     |
[INFO] [stdout] 116 |                 &storage.read().unwrap().stats.register("UPDATE", start.unwrap().elapsed(), &params);
[INFO] [stdout]     |                 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the borrow produces a value
[INFO] [stdout]     |
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 116 |                 let _ = &storage.read().unwrap().stats.register("UPDATE", start.unwrap().elapsed(), &params);
[INFO] [stdout]     |                 +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]    --> src/process.rs:135:21
[INFO] [stdout]     |
[INFO] [stdout] 135 |                     &storage.read().unwrap().stats.register("LIKES_EARLY", elapsed_early.unwrap(), &params);
[INFO] [stdout]     |                     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the borrow produces a value
[INFO] [stdout]     |
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 135 |                     let _ = &storage.read().unwrap().stats.register("LIKES_EARLY", elapsed_early.unwrap(), &params);
[INFO] [stdout]     |                     +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]    --> src/process.rs:137:17
[INFO] [stdout]     |
[INFO] [stdout] 137 |                 &storage.read().unwrap().stats.register("LIKES", start.unwrap().elapsed(), &params);
[INFO] [stdout]     |                 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the borrow produces a value
[INFO] [stdout]     |
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 137 |                 let _ = &storage.read().unwrap().stats.register("LIKES", start.unwrap().elapsed(), &params);
[INFO] [stdout]     |                 +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]    --> src/process.rs:158:17
[INFO] [stdout]     |
[INFO] [stdout] 158 |                 &storage.read().unwrap().stats.register(name_cache, start.unwrap().elapsed(), &params);
[INFO] [stdout]     |                 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the borrow produces a value
[INFO] [stdout]     |
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 158 |                 let _ = &storage.read().unwrap().stats.register(name_cache, start.unwrap().elapsed(), &params);
[INFO] [stdout]     |                 +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]    --> src/process.rs:167:9
[INFO] [stdout]     |
[INFO] [stdout] 167 |         &storage.read().unwrap().stats.register(name, start.unwrap().elapsed(), &params);
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the borrow produces a value
[INFO] [stdout]     |
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 167 |         let _ = &storage.read().unwrap().stats.register(name, start.unwrap().elapsed(), &params);
[INFO] [stdout]     |         +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: 20 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 12.97s
[INFO] [stderr] warning: the following packages contain code that will be rejected by a future version of Rust: syn v0.14.9
[INFO] [stderr] note: to see what the problems were, use the option `--future-incompat-report`, or run `cargo report future-incompatibilities --id 2`
[INFO] running `Command { std: "docker" "inspect" "f5e1a4fe0973192defdaf8de2333fab3cc3383f9403a2e00856c2095dc70a032", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "f5e1a4fe0973192defdaf8de2333fab3cc3383f9403a2e00856c2095dc70a032", kill_on_drop: false }`
[INFO] [stdout] f5e1a4fe0973192defdaf8de2333fab3cc3383f9403a2e00856c2095dc70a032
