[INFO] cloning repository https://github.com/namrapatel/tinyredis
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/namrapatel/tinyredis" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fnamrapatel%2Ftinyredis", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fnamrapatel%2Ftinyredis'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] 6478b988b066e69f4d59f725656bcaa2831ed266
[INFO] testing namrapatel/tinyredis against 1.100.0-beta.1 for beta-1.100-2
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fnamrapatel%2Ftinyredis" "/workspace/builds/worker-4-tc2/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-4-tc2/source'...
[INFO] [stderr] done.
[INFO] started tweaking git repo https://github.com/namrapatel/tinyredis
[INFO] finished tweaking git repo https://github.com/namrapatel/tinyredis
[INFO] tweaked toml for git repo https://github.com/namrapatel/tinyredis written to /workspace/builds/worker-4-tc2/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/namrapatel/tinyredis on toolchain 1.100.0-beta.1
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+1.100.0-beta.1" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate git repo https://github.com/namrapatel/tinyredis 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.100.0-beta.1" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-m" "1610612736" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:3111399a4047eeb3a02b7a90e478d715f38a8c6669b5c4b49d30a17385265909" "sleep" "infinity", kill_on_drop: false }`
[INFO] [stdout] 66c2855f82eb2fa47bc9f3d48d63559ebcd86951807813a55a03dbbabddb365c
[INFO] running `Command { std: "docker" "start" "66c2855f82eb2fa47bc9f3d48d63559ebcd86951807813a55a03dbbabddb365c", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "66c2855f82eb2fa47bc9f3d48d63559ebcd86951807813a55a03dbbabddb365c", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "exec" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-w" "/opt/rustwide/workdir" "--user" "0:0" "66c2855f82eb2fa47bc9f3d48d63559ebcd86951807813a55a03dbbabddb365c" "/opt/rustwide/cargo-home/bin/cargo" "+1.100.0-beta.1" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "66c2855f82eb2fa47bc9f3d48d63559ebcd86951807813a55a03dbbabddb365c", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "exec" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=warn" "-e" "RUSTDOCFLAGS=--cap-lints=warn" "-w" "/opt/rustwide/workdir" "--user" "0:0" "66c2855f82eb2fa47bc9f3d48d63559ebcd86951807813a55a03dbbabddb365c" "/opt/rustwide/cargo-home/bin/cargo" "+1.100.0-beta.1" "build" "--frozen" "--message-format=json", kill_on_drop: false }`
[INFO] [stderr]    Compiling libc v0.2.140
[INFO] [stderr]    Compiling proc-macro2 v1.0.55
[INFO] [stderr]    Compiling unicode-ident v1.0.8
[INFO] [stderr]    Compiling quote v1.0.26
[INFO] [stderr]    Compiling memchr v2.5.0
[INFO] [stderr]    Compiling parking_lot_core v0.9.7
[INFO] [stderr]    Compiling log v0.4.17
[INFO] [stderr]    Compiling lock_api v0.4.9
[INFO] [stderr]    Compiling scopeguard v1.1.0
[INFO] [stderr]    Compiling smallvec v1.10.0
[INFO] [stderr]    Compiling tokio v1.27.0
[INFO] [stderr]    Compiling anyhow v1.0.70
[INFO] [stderr]    Compiling regex-syntax v0.6.29
[INFO] [stderr]    Compiling bytes v1.4.0
[INFO] [stderr]    Compiling pin-project-lite v0.2.9
[INFO] [stderr]    Compiling getrandom v0.2.9
[INFO] [stderr]    Compiling num_cpus v1.15.0
[INFO] [stderr]    Compiling aho-corasick v0.7.20
[INFO] [stderr]    Compiling rand_core v0.6.4
[INFO] [stderr]    Compiling syn v2.0.13
[INFO] [stderr]    Compiling mio v0.8.6
[INFO] [stderr]    Compiling socket2 v0.4.9
[INFO] [stderr]    Compiling parking_lot v0.12.1
[INFO] [stderr]    Compiling rand_chacha v0.3.1
[INFO] [stderr]    Compiling signal-hook-registry v1.4.1
[INFO] [stderr]    Compiling rand v0.8.5
[INFO] [stderr]    Compiling netstat v0.7.0
[INFO] [stderr]    Compiling regex v1.7.3
[INFO] [stderr]    Compiling tokio-macros v2.0.0
[INFO] [stderr]    Compiling tinyredis v0.0.1 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unused imports: `*` and `self`
[INFO] [stdout]  --> src/server.rs:2:13
[INFO] [stdout]   |
[INFO] [stdout] 2 |     cache::{self, Cache},
[INFO] [stdout]   |             ^^^^
[INFO] [stdout] 3 |     resp::RESPMessage,
[INFO] [stdout] 4 |     simpleElection::{self, *},
[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: `IpAddr` and `Ipv4Addr`
[INFO] [stdout]   --> src/server.rs:13:16
[INFO] [stdout]    |
[INFO] [stdout] 13 | use std::net::{IpAddr, Ipv4Addr};
[INFO] [stdout]    |                ^^^^^^  ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `collections::btree_map::Keys`
[INFO] [stdout]   --> src/server.rs:16:5
[INFO] [stdout]    |
[INFO] [stdout] 16 |     collections::btree_map::Keys,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `stream`
[INFO] [stdout]   --> src/server.rs:25:5
[INFO] [stdout]    |
[INFO] [stdout] 25 |     stream,
[INFO] [stdout]    |     ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around `if` condition
[INFO] [stdout]    --> src/cache.rs:136:16
[INFO] [stdout]     |
[INFO] [stdout] 136 |             if (self.cache.contains_key(k)) {
[INFO] [stdout]     |                ^                          ^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_parens)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]     |
[INFO] [stdout] 136 -             if (self.cache.contains_key(k)) {
[INFO] [stdout] 136 +             if self.cache.contains_key(k) {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated constant `std::u64::MAX`: replaced by the `MAX` associated constant on this type
[INFO] [stdout]   --> src/cache.rs:92:50
[INFO] [stdout]    |
[INFO] [stdout] 92 |                 let mut minFrequency = std::u64::MAX;
[INFO] [stdout]    |                                                  ^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(deprecated)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unreachable pattern
[INFO] [stdout]   --> src/server.rs:80:17
[INFO] [stdout]    |
[INFO] [stdout] 80 |                 _ => println!("Default"),
[INFO] [stdout]    |                 ^ no value can reach this
[INFO] [stdout]    |
[INFO] [stdout] note: multiple earlier patterns match some of the same values
[INFO] [stdout]   --> src/server.rs:80:17
[INFO] [stdout]    |
[INFO] [stdout] 78 |                 Ok(_) => {}
[INFO] [stdout]    |                 ----- matches some of the same values
[INFO] [stdout] 79 |                 Err(e) => println!("Error: {}", e),
[INFO] [stdout]    |                 ------ matches some of the same values
[INFO] [stdout] 80 |                 _ => println!("Default"),
[INFO] [stdout]    |                 ^ collectively making this unreachable
[INFO] [stdout]    = note: `#[warn(unreachable_patterns)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/server.rs:46:13
[INFO] [stdout]    |
[INFO] [stdout] 46 |         let mut keys: Vec<String> = Vec::new(); //list of keys
[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/server.rs:47:13
[INFO] [stdout]    |
[INFO] [stdout] 47 |         let mut values: Vec<String> = Vec::new(); //list of values
[INFO] [stdout]    |             ----^^^^^^
[INFO] [stdout]    |             |
[INFO] [stdout]    |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/server.rs:125:34
[INFO] [stdout]     |
[INFO] [stdout] 125 | ...                   let (mut save_k, save_v) = save;
[INFO] [stdout]     |                            ----^^^^^^
[INFO] [stdout]     |                            |
[INFO] [stdout]     |                            help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unreachable pattern
[INFO] [stdout]    --> src/server.rs:311:17
[INFO] [stdout]     |
[INFO] [stdout] 311 |                 _ => println!("Default catch"),
[INFO] [stdout]     |                 ^ no value can reach this
[INFO] [stdout]     |
[INFO] [stdout] note: multiple earlier patterns match some of the same values
[INFO] [stdout]    --> src/server.rs:311:17
[INFO] [stdout]     |
[INFO] [stdout] 309 |                 Ok(_) => println!("Write to stream OK"),
[INFO] [stdout]     |                 ----- matches some of the same values
[INFO] [stdout] 310 |                 Err(e) => println!("Error {}", e),
[INFO] [stdout]     |                 ------ matches some of the same values
[INFO] [stdout] 311 |                 _ => println!("Default catch"),
[INFO] [stdout]     |                 ^ collectively making this unreachable
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/server.rs:267:25
[INFO] [stdout]     |
[INFO] [stdout] 267 |                     let mut child = Command::new(std::env::args().next().unwrap())
[INFO] [stdout]     |                         ----^^^^^
[INFO] [stdout]     |                         |
[INFO] [stdout]     |                         help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/server.rs:290:25
[INFO] [stdout]     |
[INFO] [stdout] 290 |                     let mut resp = cache.lock().unwrap().get_key(); //get keys and values from cache
[INFO] [stdout]     |                         ----^^^^
[INFO] [stdout]     |                         |
[INFO] [stdout]     |                         help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Write`
[INFO] [stdout]   --> src/server.rs:17:16
[INFO] [stdout]    |
[INFO] [stdout] 17 |     io::{Read, Write},
[INFO] [stdout]    |                ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Read`
[INFO] [stdout]   --> src/server.rs:17:10
[INFO] [stdout]    |
[INFO] [stdout] 17 |     io::{Read, Write},
[INFO] [stdout]    |          ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `keys`
[INFO] [stdout]   --> src/server.rs:46:13
[INFO] [stdout]    |
[INFO] [stdout] 46 |         let mut keys: Vec<String> = Vec::new(); //list of keys
[INFO] [stdout]    |             ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_keys`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `values`
[INFO] [stdout]   --> src/server.rs:47:13
[INFO] [stdout]    |
[INFO] [stdout] 47 |         let mut values: Vec<String> = Vec::new(); //list of values
[INFO] [stdout]    |             ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_values`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `RUN_ID`
[INFO] [stdout]   --> src/server.rs:60:17
[INFO] [stdout]    |
[INFO] [stdout] 60 |             let RUN_ID: String = (0..length)
[INFO] [stdout]    |                 ^^^^^^ help: if this is intentional, prefix it with an underscore: `_RUN_ID`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `handle`
[INFO] [stdout]    --> src/server.rs:154:17
[INFO] [stdout]     |
[INFO] [stdout] 154 |             let handle = thread::spawn(|| {
[INFO] [stdout]     |                 ^^^^^^ help: if this is intentional, prefix it with an underscore: `_handle`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `child`
[INFO] [stdout]    --> src/server.rs:267:25
[INFO] [stdout]     |
[INFO] [stdout] 267 |                     let mut child = Command::new(std::env::args().next().unwrap())
[INFO] [stdout]     |                         ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_child`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/cache.rs:35:13
[INFO] [stdout]    |
[INFO] [stdout] 35 |         for mut c in &mut self.cache {
[INFO] [stdout]    |             ----^
[INFO] [stdout]    |             |
[INFO] [stdout]    |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `minFrequencyKey` is assigned to, but never used
[INFO] [stdout]   --> src/cache.rs:93:21
[INFO] [stdout]    |
[INFO] [stdout] 93 |                 let mut minFrequencyKey = "";
[INFO] [stdout]    |                     ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: consider using `_minFrequencyKey` instead
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `minFrequencyKey` is never read
[INFO] [stdout]   --> src/cache.rs:97:25
[INFO] [stdout]    |
[INFO] [stdout] 97 |                         minFrequencyKey = c.0;
[INFO] [stdout]    |                         ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = help: maybe it is overwritten before being read?
[INFO] [stdout]    = note: `#[warn(unused_assignments)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/simpleElection.rs:67:17
[INFO] [stdout]    |
[INFO] [stdout] 67 |             let mut child = Command::new(std::env::args().next().unwrap())
[INFO] [stdout]    |                 ----^^^^^
[INFO] [stdout]    |                 |
[INFO] [stdout]    |                 help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `port`
[INFO] [stdout]   --> src/simpleElection.rs:53:22
[INFO] [stdout]    |
[INFO] [stdout] 53 |     for (&server_id, port) in server_ids.iter() {
[INFO] [stdout]    |                      ^^^^ help: if this is intentional, prefix it with an underscore: `_port`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `child`
[INFO] [stdout]   --> src/simpleElection.rs:67:17
[INFO] [stdout]    |
[INFO] [stdout] 67 |             let mut child = Command::new(std::env::args().next().unwrap())
[INFO] [stdout]    |                 ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_child`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unreachable pattern
[INFO] [stdout]    --> src/simpleElection.rs:102:9
[INFO] [stdout]     |
[INFO] [stdout] 102 |         _ => println!("Default"),
[INFO] [stdout]     |         ^ no value can reach this
[INFO] [stdout]     |
[INFO] [stdout] note: multiple earlier patterns match some of the same values
[INFO] [stdout]    --> src/simpleElection.rs:102:9
[INFO] [stdout]     |
[INFO] [stdout] 100 |         Ok(_) => {},
[INFO] [stdout]     |         ----- matches some of the same values
[INFO] [stdout] 101 |         Err(e) => println!("Error: {}", e),
[INFO] [stdout]     |         ------ matches some of the same values
[INFO] [stdout] 102 |         _ => println!("Default"),
[INFO] [stdout]     |         ^ collectively making this unreachable
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unreachable pattern
[INFO] [stdout]    --> src/simpleElection.rs:108:9
[INFO] [stdout]     |
[INFO] [stdout] 108 |         _ => println!("Default case"),
[INFO] [stdout]     |         ^ no value can reach this
[INFO] [stdout]     |
[INFO] [stdout] note: multiple earlier patterns match some of the same values
[INFO] [stdout]    --> src/simpleElection.rs:108:9
[INFO] [stdout]     |
[INFO] [stdout] 106 |         Ok(_) => println!("{}", response),
[INFO] [stdout]     |         ----- matches some of the same values
[INFO] [stdout] 107 |         Err(e) => {},
[INFO] [stdout]     |         ------ matches some of the same values
[INFO] [stdout] 108 |         _ => println!("Default case"),
[INFO] [stdout]     |         ^ collectively making this unreachable
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `e`
[INFO] [stdout]   --> src/simpleElection.rs:84:13
[INFO] [stdout]    |
[INFO] [stdout] 84 |         Err(e) => {
[INFO] [stdout]    |             ^ help: if this is intentional, prefix it with an underscore: `_e`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `e`
[INFO] [stdout]    --> src/simpleElection.rs:107:13
[INFO] [stdout]     |
[INFO] [stdout] 107 |         Err(e) => {},
[INFO] [stdout]     |             ^ help: if this is intentional, prefix it with an underscore: `_e`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unreachable pattern
[INFO] [stdout]    --> src/simpleElection.rs:136:9
[INFO] [stdout]     |
[INFO] [stdout] 136 |         _ => println!("Default"),
[INFO] [stdout]     |         ^ no value can reach this
[INFO] [stdout]     |
[INFO] [stdout] note: multiple earlier patterns match some of the same values
[INFO] [stdout]    --> src/simpleElection.rs:136:9
[INFO] [stdout]     |
[INFO] [stdout] 134 |         Ok(_) => println!("Write to stream OK"),
[INFO] [stdout]     |         ----- matches some of the same values
[INFO] [stdout] 135 |         Err(e) => println!("Error: {}", e),
[INFO] [stdout]     |         ------ matches some of the same values
[INFO] [stdout] 136 |         _ => println!("Default"),
[INFO] [stdout]     |         ^ collectively making this unreachable
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unreachable pattern
[INFO] [stdout]    --> src/simpleElection.rs:142:9
[INFO] [stdout]     |
[INFO] [stdout] 142 |         _ => println!("Default case"),
[INFO] [stdout]     |         ^ no value can reach this
[INFO] [stdout]     |
[INFO] [stdout] note: multiple earlier patterns match some of the same values
[INFO] [stdout]    --> src/simpleElection.rs:142:9
[INFO] [stdout]     |
[INFO] [stdout] 140 |         Ok(_) => println!("{}", response),
[INFO] [stdout]     |         ----- matches some of the same values
[INFO] [stdout] 141 |         Err(e) => {},
[INFO] [stdout]     |         ------ matches some of the same values
[INFO] [stdout] 142 |         _ => println!("Default case"),
[INFO] [stdout]     |         ^ collectively making this unreachable
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `e`
[INFO] [stdout]    --> src/simpleElection.rs:141:13
[INFO] [stdout]     |
[INFO] [stdout] 141 |         Err(e) => {},
[INFO] [stdout]     |             ^ help: if this is intentional, prefix it with an underscore: `_e`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unreachable pattern
[INFO] [stdout]    --> src/simpleElection.rs:169:9
[INFO] [stdout]     |
[INFO] [stdout] 169 |         _ => println!("Default"),
[INFO] [stdout]     |         ^ no value can reach this
[INFO] [stdout]     |
[INFO] [stdout] note: multiple earlier patterns match some of the same values
[INFO] [stdout]    --> src/simpleElection.rs:169:9
[INFO] [stdout]     |
[INFO] [stdout] 167 |         Ok(_) => println!("Write to stream OK"),
[INFO] [stdout]     |         ----- matches some of the same values
[INFO] [stdout] 168 |         Err(e) => println!("Error: {}", e),
[INFO] [stdout]     |         ------ matches some of the same values
[INFO] [stdout] 169 |         _ => println!("Default"),
[INFO] [stdout]     |         ^ collectively making this unreachable
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unreachable pattern
[INFO] [stdout]    --> src/simpleElection.rs:175:9
[INFO] [stdout]     |
[INFO] [stdout] 175 |         _ => println!("Default case"),
[INFO] [stdout]     |         ^ no value can reach this
[INFO] [stdout]     |
[INFO] [stdout] note: multiple earlier patterns match some of the same values
[INFO] [stdout]    --> src/simpleElection.rs:175:9
[INFO] [stdout]     |
[INFO] [stdout] 173 |         Ok(_) => println!("{}", response),
[INFO] [stdout]     |         ----- matches some of the same values
[INFO] [stdout] 174 |         Err(e) => {},
[INFO] [stdout]     |         ------ matches some of the same values
[INFO] [stdout] 175 |         _ => println!("Default case"),
[INFO] [stdout]     |         ^ collectively making this unreachable
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `e`
[INFO] [stdout]    --> src/simpleElection.rs:174:13
[INFO] [stdout]     |
[INFO] [stdout] 174 |         Err(e) => {},
[INFO] [stdout]     |             ^ help: if this is intentional, prefix it with an underscore: `_e`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: module `simpleElection` should have a snake case name
[INFO] [stdout]  --> src/main.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | mod simpleElection;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^ help: convert the identifier to snake case: `simple_election`
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(non_snake_case)]` (part of `#[warn(nonstandard_style)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `PORT` should have a snake case name
[INFO] [stdout]   --> src/server.rs:43:13
[INFO] [stdout]    |
[INFO] [stdout] 43 |         let PORT = &args[1];
[INFO] [stdout]    |             ^^^^ help: convert the identifier to snake case: `port`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `RUN_ID` should have a snake case name
[INFO] [stdout]   --> src/server.rs:60:17
[INFO] [stdout]    |
[INFO] [stdout] 60 |             let RUN_ID: String = (0..length)
[INFO] [stdout]    |                 ^^^^^^ help: convert the identifier to snake case: `run_id`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `PORT` should have a snake case name
[INFO] [stdout]    --> src/server.rs:150:13
[INFO] [stdout]     |
[INFO] [stdout] 150 |         let PORT = &args[1];
[INFO] [stdout]     |             ^^^^ help: convert the identifier to snake case: `port`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `maxAging` should have a snake case name
[INFO] [stdout]   --> src/cache.rs:83:25
[INFO] [stdout]    |
[INFO] [stdout] 83 |                 let mut maxAging = 0;
[INFO] [stdout]    |                         ^^^^^^^^ help: convert the identifier to snake case: `max_aging`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `maxAgingKey` should have a snake case name
[INFO] [stdout]   --> src/cache.rs:84:25
[INFO] [stdout]    |
[INFO] [stdout] 84 |                 let mut maxAgingKey = "";
[INFO] [stdout]    |                         ^^^^^^^^^^^ help: convert the identifier to snake case: `max_aging_key`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `minFrequency` should have a snake case name
[INFO] [stdout]   --> src/cache.rs:92:25
[INFO] [stdout]    |
[INFO] [stdout] 92 |                 let mut minFrequency = std::u64::MAX;
[INFO] [stdout]    |                         ^^^^^^^^^^^^ help: convert the identifier to snake case: `min_frequency`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `minFrequencyKey` should have a snake case name
[INFO] [stdout]   --> src/cache.rs:93:25
[INFO] [stdout]    |
[INFO] [stdout] 93 |                 let mut minFrequencyKey = "";
[INFO] [stdout]    |                         ^^^^^^^^^^^^^^^ help: convert the identifier to snake case: `min_frequency_key`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]   --> src/simpleElection.rs:89:5
[INFO] [stdout]    |
[INFO] [stdout] 89 |     stream.set_read_timeout(Some(Duration::from_secs(1)));
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout]    = note: `#[warn(unused_must_use)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]    |
[INFO] [stdout] 89 |     let _ = stream.set_read_timeout(Some(Duration::from_secs(1)));
[INFO] [stdout]    |     +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> src/simpleElection.rs:123:5
[INFO] [stdout]     |
[INFO] [stdout] 123 |     stream.set_read_timeout(Some(Duration::from_secs(1)));
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 123 |     let _ = stream.set_read_timeout(Some(Duration::from_secs(1)));
[INFO] [stdout]     |     +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> src/simpleElection.rs:156:5
[INFO] [stdout]     |
[INFO] [stdout] 156 |     stream.set_read_timeout(Some(Duration::from_secs(1)));
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 156 |     let _ = stream.set_read_timeout(Some(Duration::from_secs(1)));
[INFO] [stdout]     |     +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr] warning: unused dependency `netstat`
[INFO] [stderr]  --> Cargo.toml:3:1
[INFO] [stderr]   |
[INFO] [stderr] 3 | netstat = "0.7.0"
[INFO] [stderr]   | ^^^^^^^^^^^^^^^^^
[INFO] [stderr]   |
[INFO] [stderr]   = note: `cargo::unused_dependencies` is set to `warn` by default
[INFO] [stderr] help: consider removing the dependency on `netstat`
[INFO] [stderr] warning: `tinyredis` (manifest) generated 1 warning
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 28.29s
[INFO] running `Command { std: "docker" "inspect" "66c2855f82eb2fa47bc9f3d48d63559ebcd86951807813a55a03dbbabddb365c", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "exec" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=warn" "-e" "RUSTDOCFLAGS=--cap-lints=warn" "-w" "/opt/rustwide/workdir" "--user" "0:0" "66c2855f82eb2fa47bc9f3d48d63559ebcd86951807813a55a03dbbabddb365c" "/opt/rustwide/cargo-home/bin/cargo" "+1.100.0-beta.1" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }`
[INFO] [stderr]    Compiling unicode-normalization v0.1.22
[INFO] [stderr]    Compiling unicode-bidi v0.3.13
[INFO] [stderr]    Compiling either v1.8.1
[INFO] [stderr]    Compiling syn v1.0.109
[INFO] [stderr]    Compiling predicates-core v1.0.6
[INFO] [stderr]    Compiling percent-encoding v2.2.0
[INFO] [stderr]    Compiling termtree v0.4.1
[INFO] [stderr]    Compiling once_cell v1.17.1
[INFO] [stderr]    Compiling itertools v0.10.5
[INFO] [stderr]    Compiling form_urlencoded v1.1.0
[INFO] [stderr]    Compiling anstyle v0.3.5
[INFO] [stderr]    Compiling predicates-tree v1.0.9
[INFO] [stderr]    Compiling bstr v1.4.0
[INFO] [stderr]    Compiling combine v4.6.6
[INFO] [stderr]    Compiling wait-timeout v0.2.0
[INFO] [stderr]    Compiling itoa v1.0.6
[INFO] [stderr]    Compiling ryu v1.0.13
[INFO] [stderr]    Compiling sha1_smol v1.0.0
[INFO] [stderr]    Compiling idna v0.3.0
[INFO] [stdout] warning: unused imports: `*` and `self`
[INFO] [stdout]  --> src/server.rs:2:13
[INFO] [stdout]   |
[INFO] [stdout] 2 |     cache::{self, Cache},
[INFO] [stdout]   |             ^^^^
[INFO] [stdout] 3 |     resp::RESPMessage,
[INFO] [stdout] 4 |     simpleElection::{self, *},
[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: `IpAddr` and `Ipv4Addr`
[INFO] [stdout]   --> src/server.rs:13:16
[INFO] [stdout]    |
[INFO] [stdout] 13 | use std::net::{IpAddr, Ipv4Addr};
[INFO] [stdout]    |                ^^^^^^  ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `collections::btree_map::Keys`
[INFO] [stdout]   --> src/server.rs:16:5
[INFO] [stdout]    |
[INFO] [stdout] 16 |     collections::btree_map::Keys,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `stream`
[INFO] [stdout]   --> src/server.rs:25:5
[INFO] [stdout]    |
[INFO] [stdout] 25 |     stream,
[INFO] [stdout]    |     ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around `if` condition
[INFO] [stdout]    --> src/cache.rs:136:16
[INFO] [stdout]     |
[INFO] [stdout] 136 |             if (self.cache.contains_key(k)) {
[INFO] [stdout]     |                ^                          ^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_parens)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]     |
[INFO] [stdout] 136 -             if (self.cache.contains_key(k)) {
[INFO] [stdout] 136 +             if self.cache.contains_key(k) {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated constant `std::u64::MAX`: replaced by the `MAX` associated constant on this type
[INFO] [stdout]   --> src/cache.rs:92:50
[INFO] [stdout]    |
[INFO] [stdout] 92 |                 let mut minFrequency = std::u64::MAX;
[INFO] [stdout]    |                                                  ^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(deprecated)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unreachable pattern
[INFO] [stdout]   --> src/server.rs:80:17
[INFO] [stdout]    |
[INFO] [stdout] 80 |                 _ => println!("Default"),
[INFO] [stdout]    |                 ^ no value can reach this
[INFO] [stdout]    |
[INFO] [stdout] note: multiple earlier patterns match some of the same values
[INFO] [stdout]   --> src/server.rs:80:17
[INFO] [stdout]    |
[INFO] [stdout] 78 |                 Ok(_) => {}
[INFO] [stdout]    |                 ----- matches some of the same values
[INFO] [stdout] 79 |                 Err(e) => println!("Error: {}", e),
[INFO] [stdout]    |                 ------ matches some of the same values
[INFO] [stdout] 80 |                 _ => println!("Default"),
[INFO] [stdout]    |                 ^ collectively making this unreachable
[INFO] [stdout]    = note: `#[warn(unreachable_patterns)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/server.rs:46:13
[INFO] [stdout]    |
[INFO] [stdout] 46 |         let mut keys: Vec<String> = Vec::new(); //list of keys
[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/server.rs:47:13
[INFO] [stdout]    |
[INFO] [stdout] 47 |         let mut values: Vec<String> = Vec::new(); //list of values
[INFO] [stdout]    |             ----^^^^^^
[INFO] [stdout]    |             |
[INFO] [stdout]    |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/server.rs:125:34
[INFO] [stdout]     |
[INFO] [stdout] 125 | ...                   let (mut save_k, save_v) = save;
[INFO] [stdout]     |                            ----^^^^^^
[INFO] [stdout]     |                            |
[INFO] [stdout]     |                            help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unreachable pattern
[INFO] [stdout]    --> src/server.rs:311:17
[INFO] [stdout]     |
[INFO] [stdout] 311 |                 _ => println!("Default catch"),
[INFO] [stdout]     |                 ^ no value can reach this
[INFO] [stdout]     |
[INFO] [stdout] note: multiple earlier patterns match some of the same values
[INFO] [stdout]    --> src/server.rs:311:17
[INFO] [stdout]     |
[INFO] [stdout] 309 |                 Ok(_) => println!("Write to stream OK"),
[INFO] [stdout]     |                 ----- matches some of the same values
[INFO] [stdout] 310 |                 Err(e) => println!("Error {}", e),
[INFO] [stdout]     |                 ------ matches some of the same values
[INFO] [stdout] 311 |                 _ => println!("Default catch"),
[INFO] [stdout]     |                 ^ collectively making this unreachable
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/server.rs:267:25
[INFO] [stdout]     |
[INFO] [stdout] 267 |                     let mut child = Command::new(std::env::args().next().unwrap())
[INFO] [stdout]     |                         ----^^^^^
[INFO] [stdout]     |                         |
[INFO] [stdout]     |                         help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/server.rs:290:25
[INFO] [stdout]     |
[INFO] [stdout] 290 |                     let mut resp = cache.lock().unwrap().get_key(); //get keys and values from cache
[INFO] [stdout]     |                         ----^^^^
[INFO] [stdout]     |                         |
[INFO] [stdout]     |                         help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Write`
[INFO] [stdout]   --> src/server.rs:17:16
[INFO] [stdout]    |
[INFO] [stdout] 17 |     io::{Read, Write},
[INFO] [stdout]    |                ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Read`
[INFO] [stdout]   --> src/server.rs:17:10
[INFO] [stdout]    |
[INFO] [stdout] 17 |     io::{Read, Write},
[INFO] [stdout]    |          ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `keys`
[INFO] [stdout]   --> src/server.rs:46:13
[INFO] [stdout]    |
[INFO] [stdout] 46 |         let mut keys: Vec<String> = Vec::new(); //list of keys
[INFO] [stdout]    |             ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_keys`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `values`
[INFO] [stdout]   --> src/server.rs:47:13
[INFO] [stdout]    |
[INFO] [stdout] 47 |         let mut values: Vec<String> = Vec::new(); //list of values
[INFO] [stdout]    |             ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_values`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `RUN_ID`
[INFO] [stdout]   --> src/server.rs:60:17
[INFO] [stdout]    |
[INFO] [stdout] 60 |             let RUN_ID: String = (0..length)
[INFO] [stdout]    |                 ^^^^^^ help: if this is intentional, prefix it with an underscore: `_RUN_ID`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `handle`
[INFO] [stdout]    --> src/server.rs:154:17
[INFO] [stdout]     |
[INFO] [stdout] 154 |             let handle = thread::spawn(|| {
[INFO] [stdout]     |                 ^^^^^^ help: if this is intentional, prefix it with an underscore: `_handle`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `child`
[INFO] [stdout]    --> src/server.rs:267:25
[INFO] [stdout]     |
[INFO] [stdout] 267 |                     let mut child = Command::new(std::env::args().next().unwrap())
[INFO] [stdout]     |                         ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_child`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/cache.rs:35:13
[INFO] [stdout]    |
[INFO] [stdout] 35 |         for mut c in &mut self.cache {
[INFO] [stdout]    |             ----^
[INFO] [stdout]    |             |
[INFO] [stdout]    |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `minFrequencyKey` is assigned to, but never used
[INFO] [stdout]   --> src/cache.rs:93:21
[INFO] [stdout]    |
[INFO] [stdout] 93 |                 let mut minFrequencyKey = "";
[INFO] [stdout]    |                     ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: consider using `_minFrequencyKey` instead
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `minFrequencyKey` is never read
[INFO] [stdout]   --> src/cache.rs:97:25
[INFO] [stdout]    |
[INFO] [stdout] 97 |                         minFrequencyKey = c.0;
[INFO] [stdout]    |                         ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = help: maybe it is overwritten before being read?
[INFO] [stdout]    = note: `#[warn(unused_assignments)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/simpleElection.rs:67:17
[INFO] [stdout]    |
[INFO] [stdout] 67 |             let mut child = Command::new(std::env::args().next().unwrap())
[INFO] [stdout]    |                 ----^^^^^
[INFO] [stdout]    |                 |
[INFO] [stdout]    |                 help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `port`
[INFO] [stdout]   --> src/simpleElection.rs:53:22
[INFO] [stdout]    |
[INFO] [stdout] 53 |     for (&server_id, port) in server_ids.iter() {
[INFO] [stdout]    |                      ^^^^ help: if this is intentional, prefix it with an underscore: `_port`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `child`
[INFO] [stdout]   --> src/simpleElection.rs:67:17
[INFO] [stdout]    |
[INFO] [stdout] 67 |             let mut child = Command::new(std::env::args().next().unwrap())
[INFO] [stdout]    |                 ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_child`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unreachable pattern
[INFO] [stdout]    --> src/simpleElection.rs:102:9
[INFO] [stdout]     |
[INFO] [stdout] 102 |         _ => println!("Default"),
[INFO] [stdout]     |         ^ no value can reach this
[INFO] [stdout]     |
[INFO] [stdout] note: multiple earlier patterns match some of the same values
[INFO] [stdout]    --> src/simpleElection.rs:102:9
[INFO] [stdout]     |
[INFO] [stdout] 100 |         Ok(_) => {},
[INFO] [stdout]     |         ----- matches some of the same values
[INFO] [stdout] 101 |         Err(e) => println!("Error: {}", e),
[INFO] [stdout]     |         ------ matches some of the same values
[INFO] [stdout] 102 |         _ => println!("Default"),
[INFO] [stdout]     |         ^ collectively making this unreachable
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unreachable pattern
[INFO] [stdout]    --> src/simpleElection.rs:108:9
[INFO] [stdout]     |
[INFO] [stdout] 108 |         _ => println!("Default case"),
[INFO] [stdout]     |         ^ no value can reach this
[INFO] [stdout]     |
[INFO] [stdout] note: multiple earlier patterns match some of the same values
[INFO] [stdout]    --> src/simpleElection.rs:108:9
[INFO] [stdout]     |
[INFO] [stdout] 106 |         Ok(_) => println!("{}", response),
[INFO] [stdout]     |         ----- matches some of the same values
[INFO] [stdout] 107 |         Err(e) => {},
[INFO] [stdout]     |         ------ matches some of the same values
[INFO] [stdout] 108 |         _ => println!("Default case"),
[INFO] [stdout]     |         ^ collectively making this unreachable
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `e`
[INFO] [stdout]   --> src/simpleElection.rs:84:13
[INFO] [stdout]    |
[INFO] [stdout] 84 |         Err(e) => {
[INFO] [stdout]    |             ^ help: if this is intentional, prefix it with an underscore: `_e`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `e`
[INFO] [stdout]    --> src/simpleElection.rs:107:13
[INFO] [stdout]     |
[INFO] [stdout] 107 |         Err(e) => {},
[INFO] [stdout]     |             ^ help: if this is intentional, prefix it with an underscore: `_e`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unreachable pattern
[INFO] [stdout]    --> src/simpleElection.rs:136:9
[INFO] [stdout]     |
[INFO] [stdout] 136 |         _ => println!("Default"),
[INFO] [stdout]     |         ^ no value can reach this
[INFO] [stdout]     |
[INFO] [stdout] note: multiple earlier patterns match some of the same values
[INFO] [stdout]    --> src/simpleElection.rs:136:9
[INFO] [stdout]     |
[INFO] [stdout] 134 |         Ok(_) => println!("Write to stream OK"),
[INFO] [stdout]     |         ----- matches some of the same values
[INFO] [stdout] 135 |         Err(e) => println!("Error: {}", e),
[INFO] [stdout]     |         ------ matches some of the same values
[INFO] [stdout] 136 |         _ => println!("Default"),
[INFO] [stdout]     |         ^ collectively making this unreachable
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unreachable pattern
[INFO] [stdout]    --> src/simpleElection.rs:142:9
[INFO] [stdout]     |
[INFO] [stdout] 142 |         _ => println!("Default case"),
[INFO] [stdout]     |         ^ no value can reach this
[INFO] [stdout]     |
[INFO] [stdout] note: multiple earlier patterns match some of the same values
[INFO] [stdout]    --> src/simpleElection.rs:142:9
[INFO] [stdout]     |
[INFO] [stdout] 140 |         Ok(_) => println!("{}", response),
[INFO] [stdout]     |         ----- matches some of the same values
[INFO] [stdout] 141 |         Err(e) => {},
[INFO] [stdout]     |         ------ matches some of the same values
[INFO] [stdout] 142 |         _ => println!("Default case"),
[INFO] [stdout]     |         ^ collectively making this unreachable
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `e`
[INFO] [stdout]    --> src/simpleElection.rs:141:13
[INFO] [stdout]     |
[INFO] [stdout] 141 |         Err(e) => {},
[INFO] [stdout]     |             ^ help: if this is intentional, prefix it with an underscore: `_e`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unreachable pattern
[INFO] [stdout]    --> src/simpleElection.rs:169:9
[INFO] [stdout]     |
[INFO] [stdout] 169 |         _ => println!("Default"),
[INFO] [stdout]     |         ^ no value can reach this
[INFO] [stdout]     |
[INFO] [stdout] note: multiple earlier patterns match some of the same values
[INFO] [stdout]    --> src/simpleElection.rs:169:9
[INFO] [stdout]     |
[INFO] [stdout] 167 |         Ok(_) => println!("Write to stream OK"),
[INFO] [stdout]     |         ----- matches some of the same values
[INFO] [stdout] 168 |         Err(e) => println!("Error: {}", e),
[INFO] [stdout]     |         ------ matches some of the same values
[INFO] [stdout] 169 |         _ => println!("Default"),
[INFO] [stdout]     |         ^ collectively making this unreachable
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unreachable pattern
[INFO] [stdout]    --> src/simpleElection.rs:175:9
[INFO] [stdout]     |
[INFO] [stdout] 175 |         _ => println!("Default case"),
[INFO] [stdout]     |         ^ no value can reach this
[INFO] [stdout]     |
[INFO] [stdout] note: multiple earlier patterns match some of the same values
[INFO] [stdout]    --> src/simpleElection.rs:175:9
[INFO] [stdout]     |
[INFO] [stdout] 173 |         Ok(_) => println!("{}", response),
[INFO] [stdout]     |         ----- matches some of the same values
[INFO] [stdout] 174 |         Err(e) => {},
[INFO] [stdout]     |         ------ matches some of the same values
[INFO] [stdout] 175 |         _ => println!("Default case"),
[INFO] [stdout]     |         ^ collectively making this unreachable
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `e`
[INFO] [stdout]    --> src/simpleElection.rs:174:13
[INFO] [stdout]     |
[INFO] [stdout] 174 |         Err(e) => {},
[INFO] [stdout]     |             ^ help: if this is intentional, prefix it with an underscore: `_e`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: module `simpleElection` should have a snake case name
[INFO] [stdout]  --> src/main.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | mod simpleElection;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^ help: convert the identifier to snake case: `simple_election`
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(non_snake_case)]` (part of `#[warn(nonstandard_style)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `PORT` should have a snake case name
[INFO] [stdout]   --> src/server.rs:43:13
[INFO] [stdout]    |
[INFO] [stdout] 43 |         let PORT = &args[1];
[INFO] [stdout]    |             ^^^^ help: convert the identifier to snake case: `port`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `RUN_ID` should have a snake case name
[INFO] [stdout]   --> src/server.rs:60:17
[INFO] [stdout]    |
[INFO] [stdout] 60 |             let RUN_ID: String = (0..length)
[INFO] [stdout]    |                 ^^^^^^ help: convert the identifier to snake case: `run_id`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `PORT` should have a snake case name
[INFO] [stdout]    --> src/server.rs:150:13
[INFO] [stdout]     |
[INFO] [stdout] 150 |         let PORT = &args[1];
[INFO] [stdout]     |             ^^^^ help: convert the identifier to snake case: `port`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `maxAging` should have a snake case name
[INFO] [stdout]   --> src/cache.rs:83:25
[INFO] [stdout]    |
[INFO] [stdout] 83 |                 let mut maxAging = 0;
[INFO] [stdout]    |                         ^^^^^^^^ help: convert the identifier to snake case: `max_aging`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `maxAgingKey` should have a snake case name
[INFO] [stdout]   --> src/cache.rs:84:25
[INFO] [stdout]    |
[INFO] [stdout] 84 |                 let mut maxAgingKey = "";
[INFO] [stdout]    |                         ^^^^^^^^^^^ help: convert the identifier to snake case: `max_aging_key`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `minFrequency` should have a snake case name
[INFO] [stdout]   --> src/cache.rs:92:25
[INFO] [stdout]    |
[INFO] [stdout] 92 |                 let mut minFrequency = std::u64::MAX;
[INFO] [stdout]    |                         ^^^^^^^^^^^^ help: convert the identifier to snake case: `min_frequency`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `minFrequencyKey` should have a snake case name
[INFO] [stdout]   --> src/cache.rs:93:25
[INFO] [stdout]    |
[INFO] [stdout] 93 |                 let mut minFrequencyKey = "";
[INFO] [stdout]    |                         ^^^^^^^^^^^^^^^ help: convert the identifier to snake case: `min_frequency_key`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]   --> src/simpleElection.rs:89:5
[INFO] [stdout]    |
[INFO] [stdout] 89 |     stream.set_read_timeout(Some(Duration::from_secs(1)));
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout]    = note: `#[warn(unused_must_use)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]    |
[INFO] [stdout] 89 |     let _ = stream.set_read_timeout(Some(Duration::from_secs(1)));
[INFO] [stdout]    |     +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> src/simpleElection.rs:123:5
[INFO] [stdout]     |
[INFO] [stdout] 123 |     stream.set_read_timeout(Some(Duration::from_secs(1)));
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 123 |     let _ = stream.set_read_timeout(Some(Duration::from_secs(1)));
[INFO] [stdout]     |     +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> src/simpleElection.rs:156:5
[INFO] [stdout]     |
[INFO] [stdout] 156 |     stream.set_read_timeout(Some(Duration::from_secs(1)));
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 156 |     let _ = stream.set_read_timeout(Some(Duration::from_secs(1)));
[INFO] [stdout]     |     +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]    Compiling url v2.3.1
[INFO] [stderr]    Compiling predicates v3.0.2
[INFO] [stderr]    Compiling assert_cmd v2.0.10
[INFO] [stderr]    Compiling ctor v0.1.26
[INFO] [stderr]    Compiling redis v0.22.3
[INFO] [stdout] error[E0277]: the trait bound `!: FromRedisValue` is not satisfied
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/redis-0.22.3/src/script.rs:150:37
[INFO] [stdout]     |
[INFO] [stdout] 150 |                     self.load_cmd().query(con)?;
[INFO] [stdout]     |                                     ^^^^^ the trait `FromRedisValue` is not implemented for `!`
[INFO] [stdout]     |
[INFO] [stdout]     = help: the following other types implement trait `FromRedisValue`:
[INFO] [stdout]               ()
[INFO] [stdout]               (T12,)
[INFO] [stdout]               (T11, T12)
[INFO] [stdout]               (T10, T11, T12)
[INFO] [stdout]               (T9, T10, T11, T12)
[INFO] [stdout]               (T8, T9, T10, T11, T12)
[INFO] [stdout]               (T7, T8, T9, T10, T11, T12)
[INFO] [stdout]               (T6, T7, T8, T9, T10, T11, T12)
[INFO] [stdout]             and 41 others
[INFO] [stdout]     = note: this error might have been caused by changes to Rust's type-inference algorithm (see issue #148922 <https://github.com/rust-lang/rust/issues/148922> for more information)
[INFO] [stdout]     = help: you might have intended to use the type `()` here instead
[INFO] [stdout] note: required by a bound in `Cmd::query`
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/redis-0.22.3/src/cmd.rs:367:21
[INFO] [stdout]     |
[INFO] [stdout] 277 | impl Cmd {
[INFO] [stdout] ...
[INFO] [stdout] 367 |     pub fn query<T: FromRedisValue>(&self, con: &mut dyn ConnectionLike) -> RedisResult<T> {
[INFO] [stdout]     |                     ^^^^^^^^^^^^^^ required by this bound in `Cmd::query`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] For more information about this error, try `rustc --explain E0277`.
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `redis` (lib) due to 1 previous error; 1 warning emitted
[INFO] [stderr] warning: unused dependency `netstat`
[INFO] [stderr]  --> Cargo.toml:3:1
[INFO] [stderr]   |
[INFO] [stderr] 3 | netstat = "0.7.0"
[INFO] [stderr]   | ^^^^^^^^^^^^^^^^^
[INFO] [stderr]   |
[INFO] [stderr]   = note: `cargo::unused_dependencies` is set to `warn` by default
[INFO] [stderr] help: consider removing the dependency on `netstat`
[INFO] [stderr] warning: `tinyredis` (manifest) generated 1 warning
[INFO] running `Command { std: "docker" "inspect" "66c2855f82eb2fa47bc9f3d48d63559ebcd86951807813a55a03dbbabddb365c", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "66c2855f82eb2fa47bc9f3d48d63559ebcd86951807813a55a03dbbabddb365c", kill_on_drop: false }`
[INFO] [stdout] 66c2855f82eb2fa47bc9f3d48d63559ebcd86951807813a55a03dbbabddb365c
