[INFO] cloning repository https://github.com/Lemminkyinen/kf2_server_logger
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/Lemminkyinen/kf2_server_logger" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FLemminkyinen%2Fkf2_server_logger", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FLemminkyinen%2Fkf2_server_logger'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] 2698d277090955a394e5721134e0182a54b66dd8
[INFO] checking Lemminkyinen/kf2_server_logger against master#642c19bfc3a5c1de985bf5d0cc8207ac9d22708a for pr-148577
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FLemminkyinen%2Fkf2_server_logger" "/workspace/builds/worker-4-tc1/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-4-tc1/source'...
[INFO] [stderr] done.
[INFO] started tweaking git repo https://github.com/Lemminkyinen/kf2_server_logger
[INFO] finished tweaking git repo https://github.com/Lemminkyinen/kf2_server_logger
[INFO] tweaked toml for git repo https://github.com/Lemminkyinen/kf2_server_logger written to /workspace/builds/worker-4-tc1/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/Lemminkyinen/kf2_server_logger on toolchain 642c19bfc3a5c1de985bf5d0cc8207ac9d22708a
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+642c19bfc3a5c1de985bf5d0cc8207ac9d22708a" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate git repo https://github.com/Lemminkyinen/kf2_server_logger 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" "+642c19bfc3a5c1de985bf5d0cc8207ac9d22708a" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Blocking waiting for file lock on package cache
[INFO] [stderr]     Updating crates.io index
[INFO] [stderr]     Blocking waiting for file lock on package cache
[INFO] [stderr]  Downloading crates ...
[INFO] [stderr]   Downloaded ego-tree v0.6.3
[INFO] [stderr]   Downloaded cookie_store v0.20.0
[INFO] [stderr]   Downloaded cc v1.1.34
[INFO] [stderr]   Downloaded serde_json v1.0.132
[INFO] [stderr]   Downloaded mysqlclient-sys v0.4.1
[INFO] [stderr]   Downloaded hyper v0.14.31
[INFO] [stderr]   Downloaded rustix v0.38.38
[INFO] [stderr]   Downloaded diesel v2.2.4
[INFO] [stderr]   Downloaded tokio v1.41.0
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-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:4848fb76d95f26979359cc7e45710b1dbc8f3acb7aeedee7c460d7702230f228" "/opt/rustwide/cargo-home/bin/cargo" "+642c19bfc3a5c1de985bf5d0cc8207ac9d22708a" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] f647dcb8c86073156ce7691f9727e13bdbe50933575acb4e74840b198cba2439
[INFO] running `Command { std: "docker" "start" "-a" "f647dcb8c86073156ce7691f9727e13bdbe50933575acb4e74840b198cba2439", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "f647dcb8c86073156ce7691f9727e13bdbe50933575acb4e74840b198cba2439", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "f647dcb8c86073156ce7691f9727e13bdbe50933575acb4e74840b198cba2439", kill_on_drop: false }`
[INFO] [stdout] f647dcb8c86073156ce7691f9727e13bdbe50933575acb4e74840b198cba2439
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-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:4848fb76d95f26979359cc7e45710b1dbc8f3acb7aeedee7c460d7702230f228" "/opt/rustwide/cargo-home/bin/cargo" "+642c19bfc3a5c1de985bf5d0cc8207ac9d22708a" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] fc999fbbbfc7a4ac9f045853e2d06c4489f23e510e4c7349016d6b379ca3c438
[INFO] running `Command { std: "docker" "start" "-a" "fc999fbbbfc7a4ac9f045853e2d06c4489f23e510e4c7349016d6b379ca3c438", kill_on_drop: false }`
[INFO] [stderr]    Compiling proc-macro2 v1.0.89
[INFO] [stderr]    Compiling unicode-ident v1.0.13
[INFO] [stderr]    Compiling libc v0.2.161
[INFO] [stderr]    Compiling byteorder v1.5.0
[INFO] [stderr]    Compiling siphasher v0.3.11
[INFO] [stderr]     Checking log v0.4.22
[INFO] [stderr]    Compiling serde v1.0.214
[INFO] [stderr]    Compiling cc v1.1.34
[INFO] [stderr]     Checking bytes v1.8.0
[INFO] [stderr]     Checking tinyvec v1.8.0
[INFO] [stderr]     Checking unicode-bidi v0.3.17
[INFO] [stderr]     Checking tracing-core v0.1.32
[INFO] [stderr]     Checking hashbrown v0.15.0
[INFO] [stderr]     Checking futures-task v0.3.31
[INFO] [stderr]    Compiling cookie v0.17.0
[INFO] [stderr]     Checking futures-util v0.3.31
[INFO] [stderr]     Checking phf_shared v0.10.0
[INFO] [stderr]    Compiling phf_shared v0.11.2
[INFO] [stderr]     Checking phf v0.10.1
[INFO] [stderr]    Compiling serde_json v1.0.132
[INFO] [stderr]     Checking dtoa v1.0.9
[INFO] [stderr]     Checking http v0.2.12
[INFO] [stderr]     Checking time v0.3.36
[INFO] [stderr]     Checking aho-corasick v1.1.3
[INFO] [stderr]     Checking dtoa-short v0.3.5
[INFO] [stderr]    Compiling mysqlclient-sys v0.4.1
[INFO] [stderr]    Compiling either v1.13.0
[INFO] [stderr]     Checking regex-syntax v0.8.5
[INFO] [stderr]     Checking servo_arc v0.3.0
[INFO] [stderr]     Checking chrono v0.4.38
[INFO] [stderr]     Checking tracing v0.1.40
[INFO] [stderr]     Checking indexmap v2.6.0
[INFO] [stderr]     Checking ego-tree v0.6.3
[INFO] [stderr]     Checking termcolor v1.4.1
[INFO] [stderr]     Checking unicode-normalization v0.1.24
[INFO] [stderr]     Checking parking_lot_core v0.9.10
[INFO] [stderr]     Checking parking_lot v0.12.3
[INFO] [stderr]     Checking mio v1.0.2
[INFO] [stderr]     Checking socket2 v0.5.7
[INFO] [stderr]     Checking signal-hook-registry v1.4.2
[INFO] [stderr]    Compiling quote v1.0.37
[INFO] [stderr]     Checking getrandom v0.2.15
[INFO] [stderr]     Checking is-terminal v0.4.13
[INFO] [stderr]     Checking scheduled-thread-pool v0.2.7
[INFO] [stderr]     Checking r2d2 v0.8.10
[INFO] [stderr]     Checking http-body v0.4.6
[INFO] [stderr]     Checking rand_core v0.6.4
[INFO] [stderr]     Checking idna v0.5.0
[INFO] [stderr]     Checking idna v0.3.0
[INFO] [stderr]    Compiling syn v2.0.86
[INFO] [stderr]    Compiling syn v1.0.109
[INFO] [stderr]    Compiling openssl-sys v0.9.104
[INFO] [stderr]    Compiling openssl v0.10.68
[INFO] [stderr]    Compiling native-tls v0.2.12
[INFO] [stderr]     Checking publicsuffix v2.2.3
[INFO] [stderr]     Checking url v2.5.2
[INFO] [stderr]     Checking regex-automata v0.4.8
[INFO] [stderr]     Checking regex v1.11.1
[INFO] [stderr]     Checking env_logger v0.10.2
[INFO] [stderr]    Compiling html5ever v0.26.0
[INFO] [stderr]    Compiling darling_core v0.20.10
[INFO] [stderr]    Compiling diesel_table_macro_syntax v0.2.0
[INFO] [stderr]    Compiling zerocopy-derive v0.7.35
[INFO] [stderr]    Compiling serde_derive v1.0.214
[INFO] [stderr]    Compiling tokio-macros v2.4.0
[INFO] [stderr]    Compiling openssl-macros v0.1.1
[INFO] [stderr]    Compiling cssparser-macros v0.6.1
[INFO] [stderr]    Compiling derive_more v0.99.18
[INFO] [stderr]     Checking tokio v1.41.0
[INFO] [stderr]    Compiling zerocopy v0.7.35
[INFO] [stderr]    Compiling darling_macro v0.20.10
[INFO] [stderr]    Compiling ppv-lite86 v0.2.20
[INFO] [stderr]    Compiling darling v0.20.10
[INFO] [stderr]    Compiling dsl_auto_type v0.1.2
[INFO] [stderr]     Checking ahash v0.8.11
[INFO] [stderr]    Compiling diesel_derives v2.2.3
[INFO] [stderr]    Compiling rand_chacha v0.3.1
[INFO] [stderr]    Compiling rand v0.8.5
[INFO] [stderr]    Compiling phf_generator v0.10.0
[INFO] [stderr]    Compiling phf_generator v0.11.2
[INFO] [stderr]    Compiling phf_codegen v0.10.0
[INFO] [stderr]    Compiling string_cache_codegen v0.5.2
[INFO] [stderr]    Compiling phf_macros v0.11.2
[INFO] [stderr]    Compiling selectors v0.25.0
[INFO] [stderr]    Compiling markup5ever v0.11.0
[INFO] [stderr]     Checking phf v0.11.2
[INFO] [stderr]     Checking cssparser v0.31.2
[INFO] [stderr]     Checking tokio-util v0.7.12
[INFO] [stderr]     Checking tokio-native-tls v0.3.1
[INFO] [stderr]     Checking h2 v0.3.26
[INFO] [stderr]     Checking string_cache v0.8.7
[INFO] [stderr]     Checking serde_urlencoded v0.7.1
[INFO] [stderr]     Checking diesel v2.2.4
[INFO] [stderr]     Checking cookie_store v0.20.0
[INFO] [stderr]     Checking scraper v0.17.1
[INFO] [stderr]     Checking hyper v0.14.31
[INFO] [stderr]     Checking hyper-tls v0.5.0
[INFO] [stderr]     Checking reqwest v0.11.27
[INFO] [stderr]     Checking kf2_server_logger v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unused import: `super::KfDbManager`
[INFO] [stdout]    --> src/kf2_database/operations.rs:337:9
[INFO] [stdout]     |
[INFO] [stdout] 337 |     use super::KfDbManager;
[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 variable: `result`
[INFO] [stdout]    --> src/kf2_database/operations.rs:199:13
[INFO] [stdout]     |
[INFO] [stdout] 199 |         let result = diesel::insert_into(game_sessions)
[INFO] [stdout]     |             ^^^^^^ help: if this is intentional, prefix it with an underscore: `_result`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `result`
[INFO] [stdout]    --> src/kf2_database/operations.rs:199:13
[INFO] [stdout]     |
[INFO] [stdout] 199 |         let result = diesel::insert_into(game_sessions)
[INFO] [stdout]     |             ^^^^^^ help: if this is intentional, prefix it with an underscore: `_result`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Args` is never constructed
[INFO] [stdout]   --> src/args.rs:44:8
[INFO] [stdout]    |
[INFO] [stdout] 44 | struct Args {
[INFO] [stdout]    |        ^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `ip_addr`, `username`, and `password` are never read
[INFO] [stdout]   --> src/kf2_database/management.rs:9:16
[INFO] [stdout]    |
[INFO] [stdout]  8 | pub struct KfDbManager {
[INFO] [stdout]    |            ----------- fields in this struct
[INFO] [stdout]  9 |     pub(super) ip_addr: String,
[INFO] [stdout]    |                ^^^^^^^
[INFO] [stdout] 10 |     pub(super) username: String,
[INFO] [stdout]    |                ^^^^^^^^
[INFO] [stdout] 11 |     pub(super) password: String,
[INFO] [stdout]    |                ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `id` and `created` are never read
[INFO] [stdout]   --> src/kf2_database/models.rs:14:16
[INFO] [stdout]    |
[INFO] [stdout] 13 | pub(crate) struct IpAddressDbQ {
[INFO] [stdout]    |                   ------------ fields in this struct
[INFO] [stdout] 14 |     pub(super) id: u32,
[INFO] [stdout]    |                ^^
[INFO] [stdout] ...
[INFO] [stdout] 17 |     pub(super) created: chrono::NaiveDateTime,
[INFO] [stdout]    |                ^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `IpAddressDbQ` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `name`, `maps_played`, `unique_net_id`, `created`, and `last_seen` are never read
[INFO] [stdout]   --> src/kf2_database/models.rs:48:16
[INFO] [stdout]    |
[INFO] [stdout] 46 | pub(crate) struct PlayerDbQ {
[INFO] [stdout]    |                   --------- fields in this struct
[INFO] [stdout] 47 |     pub(super) steam_id: u64,
[INFO] [stdout] 48 |     pub(super) name: String,
[INFO] [stdout]    |                ^^^^
[INFO] [stdout] 49 |     pub(super) maps_played: u32,
[INFO] [stdout]    |                ^^^^^^^^^^^
[INFO] [stdout] 50 |     pub(super) avg_ping: u32,
[INFO] [stdout] 51 |     pub(super) unique_net_id: String,
[INFO] [stdout]    |                ^^^^^^^^^^^^^
[INFO] [stdout] 52 |     pub(super) created: chrono::NaiveDateTime,
[INFO] [stdout]    |                ^^^^^^^
[INFO] [stdout] 53 |     pub(super) last_seen: chrono::NaiveDateTime,
[INFO] [stdout]    |                ^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `PlayerDbQ` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `into_session` is never used
[INFO] [stdout]    --> src/kf2_database/models.rs:188:19
[INFO] [stdout]     |
[INFO] [stdout] 187 | impl PlayerSessionDbI {
[INFO] [stdout]     | --------------------- method in this implementation
[INFO] [stdout] 188 |     pub(crate) fn into_session(self, id: u32) -> PlayerSession {
[INFO] [stdout]     |                   ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `Ended` is never constructed
[INFO] [stdout]   --> src/kf2_log/logger.rs:81:5
[INFO] [stdout]    |
[INFO] [stdout] 78 | pub(crate) enum SessionStatus {
[INFO] [stdout]    |                 ------------- variant in this enum
[INFO] [stdout] ...
[INFO] [stdout] 81 |     Ended,
[INFO] [stdout]    |     ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `SessionStatus` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `base` is never read
[INFO] [stdout]    --> src/kf2_log/logger.rs:110:16
[INFO] [stdout]     |
[INFO] [stdout] 109 | pub(super) struct Kf2Url {
[INFO] [stdout]     |                   ------ field in this struct
[INFO] [stdout] 110 |     pub(super) base: Url,
[INFO] [stdout]     |                ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `session_id` and `auth_cred` are never read
[INFO] [stdout]    --> src/kf2_log/logger.rs:121:5
[INFO] [stdout]     |
[INFO] [stdout] 117 | pub(crate) struct Kf2Logger {
[INFO] [stdout]     |                   --------- fields in this struct
[INFO] [stdout] ...
[INFO] [stdout] 121 |     session_id: String,
[INFO] [stdout]     |     ^^^^^^^^^^
[INFO] [stdout] 122 |     auth_cred: Option<String>,
[INFO] [stdout]     |     ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `headers` is never read
[INFO] [stdout]    --> src/kf2_scrape/parse.rs:266:5
[INFO] [stdout]     |
[INFO] [stdout] 265 | pub struct HeaderExtractor {
[INFO] [stdout]     |            --------------- field in this struct
[INFO] [stdout] 266 |     headers: HeaderMap,
[INFO] [stdout]     |     ^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `HeaderExtractor` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/kf2_scrape/parse.rs:118:27
[INFO] [stdout]     |
[INFO] [stdout] 118 |     fn parse_player_table(&self) -> Result<Vec<ElementRef>, Box<dyn Error>> {
[INFO] [stdout]     |                           ^^^^^                ^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                           |
[INFO] [stdout]     |                           the lifetime is elided here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout]     = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 118 |     fn parse_player_table(&self) -> Result<Vec<ElementRef<'_>>, Box<dyn Error>> {
[INFO] [stdout]     |                                                          ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/kf2_scrape/parse.rs:196:27
[INFO] [stdout]     |
[INFO] [stdout] 196 |     fn parse_current_game(&self) -> Result<Vec<scraper::element_ref::ElementRef>, Box<dyn Error>> {
[INFO] [stdout]     |                           ^^^^^                ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                           |
[INFO] [stdout]     |                           the lifetime is elided here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 196 |     fn parse_current_game(&self) -> Result<Vec<scraper::element_ref::ElementRef<'_>>, Box<dyn Error>> {
[INFO] [stdout]     |                                                                                ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/kf2_scrape/parse.rs:201:28
[INFO] [stdout]     |
[INFO] [stdout] 201 |     fn parse_current_rules(&self) -> Result<Vec<scraper::element_ref::ElementRef>, Box<dyn Error>> {
[INFO] [stdout]     |                            ^^^^^                ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                            |
[INFO] [stdout]     |                            the lifetime is elided here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 201 |     fn parse_current_rules(&self) -> Result<Vec<scraper::element_ref::ElementRef<'_>>, Box<dyn Error>> {
[INFO] [stdout]     |                                                                                 ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Args` is never constructed
[INFO] [stdout]   --> src/args.rs:44:8
[INFO] [stdout]    |
[INFO] [stdout] 44 | struct Args {
[INFO] [stdout]    |        ^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `ip_addr`, `username`, and `password` are never read
[INFO] [stdout]   --> src/kf2_database/management.rs:9:16
[INFO] [stdout]    |
[INFO] [stdout]  8 | pub struct KfDbManager {
[INFO] [stdout]    |            ----------- fields in this struct
[INFO] [stdout]  9 |     pub(super) ip_addr: String,
[INFO] [stdout]    |                ^^^^^^^
[INFO] [stdout] 10 |     pub(super) username: String,
[INFO] [stdout]    |                ^^^^^^^^
[INFO] [stdout] 11 |     pub(super) password: String,
[INFO] [stdout]    |                ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `id` and `created` are never read
[INFO] [stdout]   --> src/kf2_database/models.rs:14:16
[INFO] [stdout]    |
[INFO] [stdout] 13 | pub(crate) struct IpAddressDbQ {
[INFO] [stdout]    |                   ------------ fields in this struct
[INFO] [stdout] 14 |     pub(super) id: u32,
[INFO] [stdout]    |                ^^
[INFO] [stdout] ...
[INFO] [stdout] 17 |     pub(super) created: chrono::NaiveDateTime,
[INFO] [stdout]    |                ^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `IpAddressDbQ` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `name`, `maps_played`, `unique_net_id`, `created`, and `last_seen` are never read
[INFO] [stdout]   --> src/kf2_database/models.rs:48:16
[INFO] [stdout]    |
[INFO] [stdout] 46 | pub(crate) struct PlayerDbQ {
[INFO] [stdout]    |                   --------- fields in this struct
[INFO] [stdout] 47 |     pub(super) steam_id: u64,
[INFO] [stdout] 48 |     pub(super) name: String,
[INFO] [stdout]    |                ^^^^
[INFO] [stdout] 49 |     pub(super) maps_played: u32,
[INFO] [stdout]    |                ^^^^^^^^^^^
[INFO] [stdout] 50 |     pub(super) avg_ping: u32,
[INFO] [stdout] 51 |     pub(super) unique_net_id: String,
[INFO] [stdout]    |                ^^^^^^^^^^^^^
[INFO] [stdout] 52 |     pub(super) created: chrono::NaiveDateTime,
[INFO] [stdout]    |                ^^^^^^^
[INFO] [stdout] 53 |     pub(super) last_seen: chrono::NaiveDateTime,
[INFO] [stdout]    |                ^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `PlayerDbQ` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `into_session` is never used
[INFO] [stdout]    --> src/kf2_database/models.rs:188:19
[INFO] [stdout]     |
[INFO] [stdout] 187 | impl PlayerSessionDbI {
[INFO] [stdout]     | --------------------- method in this implementation
[INFO] [stdout] 188 |     pub(crate) fn into_session(self, id: u32) -> PlayerSession {
[INFO] [stdout]     |                   ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `value` is never used
[INFO] [stdout]   --> src/kf2_log/logger.rs:36:19
[INFO] [stdout]    |
[INFO] [stdout] 24 | impl Boss {
[INFO] [stdout]    | --------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 36 |     pub(crate) fn value(&self) -> u8 {
[INFO] [stdout]    |                   ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `Ended` is never constructed
[INFO] [stdout]   --> src/kf2_log/logger.rs:81:5
[INFO] [stdout]    |
[INFO] [stdout] 78 | pub(crate) enum SessionStatus {
[INFO] [stdout]    |                 ------------- variant in this enum
[INFO] [stdout] ...
[INFO] [stdout] 81 |     Ended,
[INFO] [stdout]    |     ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `SessionStatus` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `base` is never read
[INFO] [stdout]    --> src/kf2_log/logger.rs:110:16
[INFO] [stdout]     |
[INFO] [stdout] 109 | pub(super) struct Kf2Url {
[INFO] [stdout]     |                   ------ field in this struct
[INFO] [stdout] 110 |     pub(super) base: Url,
[INFO] [stdout]     |                ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `session_id` and `auth_cred` are never read
[INFO] [stdout]    --> src/kf2_log/logger.rs:121:5
[INFO] [stdout]     |
[INFO] [stdout] 117 | pub(crate) struct Kf2Logger {
[INFO] [stdout]     |                   --------- fields in this struct
[INFO] [stdout] ...
[INFO] [stdout] 121 |     session_id: String,
[INFO] [stdout]     |     ^^^^^^^^^^
[INFO] [stdout] 122 |     auth_cred: Option<String>,
[INFO] [stdout]     |     ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `headers` is never read
[INFO] [stdout]    --> src/kf2_scrape/parse.rs:266:5
[INFO] [stdout]     |
[INFO] [stdout] 265 | pub struct HeaderExtractor {
[INFO] [stdout]     |            --------------- field in this struct
[INFO] [stdout] 266 |     headers: HeaderMap,
[INFO] [stdout]     |     ^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `HeaderExtractor` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/kf2_scrape/parse.rs:118:27
[INFO] [stdout]     |
[INFO] [stdout] 118 |     fn parse_player_table(&self) -> Result<Vec<ElementRef>, Box<dyn Error>> {
[INFO] [stdout]     |                           ^^^^^                ^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                           |
[INFO] [stdout]     |                           the lifetime is elided here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout]     = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 118 |     fn parse_player_table(&self) -> Result<Vec<ElementRef<'_>>, Box<dyn Error>> {
[INFO] [stdout]     |                                                          ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/kf2_scrape/parse.rs:196:27
[INFO] [stdout]     |
[INFO] [stdout] 196 |     fn parse_current_game(&self) -> Result<Vec<scraper::element_ref::ElementRef>, Box<dyn Error>> {
[INFO] [stdout]     |                           ^^^^^                ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                           |
[INFO] [stdout]     |                           the lifetime is elided here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 196 |     fn parse_current_game(&self) -> Result<Vec<scraper::element_ref::ElementRef<'_>>, Box<dyn Error>> {
[INFO] [stdout]     |                                                                                ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/kf2_scrape/parse.rs:201:28
[INFO] [stdout]     |
[INFO] [stdout] 201 |     fn parse_current_rules(&self) -> Result<Vec<scraper::element_ref::ElementRef>, Box<dyn Error>> {
[INFO] [stdout]     |                            ^^^^^                ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                            |
[INFO] [stdout]     |                            the lifetime is elided here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 201 |     fn parse_current_rules(&self) -> Result<Vec<scraper::element_ref::ElementRef<'_>>, Box<dyn Error>> {
[INFO] [stdout]     |                                                                                 ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 46.89s
[INFO] running `Command { std: "docker" "inspect" "fc999fbbbfc7a4ac9f045853e2d06c4489f23e510e4c7349016d6b379ca3c438", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "fc999fbbbfc7a4ac9f045853e2d06c4489f23e510e4c7349016d6b379ca3c438", kill_on_drop: false }`
[INFO] [stdout] fc999fbbbfc7a4ac9f045853e2d06c4489f23e510e4c7349016d6b379ca3c438
