[INFO] cloning repository https://github.com/davoodmood/secure-auth
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/davoodmood/secure-auth" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fdavoodmood%2Fsecure-auth", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fdavoodmood%2Fsecure-auth'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] ab6edefc6730bf9294c036e8544834718656de1b
[INFO] testing davoodmood/secure-auth against try#bd7d74411512a3dd3b35d2f699c51dd2557c7e7e+cargoflags=-Zbuild-dir-new-layout for pr-149852-1
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fdavoodmood%2Fsecure-auth" "/workspace/builds/worker-6-tc2/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-6-tc2/source'...
[INFO] [stderr] done.
[INFO] started tweaking git repo https://github.com/davoodmood/secure-auth
[INFO] finished tweaking git repo https://github.com/davoodmood/secure-auth
[INFO] tweaked toml for git repo https://github.com/davoodmood/secure-auth written to /workspace/builds/worker-6-tc2/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/davoodmood/secure-auth on toolchain bd7d74411512a3dd3b35d2f699c51dd2557c7e7e
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+bd7d74411512a3dd3b35d2f699c51dd2557c7e7e" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate git repo https://github.com/davoodmood/secure-auth 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" "+bd7d74411512a3dd3b35d2f699c51dd2557c7e7e" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc2/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:aa71247004a7fa38d13ec170f48f06cdedf5bc50b2a8645e56ed7e992e6fa513" "/opt/rustwide/cargo-home/bin/cargo" "+bd7d74411512a3dd3b35d2f699c51dd2557c7e7e" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] c7abfc60fb0da45de52b971d852bf329049170e8176cb59a485483adfb4bdb80
[INFO] running `Command { std: "docker" "start" "-a" "c7abfc60fb0da45de52b971d852bf329049170e8176cb59a485483adfb4bdb80", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "c7abfc60fb0da45de52b971d852bf329049170e8176cb59a485483adfb4bdb80", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "c7abfc60fb0da45de52b971d852bf329049170e8176cb59a485483adfb4bdb80", kill_on_drop: false }`
[INFO] [stdout] c7abfc60fb0da45de52b971d852bf329049170e8176cb59a485483adfb4bdb80
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc2/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:aa71247004a7fa38d13ec170f48f06cdedf5bc50b2a8645e56ed7e992e6fa513" "/opt/rustwide/cargo-home/bin/cargo" "+bd7d74411512a3dd3b35d2f699c51dd2557c7e7e" "build" "--frozen" "--message-format=json" "-Zbuild-dir-new-layout", kill_on_drop: false }`
[INFO] [stdout] edbb93a54948e424312a1517b8c056eef1be26f10233254398719cca240e0656
[INFO] running `Command { std: "docker" "start" "-a" "edbb93a54948e424312a1517b8c056eef1be26f10233254398719cca240e0656", kill_on_drop: false }`
[INFO] [stderr]    Compiling libc v0.2.155
[INFO] [stderr]    Compiling proc-macro2 v1.0.83
[INFO] [stderr]    Compiling autocfg v1.3.0
[INFO] [stderr]    Compiling typenum v1.17.0
[INFO] [stderr]    Compiling smallvec v1.13.2
[INFO] [stderr]    Compiling parking_lot_core v0.9.10
[INFO] [stderr]    Compiling futures-io v0.3.30
[INFO] [stderr]    Compiling ahash v0.8.11
[INFO] [stderr]    Compiling zerocopy v0.7.34
[INFO] [stderr]    Compiling serde v1.0.202
[INFO] [stderr]    Compiling pkg-config v0.3.30
[INFO] [stderr]    Compiling subtle v2.5.0
[INFO] [stderr]    Compiling syn v1.0.109
[INFO] [stderr]    Compiling tracing v0.1.40
[INFO] [stderr]    Compiling thiserror v1.0.61
[INFO] [stderr]    Compiling ryu v1.0.18
[INFO] [stderr]    Compiling proc-macro-hack v0.5.20+deprecated
[INFO] [stderr]    Compiling bitflags v2.5.0
[INFO] [stderr]    Compiling serde_json v1.0.117
[INFO] [stderr]    Compiling time-macros v0.2.18
[INFO] [stderr]    Compiling http v1.1.0
[INFO] [stderr]    Compiling openssl v0.10.64
[INFO] [stderr]    Compiling paste v1.0.15
[INFO] [stderr]    Compiling encoding_rs v0.8.34
[INFO] [stderr]    Compiling bytestring v1.3.1
[INFO] [stderr]    Compiling opaque-debug v0.3.1
[INFO] [stderr]    Compiling local-waker v0.1.4
[INFO] [stderr]    Compiling zstd-safe v7.1.0
[INFO] [stderr]    Compiling ipnet v2.9.0
[INFO] [stderr]    Compiling lock_api v0.4.12
[INFO] [stderr]    Compiling slab v0.4.9
[INFO] [stderr]    Compiling num-traits v0.2.19
[INFO] [stderr]    Compiling alloc-no-stdlib v2.0.4
[INFO] [stderr]    Compiling semver-parser v0.7.0
[INFO] [stderr]    Compiling native-tls v0.2.11
[INFO] [stderr]    Compiling alloc-stdlib v0.2.2
[INFO] [stderr]    Compiling semver v0.9.0
[INFO] [stderr]    Compiling regex v1.10.4
[INFO] [stderr]    Compiling convert_case v0.4.0
[INFO] [stderr]    Compiling openssl-probe v0.1.5
[INFO] [stderr]    Compiling adler v1.0.2
[INFO] [stderr]    Compiling radium v0.7.0
[INFO] [stderr]    Compiling tracing-core v0.1.32
[INFO] [stderr]    Compiling byteorder v1.5.0
[INFO] [stderr]    Compiling getrandom v0.2.15
[INFO] [stderr]    Compiling jobserver v0.1.31
[INFO] [stderr]    Compiling socket2 v0.5.7
[INFO] [stderr]    Compiling rand_core v0.6.4
[INFO] [stderr]    Compiling signal-hook-registry v1.4.2
[INFO] [stderr]    Compiling num_cpus v1.16.0
[INFO] [stderr]    Compiling mio v0.8.11
[INFO] [stderr]    Compiling quote v1.0.36
[INFO] [stderr]    Compiling cc v1.0.98
[INFO] [stderr]    Compiling syn v2.0.65
[INFO] [stderr]    Compiling generic-array v0.14.7
[INFO] [stderr]    Compiling parking_lot v0.12.2
[INFO] [stderr]    Compiling hashbrown v0.14.5
[INFO] [stderr]    Compiling rand_chacha v0.3.1
[INFO] [stderr]    Compiling time v0.3.36
[INFO] [stderr]    Compiling http-body v1.0.0
[INFO] [stderr]    Compiling regex-lite v0.1.5
[INFO] [stderr]    Compiling crypto-common v0.1.6
[INFO] [stderr]    Compiling block-buffer v0.10.4
[INFO] [stderr]    Compiling block-padding v0.3.3
[INFO] [stderr]    Compiling rand v0.8.5
[INFO] [stderr]    Compiling universal-hash v0.5.1
[INFO] [stderr]    Compiling aead v0.5.2
[INFO] [stderr]    Compiling inout v0.1.3
[INFO] [stderr]    Compiling polyval v0.6.2
[INFO] [stderr]    Compiling digest v0.10.7
[INFO] [stderr]    Compiling actix-service v2.0.2
[INFO] [stderr]    Compiling rustc_version v0.2.3
[INFO] [stderr]    Compiling miniz_oxide v0.7.3
[INFO] [stderr]    Compiling indexmap v2.2.6
[INFO] [stderr]    Compiling cipher v0.4.4
[INFO] [stderr]    Compiling ghash v0.5.1
[INFO] [stderr]    Compiling brotli-decompressor v4.0.0
[INFO] [stderr]    Compiling sha2 v0.10.8
[INFO] [stderr]    Compiling hmac v0.12.1
[INFO] [stderr]    Compiling aes v0.8.4
[INFO] [stderr]    Compiling ctr v0.9.2
[INFO] [stderr]    Compiling actix-utils v3.0.1
[INFO] [stderr]    Compiling cookie v0.16.2
[INFO] [stderr]    Compiling matches v0.1.10
[INFO] [stderr]    Compiling heck v0.4.1
[INFO] [stderr]    Compiling match_cfg v0.1.0
[INFO] [stderr]    Compiling tap v1.0.1
[INFO] [stderr]    Compiling type-map v0.5.0
[INFO] [stderr]    Compiling wyz v0.5.1
[INFO] [stderr]    Compiling hostname v0.3.1
[INFO] [stderr]    Compiling idna v0.2.3
[INFO] [stderr]    Compiling flate2 v1.0.30
[INFO] [stderr]    Compiling ring v0.17.8
[INFO] [stderr]    Compiling openssl-sys v0.9.102
[INFO] [stderr]    Compiling zstd-sys v2.0.10+zstd.1.5.6
[INFO] [stderr]    Compiling psm v0.1.21
[INFO] [stderr]    Compiling stacker v0.1.15
[INFO] [stderr]    Compiling ring v0.16.20
[INFO] [stderr]    Compiling rustc_version_runtime v0.2.1
[INFO] [stderr]    Compiling aes-gcm v0.10.3
[INFO] [stderr]    Compiling hkdf v0.12.4
[INFO] [stderr]    Compiling sha1 v0.10.6
[INFO] [stderr]    Compiling brotli v6.0.0
[INFO] [stderr]    Compiling num-integer v0.1.46
[INFO] [stderr]    Compiling local-channel v0.1.5
[INFO] [stderr]    Compiling anyhow v1.0.86
[INFO] [stderr]    Compiling quick-error v1.2.3
[INFO] [stderr]    Compiling base64 v0.20.0
[INFO] [stderr]    Compiling language-tags v0.3.2
[INFO] [stderr]    Compiling data-encoding v2.6.0
[INFO] [stderr]    Compiling funty v2.0.0
[INFO] [stderr]    Compiling self_cell v1.0.4
[INFO] [stderr]    Compiling utf8parse v0.2.1
[INFO] [stderr]    Compiling linked-hash-map v0.5.6
[INFO] [stderr]    Compiling base64 v0.13.1
[INFO] [stderr]    Compiling anstyle-parse v0.2.4
[INFO] [stderr]    Compiling self_cell v0.10.3
[INFO] [stderr]    Compiling resolv-conf v0.7.0
[INFO] [stderr]    Compiling lru-cache v0.1.2
[INFO] [stderr]    Compiling num-bigint v0.4.5
[INFO] [stderr]    Compiling bitvec v1.0.1
[INFO] [stderr]    Compiling http-body-util v0.1.1
[INFO] [stderr]    Compiling is_terminal_polyfill v1.70.0
[INFO] [stderr]    Compiling anstyle v1.0.7
[INFO] [stderr]    Compiling bytemuck v1.16.0
[INFO] [stderr]    Compiling anstyle-query v1.0.3
[INFO] [stderr]    Compiling rustls-pki-types v1.7.0
[INFO] [stderr]    Compiling colorchoice v1.0.1
[INFO] [stderr]    Compiling chumsky v0.9.3
[INFO] [stderr]    Compiling anstream v0.6.14
[INFO] [stderr]    Compiling rustls-pemfile v2.1.2
[INFO] [stderr]    Compiling image v0.25.1
[INFO] [stderr]    Compiling darling_core v0.13.4
[INFO] [stderr]    Compiling blowfish v0.9.1
[INFO] [stderr]    Compiling pbkdf2 v0.11.0
[INFO] [stderr]    Compiling md-5 v0.10.6
[INFO] [stderr]    Compiling sha-1 v0.10.1
[INFO] [stderr]    Compiling env_filter v0.1.0
[INFO] [stderr]    Compiling socket2 v0.4.10
[INFO] [stderr]    Compiling hostname v0.4.0
[INFO] [stderr]    Compiling email-encoding v0.3.0
[INFO] [stderr]    Compiling pem v3.0.4
[INFO] [stderr]    Compiling email_address v0.2.4
[INFO] [stderr]    Compiling zeroize v1.7.0
[INFO] [stderr]    Compiling quoted_printable v0.5.0
[INFO] [stderr]    Compiling fastrand v2.1.0
[INFO] [stderr]    Compiling base32 v0.4.0
[INFO] [stderr]    Compiling take_mut v0.2.2
[INFO] [stderr]    Compiling humantime v2.1.0
[INFO] [stderr]    Compiling bcrypt v0.15.1
[INFO] [stderr]    Compiling cbc v0.1.2
[INFO] [stderr]    Compiling generic-array v1.0.0
[INFO] [stderr]    Compiling dotenv v0.15.0
[INFO] [stderr]    Compiling env_logger v0.11.3
[INFO] [stderr]    Compiling actix-router v0.5.3
[INFO] [stderr]    Compiling qrcode v0.14.0
[INFO] [stderr]    Compiling derive_more v0.99.17
[INFO] [stderr]    Compiling enum-as-inner v0.4.0
[INFO] [stderr]    Compiling derivative v2.2.0
[INFO] [stderr]    Compiling darling_macro v0.13.4
[INFO] [stderr]    Compiling typed-builder v0.10.0
[INFO] [stderr]    Compiling tokio-macros v2.2.0
[INFO] [stderr]    Compiling serde_derive v1.0.202
[INFO] [stderr]    Compiling futures-macro v0.3.30
[INFO] [stderr]    Compiling thiserror-impl v1.0.61
[INFO] [stderr]    Compiling displaydoc v0.2.4
[INFO] [stderr]    Compiling openssl-macros v0.1.1
[INFO] [stderr]    Compiling pin-project-internal v1.1.5
[INFO] [stderr]    Compiling darling v0.13.4
[INFO] [stderr]    Compiling async-trait v0.1.80
[INFO] [stderr]    Compiling serde_with_macros v1.5.2
[INFO] [stderr]    Compiling actix-web-codegen v4.2.2
[INFO] [stderr]    Compiling tokio v1.37.0
[INFO] [stderr]    Compiling tinystr v0.7.6
[INFO] [stderr]    Compiling unic-langid-impl v0.9.5
[INFO] [stderr]    Compiling futures-util v0.3.30
[INFO] [stderr]    Compiling actix-macros v0.2.4
[INFO] [stderr]    Compiling unic-langid-macros-impl v0.9.5
[INFO] [stderr]    Compiling rustls v0.21.12
[INFO] [stderr]    Compiling pin-project v1.1.5
[INFO] [stderr]    Compiling fluent-syntax v0.11.1
[INFO] [stderr]    Compiling simple_asn1 v0.6.2
[INFO] [stderr]    Compiling unic-langid-macros v0.9.5
[INFO] [stderr]    Compiling unic-langid v0.9.5
[INFO] [stderr]    Compiling intl-memoizer v0.5.2
[INFO] [stderr]    Compiling intl_pluralrules v7.0.2
[INFO] [stderr]    Compiling fluent-langneg v0.13.0
[INFO] [stderr]    Compiling sct v0.7.1
[INFO] [stderr]    Compiling rustls-webpki v0.101.7
[INFO] [stderr]    Compiling fluent-bundle v0.15.3
[INFO] [stderr]    Compiling otpauth v0.4.1
[INFO] [stderr]    Compiling fluent v0.16.1
[INFO] [stderr]    Compiling futures-executor v0.3.30
[INFO] [stderr]    Compiling futures v0.3.30
[INFO] [stderr]    Compiling zstd v0.13.1
[INFO] [stderr]    Compiling tokio-util v0.7.11
[INFO] [stderr]    Compiling actix-rt v2.9.0
[INFO] [stderr]    Compiling tower v0.4.13
[INFO] [stderr]    Compiling tokio-native-tls v0.3.1
[INFO] [stderr]    Compiling tokio-rustls v0.24.1
[INFO] [stderr]    Compiling actix-server v2.3.0
[INFO] [stderr]    Compiling h2 v0.3.26
[INFO] [stderr]    Compiling h2 v0.4.5
[INFO] [stderr]    Compiling actix-codec v0.5.2
[INFO] [stderr]    Compiling url v2.5.0
[INFO] [stderr]    Compiling serde_urlencoded v0.7.1
[INFO] [stderr]    Compiling serde_bytes v0.11.14
[INFO] [stderr]    Compiling uuid v1.8.0
[INFO] [stderr]    Compiling chrono v0.4.38
[INFO] [stderr]    Compiling serde_path_to_error v0.1.16
[INFO] [stderr]    Compiling serde_with v1.14.0
[INFO] [stderr]    Compiling trust-dns-proto v0.21.2
[INFO] [stderr]    Compiling lettre v0.11.7
[INFO] [stderr]    Compiling bson v2.10.0
[INFO] [stderr]    Compiling jsonwebtoken v9.3.0
[INFO] [stderr]    Compiling trust-dns-resolver v0.21.2
[INFO] [stderr]    Compiling mongodb v2.8.2
[INFO] [stderr]    Compiling hyper v0.14.28
[INFO] [stderr]    Compiling actix-http v3.7.0
[INFO] [stderr]    Compiling hyper v1.3.1
[INFO] [stderr]    Compiling hyper-util v0.1.5
[INFO] [stderr]    Compiling hyper-tls v0.6.0
[INFO] [stderr]    Compiling reqwest v0.12.4
[INFO] [stderr]    Compiling actix-web v4.6.0
[INFO] [stderr]    Compiling hyper-rustls v0.24.2
[INFO] [stderr]    Compiling reqwest v0.11.27
[INFO] [stderr]    Compiling oauth2 v4.4.2
[INFO] [stderr]    Compiling actix-session v0.9.0
[INFO] [stderr]    Compiling server v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unused import: `login_attempt_to_bson`
[INFO] [stdout]   --> src/handlers/auth.rs:19:327
[INFO] [stdout]    |
[INFO] [stdout] 19 | ... google_client}, risk_assessment::{assess_login_risk, login_attempt_to_bson, RiskLevel}, verification::generate_otp}};
[INFO] [stdout]    |                                                          ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Claims`
[INFO] [stdout]   --> src/handlers/auth.rs:26:9
[INFO] [stdout]    |
[INFO] [stdout] 26 |         Claims, 
[INFO] [stdout]    |         ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Algorithm`
[INFO] [stdout]  --> src/utils/jwt.rs:1:36
[INFO] [stdout]   |
[INFO] [stdout] 1 | use jsonwebtoken::{decode, encode, Algorithm, DecodingKey, EncodingKey, Header, Validation};
[INFO] [stdout]   |                                    ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `actix_web::http::header::ContentType`
[INFO] [stdout]  --> src/utils/email.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use actix_web::http::header::ContentType;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `actix_web::HttpResponse`
[INFO] [stdout]  --> src/utils/risk_assessment.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use actix_web::HttpResponse;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::collections::HashMap`
[INFO] [stdout]  --> src/utils/risk_assessment.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | use std::collections::HashMap;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Collection`
[INFO] [stdout]  --> src/utils/risk_assessment.rs:5:44
[INFO] [stdout]   |
[INFO] [stdout] 5 | use mongodb::{bson::{self, doc, Document}, Collection, Database};
[INFO] [stdout]   |                                            ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `User`
[INFO] [stdout]  --> src/utils/risk_assessment.rs:7:41
[INFO] [stdout]   |
[INFO] [stdout] 7 | use crate::models::user::{LoginAttempt, User};
[INFO] [stdout]   |                                         ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `FluentArgs` and `FluentValue`
[INFO] [stdout]  --> src/services/localization.rs:1:28
[INFO] [stdout]   |
[INFO] [stdout] 1 | use fluent::{FluentBundle, FluentValue, FluentResource, FluentArgs};
[INFO] [stdout]   |                            ^^^^^^^^^^^                  ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `unic_langid::langid`
[INFO] [stdout]  --> src/services/localization.rs:6:5
[INFO] [stdout]   |
[INFO] [stdout] 6 | use unic_langid::langid;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `services::localization::Localization`
[INFO] [stdout]   --> src/main.rs:19:5
[INFO] [stdout]    |
[INFO] [stdout] 19 | use services::localization::Localization;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `phone`
[INFO] [stdout]  --> src/utils/txt.rs:3:37
[INFO] [stdout]   |
[INFO] [stdout] 3 | pub async fn send_verification_text(phone: &str, token: &str) -> Result<(), Box<dyn Error>> {
[INFO] [stdout]   |                                     ^^^^^ help: if this is intentional, prefix it with an underscore: `_phone`
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `token`
[INFO] [stdout]  --> src/utils/txt.rs:3:50
[INFO] [stdout]   |
[INFO] [stdout] 3 | pub async fn send_verification_text(phone: &str, token: &str) -> Result<(), Box<dyn Error>> {
[INFO] [stdout]   |                                                  ^^^^^ help: if this is intentional, prefix it with an underscore: `_token`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `ProfilePreferences` is never constructed
[INFO] [stdout]   --> src/models/user.rs:23:12
[INFO] [stdout]    |
[INFO] [stdout] 23 | pub struct ProfilePreferences {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `EmailPreferences` is never constructed
[INFO] [stdout]   --> src/models/user.rs:37:12
[INFO] [stdout]    |
[INFO] [stdout] 37 | pub struct EmailPreferences {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `PrivacySettings` is never constructed
[INFO] [stdout]   --> src/models/user.rs:42:12
[INFO] [stdout]    |
[INFO] [stdout] 42 | pub struct PrivacySettings {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `ContentFilteringSettings` is never constructed
[INFO] [stdout]   --> src/models/user.rs:46:12
[INFO] [stdout]    |
[INFO] [stdout] 46 | pub struct ContentFilteringSettings {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `LocationSettings` is never constructed
[INFO] [stdout]   --> src/models/user.rs:50:12
[INFO] [stdout]    |
[INFO] [stdout] 50 | pub struct LocationSettings {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `SyncingPreferences` is never constructed
[INFO] [stdout]   --> src/models/user.rs:54:12
[INFO] [stdout]    |
[INFO] [stdout] 54 | pub struct SyncingPreferences {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `BackupSettings` is never constructed
[INFO] [stdout]   --> src/models/user.rs:58:12
[INFO] [stdout]    |
[INFO] [stdout] 58 | pub struct BackupSettings {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `UsageStatistics` is never constructed
[INFO] [stdout]   --> src/models/user.rs:63:12
[INFO] [stdout]    |
[INFO] [stdout] 63 | pub struct UsageStatistics {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `DataPrivacySettings` is never constructed
[INFO] [stdout]   --> src/models/privacy.rs:20:12
[INFO] [stdout]    |
[INFO] [stdout] 20 | pub struct DataPrivacySettings {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `AnalyticsConsent` is never constructed
[INFO] [stdout]   --> src/models/privacy.rs:42:8
[INFO] [stdout]    |
[INFO] [stdout] 42 | struct AnalyticsConsent {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `AdTrackingConsent` is never constructed
[INFO] [stdout]   --> src/models/privacy.rs:57:8
[INFO] [stdout]    |
[INFO] [stdout] 57 | struct AdTrackingConsent {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `MarketingConsent` is never constructed
[INFO] [stdout]   --> src/models/privacy.rs:72:8
[INFO] [stdout]    |
[INFO] [stdout] 72 | struct MarketingConsent {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `PersonalizationConsent` is never constructed
[INFO] [stdout]   --> src/models/privacy.rs:85:8
[INFO] [stdout]    |
[INFO] [stdout] 85 | struct PersonalizationConsent {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `CommunicationConsent` is never constructed
[INFO] [stdout]   --> src/models/privacy.rs:95:8
[INFO] [stdout]    |
[INFO] [stdout] 95 | struct CommunicationConsent {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `LawfulBasis` is never constructed
[INFO] [stdout]    --> src/models/privacy.rs:114:8
[INFO] [stdout]     |
[INFO] [stdout] 114 | struct LawfulBasis {
[INFO] [stdout]     |        ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `DataSubjectRights` is never constructed
[INFO] [stdout]    --> src/models/privacy.rs:125:8
[INFO] [stdout]     |
[INFO] [stdout] 125 | struct DataSubjectRights {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `DataBreachNotification` is never constructed
[INFO] [stdout]    --> src/models/privacy.rs:138:8
[INFO] [stdout]     |
[INFO] [stdout] 138 | struct DataBreachNotification {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `DPODetails` is never constructed
[INFO] [stdout]    --> src/models/privacy.rs:145:8
[INFO] [stdout]     |
[INFO] [stdout] 145 | struct DPODetails {
[INFO] [stdout]     |        ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `LoginError` is never used
[INFO] [stdout]    --> src/handlers/auth.rs:357:6
[INFO] [stdout]     |
[INFO] [stdout] 357 | enum LoginError {
[INFO] [stdout]     |      ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `ForgotPasswordError` is never used
[INFO] [stdout]    --> src/handlers/auth.rs:587:6
[INFO] [stdout]     |
[INFO] [stdout] 587 | enum ForgotPasswordError {
[INFO] [stdout]     |      ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `InvalidResetToken` is never constructed
[INFO] [stdout]    --> src/handlers/auth.rs:642:5
[INFO] [stdout]     |
[INFO] [stdout] 638 | enum ResetPasswordError {
[INFO] [stdout]     |      ------------------ variant in this enum
[INFO] [stdout] ...
[INFO] [stdout] 642 |     InvalidResetToken,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `ResetPasswordError` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `verify_otp` is never used
[INFO] [stdout]    --> src/handlers/auth.rs:773:14
[INFO] [stdout]     |
[INFO] [stdout] 773 | pub async fn verify_otp(db: web::Data<Database>, user_id: String, provided_otp: String) -> HttpResponse {
[INFO] [stdout]     |              ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variants `DecryptionError`, `MfaNotEnabled`, and `InvalidRecoveryCode` are never constructed
[INFO] [stdout]     --> src/handlers/auth.rs:1124:5
[INFO] [stdout]      |
[INFO] [stdout] 1116 | pub enum MfaError {
[INFO] [stdout]      |          -------- variants in this enum
[INFO] [stdout] ...
[INFO] [stdout] 1124 |     DecryptionError,
[INFO] [stdout]      |     ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 1133 |     MfaNotEnabled,
[INFO] [stdout]      |     ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 1136 |     InvalidRecoveryCode,
[INFO] [stdout]      |     ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      |
[INFO] [stdout]      = note: `MfaError` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `store_otp` is never used
[INFO] [stdout]   --> src/utils/verification.rs:36:10
[INFO] [stdout]    |
[INFO] [stdout] 36 | async fn store_otp(db: &Database, user_id: &ObjectId, otp_code: &str) {
[INFO] [stdout]    |          ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `login_attempt_to_bson` is never used
[INFO] [stdout]   --> src/utils/risk_assessment.rs:17:8
[INFO] [stdout]    |
[INFO] [stdout] 17 | pub fn login_attempt_to_bson(login_attempt: &LoginAttempt) -> Document {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `DELETE` is never used
[INFO] [stdout]  --> src/services/auth/permissions.rs:3:11
[INFO] [stdout]   |
[INFO] [stdout] 3 | pub const DELETE: i32 = 0b0000000100;         // 4
[INFO] [stdout]   |           ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `EXECUTE` is never used
[INFO] [stdout]  --> src/services/auth/permissions.rs:5:11
[INFO] [stdout]   |
[INFO] [stdout] 5 | pub const EXECUTE: i32 = 0b0000010000;        // 16
[INFO] [stdout]   |           ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `ROLE_ADMIN` is never used
[INFO] [stdout]  --> src/services/auth/roles.rs:3:11
[INFO] [stdout]   |
[INFO] [stdout] 3 | pub const ROLE_ADMIN: i32 = READ | WRITE | DELETE | UPDATE | EXECUTE | ADMIN | MANAGE_USERS | INVITE_USERS | VIEW_FINANCES | MANAGE_F...
[INFO] [stdout]   |           ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Localization` is never constructed
[INFO] [stdout]  --> src/services/localization.rs:8:12
[INFO] [stdout]   |
[INFO] [stdout] 8 | pub struct Localization {
[INFO] [stdout]   |            ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new`, `add_language`, and `get_message` are never used
[INFO] [stdout]   --> src/services/localization.rs:13:12
[INFO] [stdout]    |
[INFO] [stdout] 12 | impl Localization {
[INFO] [stdout]    | ----------------- associated items in this implementation
[INFO] [stdout] 13 |     pub fn new() -> Self {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 24 |     fn add_language(&mut self, lang: &str, file_path: &str) {
[INFO] [stdout]    |        ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 38 |     pub fn get_message(&self, lang: &str, message_id: &str) -> String {
[INFO] [stdout]    |            ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 1m 19s
[INFO] running `Command { std: "docker" "inspect" "edbb93a54948e424312a1517b8c056eef1be26f10233254398719cca240e0656", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "edbb93a54948e424312a1517b8c056eef1be26f10233254398719cca240e0656", kill_on_drop: false }`
[INFO] [stdout] edbb93a54948e424312a1517b8c056eef1be26f10233254398719cca240e0656
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc2/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:aa71247004a7fa38d13ec170f48f06cdedf5bc50b2a8645e56ed7e992e6fa513" "/opt/rustwide/cargo-home/bin/cargo" "+bd7d74411512a3dd3b35d2f699c51dd2557c7e7e" "test" "--frozen" "--no-run" "--message-format=json" "-Zbuild-dir-new-layout", kill_on_drop: false }`
[INFO] [stdout] d0e08bd3b7bdde89f2976e071dade745bab8a2cd674897951eecf627c3667eb1
[INFO] running `Command { std: "docker" "start" "-a" "d0e08bd3b7bdde89f2976e071dade745bab8a2cd674897951eecf627c3667eb1", kill_on_drop: false }`
[INFO] [stderr]    Compiling server v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unused import: `login_attempt_to_bson`
[INFO] [stdout]   --> src/handlers/auth.rs:19:327
[INFO] [stdout]    |
[INFO] [stdout] 19 | ... google_client}, risk_assessment::{assess_login_risk, login_attempt_to_bson, RiskLevel}, verification::generate_otp}};
[INFO] [stdout]    |                                                          ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Claims`
[INFO] [stdout]   --> src/handlers/auth.rs:26:9
[INFO] [stdout]    |
[INFO] [stdout] 26 |         Claims, 
[INFO] [stdout]    |         ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Algorithm`
[INFO] [stdout]  --> src/utils/jwt.rs:1:36
[INFO] [stdout]   |
[INFO] [stdout] 1 | use jsonwebtoken::{decode, encode, Algorithm, DecodingKey, EncodingKey, Header, Validation};
[INFO] [stdout]   |                                    ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `actix_web::http::header::ContentType`
[INFO] [stdout]  --> src/utils/email.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use actix_web::http::header::ContentType;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `actix_web::HttpResponse`
[INFO] [stdout]  --> src/utils/risk_assessment.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use actix_web::HttpResponse;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::collections::HashMap`
[INFO] [stdout]  --> src/utils/risk_assessment.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | use std::collections::HashMap;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Collection`
[INFO] [stdout]  --> src/utils/risk_assessment.rs:5:44
[INFO] [stdout]   |
[INFO] [stdout] 5 | use mongodb::{bson::{self, doc, Document}, Collection, Database};
[INFO] [stdout]   |                                            ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `User`
[INFO] [stdout]  --> src/utils/risk_assessment.rs:7:41
[INFO] [stdout]   |
[INFO] [stdout] 7 | use crate::models::user::{LoginAttempt, User};
[INFO] [stdout]   |                                         ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `FluentArgs` and `FluentValue`
[INFO] [stdout]  --> src/services/localization.rs:1:28
[INFO] [stdout]   |
[INFO] [stdout] 1 | use fluent::{FluentBundle, FluentValue, FluentResource, FluentArgs};
[INFO] [stdout]   |                            ^^^^^^^^^^^                  ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `unic_langid::langid`
[INFO] [stdout]  --> src/services/localization.rs:6:5
[INFO] [stdout]   |
[INFO] [stdout] 6 | use unic_langid::langid;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `services::localization::Localization`
[INFO] [stdout]   --> src/main.rs:19:5
[INFO] [stdout]    |
[INFO] [stdout] 19 | use services::localization::Localization;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `phone`
[INFO] [stdout]  --> src/utils/txt.rs:3:37
[INFO] [stdout]   |
[INFO] [stdout] 3 | pub async fn send_verification_text(phone: &str, token: &str) -> Result<(), Box<dyn Error>> {
[INFO] [stdout]   |                                     ^^^^^ help: if this is intentional, prefix it with an underscore: `_phone`
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `token`
[INFO] [stdout]  --> src/utils/txt.rs:3:50
[INFO] [stdout]   |
[INFO] [stdout] 3 | pub async fn send_verification_text(phone: &str, token: &str) -> Result<(), Box<dyn Error>> {
[INFO] [stdout]   |                                                  ^^^^^ help: if this is intentional, prefix it with an underscore: `_token`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `ProfilePreferences` is never constructed
[INFO] [stdout]   --> src/models/user.rs:23:12
[INFO] [stdout]    |
[INFO] [stdout] 23 | pub struct ProfilePreferences {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `EmailPreferences` is never constructed
[INFO] [stdout]   --> src/models/user.rs:37:12
[INFO] [stdout]    |
[INFO] [stdout] 37 | pub struct EmailPreferences {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `PrivacySettings` is never constructed
[INFO] [stdout]   --> src/models/user.rs:42:12
[INFO] [stdout]    |
[INFO] [stdout] 42 | pub struct PrivacySettings {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `ContentFilteringSettings` is never constructed
[INFO] [stdout]   --> src/models/user.rs:46:12
[INFO] [stdout]    |
[INFO] [stdout] 46 | pub struct ContentFilteringSettings {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `LocationSettings` is never constructed
[INFO] [stdout]   --> src/models/user.rs:50:12
[INFO] [stdout]    |
[INFO] [stdout] 50 | pub struct LocationSettings {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `SyncingPreferences` is never constructed
[INFO] [stdout]   --> src/models/user.rs:54:12
[INFO] [stdout]    |
[INFO] [stdout] 54 | pub struct SyncingPreferences {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `BackupSettings` is never constructed
[INFO] [stdout]   --> src/models/user.rs:58:12
[INFO] [stdout]    |
[INFO] [stdout] 58 | pub struct BackupSettings {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `UsageStatistics` is never constructed
[INFO] [stdout]   --> src/models/user.rs:63:12
[INFO] [stdout]    |
[INFO] [stdout] 63 | pub struct UsageStatistics {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `DataPrivacySettings` is never constructed
[INFO] [stdout]   --> src/models/privacy.rs:20:12
[INFO] [stdout]    |
[INFO] [stdout] 20 | pub struct DataPrivacySettings {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `AnalyticsConsent` is never constructed
[INFO] [stdout]   --> src/models/privacy.rs:42:8
[INFO] [stdout]    |
[INFO] [stdout] 42 | struct AnalyticsConsent {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `AdTrackingConsent` is never constructed
[INFO] [stdout]   --> src/models/privacy.rs:57:8
[INFO] [stdout]    |
[INFO] [stdout] 57 | struct AdTrackingConsent {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `MarketingConsent` is never constructed
[INFO] [stdout]   --> src/models/privacy.rs:72:8
[INFO] [stdout]    |
[INFO] [stdout] 72 | struct MarketingConsent {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `PersonalizationConsent` is never constructed
[INFO] [stdout]   --> src/models/privacy.rs:85:8
[INFO] [stdout]    |
[INFO] [stdout] 85 | struct PersonalizationConsent {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `CommunicationConsent` is never constructed
[INFO] [stdout]   --> src/models/privacy.rs:95:8
[INFO] [stdout]    |
[INFO] [stdout] 95 | struct CommunicationConsent {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `LawfulBasis` is never constructed
[INFO] [stdout]    --> src/models/privacy.rs:114:8
[INFO] [stdout]     |
[INFO] [stdout] 114 | struct LawfulBasis {
[INFO] [stdout]     |        ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `DataSubjectRights` is never constructed
[INFO] [stdout]    --> src/models/privacy.rs:125:8
[INFO] [stdout]     |
[INFO] [stdout] 125 | struct DataSubjectRights {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `DataBreachNotification` is never constructed
[INFO] [stdout]    --> src/models/privacy.rs:138:8
[INFO] [stdout]     |
[INFO] [stdout] 138 | struct DataBreachNotification {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `DPODetails` is never constructed
[INFO] [stdout]    --> src/models/privacy.rs:145:8
[INFO] [stdout]     |
[INFO] [stdout] 145 | struct DPODetails {
[INFO] [stdout]     |        ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `LoginError` is never used
[INFO] [stdout]    --> src/handlers/auth.rs:357:6
[INFO] [stdout]     |
[INFO] [stdout] 357 | enum LoginError {
[INFO] [stdout]     |      ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `ForgotPasswordError` is never used
[INFO] [stdout]    --> src/handlers/auth.rs:587:6
[INFO] [stdout]     |
[INFO] [stdout] 587 | enum ForgotPasswordError {
[INFO] [stdout]     |      ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `InvalidResetToken` is never constructed
[INFO] [stdout]    --> src/handlers/auth.rs:642:5
[INFO] [stdout]     |
[INFO] [stdout] 638 | enum ResetPasswordError {
[INFO] [stdout]     |      ------------------ variant in this enum
[INFO] [stdout] ...
[INFO] [stdout] 642 |     InvalidResetToken,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `ResetPasswordError` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `verify_otp` is never used
[INFO] [stdout]    --> src/handlers/auth.rs:773:14
[INFO] [stdout]     |
[INFO] [stdout] 773 | pub async fn verify_otp(db: web::Data<Database>, user_id: String, provided_otp: String) -> HttpResponse {
[INFO] [stdout]     |              ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variants `DecryptionError`, `MfaNotEnabled`, and `InvalidRecoveryCode` are never constructed
[INFO] [stdout]     --> src/handlers/auth.rs:1124:5
[INFO] [stdout]      |
[INFO] [stdout] 1116 | pub enum MfaError {
[INFO] [stdout]      |          -------- variants in this enum
[INFO] [stdout] ...
[INFO] [stdout] 1124 |     DecryptionError,
[INFO] [stdout]      |     ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 1133 |     MfaNotEnabled,
[INFO] [stdout]      |     ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 1136 |     InvalidRecoveryCode,
[INFO] [stdout]      |     ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      |
[INFO] [stdout]      = note: `MfaError` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `store_otp` is never used
[INFO] [stdout]   --> src/utils/verification.rs:36:10
[INFO] [stdout]    |
[INFO] [stdout] 36 | async fn store_otp(db: &Database, user_id: &ObjectId, otp_code: &str) {
[INFO] [stdout]    |          ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `login_attempt_to_bson` is never used
[INFO] [stdout]   --> src/utils/risk_assessment.rs:17:8
[INFO] [stdout]    |
[INFO] [stdout] 17 | pub fn login_attempt_to_bson(login_attempt: &LoginAttempt) -> Document {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `DELETE` is never used
[INFO] [stdout]  --> src/services/auth/permissions.rs:3:11
[INFO] [stdout]   |
[INFO] [stdout] 3 | pub const DELETE: i32 = 0b0000000100;         // 4
[INFO] [stdout]   |           ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `EXECUTE` is never used
[INFO] [stdout]  --> src/services/auth/permissions.rs:5:11
[INFO] [stdout]   |
[INFO] [stdout] 5 | pub const EXECUTE: i32 = 0b0000010000;        // 16
[INFO] [stdout]   |           ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `ROLE_ADMIN` is never used
[INFO] [stdout]  --> src/services/auth/roles.rs:3:11
[INFO] [stdout]   |
[INFO] [stdout] 3 | pub const ROLE_ADMIN: i32 = READ | WRITE | DELETE | UPDATE | EXECUTE | ADMIN | MANAGE_USERS | INVITE_USERS | VIEW_FINANCES | MANAGE_F...
[INFO] [stdout]   |           ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Localization` is never constructed
[INFO] [stdout]  --> src/services/localization.rs:8:12
[INFO] [stdout]   |
[INFO] [stdout] 8 | pub struct Localization {
[INFO] [stdout]   |            ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new`, `add_language`, and `get_message` are never used
[INFO] [stdout]   --> src/services/localization.rs:13:12
[INFO] [stdout]    |
[INFO] [stdout] 12 | impl Localization {
[INFO] [stdout]    | ----------------- associated items in this implementation
[INFO] [stdout] 13 |     pub fn new() -> Self {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 24 |     fn add_language(&mut self, lang: &str, file_path: &str) {
[INFO] [stdout]    |        ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 38 |     pub fn get_message(&self, lang: &str, message_id: &str) -> String {
[INFO] [stdout]    |            ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 9.46s
[INFO] running `Command { std: "docker" "inspect" "d0e08bd3b7bdde89f2976e071dade745bab8a2cd674897951eecf627c3667eb1", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "d0e08bd3b7bdde89f2976e071dade745bab8a2cd674897951eecf627c3667eb1", kill_on_drop: false }`
[INFO] [stdout] d0e08bd3b7bdde89f2976e071dade745bab8a2cd674897951eecf627c3667eb1
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc2/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:aa71247004a7fa38d13ec170f48f06cdedf5bc50b2a8645e56ed7e992e6fa513" "/opt/rustwide/cargo-home/bin/cargo" "+bd7d74411512a3dd3b35d2f699c51dd2557c7e7e" "test" "--frozen" "-Zbuild-dir-new-layout", kill_on_drop: false }`
[INFO] [stdout] a0ce70eb0225153eb8708690dc13840d177609fe0e6c3e5f2c2101091c64f35b
[INFO] running `Command { std: "docker" "start" "-a" "a0ce70eb0225153eb8708690dc13840d177609fe0e6c3e5f2c2101091c64f35b", kill_on_drop: false }`
[INFO] [stderr] warning: unused import: `login_attempt_to_bson`
[INFO] [stderr]   --> src/handlers/auth.rs:19:327
[INFO] [stderr]    |
[INFO] [stderr] 19 | ... google_client}, risk_assessment::{assess_login_risk, login_attempt_to_bson, RiskLevel}, verification::generate_otp}};
[INFO] [stderr]    |                                                          ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `Claims`
[INFO] [stderr]   --> src/handlers/auth.rs:26:9
[INFO] [stderr]    |
[INFO] [stderr] 26 |         Claims, 
[INFO] [stderr]    |         ^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `Algorithm`
[INFO] [stderr]  --> src/utils/jwt.rs:1:36
[INFO] [stderr]   |
[INFO] [stderr] 1 | use jsonwebtoken::{decode, encode, Algorithm, DecodingKey, EncodingKey, Header, Validation};
[INFO] [stderr]   |                                    ^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `actix_web::http::header::ContentType`
[INFO] [stderr]  --> src/utils/email.rs:1:5
[INFO] [stderr]   |
[INFO] [stderr] 1 | use actix_web::http::header::ContentType;
[INFO] [stderr]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `actix_web::HttpResponse`
[INFO] [stderr]  --> src/utils/risk_assessment.rs:1:5
[INFO] [stderr]   |
[INFO] [stderr] 1 | use actix_web::HttpResponse;
[INFO] [stderr]   |     ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `std::collections::HashMap`
[INFO] [stderr]  --> src/utils/risk_assessment.rs:4:5
[INFO] [stderr]   |
[INFO] [stderr] 4 | use std::collections::HashMap;
[INFO] [stderr]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `Collection`
[INFO] [stderr]  --> src/utils/risk_assessment.rs:5:44
[INFO] [stderr]   |
[INFO] [stderr] 5 | use mongodb::{bson::{self, doc, Document}, Collection, Database};
[INFO] [stderr]   |                                            ^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `User`
[INFO] [stderr]  --> src/utils/risk_assessment.rs:7:41
[INFO] [stderr]   |
[INFO] [stderr] 7 | use crate::models::user::{LoginAttempt, User};
[INFO] [stderr]   |                                         ^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused imports: `FluentArgs` and `FluentValue`
[INFO] [stderr]  --> src/services/localization.rs:1:28
[INFO] [stderr]   |
[INFO] [stderr] 1 | use fluent::{FluentBundle, FluentValue, FluentResource, FluentArgs};
[INFO] [stderr]   |                            ^^^^^^^^^^^                  ^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `unic_langid::langid`
[INFO] [stderr]  --> src/services/localization.rs:6:5
[INFO] [stderr]   |
[INFO] [stderr] 6 | use unic_langid::langid;
[INFO] [stderr]   |     ^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `services::localization::Localization`
[INFO] [stderr]   --> src/main.rs:19:5
[INFO] [stderr]    |
[INFO] [stderr] 19 | use services::localization::Localization;
[INFO] [stderr]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `phone`
[INFO] [stderr]  --> src/utils/txt.rs:3:37
[INFO] [stderr]   |
[INFO] [stderr] 3 | pub async fn send_verification_text(phone: &str, token: &str) -> Result<(), Box<dyn Error>> {
[INFO] [stderr]   |                                     ^^^^^ help: if this is intentional, prefix it with an underscore: `_phone`
[INFO] [stderr]   |
[INFO] [stderr]   = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `token`
[INFO] [stderr]  --> src/utils/txt.rs:3:50
[INFO] [stderr]   |
[INFO] [stderr] 3 | pub async fn send_verification_text(phone: &str, token: &str) -> Result<(), Box<dyn Error>> {
[INFO] [stderr]   |                                                  ^^^^^ help: if this is intentional, prefix it with an underscore: `_token`
[INFO] [stderr] 
[INFO] [stderr] warning: struct `ProfilePreferences` is never constructed
[INFO] [stderr]   --> src/models/user.rs:23:12
[INFO] [stderr]    |
[INFO] [stderr] 23 | pub struct ProfilePreferences {
[INFO] [stderr]    |            ^^^^^^^^^^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: struct `EmailPreferences` is never constructed
[INFO] [stderr]   --> src/models/user.rs:37:12
[INFO] [stderr]    |
[INFO] [stderr] 37 | pub struct EmailPreferences {
[INFO] [stderr]    |            ^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: struct `PrivacySettings` is never constructed
[INFO] [stderr]   --> src/models/user.rs:42:12
[INFO] [stderr]    |
[INFO] [stderr] 42 | pub struct PrivacySettings {
[INFO] [stderr]    |            ^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: struct `ContentFilteringSettings` is never constructed
[INFO] [stderr]   --> src/models/user.rs:46:12
[INFO] [stderr]    |
[INFO] [stderr] 46 | pub struct ContentFilteringSettings {
[INFO] [stderr]    |            ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: struct `LocationSettings` is never constructed
[INFO] [stderr]   --> src/models/user.rs:50:12
[INFO] [stderr]    |
[INFO] [stderr] 50 | pub struct LocationSettings {
[INFO] [stderr]    |            ^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: struct `SyncingPreferences` is never constructed
[INFO] [stderr]   --> src/models/user.rs:54:12
[INFO] [stderr]    |
[INFO] [stderr] 54 | pub struct SyncingPreferences {
[INFO] [stderr]    |            ^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: struct `BackupSettings` is never constructed
[INFO] [stderr]   --> src/models/user.rs:58:12
[INFO] [stderr]    |
[INFO] [stderr] 58 | pub struct BackupSettings {
[INFO] [stderr]    |            ^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: struct `UsageStatistics` is never constructed
[INFO] [stderr]   --> src/models/user.rs:63:12
[INFO] [stderr]    |
[INFO] [stderr] 63 | pub struct UsageStatistics {
[INFO] [stderr]    |            ^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: struct `DataPrivacySettings` is never constructed
[INFO] [stderr]   --> src/models/privacy.rs:20:12
[INFO] [stderr]    |
[INFO] [stderr] 20 | pub struct DataPrivacySettings {
[INFO] [stderr]    |            ^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: struct `AnalyticsConsent` is never constructed
[INFO] [stderr]   --> src/models/privacy.rs:42:8
[INFO] [stderr]    |
[INFO] [stderr] 42 | struct AnalyticsConsent {
[INFO] [stderr]    |        ^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: struct `AdTrackingConsent` is never constructed
[INFO] [stderr]   --> src/models/privacy.rs:57:8
[INFO] [stderr]    |
[INFO] [stderr] 57 | struct AdTrackingConsent {
[INFO] [stderr]    |        ^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: struct `MarketingConsent` is never constructed
[INFO] [stderr]   --> src/models/privacy.rs:72:8
[INFO] [stderr]    |
[INFO] [stderr] 72 | struct MarketingConsent {
[INFO] [stderr]    |        ^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: struct `PersonalizationConsent` is never constructed
[INFO] [stderr]   --> src/models/privacy.rs:85:8
[INFO] [stderr]    |
[INFO] [stderr] 85 | struct PersonalizationConsent {
[INFO] [stderr]    |        ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: struct `CommunicationConsent` is never constructed
[INFO] [stderr]   --> src/models/privacy.rs:95:8
[INFO] [stderr]    |
[INFO] [stderr] 95 | struct CommunicationConsent {
[INFO] [stderr]    |        ^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: struct `LawfulBasis` is never constructed
[INFO] [stderr]    --> src/models/privacy.rs:114:8
[INFO] [stderr]     |
[INFO] [stderr] 114 | struct LawfulBasis {
[INFO] [stderr]     |        ^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: struct `DataSubjectRights` is never constructed
[INFO] [stderr]    --> src/models/privacy.rs:125:8
[INFO] [stderr]     |
[INFO] [stderr] 125 | struct DataSubjectRights {
[INFO] [stderr]     |        ^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: struct `DataBreachNotification` is never constructed
[INFO] [stderr]    --> src/models/privacy.rs:138:8
[INFO] [stderr]     |
[INFO] [stderr] 138 | struct DataBreachNotification {
[INFO] [stderr]     |        ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: struct `DPODetails` is never constructed
[INFO] [stderr]    --> src/models/privacy.rs:145:8
[INFO] [stderr]     |
[INFO] [stderr] 145 | struct DPODetails {
[INFO] [stderr]     |        ^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: enum `LoginError` is never used
[INFO] [stderr]    --> src/handlers/auth.rs:357:6
[INFO] [stderr]     |
[INFO] [stderr] 357 | enum LoginError {
[INFO] [stderr]     |      ^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: enum `ForgotPasswordError` is never used
[INFO] [stderr]    --> src/handlers/auth.rs:587:6
[INFO] [stderr]     |
[INFO] [stderr] 587 | enum ForgotPasswordError {
[INFO] [stderr]     |      ^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: variant `InvalidResetToken` is never constructed
[INFO] [stderr]    --> src/handlers/auth.rs:642:5
[INFO] [stderr]     |
[INFO] [stderr] 638 | enum ResetPasswordError {
[INFO] [stderr]     |      ------------------ variant in this enum
[INFO] [stderr] ...
[INFO] [stderr] 642 |     InvalidResetToken,
[INFO] [stderr]     |     ^^^^^^^^^^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = note: `ResetPasswordError` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stderr] 
[INFO] [stderr] warning: function `verify_otp` is never used
[INFO] [stderr]    --> src/handlers/auth.rs:773:14
[INFO] [stderr]     |
[INFO] [stderr] 773 | pub async fn verify_otp(db: web::Data<Database>, user_id: String, provided_otp: String) -> HttpResponse {
[INFO] [stderr]     |              ^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: variants `DecryptionError`, `MfaNotEnabled`, and `InvalidRecoveryCode` are never constructed
[INFO] [stderr]     --> src/handlers/auth.rs:1124:5
[INFO] [stderr]      |
[INFO] [stderr] 1116 | pub enum MfaError {
[INFO] [stderr]      |          -------- variants in this enum
[INFO] [stderr] ...
[INFO] [stderr] 1124 |     DecryptionError,
[INFO] [stderr]      |     ^^^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 1133 |     MfaNotEnabled,
[INFO] [stderr]      |     ^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 1136 |     InvalidRecoveryCode,
[INFO] [stderr]      |     ^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]      |
[INFO] [stderr]      = note: `MfaError` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stderr] 
[INFO] [stderr] warning: function `store_otp` is never used
[INFO] [stderr]   --> src/utils/verification.rs:36:10
[INFO] [stderr]    |
[INFO] [stderr] 36 | async fn store_otp(db: &Database, user_id: &ObjectId, otp_code: &str) {
[INFO] [stderr]    |          ^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `login_attempt_to_bson` is never used
[INFO] [stderr]   --> src/utils/risk_assessment.rs:17:8
[INFO] [stderr]    |
[INFO] [stderr] 17 | pub fn login_attempt_to_bson(login_attempt: &LoginAttempt) -> Document {
[INFO] [stderr]    |        ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: constant `DELETE` is never used
[INFO] [stderr]  --> src/services/auth/permissions.rs:3:11
[INFO] [stderr]   |
[INFO] [stderr] 3 | pub const DELETE: i32 = 0b0000000100;         // 4
[INFO] [stderr]   |           ^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: constant `EXECUTE` is never used
[INFO] [stderr]  --> src/services/auth/permissions.rs:5:11
[INFO] [stderr]   |
[INFO] [stderr] 5 | pub const EXECUTE: i32 = 0b0000010000;        // 16
[INFO] [stderr]   |           ^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: constant `ROLE_ADMIN` is never used
[INFO] [stderr]  --> src/services/auth/roles.rs:3:11
[INFO] [stderr]   |
[INFO] [stderr] 3 | pub const ROLE_ADMIN: i32 = READ | WRITE | DELETE | UPDATE | EXECUTE | ADMIN | MANAGE_USERS | INVITE_USERS | VIEW_FINANCES | MANAGE_F...
[INFO] [stderr]   |           ^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: struct `Localization` is never constructed
[INFO] [stderr]  --> src/services/localization.rs:8:12
[INFO] [stderr]   |
[INFO] [stderr] 8 | pub struct Localization {
[INFO] [stderr]   |            ^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: associated items `new`, `add_language`, and `get_message` are never used
[INFO] [stderr]   --> src/services/localization.rs:13:12
[INFO] [stderr]    |
[INFO] [stderr] 12 | impl Localization {
[INFO] [stderr]    | ----------------- associated items in this implementation
[INFO] [stderr] 13 |     pub fn new() -> Self {
[INFO] [stderr]    |            ^^^
[INFO] [stderr] ...
[INFO] [stderr] 24 |     fn add_language(&mut self, lang: &str, file_path: &str) {
[INFO] [stderr]    |        ^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 38 |     pub fn get_message(&self, lang: &str, message_id: &str) -> String {
[INFO] [stderr]    |            ^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: `server` (bin "server" test) generated 43 warnings (run `cargo fix --bin "server" -p server --tests` to apply 13 suggestions)
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 0.56s
[INFO] [stderr]      Running unittests src/main.rs (/opt/rustwide/target/debug/build/server/a23bfa4a0c46b254/deps/server-a23bfa4a0c46b254)
[INFO] [stdout] 
[INFO] [stdout] running 0 tests
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s
[INFO] [stdout] 
[INFO] running `Command { std: "docker" "inspect" "a0ce70eb0225153eb8708690dc13840d177609fe0e6c3e5f2c2101091c64f35b", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "a0ce70eb0225153eb8708690dc13840d177609fe0e6c3e5f2c2101091c64f35b", kill_on_drop: false }`
[INFO] [stdout] a0ce70eb0225153eb8708690dc13840d177609fe0e6c3e5f2c2101091c64f35b
