[INFO] cloning repository https://github.com/claudinoac/social-indexer
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/claudinoac/social-indexer" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fclaudinoac%2Fsocial-indexer", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fclaudinoac%2Fsocial-indexer'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] ceb7ae26aea406c9b8b88ea5e269c07b1caaac97
[INFO] checking claudinoac/social-indexer against 1.95.0 for pr-155915
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fclaudinoac%2Fsocial-indexer" "/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/claudinoac/social-indexer
[INFO] finished tweaking git repo https://github.com/claudinoac/social-indexer
[INFO] tweaked toml for git repo https://github.com/claudinoac/social-indexer written to /workspace/builds/worker-2-tc1/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/claudinoac/social-indexer 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/claudinoac/social-indexer 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]     Updating git repository `https://github.com/nimrodshn/btree`
[INFO] [stderr]     Updating crates.io index
[INFO] [stderr]  Downloading crates ...
[INFO] [stderr]   Downloaded historian v3.0.11
[INFO] [stderr]   Downloaded maybe-async v0.2.7
[INFO] [stderr]   Downloaded roux v2.2.6
[INFO] [stderr]   Downloaded sled_sync v0.2.2
[INFO] [stderr]   Downloaded bytecheck v0.7.0
[INFO] [stderr]   Downloaded bytecheck_derive v0.6.10
[INFO] [stderr]   Downloaded bytecheck_derive v0.7.0
[INFO] [stderr]   Downloaded bytecheck v0.6.10
[INFO] [stderr]   Downloaded rkyv_derive v0.7.41
[INFO] [stderr]   Downloaded rsdb v0.12.1
[INFO] [stderr]   Downloaded coco v0.2.1
[INFO] [stderr]   Downloaded bincode v0.8.0
[INFO] [stderr]   Downloaded rkyv v0.7.41
[INFO] [stderr]   Downloaded rustix v0.37.6
[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] a82859eb7ae62b1a408eb58d59e5e082dc0c2911dfde04b7760231f118e97ace
[INFO] running `Command { std: "docker" "start" "-a" "a82859eb7ae62b1a408eb58d59e5e082dc0c2911dfde04b7760231f118e97ace", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "a82859eb7ae62b1a408eb58d59e5e082dc0c2911dfde04b7760231f118e97ace", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "a82859eb7ae62b1a408eb58d59e5e082dc0c2911dfde04b7760231f118e97ace", kill_on_drop: false }`
[INFO] [stdout] a82859eb7ae62b1a408eb58d59e5e082dc0c2911dfde04b7760231f118e97ace
[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] 90c069b3fdb0bbfa41747fc15ebb9310bfeb8a613c3247f742060cecfa2bdccb
[INFO] running `Command { std: "docker" "start" "-a" "90c069b3fdb0bbfa41747fc15ebb9310bfeb8a613c3247f742060cecfa2bdccb", kill_on_drop: false }`
[INFO] [stderr]    Compiling libc v0.2.140
[INFO] [stderr]    Compiling proc-macro2 v1.0.54
[INFO] [stderr]    Compiling quote v1.0.26
[INFO] [stderr]    Compiling syn v1.0.109
[INFO] [stderr]    Compiling serde_derive v1.0.159
[INFO] [stderr]    Compiling ahash v0.7.6
[INFO] [stderr]    Compiling openssl-sys v0.9.84
[INFO] [stderr]    Compiling serde v1.0.159
[INFO] [stderr]    Compiling tokio v1.27.0
[INFO] [stderr]    Compiling io-lifetimes v1.0.9
[INFO] [stderr]    Compiling rustix v0.37.6
[INFO] [stderr]     Checking tracing-core v0.1.30
[INFO] [stderr]    Compiling num-traits v0.2.15
[INFO] [stderr]    Compiling openssl v0.10.49
[INFO] [stderr]    Compiling futures-util v0.3.28
[INFO] [stderr]     Checking linux-raw-sys v0.3.1
[INFO] [stderr]    Compiling indexmap v1.9.3
[INFO] [stderr]    Compiling memoffset v0.5.6
[INFO] [stderr]    Compiling arrayvec v0.4.12
[INFO] [stderr]    Compiling futures-channel v0.3.28
[INFO] [stderr]     Checking nodrop v0.1.14
[INFO] [stderr]     Checking want v0.3.0
[INFO] [stderr]    Compiling native-tls v0.2.11
[INFO] [stderr]     Checking crossbeam-utils v0.6.6
[INFO] [stderr]     Checking simdutf8 v0.1.4
[INFO] [stderr]    Compiling bytecheck v0.6.10
[INFO] [stderr]     Checking unicode-bidi v0.3.13
[INFO] [stderr]    Compiling serde_json v1.0.95
[INFO] [stderr]     Checking anstyle-parse v0.1.1
[INFO] [stderr]     Checking concolor-query v0.3.3
[INFO] [stderr]    Compiling rend v0.4.0
[INFO] [stderr]     Checking tracing v0.1.37
[INFO] [stderr]     Checking concolor-override v1.0.0
[INFO] [stderr]     Checking anstyle v0.3.5
[INFO] [stderr]     Checking unicode-width v0.1.10
[INFO] [stderr]     Checking ipnet v2.7.2
[INFO] [stderr]    Compiling rkyv v0.7.41
[INFO] [stderr]     Checking scopeguard v0.3.3
[INFO] [stderr]     Checking clap_lex v0.4.1
[INFO] [stderr]    Compiling bytecheck v0.7.0
[INFO] [stderr]     Checking seahash v4.1.0
[INFO] [stderr]     Checking coco v0.2.1
[INFO] [stderr]     Checking crossbeam v0.3.2
[INFO] [stderr]     Checking idna v0.3.0
[INFO] [stderr]     Checking shell-words v1.1.0
[INFO] [stderr]     Checking zeroize v1.6.0
[INFO] [stderr]     Checking iana-time-zone v0.1.56
[INFO] [stderr]     Checking lazy_static v0.2.11
[INFO] [stderr]     Checking crossbeam-epoch v0.7.2
[INFO] [stderr]    Compiling syn v2.0.12
[INFO] [stderr]     Checking sled_sync v0.2.2
[INFO] [stderr]     Checking historian v3.0.11
[INFO] [stderr]     Checking url v2.3.1
[INFO] [stderr]     Checking num-traits v0.1.43
[INFO] [stderr]     Checking num-integer v0.1.45
[INFO] [stderr]     Checking getrandom v0.2.9
[INFO] [stderr]     Checking num_cpus v1.15.0
[INFO] [stderr]     Checking mio v0.8.6
[INFO] [stderr]     Checking socket2 v0.4.9
[INFO] [stderr]     Checking time v0.1.45
[INFO] [stderr]     Checking memmap v0.7.0
[INFO] [stderr]     Checking console v0.15.5
[INFO] [stderr]     Checking chrono v0.4.24
[INFO] [stderr]     Checking hashbrown v0.12.3
[INFO] [stderr]     Checking is-terminal v0.4.6
[INFO] [stderr]     Checking tempfile v3.5.0
[INFO] [stderr]     Checking anstream v0.2.6
[INFO] [stderr]     Checking dialoguer v0.10.4
[INFO] [stderr]     Checking clap_builder v4.2.1
[INFO] [stderr]    Compiling openssl-macros v0.1.1
[INFO] [stderr]    Compiling clap_derive v4.2.0
[INFO] [stderr]    Compiling ptr_meta_derive v0.1.4
[INFO] [stderr]    Compiling bytecheck_derive v0.6.10
[INFO] [stderr]    Compiling rkyv_derive v0.7.41
[INFO] [stderr]    Compiling bytecheck_derive v0.7.0
[INFO] [stderr]    Compiling maybe-async v0.2.7
[INFO] [stderr]     Checking ptr_meta v0.1.4
[INFO] [stderr]     Checking tokio-util v0.7.7
[INFO] [stderr]     Checking h2 v0.3.16
[INFO] [stderr]     Checking clap v4.2.1
[INFO] [stderr]     Checking tokio-native-tls v0.3.1
[INFO] [stderr]     Checking hyper v0.14.25
[INFO] [stderr]     Checking serde_urlencoded v0.7.1
[INFO] [stderr]     Checking uuid v0.8.2
[INFO] [stderr]     Checking bincode v0.8.0
[INFO] [stderr]     Checking btree v0.1.0 (https://github.com/nimrodshn/btree#c620a410)
[INFO] [stderr]     Checking rsdb v0.12.1
[INFO] [stderr]     Checking hyper-tls v0.5.0
[INFO] [stderr]     Checking reqwest v0.11.16
[INFO] [stderr]     Checking roux v2.2.6
[INFO] [stderr]     Checking tweet_indexer v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unused import: `std::mem`
[INFO] [stdout]  --> src/main.rs:2:5
[INFO] [stdout]   |
[INFO] [stdout] 2 | use std::mem;
[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: `PathBuf` and `Path`
[INFO] [stdout]  --> src/main.rs:4:17
[INFO] [stdout]   |
[INFO] [stdout] 4 | use std::path::{PathBuf, Path};
[INFO] [stdout]   |                 ^^^^^^^  ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `reqwest::Error`
[INFO] [stdout]  --> src/main.rs:5:5
[INFO] [stdout]   |
[INFO] [stdout] 5 | use reqwest::Error;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::collections::HashMap`
[INFO] [stdout]  --> src/main.rs:6:5
[INFO] [stdout]   |
[INFO] [stdout] 6 | use std::collections::HashMap;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::reddit::RedditUser`
[INFO] [stdout]  --> src/user.rs:2:5
[INFO] [stdout]   |
[INFO] [stdout] 2 | use crate::reddit::RedditUser;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::env`
[INFO] [stdout]  --> src/reddit.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | use std::env;
[INFO] [stdout]   |     ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Path`
[INFO] [stdout]  --> src/db_driver.rs:3:26
[INFO] [stdout]   |
[INFO] [stdout] 3 | use std::path::{PathBuf, Path};
[INFO] [stdout]   |                          ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Cursor`
[INFO] [stdout]  --> src/db_driver.rs:4:15
[INFO] [stdout]   |
[INFO] [stdout] 4 | use std::io::{Cursor, Read, Write, SeekFrom, Result, Error, ErrorKind, BufReader};
[INFO] [stdout]   |               ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `LittleEndian` and `ReadBytesExt`
[INFO] [stdout]   --> src/db_driver.rs:10:17
[INFO] [stdout]    |
[INFO] [stdout] 10 | use byteorder::{ReadBytesExt, LittleEndian};
[INFO] [stdout]    |                 ^^^^^^^^^^^^  ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `KeyValuePair`
[INFO] [stdout]   --> src/db_driver.rs:12:24
[INFO] [stdout]    |
[INFO] [stdout] 12 | use btree::node_type::{KeyValuePair};
[INFO] [stdout]    |                        ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `BTreeBuilder`
[INFO] [stdout]   --> src/db_driver.rs:13:20
[INFO] [stdout]    |
[INFO] [stdout] 13 | use btree::btree::{BTreeBuilder};
[INFO] [stdout]    |                    ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Row`
[INFO] [stdout]   --> src/main.rs:12:17
[INFO] [stdout]    |
[INFO] [stdout] 12 | use db_driver::{Row};
[INFO] [stdout]    |                 ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `KeyValuePair`
[INFO] [stdout]   --> src/main.rs:15:24
[INFO] [stdout]    |
[INFO] [stdout] 15 | use btree::node_type::{KeyValuePair};
[INFO] [stdout]    |                        ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `BTreeBuilder`
[INFO] [stdout]   --> src/main.rs:16:20
[INFO] [stdout]    |
[INFO] [stdout] 16 | use btree::btree::{BTreeBuilder};
[INFO] [stdout]    |                    ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::mem`
[INFO] [stdout]  --> src/main.rs:2:5
[INFO] [stdout]   |
[INFO] [stdout] 2 | use std::mem;
[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: `PathBuf` and `Path`
[INFO] [stdout]  --> src/main.rs:4:17
[INFO] [stdout]   |
[INFO] [stdout] 4 | use std::path::{PathBuf, Path};
[INFO] [stdout]   |                 ^^^^^^^  ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `reqwest::Error`
[INFO] [stdout]  --> src/main.rs:5:5
[INFO] [stdout]   |
[INFO] [stdout] 5 | use reqwest::Error;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::collections::HashMap`
[INFO] [stdout]  --> src/main.rs:6:5
[INFO] [stdout]   |
[INFO] [stdout] 6 | use std::collections::HashMap;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::reddit::RedditUser`
[INFO] [stdout]  --> src/user.rs:2:5
[INFO] [stdout]   |
[INFO] [stdout] 2 | use crate::reddit::RedditUser;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::env`
[INFO] [stdout]  --> src/reddit.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | use std::env;
[INFO] [stdout]   |     ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Path`
[INFO] [stdout]  --> src/db_driver.rs:3:26
[INFO] [stdout]   |
[INFO] [stdout] 3 | use std::path::{PathBuf, Path};
[INFO] [stdout]   |                          ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Cursor`
[INFO] [stdout]  --> src/db_driver.rs:4:15
[INFO] [stdout]   |
[INFO] [stdout] 4 | use std::io::{Cursor, Read, Write, SeekFrom, Result, Error, ErrorKind, BufReader};
[INFO] [stdout]   |               ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `LittleEndian` and `ReadBytesExt`
[INFO] [stdout]   --> src/db_driver.rs:10:17
[INFO] [stdout]    |
[INFO] [stdout] 10 | use byteorder::{ReadBytesExt, LittleEndian};
[INFO] [stdout]    |                 ^^^^^^^^^^^^  ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `KeyValuePair`
[INFO] [stdout]   --> src/db_driver.rs:12:24
[INFO] [stdout]    |
[INFO] [stdout] 12 | use btree::node_type::{KeyValuePair};
[INFO] [stdout]    |                        ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `BTreeBuilder`
[INFO] [stdout]   --> src/db_driver.rs:13:20
[INFO] [stdout]    |
[INFO] [stdout] 13 | use btree::btree::{BTreeBuilder};
[INFO] [stdout]    |                    ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Row`
[INFO] [stdout]   --> src/main.rs:12:17
[INFO] [stdout]    |
[INFO] [stdout] 12 | use db_driver::{Row};
[INFO] [stdout]    |                 ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `KeyValuePair`
[INFO] [stdout]   --> src/main.rs:15:24
[INFO] [stdout]    |
[INFO] [stdout] 15 | use btree::node_type::{KeyValuePair};
[INFO] [stdout]    |                        ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `BTreeBuilder`
[INFO] [stdout]   --> src/main.rs:16:20
[INFO] [stdout]    |
[INFO] [stdout] 16 | use btree::btree::{BTreeBuilder};
[INFO] [stdout]    |                    ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `reddit::chrono::TimeZone::timestamp`: use `timestamp_opt()` instead
[INFO] [stdout]   --> src/reddit.rs:44:23
[INFO] [stdout]    |
[INFO] [stdout] 44 |             date: Utc.timestamp(self.created as i64, 0).format("%Y-%m-%d %H:%M").to_string(),
[INFO] [stdout]    |                       ^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(deprecated)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `reddit::chrono::TimeZone::timestamp`: use `timestamp_opt()` instead
[INFO] [stdout]   --> src/reddit.rs:55:29
[INFO] [stdout]    |
[INFO] [stdout] 55 |             created_at: Utc.timestamp(self.created.unwrap_or(0 as f32) as i64, 0).format("%Y-%m-%d %H:%M").to_string(),
[INFO] [stdout]    |                             ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unreachable expression
[INFO] [stdout]   --> src/db_driver.rs:40:9
[INFO] [stdout]    |
[INFO] [stdout] 40 |            return match item_type.as_str() {
[INFO] [stdout]    |  __________^      -
[INFO] [stdout]    | | ________________|
[INFO] [stdout] 41 | ||             "post" => {
[INFO] [stdout] 42 | ||                 let (entry, cursor) = Post::from_bytes(bytes);
[INFO] [stdout] 43 | ||                 return (Row::Post(entry), cursor);
[INFO] [stdout] ...  ||
[INFO] [stdout] 49 | ||             _ => panic!("Cannot decode binary data for {:}", item_type)
[INFO] [stdout] 50 | ||         };
[INFO] [stdout]    | ||         ^
[INFO] [stdout]    | ||_________|
[INFO] [stdout]    |  |_________unreachable expression
[INFO] [stdout]    |            any code following this `match` expression is unreachable, as all arms diverge
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unreachable_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `reddit::chrono::TimeZone::timestamp`: use `timestamp_opt()` instead
[INFO] [stdout]   --> src/reddit.rs:44:23
[INFO] [stdout]    |
[INFO] [stdout] 44 |             date: Utc.timestamp(self.created as i64, 0).format("%Y-%m-%d %H:%M").to_string(),
[INFO] [stdout]    |                       ^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(deprecated)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `reddit::chrono::TimeZone::timestamp`: use `timestamp_opt()` instead
[INFO] [stdout]   --> src/reddit.rs:55:29
[INFO] [stdout]    |
[INFO] [stdout] 55 |             created_at: Utc.timestamp(self.created.unwrap_or(0 as f32) as i64, 0).format("%Y-%m-%d %H:%M").to_string(),
[INFO] [stdout]    |                             ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unreachable expression
[INFO] [stdout]   --> src/db_driver.rs:40:9
[INFO] [stdout]    |
[INFO] [stdout] 40 |            return match item_type.as_str() {
[INFO] [stdout]    |  __________^      -
[INFO] [stdout]    | | ________________|
[INFO] [stdout] 41 | ||             "post" => {
[INFO] [stdout] 42 | ||                 let (entry, cursor) = Post::from_bytes(bytes);
[INFO] [stdout] 43 | ||                 return (Row::Post(entry), cursor);
[INFO] [stdout] ...  ||
[INFO] [stdout] 49 | ||             _ => panic!("Cannot decode binary data for {:}", item_type)
[INFO] [stdout] 50 | ||         };
[INFO] [stdout]    | ||         ^
[INFO] [stdout]    | ||_________|
[INFO] [stdout]    |  |_________unreachable expression
[INFO] [stdout]    |            any code following this `match` expression is unreachable, as all arms diverge
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unreachable_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `rest`
[INFO] [stdout]   --> src/db_driver.rs:34:21
[INFO] [stdout]    |
[INFO] [stdout] 34 |     let (int_bytes, rest) = input.split_at(std::mem::size_of::<i32>());
[INFO] [stdout]    |                     ^^^^ help: if this is intentional, prefix it with an underscore: `_rest`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unreachable pattern
[INFO] [stdout]   --> src/db_driver.rs:57:13
[INFO] [stdout]    |
[INFO] [stdout] 57 |             _ => panic!("well")
[INFO] [stdout]    |             ^ no value can reach this
[INFO] [stdout]    |
[INFO] [stdout] note: multiple earlier patterns match some of the same values
[INFO] [stdout]   --> src/db_driver.rs:57:13
[INFO] [stdout]    |
[INFO] [stdout] 55 |             Row::User(row) => row.to_bytes().into_inner().to_vec(),
[INFO] [stdout]    |             -------------- matches some of the same values
[INFO] [stdout] 56 |             Row::Post(row) => row.to_bytes().into_inner().to_vec(),
[INFO] [stdout]    |             -------------- matches some of the same values
[INFO] [stdout] 57 |             _ => panic!("well")
[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/db_driver.rs:97:13
[INFO] [stdout]    |
[INFO] [stdout] 97 |         let mut file = Table::open(&self.name, &self.file_path, &self.item_type, false, false); 
[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/db_driver.rs:134:13
[INFO] [stdout]     |
[INFO] [stdout] 134 |         let mut byte_position = &byte_position[..]; 
[INFO] [stdout]     |             ----^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `source_id`
[INFO] [stdout]    --> src/db_driver.rs:139:41
[INFO] [stdout]     |
[INFO] [stdout] 139 |     pub fn write_to_pk_index(&mut self, source_id: &str, disk_position: i32) -> StdResult<(), BTreeError> {
[INFO] [stdout]     |                                         ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_source_id`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `disk_position`
[INFO] [stdout]    --> src/db_driver.rs:139:58
[INFO] [stdout]     |
[INFO] [stdout] 139 |     pub fn write_to_pk_index(&mut self, source_id: &str, disk_position: i32) -> StdResult<(), BTreeError> {
[INFO] [stdout]     |                                                          ^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_disk_position`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `tree`
[INFO] [stdout]    --> src/db_driver.rs:148:13
[INFO] [stdout]     |
[INFO] [stdout] 148 |         let tree = rsdb::Config::default()
[INFO] [stdout]     |             ^^^^ help: if this is intentional, prefix it with an underscore: `_tree`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/db_driver.rs:155:13
[INFO] [stdout]     |
[INFO] [stdout] 155 |         let mut file = Table::open(&self.name, &self.file_path, &self.item_type, false, false); 
[INFO] [stdout]     |             ----^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `buffer_offset` is never read
[INFO] [stdout]    --> src/db_driver.rs:160:38
[INFO] [stdout]     |
[INFO] [stdout] 160 |         let mut buffer_offset: i64 = 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: unused variable: `item_type`
[INFO] [stdout]    --> src/db_driver.rs:184:41
[INFO] [stdout]     |
[INFO] [stdout] 184 |     pub fn open(name: &str, path: &str, item_type: &str, append: bool, write: bool) -> File {
[INFO] [stdout]     |                                         ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_item_type`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `reddituser`
[INFO] [stdout]   --> src/main.rs:54:9
[INFO] [stdout]    |
[INFO] [stdout] 54 |     let reddituser = reddit::get_reddit_user(&client, "claudinoac");
[INFO] [stdout]    |         ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_reddituser`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `size`
[INFO] [stdout]   --> src/main.rs:83:9
[INFO] [stdout]    |
[INFO] [stdout] 83 |     let size = entries.len();
[INFO] [stdout]    |         ^^^^ help: if this is intentional, prefix it with an underscore: `_size`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `posts` and `new` are never used
[INFO] [stdout]   --> src/user.rs:35:8
[INFO] [stdout]    |
[INFO] [stdout] 34 | impl User {
[INFO] [stdout]    | --------- associated items in this implementation
[INFO] [stdout] 35 |     fn posts(&self) -> Result<Option<post::Post>> {
[INFO] [stdout]    |        ^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 39 |     pub fn new(
[INFO] [stdout]    |            ^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `new` is never used
[INFO] [stdout]   --> src/post.rs:35:12
[INFO] [stdout]    |
[INFO] [stdout] 34 | impl Post {
[INFO] [stdout]    | --------- associated function in this implementation
[INFO] [stdout] 35 |     pub fn new(content: String, username: String) -> Post {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `file` is never read
[INFO] [stdout]   --> src/db_driver.rs:22:5
[INFO] [stdout]    |
[INFO] [stdout] 20 | pub struct Table {
[INFO] [stdout]    |            ----- field in this struct
[INFO] [stdout] 21 |     name: String,
[INFO] [stdout] 22 |     file: File,
[INFO] [stdout]    |     ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `get` and `print_pk_index_tree` are never used
[INFO] [stdout]    --> src/db_driver.rs:96:12
[INFO] [stdout]     |
[INFO] [stdout]  64 | impl Table {
[INFO] [stdout]     | ---------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout]  96 |     pub fn get(&mut self, index: i32) -> Result<Row> {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 147 |     pub fn print_pk_index_tree(&mut self) -> StdResult<(), BTreeError> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: for loop over a `Result`. This is more readably written as an `if let` statement
[INFO] [stdout]   --> src/main.rs:74:17
[INFO] [stdout]    |
[INFO] [stdout] 74 |     for item in entries {
[INFO] [stdout]    |                 ^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(for_loops_over_fallibles)]` on by default
[INFO] [stdout] help: to check pattern in a loop use `while let`
[INFO] [stdout]    |
[INFO] [stdout] 74 -     for item in entries {
[INFO] [stdout] 74 +     while let Ok(item) = entries {
[INFO] [stdout]    |
[INFO] [stdout] help: consider using `if let` to clear intent
[INFO] [stdout]    |
[INFO] [stdout] 74 -     for item in entries {
[INFO] [stdout] 74 +     if let Ok(item) = entries {
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> src/main.rs:150:13
[INFO] [stdout]     |
[INFO] [stdout] 150 |             list_all_posts();
[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] 150 |             let _ = list_all_posts();
[INFO] [stdout]     |             +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> src/main.rs:156:13
[INFO] [stdout]     |
[INFO] [stdout] 156 |             search_reddit_posts();
[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 _ = search_reddit_posts();
[INFO] [stdout]     |             +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> src/main.rs:159:13
[INFO] [stdout]     |
[INFO] [stdout] 159 |             get_row_by_disk_position();
[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] 159 |             let _ = get_row_by_disk_position();
[INFO] [stdout]     |             +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> src/main.rs:162:13
[INFO] [stdout]     |
[INFO] [stdout] 162 |             get_row_by_source_id();
[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] 162 |             let _ = get_row_by_source_id();
[INFO] [stdout]     |             +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]   --> src/db_driver.rs:88:9
[INFO] [stdout]    |
[INFO] [stdout] 88 | /         match row {
[INFO] [stdout] 89 | |             Row::User(user) => self.write_to_pk_index(&user.source_id, position),
[INFO] [stdout] 90 | |             Row::Post(post) => self.write_to_pk_index(&post.source_id, position),
[INFO] [stdout] 91 | |         };
[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] 88 |         let _ = match row {
[INFO] [stdout]    |         +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: call to `.clone()` on a reference in this situation does nothing
[INFO] [stdout]    --> src/db_driver.rs:132:37
[INFO] [stdout]     |
[INFO] [stdout] 132 |         let source_bytes = source_id.clone().as_bytes();
[INFO] [stdout]     |                                     ^^^^^^^^ help: remove this redundant call
[INFO] [stdout]     |
[INFO] [stdout]     = note: the type `str` does not implement `Clone`, so calling `clone` on `&str` copies the reference, which does not do anything and can be removed
[INFO] [stdout]     = note: `#[warn(noop_method_call)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `rest`
[INFO] [stdout]   --> src/db_driver.rs:34:21
[INFO] [stdout]    |
[INFO] [stdout] 34 |     let (int_bytes, rest) = input.split_at(std::mem::size_of::<i32>());
[INFO] [stdout]    |                     ^^^^ help: if this is intentional, prefix it with an underscore: `_rest`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unreachable pattern
[INFO] [stdout]   --> src/db_driver.rs:57:13
[INFO] [stdout]    |
[INFO] [stdout] 57 |             _ => panic!("well")
[INFO] [stdout]    |             ^ no value can reach this
[INFO] [stdout]    |
[INFO] [stdout] note: multiple earlier patterns match some of the same values
[INFO] [stdout]   --> src/db_driver.rs:57:13
[INFO] [stdout]    |
[INFO] [stdout] 55 |             Row::User(row) => row.to_bytes().into_inner().to_vec(),
[INFO] [stdout]    |             -------------- matches some of the same values
[INFO] [stdout] 56 |             Row::Post(row) => row.to_bytes().into_inner().to_vec(),
[INFO] [stdout]    |             -------------- matches some of the same values
[INFO] [stdout] 57 |             _ => panic!("well")
[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/db_driver.rs:97:13
[INFO] [stdout]    |
[INFO] [stdout] 97 |         let mut file = Table::open(&self.name, &self.file_path, &self.item_type, false, false); 
[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/db_driver.rs:134:13
[INFO] [stdout]     |
[INFO] [stdout] 134 |         let mut byte_position = &byte_position[..]; 
[INFO] [stdout]     |             ----^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `source_id`
[INFO] [stdout]    --> src/db_driver.rs:139:41
[INFO] [stdout]     |
[INFO] [stdout] 139 |     pub fn write_to_pk_index(&mut self, source_id: &str, disk_position: i32) -> StdResult<(), BTreeError> {
[INFO] [stdout]     |                                         ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_source_id`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `disk_position`
[INFO] [stdout]    --> src/db_driver.rs:139:58
[INFO] [stdout]     |
[INFO] [stdout] 139 |     pub fn write_to_pk_index(&mut self, source_id: &str, disk_position: i32) -> StdResult<(), BTreeError> {
[INFO] [stdout]     |                                                          ^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_disk_position`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `tree`
[INFO] [stdout]    --> src/db_driver.rs:148:13
[INFO] [stdout]     |
[INFO] [stdout] 148 |         let tree = rsdb::Config::default()
[INFO] [stdout]     |             ^^^^ help: if this is intentional, prefix it with an underscore: `_tree`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/db_driver.rs:155:13
[INFO] [stdout]     |
[INFO] [stdout] 155 |         let mut file = Table::open(&self.name, &self.file_path, &self.item_type, false, false); 
[INFO] [stdout]     |             ----^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `buffer_offset` is never read
[INFO] [stdout]    --> src/db_driver.rs:160:38
[INFO] [stdout]     |
[INFO] [stdout] 160 |         let mut buffer_offset: i64 = 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: unused variable: `item_type`
[INFO] [stdout]    --> src/db_driver.rs:184:41
[INFO] [stdout]     |
[INFO] [stdout] 184 |     pub fn open(name: &str, path: &str, item_type: &str, append: bool, write: bool) -> File {
[INFO] [stdout]     |                                         ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_item_type`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `reddituser`
[INFO] [stdout]   --> src/main.rs:54:9
[INFO] [stdout]    |
[INFO] [stdout] 54 |     let reddituser = reddit::get_reddit_user(&client, "claudinoac");
[INFO] [stdout]    |         ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_reddituser`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `size`
[INFO] [stdout]   --> src/main.rs:83:9
[INFO] [stdout]    |
[INFO] [stdout] 83 |     let size = entries.len();
[INFO] [stdout]    |         ^^^^ help: if this is intentional, prefix it with an underscore: `_size`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `posts` and `new` are never used
[INFO] [stdout]   --> src/user.rs:35:8
[INFO] [stdout]    |
[INFO] [stdout] 34 | impl User {
[INFO] [stdout]    | --------- associated items in this implementation
[INFO] [stdout] 35 |     fn posts(&self) -> Result<Option<post::Post>> {
[INFO] [stdout]    |        ^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 39 |     pub fn new(
[INFO] [stdout]    |            ^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `new` is never used
[INFO] [stdout]   --> src/post.rs:35:12
[INFO] [stdout]    |
[INFO] [stdout] 34 | impl Post {
[INFO] [stdout]    | --------- associated function in this implementation
[INFO] [stdout] 35 |     pub fn new(content: String, username: String) -> Post {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `file` is never read
[INFO] [stdout]   --> src/db_driver.rs:22:5
[INFO] [stdout]    |
[INFO] [stdout] 20 | pub struct Table {
[INFO] [stdout]    |            ----- field in this struct
[INFO] [stdout] 21 |     name: String,
[INFO] [stdout] 22 |     file: File,
[INFO] [stdout]    |     ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `get` and `print_pk_index_tree` are never used
[INFO] [stdout]    --> src/db_driver.rs:96:12
[INFO] [stdout]     |
[INFO] [stdout]  64 | impl Table {
[INFO] [stdout]     | ---------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout]  96 |     pub fn get(&mut self, index: i32) -> Result<Row> {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 147 |     pub fn print_pk_index_tree(&mut self) -> StdResult<(), BTreeError> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: for loop over a `Result`. This is more readably written as an `if let` statement
[INFO] [stdout]   --> src/main.rs:74:17
[INFO] [stdout]    |
[INFO] [stdout] 74 |     for item in entries {
[INFO] [stdout]    |                 ^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(for_loops_over_fallibles)]` on by default
[INFO] [stdout] help: to check pattern in a loop use `while let`
[INFO] [stdout]    |
[INFO] [stdout] 74 -     for item in entries {
[INFO] [stdout] 74 +     while let Ok(item) = entries {
[INFO] [stdout]    |
[INFO] [stdout] help: consider using `if let` to clear intent
[INFO] [stdout]    |
[INFO] [stdout] 74 -     for item in entries {
[INFO] [stdout] 74 +     if let Ok(item) = entries {
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> src/main.rs:150:13
[INFO] [stdout]     |
[INFO] [stdout] 150 |             list_all_posts();
[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] 150 |             let _ = list_all_posts();
[INFO] [stdout]     |             +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> src/main.rs:156:13
[INFO] [stdout]     |
[INFO] [stdout] 156 |             search_reddit_posts();
[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 _ = search_reddit_posts();
[INFO] [stdout]     |             +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> src/main.rs:159:13
[INFO] [stdout]     |
[INFO] [stdout] 159 |             get_row_by_disk_position();
[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] 159 |             let _ = get_row_by_disk_position();
[INFO] [stdout]     |             +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> src/main.rs:162:13
[INFO] [stdout]     |
[INFO] [stdout] 162 |             get_row_by_source_id();
[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] 162 |             let _ = get_row_by_source_id();
[INFO] [stdout]     |             +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]   --> src/db_driver.rs:88:9
[INFO] [stdout]    |
[INFO] [stdout] 88 | /         match row {
[INFO] [stdout] 89 | |             Row::User(user) => self.write_to_pk_index(&user.source_id, position),
[INFO] [stdout] 90 | |             Row::Post(post) => self.write_to_pk_index(&post.source_id, position),
[INFO] [stdout] 91 | |         };
[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] 88 |         let _ = match row {
[INFO] [stdout]    |         +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: call to `.clone()` on a reference in this situation does nothing
[INFO] [stdout]    --> src/db_driver.rs:132:37
[INFO] [stdout]     |
[INFO] [stdout] 132 |         let source_bytes = source_id.clone().as_bytes();
[INFO] [stdout]     |                                     ^^^^^^^^ help: remove this redundant call
[INFO] [stdout]     |
[INFO] [stdout]     = note: the type `str` does not implement `Clone`, so calling `clone` on `&str` copies the reference, which does not do anything and can be removed
[INFO] [stdout]     = note: `#[warn(noop_method_call)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 28.49s
[INFO] [stderr] warning: the following packages contain code that will be rejected by a future version of Rust: openssl v0.10.49, rsdb v0.12.1
[INFO] [stderr] note: to see what the problems were, use the option `--future-incompat-report`, or run `cargo report future-incompatibilities --id 4`
[INFO] running `Command { std: "docker" "inspect" "90c069b3fdb0bbfa41747fc15ebb9310bfeb8a613c3247f742060cecfa2bdccb", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "90c069b3fdb0bbfa41747fc15ebb9310bfeb8a613c3247f742060cecfa2bdccb", kill_on_drop: false }`
[INFO] [stdout] 90c069b3fdb0bbfa41747fc15ebb9310bfeb8a613c3247f742060cecfa2bdccb
