[INFO] cloning repository https://github.com/nils-mathieu/pdrs
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/nils-mathieu/pdrs" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fnils-mathieu%2Fpdrs", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fnils-mathieu%2Fpdrs'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] fa549adcba75e850f835558fd5cc5fd180e01755
[INFO] testing nils-mathieu/pdrs against master#d98a5da813da67eb189387b8ccfb73cf481275d8+rustflags=-Copt-level=3 for pr-138759
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fnils-mathieu%2Fpdrs" "/workspace/builds/worker-6-tc1/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-6-tc1/source'...
[INFO] [stderr] done.
[INFO] started tweaking git repo https://github.com/nils-mathieu/pdrs
[INFO] finished tweaking git repo https://github.com/nils-mathieu/pdrs
[INFO] tweaked toml for git repo https://github.com/nils-mathieu/pdrs written to /workspace/builds/worker-6-tc1/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/nils-mathieu/pdrs on toolchain d98a5da813da67eb189387b8ccfb73cf481275d8
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+d98a5da813da67eb189387b8ccfb73cf481275d8" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate git repo https://github.com/nils-mathieu/pdrs 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" "+d98a5da813da67eb189387b8ccfb73cf481275d8" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Updating crates.io index
[INFO] [stderr]  Downloading crates ...
[INFO] [stderr]   Downloaded libsql-sys v0.8.0
[INFO] [stderr]   Downloaded libsql v0.6.0
[INFO] [stderr]   Downloaded bindgen v0.66.1
[INFO] [stderr]   Downloaded libsql-ffi v0.5.0
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-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:e90291280db7d1fac5b66fc6dad9f9662629e7365a55743daf9bdf73ebc4ea79" "/opt/rustwide/cargo-home/bin/cargo" "+d98a5da813da67eb189387b8ccfb73cf481275d8" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] 5ac1ccabcee4c2ff7fa2494768e4c586c51c174603eb3cf6b9f7e6bb83665420
[INFO] running `Command { std: "docker" "start" "-a" "5ac1ccabcee4c2ff7fa2494768e4c586c51c174603eb3cf6b9f7e6bb83665420", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "5ac1ccabcee4c2ff7fa2494768e4c586c51c174603eb3cf6b9f7e6bb83665420", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "5ac1ccabcee4c2ff7fa2494768e4c586c51c174603eb3cf6b9f7e6bb83665420", kill_on_drop: false }`
[INFO] [stdout] 5ac1ccabcee4c2ff7fa2494768e4c586c51c174603eb3cf6b9f7e6bb83665420
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-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 -Copt-level=3" "-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:e90291280db7d1fac5b66fc6dad9f9662629e7365a55743daf9bdf73ebc4ea79" "/opt/rustwide/cargo-home/bin/cargo" "+d98a5da813da67eb189387b8ccfb73cf481275d8" "build" "--frozen" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] b974258246eb3d42e3c1bf690eafcd2ac5160500876797ea97245a2ef9c35c52
[INFO] running `Command { std: "docker" "start" "-a" "b974258246eb3d42e3c1bf690eafcd2ac5160500876797ea97245a2ef9c35c52", kill_on_drop: false }`
[INFO] [stderr]    Compiling libc v0.2.168
[INFO] [stderr]    Compiling serde v1.0.215
[INFO] [stderr]    Compiling pin-project-lite v0.2.15
[INFO] [stderr]    Compiling glob v0.3.1
[INFO] [stderr]    Compiling prettyplease v0.2.25
[INFO] [stderr]    Compiling rustix v0.38.42
[INFO] [stderr]    Compiling regex-syntax v0.8.5
[INFO] [stderr]    Compiling linux-raw-sys v0.4.14
[INFO] [stderr]    Compiling memchr v2.7.4
[INFO] [stderr]    Compiling quote v1.0.37
[INFO] [stderr]    Compiling bitflags v2.6.0
[INFO] [stderr]    Compiling libloading v0.8.6
[INFO] [stderr]    Compiling tracing-core v0.1.33
[INFO] [stderr]    Compiling bindgen v0.66.1
[INFO] [stderr]    Compiling home v0.5.9
[INFO] [stderr]    Compiling either v1.13.0
[INFO] [stderr]    Compiling lazycell v1.3.0
[INFO] [stderr]    Compiling rustc-hash v1.1.0
[INFO] [stderr]    Compiling peeking_take_while v0.1.2
[INFO] [stderr]    Compiling log v0.4.22
[INFO] [stderr]    Compiling generic-array v0.14.7
[INFO] [stderr]    Compiling cc v1.2.3
[INFO] [stderr]    Compiling httparse v1.9.5
[INFO] [stderr]    Compiling indexmap v2.7.0
[INFO] [stderr]    Compiling syn v2.0.90
[INFO] [stderr]    Compiling base64ct v1.6.0
[INFO] [stderr]    Compiling percent-encoding v2.3.1
[INFO] [stderr]    Compiling smallvec v1.13.2
[INFO] [stderr]    Compiling serde_json v1.0.133
[INFO] [stderr]    Compiling form_urlencoded v1.2.1
[INFO] [stderr]    Compiling thread_local v1.1.8
[INFO] [stderr]    Compiling nom v7.1.3
[INFO] [stderr]    Compiling clang-sys v1.8.1
[INFO] [stderr]    Compiling cpufeatures v0.2.16
[INFO] [stderr]    Compiling tracing-subscriber v0.3.19
[INFO] [stderr]    Compiling crypto-common v0.1.6
[INFO] [stderr]    Compiling block-buffer v0.10.4
[INFO] [stderr]    Compiling dotenvy v0.15.7
[INFO] [stderr]    Compiling digest v0.10.7
[INFO] [stderr]    Compiling blake2 v0.10.6
[INFO] [stderr]    Compiling socket2 v0.5.8
[INFO] [stderr]    Compiling signal-hook-registry v1.4.2
[INFO] [stderr]    Compiling mio v1.0.3
[INFO] [stderr]    Compiling getrandom v0.2.15
[INFO] [stderr]    Compiling rand_core v0.6.4
[INFO] [stderr]    Compiling password-hash v0.5.0
[INFO] [stderr]    Compiling argon2 v0.5.3
[INFO] [stderr]    Compiling regex-automata v0.4.9
[INFO] [stderr]    Compiling which v4.4.2
[INFO] [stderr]    Compiling cexpr v0.6.0
[INFO] [stderr]    Compiling regex v1.11.1
[INFO] [stderr]    Compiling serde_derive v1.0.215
[INFO] [stderr]    Compiling futures-macro v0.3.31
[INFO] [stderr]    Compiling zerocopy-derive v0.7.35
[INFO] [stderr]    Compiling tracing-attributes v0.1.28
[INFO] [stderr]    Compiling tokio-macros v2.4.0
[INFO] [stderr]    Compiling thiserror-impl v1.0.69
[INFO] [stderr]    Compiling async-trait v0.1.83
[INFO] [stderr]    Compiling zerocopy v0.7.35
[INFO] [stderr]    Compiling futures-util v0.3.31
[INFO] [stderr]    Compiling ppv-lite86 v0.2.20
[INFO] [stderr]    Compiling thiserror v1.0.69
[INFO] [stderr]    Compiling rand_chacha v0.3.1
[INFO] [stderr]    Compiling rand v0.8.5
[INFO] [stderr]    Compiling futures-executor v0.3.31
[INFO] [stderr]    Compiling futures v0.3.31
[INFO] [stderr]    Compiling tracing v0.1.41
[INFO] [stderr]    Compiling libsql-ffi v0.5.0
[INFO] [stderr]    Compiling bytes v1.9.0
[INFO] [stderr]    Compiling serde_urlencoded v0.7.1
[INFO] [stderr]    Compiling http v1.2.0
[INFO] [stderr]    Compiling tokio v1.42.0
[INFO] [stderr]    Compiling http-body v1.0.1
[INFO] [stderr]    Compiling http-body-util v0.1.2
[INFO] [stderr]    Compiling tokio-util v0.7.13
[INFO] [stderr]    Compiling h2 v0.4.7
[INFO] [stderr]    Compiling hyper v1.5.1
[INFO] [stderr]    Compiling libsql-sys v0.8.0
[INFO] [stderr]    Compiling hyper-util v0.1.10
[INFO] [stderr]    Compiling libsql v0.6.0
[INFO] [stderr]    Compiling rpds v0.0.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unused import: `ffi::OsString`
[INFO] [stdout]  --> src/main.rs:4:32
[INFO] [stdout]   |
[INFO] [stdout] 4 |     std::{convert::Infallible, ffi::OsString, net::SocketAddr, str::FromStr, time::Duration},
[INFO] [stdout]   |                                ^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `self::at_uri::*`
[INFO] [stdout]  --> src/api/xrpc/model/mod.rs:5:9
[INFO] [stdout]   |
[INFO] [stdout] 5 | pub use self::at_uri::*;
[INFO] [stdout]   |         ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `self::at_identifier::*`
[INFO] [stdout]   --> src/api/xrpc/model/mod.rs:11:9
[INFO] [stdout]    |
[INFO] [stdout] 11 | pub use self::at_identifier::*;
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::api::xrpc::error::XrpcError`
[INFO] [stdout]  --> src/api/xrpc/com_atproto/admin_getInviteCodes.rs:1:6
[INFO] [stdout]   |
[INFO] [stdout] 1 | use {crate::api::xrpc::error::XrpcError, tracing::instrument};
[INFO] [stdout]   |      ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::api::xrpc::error::XrpcError`
[INFO] [stdout]  --> src/api/xrpc/com_atproto/admin_searchAccounts.rs:1:6
[INFO] [stdout]   |
[INFO] [stdout] 1 | use {crate::api::xrpc::error::XrpcError, tracing::instrument};
[INFO] [stdout]   |      ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::api::xrpc::error::XrpcError`
[INFO] [stdout]  --> src/api/xrpc/com_atproto/label_queryLabels.rs:1:6
[INFO] [stdout]   |
[INFO] [stdout] 1 | use {crate::api::xrpc::error::XrpcError, tracing::instrument};
[INFO] [stdout]   |      ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::expect_env`
[INFO] [stdout]  --> src/global/mod.rs:5:5
[INFO] [stdout]   |
[INFO] [stdout] 5 |     crate::expect_env,
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Argon2`, `Deserialize`, `PasswordHash`, `PasswordVerifier`, `RngCore`, `SeedableRng`, `Serialize`, `base64ct::Encoding`, `cell::RefCell`, `libsql::params::IntoParams`, `rngs::StdRng`, `str::FromStr`, `try_get_and_parse_env`, and `try_get_env`
[INFO] [stdout]  --> src/global/database.rs:2:25
[INFO] [stdout]   |
[INFO] [stdout] 2 |     crate::{expect_env, try_get_and_parse_env, try_get_env},
[INFO] [stdout]   |                         ^^^^^^^^^^^^^^^^^^^^^  ^^^^^^^^^^^
[INFO] [stdout] 3 |     argon2::{Argon2, PasswordHash, PasswordVerifier},
[INFO] [stdout]   |              ^^^^^^  ^^^^^^^^^^^^  ^^^^^^^^^^^^^^^^
[INFO] [stdout] 4 |     base64ct::Encoding,
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 5 |     libsql::params::IntoParams,
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 6 |     rand::{rngs::StdRng, RngCore, SeedableRng},
[INFO] [stdout]   |            ^^^^^^^^^^^^  ^^^^^^^  ^^^^^^^^^^^
[INFO] [stdout] 7 |     serde::{Deserialize, Serialize},
[INFO] [stdout]   |             ^^^^^^^^^^^  ^^^^^^^^^
[INFO] [stdout] 8 |     std::{cell::RefCell, str::FromStr},
[INFO] [stdout]   |           ^^^^^^^^^^^^^  ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `DUMMY`, `method_not_allowed`, and `invalid_request` are never used
[INFO] [stdout]   --> src/api/xrpc/error.rs:27:15
[INFO] [stdout]    |
[INFO] [stdout] 23 | impl XrpcError {
[INFO] [stdout]    | -------------- associated items in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 27 |     pub const DUMMY: Self = Self {
[INFO] [stdout]    |               ^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 44 |     pub fn method_not_allowed(message: impl Into<Cow<'static, str>>) -> Self {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 54 |     pub fn invalid_request(message: impl Into<Cow<'static, str>>) -> Self {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `method_not_allowed` is never used
[INFO] [stdout]   --> src/api/xrpc/handler.rs:58:4
[INFO] [stdout]    |
[INFO] [stdout] 58 | fn method_not_allowed(req: &Request) -> XrpcError {
[INFO] [stdout]    |    ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `MethodPost` is never constructed
[INFO] [stdout]   --> src/api/xrpc/handler.rs:68:12
[INFO] [stdout]    |
[INFO] [stdout] 68 | pub struct MethodPost;
[INFO] [stdout]    |            ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `MethodGet` is never constructed
[INFO] [stdout]   --> src/api/xrpc/handler.rs:84:12
[INFO] [stdout]    |
[INFO] [stdout] 84 | pub struct MethodGet;
[INFO] [stdout]    |            ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Query` is never constructed
[INFO] [stdout]    --> src/api/xrpc/handler.rs:100:12
[INFO] [stdout]     |
[INFO] [stdout] 100 | pub struct Query<T>(pub T);
[INFO] [stdout]     |            ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Json` is never constructed
[INFO] [stdout]    --> src/api/xrpc/handler.rs:165:12
[INFO] [stdout]     |
[INFO] [stdout] 165 | pub struct Json<T>(pub T);
[INFO] [stdout]     |            ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `read_body` is never used
[INFO] [stdout]    --> src/api/xrpc/handler.rs:198:10
[INFO] [stdout]     |
[INFO] [stdout] 198 | async fn read_body<B>(body: &mut B) -> Result<Bytes, XrpcError>
[INFO] [stdout]     |          ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Did` is never constructed
[INFO] [stdout]   --> src/api/xrpc/model/did.rs:23:12
[INFO] [stdout]    |
[INFO] [stdout] 23 | pub struct Did<T: ?Sized = Box<str>>(T);
[INFO] [stdout]    |            ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `new_unchecked` is never used
[INFO] [stdout]   --> src/api/xrpc/model/did.rs:33:25
[INFO] [stdout]    |
[INFO] [stdout] 25 | impl<T> Did<T> {
[INFO] [stdout]    | -------------- associated function in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 33 |     pub const unsafe fn new_unchecked(val: T) -> Self {
[INFO] [stdout]    |                         ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new` and `as_str` are never used
[INFO] [stdout]   --> src/api/xrpc/model/did.rs:45:12
[INFO] [stdout]    |
[INFO] [stdout] 38 | / impl<T> Did<T>
[INFO] [stdout] 39 | | where
[INFO] [stdout] 40 | |     T: ?Sized + AsRef<str>,
[INFO] [stdout]    | |___________________________- associated items in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 45 |       pub fn new(val: T) -> Result<Self, DidParseError>
[INFO] [stdout]    |              ^^^
[INFO] [stdout] ...
[INFO] [stdout] 58 |       pub fn as_str(&self) -> &str {
[INFO] [stdout]    |              ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `validate_did` is never used
[INFO] [stdout]   --> src/api/xrpc/model/did.rs:70:8
[INFO] [stdout]    |
[INFO] [stdout] 70 | pub fn validate_did(mut bytes: &[u8]) -> bool {
[INFO] [stdout]    |        ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Parts` is never constructed
[INFO] [stdout]   --> src/api/xrpc/model/at_uri.rs:21:8
[INFO] [stdout]    |
[INFO] [stdout] 21 | struct Parts {
[INFO] [stdout]    |        ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `AtUri` is never constructed
[INFO] [stdout]   --> src/api/xrpc/model/at_uri.rs:30:12
[INFO] [stdout]    |
[INFO] [stdout] 30 | pub struct AtUri<T: ?Sized = Box<str>> {
[INFO] [stdout]    |            ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new`, `as_str`, `authority_str`, `path`, `query`, and `fragment` are never used
[INFO] [stdout]   --> src/api/xrpc/model/at_uri.rs:37:12
[INFO] [stdout]    |
[INFO] [stdout] 35 | impl<T: ?Sized + AsRef<str>> AtUri<T> {
[INFO] [stdout]    | ------------------------------------- associated items in this implementation
[INFO] [stdout] 36 |     /// Creates a new [`AtUri`] instance from the provided value.
[INFO] [stdout] 37 |     pub fn new(val: T) -> Result<Self, AtUriParseError>
[INFO] [stdout]    |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 50 |     pub fn as_str(&self) -> &str {
[INFO] [stdout]    |            ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 55 |     pub fn authority_str(&self) -> &str {
[INFO] [stdout]    |            ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 63 |     pub fn path(&self) -> &str {
[INFO] [stdout]    |            ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 71 |     pub fn query(&self) -> &str {
[INFO] [stdout]    |            ^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 80 |     pub fn fragment(&self) -> &str {
[INFO] [stdout]    |            ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `validate_at_uri` is never used
[INFO] [stdout]    --> src/api/xrpc/model/at_uri.rs:127:8
[INFO] [stdout]     |
[INFO] [stdout] 127 | pub fn validate_at_uri(bytes: &[u8]) -> bool {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `compute_parts` is never used
[INFO] [stdout]    --> src/api/xrpc/model/at_uri.rs:132:4
[INFO] [stdout]     |
[INFO] [stdout] 132 | fn compute_parts(mut bytes: &[u8]) -> Option<Parts> {
[INFO] [stdout]     |    ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `is_valid_uri_character` is never used
[INFO] [stdout]    --> src/api/xrpc/model/at_uri.rs:233:4
[INFO] [stdout]     |
[INFO] [stdout] 233 | fn is_valid_uri_character(c: &u8) -> bool {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `validate_path_component` is never used
[INFO] [stdout]    --> src/api/xrpc/model/at_uri.rs:238:4
[INFO] [stdout]     |
[INFO] [stdout] 238 | fn validate_path_component(bytes: &[u8]) -> bool {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `validate_fragment` is never used
[INFO] [stdout]    --> src/api/xrpc/model/at_uri.rs:243:4
[INFO] [stdout]     |
[INFO] [stdout] 243 | fn validate_fragment(bytes: &[u8]) -> bool {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `validate_query` is never used
[INFO] [stdout]    --> src/api/xrpc/model/at_uri.rs:248:4
[INFO] [stdout]     |
[INFO] [stdout] 248 | fn validate_query(bytes: &[u8]) -> bool {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `parse_at_prefix` is never used
[INFO] [stdout]    --> src/api/xrpc/model/at_uri.rs:256:4
[INFO] [stdout]     |
[INFO] [stdout] 256 | fn parse_at_prefix(mut bytes: &[u8]) -> Option<&[u8]> {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `split_path_component` is never used
[INFO] [stdout]    --> src/api/xrpc/model/at_uri.rs:271:4
[INFO] [stdout]     |
[INFO] [stdout] 271 | fn split_path_component(bytes: &[u8]) -> (&[u8], &[u8]) {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `validate_authority` is never used
[INFO] [stdout]    --> src/api/xrpc/model/at_uri.rs:283:4
[INFO] [stdout]     |
[INFO] [stdout] 283 | fn validate_authority(authority: &[u8]) -> bool {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Handle` is never constructed
[INFO] [stdout]   --> src/api/xrpc/model/handle.rs:20:12
[INFO] [stdout]    |
[INFO] [stdout] 20 | pub struct Handle<T: ?Sized = Box<str>>(pub T);
[INFO] [stdout]    |            ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `new_unchecked` is never used
[INFO] [stdout]   --> src/api/xrpc/model/handle.rs:30:25
[INFO] [stdout]    |
[INFO] [stdout] 22 | impl<T> Handle<T> {
[INFO] [stdout]    | ----------------- associated function in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 30 |     pub const unsafe fn new_unchecked(val: T) -> Self {
[INFO] [stdout]    |                         ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new` and `as_str` are never used
[INFO] [stdout]   --> src/api/xrpc/model/handle.rs:42:12
[INFO] [stdout]    |
[INFO] [stdout] 35 | / impl<T> Handle<T>
[INFO] [stdout] 36 | | where
[INFO] [stdout] 37 | |     T: ?Sized + AsRef<str>,
[INFO] [stdout]    | |___________________________- associated items in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 42 |       pub fn new(val: T) -> Result<Self, HandleParseError>
[INFO] [stdout]    |              ^^^
[INFO] [stdout] ...
[INFO] [stdout] 55 |       pub fn as_str(&self) -> &str {
[INFO] [stdout]    |              ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `validate_handle` is never used
[INFO] [stdout]   --> src/api/xrpc/model/handle.rs:94:8
[INFO] [stdout]    |
[INFO] [stdout] 94 | pub fn validate_handle(handle: &[u8]) -> bool {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `validate_tld` is never used
[INFO] [stdout]    --> src/api/xrpc/model/handle.rs:119:4
[INFO] [stdout]     |
[INFO] [stdout] 119 | fn validate_tld(tld: &[u8]) -> bool {
[INFO] [stdout]     |    ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `validate_label` is never used
[INFO] [stdout]    --> src/api/xrpc/model/handle.rs:133:4
[INFO] [stdout]     |
[INFO] [stdout] 133 | fn validate_label(label: &[u8]) -> bool {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `AtIdentifier` is never used
[INFO] [stdout]  --> src/api/xrpc/model/at_identifier.rs:9:10
[INFO] [stdout]   |
[INFO] [stdout] 9 | pub enum AtIdentifier<T = Box<str>> {
[INFO] [stdout]   |          ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `as_str` is never used
[INFO] [stdout]   --> src/api/xrpc/model/at_identifier.rs:18:12
[INFO] [stdout]    |
[INFO] [stdout] 16 | impl<T: AsRef<str>> AtIdentifier<T> {
[INFO] [stdout]    | ----------------------------------- method in this implementation
[INFO] [stdout] 17 |     /// Returns the identifier as a string.
[INFO] [stdout] 18 |     pub fn as_str(&self) -> &str {
[INFO] [stdout]    |            ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `password_hasher` and `database` are never read
[INFO] [stdout]   --> src/global/mod.rs:19:9
[INFO] [stdout]    |
[INFO] [stdout] 17 | pub struct GlobalState {
[INFO] [stdout]    |            ----------- fields in this struct
[INFO] [stdout] 18 |     /// The password hasher responsible for hashing and verifying passwords.
[INFO] [stdout] 19 |     pub password_hasher: PasswordHasher,
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^
[INFO] [stdout] 20 |     /// The database instance.
[INFO] [stdout] 21 |     pub database: Database,
[INFO] [stdout]    |         ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `get` is never used
[INFO] [stdout]   --> src/global/mod.rs:42:8
[INFO] [stdout]    |
[INFO] [stdout] 42 | pub fn get() -> &'static GlobalState {
[INFO] [stdout]    |        ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `db` is never read
[INFO] [stdout]   --> src/global/database.rs:15:5
[INFO] [stdout]    |
[INFO] [stdout] 13 | pub struct Database {
[INFO] [stdout]    |            -------- field in this struct
[INFO] [stdout] 14 |     /// The inner database object.
[INFO] [stdout] 15 |     db: libsql::Database,
[INFO] [stdout]    |     ^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `FailedToHashPassword` is never constructed
[INFO] [stdout]   --> src/global/password.rs:12:12
[INFO] [stdout]    |
[INFO] [stdout] 12 | pub struct FailedToHashPassword;
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `ARGON2_VERSION` is never used
[INFO] [stdout]   --> src/global/password.rs:28:7
[INFO] [stdout]    |
[INFO] [stdout] 28 | const ARGON2_VERSION: argon2::Version = argon2::Version::V0x13;
[INFO] [stdout]    |       ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `ARGON2_ALGORITHM` is never used
[INFO] [stdout]   --> src/global/password.rs:29:7
[INFO] [stdout]    |
[INFO] [stdout] 29 | const ARGON2_ALGORITHM: argon2::Algorithm = argon2::Algorithm::Argon2id;
[INFO] [stdout]    |       ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type alias `B64` is never used
[INFO] [stdout]   --> src/global/password.rs:32:6
[INFO] [stdout]    |
[INFO] [stdout] 32 | type B64 = base64ct::Base64Unpadded;
[INFO] [stdout]    |      ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `parallelism`, `memory_cost`, `time_cost`, and `secret` are never read
[INFO] [stdout]   --> src/global/password.rs:37:5
[INFO] [stdout]    |
[INFO] [stdout] 35 | pub struct PasswordHasher {
[INFO] [stdout]    |            -------------- fields in this struct
[INFO] [stdout] 36 |     /// The p-cost of the Argon2 algorithm.
[INFO] [stdout] 37 |     parallelism: u32,
[INFO] [stdout]    |     ^^^^^^^^^^^
[INFO] [stdout] 38 |     /// The m-cost of the Argon2 algorithm.
[INFO] [stdout] 39 |     memory_cost: u32,
[INFO] [stdout]    |     ^^^^^^^^^^^
[INFO] [stdout] 40 |     /// The t-cost of the Argon2 algorithm.
[INFO] [stdout] 41 |     time_cost: u32,
[INFO] [stdout]    |     ^^^^^^^^^
[INFO] [stdout] 42 |     /// The secret key used to hash passwords.
[INFO] [stdout] 43 |     secret: Option<&'static [u8]>,
[INFO] [stdout]    |     ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `hash_password` and `verify_password` are never used
[INFO] [stdout]    --> src/global/password.rs:73:12
[INFO] [stdout]     |
[INFO] [stdout] 46  | impl PasswordHasher {
[INFO] [stdout]     | ------------------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 73  |     pub fn hash_password(&self, password: &[u8]) -> String {
[INFO] [stdout]     |            ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 122 |     pub fn verify_password(&self, password: &[u8], hash_string: &str) -> bool {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `make_argon2_engine` is never used
[INFO] [stdout]    --> src/global/password.rs:185:4
[INFO] [stdout]     |
[INFO] [stdout] 185 | fn make_argon2_engine(
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `serialize` and `deserialize` are never used
[INFO] [stdout]    --> src/global/password.rs:241:12
[INFO] [stdout]     |
[INFO] [stdout] 239 | impl<'a> SavedPasswordHash<'a> {
[INFO] [stdout]     | ------------------------------ associated items in this implementation
[INFO] [stdout] 240 |     /// Serializes this [`SavedPasswordHash`] object into a JSON string.
[INFO] [stdout] 241 |     pub fn serialize(&self) -> String {
[INFO] [stdout]     |            ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 246 |     pub fn deserialize(json: &'a str) -> serde_json::Result<Self> {
[INFO] [stdout]     |            ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `base64_encoded_len` is never used
[INFO] [stdout]    --> src/global/password.rs:254:10
[INFO] [stdout]     |
[INFO] [stdout] 254 | const fn base64_encoded_len(n: usize) -> Option<usize> {
[INFO] [stdout]     |          ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing
[INFO] [stdout]    --> src/global/password.rs:191:20
[INFO] [stdout]     |
[INFO] [stdout] 191 |     secret: Option<&[u8]>,
[INFO] [stdout]     |                    ^^^^^ this lifetime flows to the output
[INFO] [stdout] 192 | ) -> argon2::Argon2 {
[INFO] [stdout]     |      -------------- the lifetime gets resolved as `'_`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default
[INFO] [stdout] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths
[INFO] [stdout]     |
[INFO] [stdout] 192 | ) -> argon2::Argon2<'_> {
[INFO] [stdout]     |                    ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 3m 10s
[INFO] running `Command { std: "docker" "inspect" "b974258246eb3d42e3c1bf690eafcd2ac5160500876797ea97245a2ef9c35c52", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "b974258246eb3d42e3c1bf690eafcd2ac5160500876797ea97245a2ef9c35c52", kill_on_drop: false }`
[INFO] [stdout] b974258246eb3d42e3c1bf690eafcd2ac5160500876797ea97245a2ef9c35c52
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-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 -Copt-level=3" "-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:e90291280db7d1fac5b66fc6dad9f9662629e7365a55743daf9bdf73ebc4ea79" "/opt/rustwide/cargo-home/bin/cargo" "+d98a5da813da67eb189387b8ccfb73cf481275d8" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] af46453b3ff5a8e94618867ca9b242d1c7be63c4cedd9d89eac42f43866cbd24
[INFO] running `Command { std: "docker" "start" "-a" "af46453b3ff5a8e94618867ca9b242d1c7be63c4cedd9d89eac42f43866cbd24", kill_on_drop: false }`
[INFO] [stderr]    Compiling rpds v0.0.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unused import: `ffi::OsString`
[INFO] [stdout]  --> src/main.rs:4:32
[INFO] [stdout]   |
[INFO] [stdout] 4 |     std::{convert::Infallible, ffi::OsString, net::SocketAddr, str::FromStr, time::Duration},
[INFO] [stdout]   |                                ^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `self::at_uri::*`
[INFO] [stdout]  --> src/api/xrpc/model/mod.rs:5:9
[INFO] [stdout]   |
[INFO] [stdout] 5 | pub use self::at_uri::*;
[INFO] [stdout]   |         ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `self::at_identifier::*`
[INFO] [stdout]   --> src/api/xrpc/model/mod.rs:11:9
[INFO] [stdout]    |
[INFO] [stdout] 11 | pub use self::at_identifier::*;
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::api::xrpc::error::XrpcError`
[INFO] [stdout]  --> src/api/xrpc/com_atproto/admin_getInviteCodes.rs:1:6
[INFO] [stdout]   |
[INFO] [stdout] 1 | use {crate::api::xrpc::error::XrpcError, tracing::instrument};
[INFO] [stdout]   |      ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::api::xrpc::error::XrpcError`
[INFO] [stdout]  --> src/api/xrpc/com_atproto/admin_searchAccounts.rs:1:6
[INFO] [stdout]   |
[INFO] [stdout] 1 | use {crate::api::xrpc::error::XrpcError, tracing::instrument};
[INFO] [stdout]   |      ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::api::xrpc::error::XrpcError`
[INFO] [stdout]  --> src/api/xrpc/com_atproto/label_queryLabels.rs:1:6
[INFO] [stdout]   |
[INFO] [stdout] 1 | use {crate::api::xrpc::error::XrpcError, tracing::instrument};
[INFO] [stdout]   |      ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::expect_env`
[INFO] [stdout]  --> src/global/mod.rs:5:5
[INFO] [stdout]   |
[INFO] [stdout] 5 |     crate::expect_env,
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Argon2`, `Deserialize`, `PasswordHash`, `PasswordVerifier`, `RngCore`, `SeedableRng`, `Serialize`, `base64ct::Encoding`, `cell::RefCell`, `libsql::params::IntoParams`, `rngs::StdRng`, `str::FromStr`, `try_get_and_parse_env`, and `try_get_env`
[INFO] [stdout]  --> src/global/database.rs:2:25
[INFO] [stdout]   |
[INFO] [stdout] 2 |     crate::{expect_env, try_get_and_parse_env, try_get_env},
[INFO] [stdout]   |                         ^^^^^^^^^^^^^^^^^^^^^  ^^^^^^^^^^^
[INFO] [stdout] 3 |     argon2::{Argon2, PasswordHash, PasswordVerifier},
[INFO] [stdout]   |              ^^^^^^  ^^^^^^^^^^^^  ^^^^^^^^^^^^^^^^
[INFO] [stdout] 4 |     base64ct::Encoding,
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 5 |     libsql::params::IntoParams,
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 6 |     rand::{rngs::StdRng, RngCore, SeedableRng},
[INFO] [stdout]   |            ^^^^^^^^^^^^  ^^^^^^^  ^^^^^^^^^^^
[INFO] [stdout] 7 |     serde::{Deserialize, Serialize},
[INFO] [stdout]   |             ^^^^^^^^^^^  ^^^^^^^^^
[INFO] [stdout] 8 |     std::{cell::RefCell, str::FromStr},
[INFO] [stdout]   |           ^^^^^^^^^^^^^  ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `DUMMY`, `method_not_allowed`, and `invalid_request` are never used
[INFO] [stdout]   --> src/api/xrpc/error.rs:27:15
[INFO] [stdout]    |
[INFO] [stdout] 23 | impl XrpcError {
[INFO] [stdout]    | -------------- associated items in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 27 |     pub const DUMMY: Self = Self {
[INFO] [stdout]    |               ^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 44 |     pub fn method_not_allowed(message: impl Into<Cow<'static, str>>) -> Self {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 54 |     pub fn invalid_request(message: impl Into<Cow<'static, str>>) -> Self {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `method_not_allowed` is never used
[INFO] [stdout]   --> src/api/xrpc/handler.rs:58:4
[INFO] [stdout]    |
[INFO] [stdout] 58 | fn method_not_allowed(req: &Request) -> XrpcError {
[INFO] [stdout]    |    ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `MethodPost` is never constructed
[INFO] [stdout]   --> src/api/xrpc/handler.rs:68:12
[INFO] [stdout]    |
[INFO] [stdout] 68 | pub struct MethodPost;
[INFO] [stdout]    |            ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `MethodGet` is never constructed
[INFO] [stdout]   --> src/api/xrpc/handler.rs:84:12
[INFO] [stdout]    |
[INFO] [stdout] 84 | pub struct MethodGet;
[INFO] [stdout]    |            ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Query` is never constructed
[INFO] [stdout]    --> src/api/xrpc/handler.rs:100:12
[INFO] [stdout]     |
[INFO] [stdout] 100 | pub struct Query<T>(pub T);
[INFO] [stdout]     |            ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Json` is never constructed
[INFO] [stdout]    --> src/api/xrpc/handler.rs:165:12
[INFO] [stdout]     |
[INFO] [stdout] 165 | pub struct Json<T>(pub T);
[INFO] [stdout]     |            ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `read_body` is never used
[INFO] [stdout]    --> src/api/xrpc/handler.rs:198:10
[INFO] [stdout]     |
[INFO] [stdout] 198 | async fn read_body<B>(body: &mut B) -> Result<Bytes, XrpcError>
[INFO] [stdout]     |          ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Did` is never constructed
[INFO] [stdout]   --> src/api/xrpc/model/did.rs:23:12
[INFO] [stdout]    |
[INFO] [stdout] 23 | pub struct Did<T: ?Sized = Box<str>>(T);
[INFO] [stdout]    |            ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `new_unchecked` is never used
[INFO] [stdout]   --> src/api/xrpc/model/did.rs:33:25
[INFO] [stdout]    |
[INFO] [stdout] 25 | impl<T> Did<T> {
[INFO] [stdout]    | -------------- associated function in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 33 |     pub const unsafe fn new_unchecked(val: T) -> Self {
[INFO] [stdout]    |                         ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new` and `as_str` are never used
[INFO] [stdout]   --> src/api/xrpc/model/did.rs:45:12
[INFO] [stdout]    |
[INFO] [stdout] 38 | / impl<T> Did<T>
[INFO] [stdout] 39 | | where
[INFO] [stdout] 40 | |     T: ?Sized + AsRef<str>,
[INFO] [stdout]    | |___________________________- associated items in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 45 |       pub fn new(val: T) -> Result<Self, DidParseError>
[INFO] [stdout]    |              ^^^
[INFO] [stdout] ...
[INFO] [stdout] 58 |       pub fn as_str(&self) -> &str {
[INFO] [stdout]    |              ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `validate_at_uri` is never used
[INFO] [stdout]    --> src/api/xrpc/model/at_uri.rs:127:8
[INFO] [stdout]     |
[INFO] [stdout] 127 | pub fn validate_at_uri(bytes: &[u8]) -> bool {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Handle` is never constructed
[INFO] [stdout]   --> src/api/xrpc/model/handle.rs:20:12
[INFO] [stdout]    |
[INFO] [stdout] 20 | pub struct Handle<T: ?Sized = Box<str>>(pub T);
[INFO] [stdout]    |            ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `new_unchecked` is never used
[INFO] [stdout]   --> src/api/xrpc/model/handle.rs:30:25
[INFO] [stdout]    |
[INFO] [stdout] 22 | impl<T> Handle<T> {
[INFO] [stdout]    | ----------------- associated function in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 30 |     pub const unsafe fn new_unchecked(val: T) -> Self {
[INFO] [stdout]    |                         ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new` and `as_str` are never used
[INFO] [stdout]   --> src/api/xrpc/model/handle.rs:42:12
[INFO] [stdout]    |
[INFO] [stdout] 35 | / impl<T> Handle<T>
[INFO] [stdout] 36 | | where
[INFO] [stdout] 37 | |     T: ?Sized + AsRef<str>,
[INFO] [stdout]    | |___________________________- associated items in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 42 |       pub fn new(val: T) -> Result<Self, HandleParseError>
[INFO] [stdout]    |              ^^^
[INFO] [stdout] ...
[INFO] [stdout] 55 |       pub fn as_str(&self) -> &str {
[INFO] [stdout]    |              ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `AtIdentifier` is never used
[INFO] [stdout]  --> src/api/xrpc/model/at_identifier.rs:9:10
[INFO] [stdout]   |
[INFO] [stdout] 9 | pub enum AtIdentifier<T = Box<str>> {
[INFO] [stdout]   |          ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `as_str` is never used
[INFO] [stdout]   --> src/api/xrpc/model/at_identifier.rs:18:12
[INFO] [stdout]    |
[INFO] [stdout] 16 | impl<T: AsRef<str>> AtIdentifier<T> {
[INFO] [stdout]    | ----------------------------------- method in this implementation
[INFO] [stdout] 17 |     /// Returns the identifier as a string.
[INFO] [stdout] 18 |     pub fn as_str(&self) -> &str {
[INFO] [stdout]    |            ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `password_hasher` and `database` are never read
[INFO] [stdout]   --> src/global/mod.rs:19:9
[INFO] [stdout]    |
[INFO] [stdout] 17 | pub struct GlobalState {
[INFO] [stdout]    |            ----------- fields in this struct
[INFO] [stdout] 18 |     /// The password hasher responsible for hashing and verifying passwords.
[INFO] [stdout] 19 |     pub password_hasher: PasswordHasher,
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^
[INFO] [stdout] 20 |     /// The database instance.
[INFO] [stdout] 21 |     pub database: Database,
[INFO] [stdout]    |         ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `get` is never used
[INFO] [stdout]   --> src/global/mod.rs:42:8
[INFO] [stdout]    |
[INFO] [stdout] 42 | pub fn get() -> &'static GlobalState {
[INFO] [stdout]    |        ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `db` is never read
[INFO] [stdout]   --> src/global/database.rs:15:5
[INFO] [stdout]    |
[INFO] [stdout] 13 | pub struct Database {
[INFO] [stdout]    |            -------- field in this struct
[INFO] [stdout] 14 |     /// The inner database object.
[INFO] [stdout] 15 |     db: libsql::Database,
[INFO] [stdout]    |     ^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `FailedToHashPassword` is never constructed
[INFO] [stdout]   --> src/global/password.rs:12:12
[INFO] [stdout]    |
[INFO] [stdout] 12 | pub struct FailedToHashPassword;
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing
[INFO] [stdout]    --> src/global/password.rs:191:20
[INFO] [stdout]     |
[INFO] [stdout] 191 |     secret: Option<&[u8]>,
[INFO] [stdout]     |                    ^^^^^ this lifetime flows to the output
[INFO] [stdout] 192 | ) -> argon2::Argon2 {
[INFO] [stdout]     |      -------------- the lifetime gets resolved as `'_`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default
[INFO] [stdout] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths
[INFO] [stdout]     |
[INFO] [stdout] 192 | ) -> argon2::Argon2<'_> {
[INFO] [stdout]     |                    ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 3.86s
[INFO] running `Command { std: "docker" "inspect" "af46453b3ff5a8e94618867ca9b242d1c7be63c4cedd9d89eac42f43866cbd24", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "af46453b3ff5a8e94618867ca9b242d1c7be63c4cedd9d89eac42f43866cbd24", kill_on_drop: false }`
[INFO] [stdout] af46453b3ff5a8e94618867ca9b242d1c7be63c4cedd9d89eac42f43866cbd24
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-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 -Copt-level=3" "-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:e90291280db7d1fac5b66fc6dad9f9662629e7365a55743daf9bdf73ebc4ea79" "/opt/rustwide/cargo-home/bin/cargo" "+d98a5da813da67eb189387b8ccfb73cf481275d8" "test" "--frozen", kill_on_drop: false }`
[INFO] [stdout] 145b33c0afee8c36005411ad730b862eb2bf90f810569ee7222f3d9b82b42962
[INFO] running `Command { std: "docker" "start" "-a" "145b33c0afee8c36005411ad730b862eb2bf90f810569ee7222f3d9b82b42962", kill_on_drop: false }`
[INFO] [stderr] warning: unused import: `ffi::OsString`
[INFO] [stderr]  --> src/main.rs:4:32
[INFO] [stderr]   |
[INFO] [stderr] 4 |     std::{convert::Infallible, ffi::OsString, net::SocketAddr, str::FromStr, time::Duration},
[INFO] [stderr]   |                                ^^^^^^^^^^^^^
[INFO] [stderr]   |
[INFO] [stderr]   = note: `#[warn(unused_imports)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `self::at_uri::*`
[INFO] [stderr]  --> src/api/xrpc/model/mod.rs:5:9
[INFO] [stderr]   |
[INFO] [stderr] 5 | pub use self::at_uri::*;
[INFO] [stderr]   |         ^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `self::at_identifier::*`
[INFO] [stderr]   --> src/api/xrpc/model/mod.rs:11:9
[INFO] [stderr]    |
[INFO] [stderr] 11 | pub use self::at_identifier::*;
[INFO] [stderr]    |         ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `crate::api::xrpc::error::XrpcError`
[INFO] [stderr]  --> src/api/xrpc/com_atproto/admin_getInviteCodes.rs:1:6
[INFO] [stderr]   |
[INFO] [stderr] 1 | use {crate::api::xrpc::error::XrpcError, tracing::instrument};
[INFO] [stderr]   |      ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `crate::api::xrpc::error::XrpcError`
[INFO] [stderr]  --> src/api/xrpc/com_atproto/admin_searchAccounts.rs:1:6
[INFO] [stderr]   |
[INFO] [stderr] 1 | use {crate::api::xrpc::error::XrpcError, tracing::instrument};
[INFO] [stderr]   |      ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `crate::api::xrpc::error::XrpcError`
[INFO] [stderr]  --> src/api/xrpc/com_atproto/label_queryLabels.rs:1:6
[INFO] [stderr]   |
[INFO] [stderr] 1 | use {crate::api::xrpc::error::XrpcError, tracing::instrument};
[INFO] [stderr]   |      ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `crate::expect_env`
[INFO] [stderr]  --> src/global/mod.rs:5:5
[INFO] [stderr]   |
[INFO] [stderr] 5 |     crate::expect_env,
[INFO] [stderr]   |     ^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused imports: `Argon2`, `Deserialize`, `PasswordHash`, `PasswordVerifier`, `RngCore`, `SeedableRng`, `Serialize`, `base64ct::Encoding`, `cell::RefCell`, `libsql::params::IntoParams`, `rngs::StdRng`, `str::FromStr`, `try_get_and_parse_env`, and `try_get_env`
[INFO] [stderr]  --> src/global/database.rs:2:25
[INFO] [stderr]   |
[INFO] [stderr] 2 |     crate::{expect_env, try_get_and_parse_env, try_get_env},
[INFO] [stderr]   |                         ^^^^^^^^^^^^^^^^^^^^^  ^^^^^^^^^^^
[INFO] [stderr] 3 |     argon2::{Argon2, PasswordHash, PasswordVerifier},
[INFO] [stderr]   |              ^^^^^^  ^^^^^^^^^^^^  ^^^^^^^^^^^^^^^^
[INFO] [stderr] 4 |     base64ct::Encoding,
[INFO] [stderr]   |     ^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 5 |     libsql::params::IntoParams,
[INFO] [stderr]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 6 |     rand::{rngs::StdRng, RngCore, SeedableRng},
[INFO] [stderr]   |            ^^^^^^^^^^^^  ^^^^^^^  ^^^^^^^^^^^
[INFO] [stderr] 7 |     serde::{Deserialize, Serialize},
[INFO] [stderr]   |             ^^^^^^^^^^^  ^^^^^^^^^
[INFO] [stderr] 8 |     std::{cell::RefCell, str::FromStr},
[INFO] [stderr]   |           ^^^^^^^^^^^^^  ^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: associated items `DUMMY`, `method_not_allowed`, and `invalid_request` are never used
[INFO] [stderr]   --> src/api/xrpc/error.rs:27:15
[INFO] [stderr]    |
[INFO] [stderr] 23 | impl XrpcError {
[INFO] [stderr]    | -------------- associated items in this implementation
[INFO] [stderr] ...
[INFO] [stderr] 27 |     pub const DUMMY: Self = Self {
[INFO] [stderr]    |               ^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 44 |     pub fn method_not_allowed(message: impl Into<Cow<'static, str>>) -> Self {
[INFO] [stderr]    |            ^^^^^^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 54 |     pub fn invalid_request(message: impl Into<Cow<'static, str>>) -> Self {
[INFO] [stderr]    |            ^^^^^^^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(dead_code)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: function `method_not_allowed` is never used
[INFO] [stderr]   --> src/api/xrpc/handler.rs:58:4
[INFO] [stderr]    |
[INFO] [stderr] 58 | fn method_not_allowed(req: &Request) -> XrpcError {
[INFO] [stderr]    |    ^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: struct `MethodPost` is never constructed
[INFO] [stderr]   --> src/api/xrpc/handler.rs:68:12
[INFO] [stderr]    |
[INFO] [stderr] 68 | pub struct MethodPost;
[INFO] [stderr]    |            ^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: struct `MethodGet` is never constructed
[INFO] [stderr]   --> src/api/xrpc/handler.rs:84:12
[INFO] [stderr]    |
[INFO] [stderr] 84 | pub struct MethodGet;
[INFO] [stderr]    |            ^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: struct `Query` is never constructed
[INFO] [stderr]    --> src/api/xrpc/handler.rs:100:12
[INFO] [stderr]     |
[INFO] [stderr] 100 | pub struct Query<T>(pub T);
[INFO] [stderr]     |            ^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: struct `Json` is never constructed
[INFO] [stderr]    --> src/api/xrpc/handler.rs:165:12
[INFO] [stderr]     |
[INFO] [stderr] 165 | pub struct Json<T>(pub T);
[INFO] [stderr]     |            ^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `read_body` is never used
[INFO] [stderr]    --> src/api/xrpc/handler.rs:198:10
[INFO] [stderr]     |
[INFO] [stderr] 198 | async fn read_body<B>(body: &mut B) -> Result<Bytes, XrpcError>
[INFO] [stderr]     |          ^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: struct `Did` is never constructed
[INFO] [stderr]   --> src/api/xrpc/model/did.rs:23:12
[INFO] [stderr]    |
[INFO] [stderr] 23 | pub struct Did<T: ?Sized = Box<str>>(T);
[INFO] [stderr]    |            ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: associated function `new_unchecked` is never used
[INFO] [stderr]   --> src/api/xrpc/model/did.rs:33:25
[INFO] [stderr]    |
[INFO] [stderr] 25 | impl<T> Did<T> {
[INFO] [stderr]    | -------------- associated function in this implementation
[INFO] [stderr] ...
[INFO] [stderr] 33 |     pub const unsafe fn new_unchecked(val: T) -> Self {
[INFO] [stderr]    |                         ^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: associated items `new` and `as_str` are never used
[INFO] [stderr]   --> src/api/xrpc/model/did.rs:45:12
[INFO] [stderr]    |
[INFO] [stderr] 38 | / impl<T> Did<T>
[INFO] [stderr] 39 | | where
[INFO] [stderr] 40 | |     T: ?Sized + AsRef<str>,
[INFO] [stderr]    | |___________________________- associated items in this implementation
[INFO] [stderr] ...
[INFO] [stderr] 45 |       pub fn new(val: T) -> Result<Self, DidParseError>
[INFO] [stderr]    |              ^^^
[INFO] [stderr] ...
[INFO] [stderr] 58 |       pub fn as_str(&self) -> &str {
[INFO] [stderr]    |              ^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `validate_at_uri` is never used
[INFO] [stderr]    --> src/api/xrpc/model/at_uri.rs:127:8
[INFO] [stderr]     |
[INFO] [stderr] 127 | pub fn validate_at_uri(bytes: &[u8]) -> bool {
[INFO] [stderr]     |        ^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: struct `Handle` is never constructed
[INFO] [stderr]   --> src/api/xrpc/model/handle.rs:20:12
[INFO] [stderr]    |
[INFO] [stderr] 20 | pub struct Handle<T: ?Sized = Box<str>>(pub T);
[INFO] [stderr]    |            ^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: associated function `new_unchecked` is never used
[INFO] [stderr]   --> src/api/xrpc/model/handle.rs:30:25
[INFO] [stderr]    |
[INFO] [stderr] 22 | impl<T> Handle<T> {
[INFO] [stderr]    | ----------------- associated function in this implementation
[INFO] [stderr] ...
[INFO] [stderr] 30 |     pub const unsafe fn new_unchecked(val: T) -> Self {
[INFO] [stderr]    |                         ^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: associated items `new` and `as_str` are never used
[INFO] [stderr]   --> src/api/xrpc/model/handle.rs:42:12
[INFO] [stderr]    |
[INFO] [stderr] 35 | / impl<T> Handle<T>
[INFO] [stderr] 36 | | where
[INFO] [stderr] 37 | |     T: ?Sized + AsRef<str>,
[INFO] [stderr]    | |___________________________- associated items in this implementation
[INFO] [stderr] ...
[INFO] [stderr] 42 |       pub fn new(val: T) -> Result<Self, HandleParseError>
[INFO] [stderr]    |              ^^^
[INFO] [stderr] ...
[INFO] [stderr] 55 |       pub fn as_str(&self) -> &str {
[INFO] [stderr]    |              ^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: enum `AtIdentifier` is never used
[INFO] [stderr]  --> src/api/xrpc/model/at_identifier.rs:9:10
[INFO] [stderr]   |
[INFO] [stderr] 9 | pub enum AtIdentifier<T = Box<str>> {
[INFO] [stderr]   |          ^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: method `as_str` is never used
[INFO] [stderr]   --> src/api/xrpc/model/at_identifier.rs:18:12
[INFO] [stderr]    |
[INFO] [stderr] 16 | impl<T: AsRef<str>> AtIdentifier<T> {
[INFO] [stderr]    | ----------------------------------- method in this implementation
[INFO] [stderr] 17 |     /// Returns the identifier as a string.
[INFO] [stderr] 18 |     pub fn as_str(&self) -> &str {
[INFO] [stderr]    |            ^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: fields `password_hasher` and `database` are never read
[INFO] [stderr]   --> src/global/mod.rs:19:9
[INFO] [stderr]    |
[INFO] [stderr] 17 | pub struct GlobalState {
[INFO] [stderr]    |            ----------- fields in this struct
[INFO] [stderr] 18 |     /// The password hasher responsible for hashing and verifying passwords.
[INFO] [stderr] 19 |     pub password_hasher: PasswordHasher,
[INFO] [stderr]    |         ^^^^^^^^^^^^^^^
[INFO] [stderr] 20 |     /// The database instance.
[INFO] [stderr] 21 |     pub database: Database,
[INFO] [stderr]    |         ^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `get` is never used
[INFO] [stderr]   --> src/global/mod.rs:42:8
[INFO] [stderr]    |
[INFO] [stderr] 42 | pub fn get() -> &'static GlobalState {
[INFO] [stderr]    |        ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: field `db` is never read
[INFO] [stderr]   --> src/global/database.rs:15:5
[INFO] [stderr]    |
[INFO] [stderr] 13 | pub struct Database {
[INFO] [stderr]    |            -------- field in this struct
[INFO] [stderr] 14 |     /// The inner database object.
[INFO] [stderr] 15 |     db: libsql::Database,
[INFO] [stderr]    |     ^^
[INFO] [stderr] 
[INFO] [stderr] warning: struct `FailedToHashPassword` is never constructed
[INFO] [stderr]   --> src/global/password.rs:12:12
[INFO] [stderr]    |
[INFO] [stderr] 12 | pub struct FailedToHashPassword;
[INFO] [stderr]    |            ^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: lifetime flowing from input to output with different syntax can be confusing
[INFO] [stderr]    --> src/global/password.rs:191:20
[INFO] [stderr]     |
[INFO] [stderr] 191 |     secret: Option<&[u8]>,
[INFO] [stderr]     |                    ^^^^^ this lifetime flows to the output
[INFO] [stderr] 192 | ) -> argon2::Argon2 {
[INFO] [stderr]     |      -------------- the lifetime gets resolved as `'_`
[INFO] [stderr]     |
[INFO] [stderr]     = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default
[INFO] [stderr] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths
[INFO] [stderr]     |
[INFO] [stderr] 192 | ) -> argon2::Argon2<'_> {
[INFO] [stderr]     |                    ++++
[INFO] [stderr] 
[INFO] [stderr] warning: `rpds` (bin "rpds" test) generated 29 warnings (run `cargo fix --bin "rpds" --tests` to apply 8 suggestions)
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 0.15s
[INFO] [stderr]      Running unittests src/main.rs (/opt/rustwide/target/debug/deps/rpds-9df3fd8095b9bf46)
[INFO] [stdout] 
[INFO] [stdout] running 13 tests
[INFO] [stdout] test api::xrpc::model::at_uri::all_parts ... ok
[INFO] [stdout] test api::xrpc::model::at_uri::authority_and_empty_path ... ok
[INFO] [stdout] test api::xrpc::model::at_uri::authority_and_path ... ok
[INFO] [stdout] test api::xrpc::model::at_uri::long_path_no_slash_terminator ... ok
[INFO] [stdout] test api::xrpc::model::did::basic_did ... ok
[INFO] [stdout] test api::xrpc::model::at_uri::authority_only_did ... ok
[INFO] [stdout] test api::xrpc::model::did::did_with_empty_last_component ... ok
[INFO] [stdout] test api::xrpc::model::at_uri::long_path ... ok
[INFO] [stdout] test api::xrpc::model::at_uri::all_parts_no_query ... ok
[INFO] [stdout] test api::xrpc::model::did::did_with_consecutive_colons ... FAILED
[INFO] [stderr] 
[INFO] [stderr] thread '<unknown>' has overflowed its stack
[INFO] [stderr] fatal runtime error: stack overflow, aborting
[INFO] [stderr] error: test failed, to rerun pass `--bin rpds`
[INFO] [stderr] 
[INFO] [stderr] Caused by:
[INFO] [stderr]   process didn't exit successfully: `/opt/rustwide/target/debug/deps/rpds-9df3fd8095b9bf46` (signal: 6, SIGABRT: process abort signal)
[INFO] running `Command { std: "docker" "inspect" "145b33c0afee8c36005411ad730b862eb2bf90f810569ee7222f3d9b82b42962", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "145b33c0afee8c36005411ad730b862eb2bf90f810569ee7222f3d9b82b42962", kill_on_drop: false }`
[INFO] [stdout] 145b33c0afee8c36005411ad730b862eb2bf90f810569ee7222f3d9b82b42962
