[INFO] cloning repository https://github.com/antondc/forum-soft-api
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/antondc/forum-soft-api" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fantondc%2Fforum-soft-api", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fantondc%2Fforum-soft-api'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] f0ed8e5f4913f1e88d540d3f96ac6bf5482beebb
[INFO] checking antondc/forum-soft-api against 1.95.0 for pr-155915
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fantondc%2Fforum-soft-api" "/workspace/builds/worker-1-tc1/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-1-tc1/source'...
[INFO] [stderr] done.
[INFO] started tweaking git repo https://github.com/antondc/forum-soft-api
[INFO] finished tweaking git repo https://github.com/antondc/forum-soft-api
[INFO] tweaked toml for git repo https://github.com/antondc/forum-soft-api written to /workspace/builds/worker-1-tc1/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/antondc/forum-soft-api on toolchain 1.95.0
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+1.95.0" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate git repo https://github.com/antondc/forum-soft-api already has a lockfile, it will not be regenerated
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+1.95.0" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Updating crates.io index
[INFO] [stderr]     Updating git repository `https://github.com/ThouCheese/okapi`
[INFO] [stderr]  Downloading crates ...
[INFO] [stderr]   Downloaded postgres-protocol v0.6.4
[INFO] [stderr]   Downloaded digest v0.10.5
[INFO] [stderr]   Downloaded postgres-types v0.2.4
[INFO] [stderr]   Downloaded email_address v0.2.3
[INFO] [stderr]   Downloaded ref-cast v1.0.12
[INFO] [stderr]   Downloaded universal-hash v0.5.0
[INFO] [stderr]   Downloaded inout v0.1.3
[INFO] [stderr]   Downloaded sitemap v0.4.1
[INFO] [stderr]   Downloaded multer v2.0.4
[INFO] [stderr]   Downloaded aead v0.5.1
[INFO] [stderr]   Downloaded cxxbridge-flags v1.0.80
[INFO] [stderr]   Downloaded ghash v0.5.0
[INFO] [stderr]   Downloaded quoted_printable v0.4.5
[INFO] [stderr]   Downloaded simple-xml-builder v1.1.0
[INFO] [stderr]   Downloaded chrono_utils v0.1.3
[INFO] [stderr]   Downloaded schemars_derive v0.8.11
[INFO] [stderr]   Downloaded ref-cast-impl v1.0.12
[INFO] [stderr]   Downloaded dyn-clone v1.0.9
[INFO] [stderr]   Downloaded serde_derive_internals v0.26.0
[INFO] [stderr]   Downloaded html-escape v0.2.11
[INFO] [stderr]   Downloaded polyval v0.6.0
[INFO] [stderr]   Downloaded tokio-postgres v0.7.7
[INFO] [stderr]   Downloaded half v2.1.0
[INFO] [stderr]   Downloaded schemars v0.8.11
[INFO] [stderr]   Downloaded cxxbridge-macro v1.0.80
[INFO] [stderr]   Downloaded png v0.17.6
[INFO] [stderr]   Downloaded figment v0.10.8
[INFO] [stderr]   Downloaded time v0.3.16
[INFO] [stderr]   Downloaded whatlang v0.16.2
[INFO] [stderr]   Downloaded aes v0.8.1
[INFO] [stderr]   Downloaded aes-gcm v0.10.1
[INFO] [stderr]   Downloaded aho-corasick v0.7.19
[INFO] [stderr]   Downloaded cxx-build v1.0.80
[INFO] [stderr]   Downloaded cxx v1.0.80
[INFO] [stderr]   Downloaded uuid v1.2.1
[INFO] [stderr]   Downloaded miniz_oxide v0.5.4
[INFO] [stderr]   Downloaded exr v1.5.2
[INFO] [stderr]   Downloaded webpki-roots v0.22.5
[INFO] [stderr]   Downloaded image v0.24.4
[INFO] [stderr]   Downloaded crossbeam-epoch v0.9.11
[INFO] [stderr]   Downloaded openssl-sys v0.9.77
[INFO] [stderr]   Downloaded serde-xml-rs v0.6.0
[INFO] [stderr]   Downloaded jsonwebtoken v8.1.1
[INFO] [stderr]   Downloaded rocket-multipart-form-data v0.10.3
[INFO] [stderr]   Downloaded ubyte v0.10.3
[INFO] [stderr]   Downloaded cipher v0.4.3
[INFO] [stderr]   Downloaded generator v0.7.1
[INFO] [stderr]   Downloaded time-macros v0.2.5
[INFO] [stderr]   Downloaded iana-time-zone v0.1.51
[INFO] [stderr]   Downloaded libc v0.2.136
[INFO] [stderr]   Downloaded windows_aarch64_msvc v0.32.0
[INFO] [stderr]   Downloaded windows_x86_64_msvc v0.32.0
[INFO] [stderr]   Downloaded windows_i686_msvc v0.32.0
[INFO] [stderr]   Downloaded windows_i686_gnu v0.32.0
[INFO] [stderr]   Downloaded windows_x86_64_gnu v0.32.0
[INFO] [stderr]   Downloaded quick-xml v0.25.0
[INFO] [stderr]   Downloaded windows v0.32.0
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+1.95.0" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] da823779fdb73850abf76e3ba727123708a7988be3ee999704e909bd4152cc1c
[INFO] running `Command { std: "docker" "start" "-a" "da823779fdb73850abf76e3ba727123708a7988be3ee999704e909bd4152cc1c", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "da823779fdb73850abf76e3ba727123708a7988be3ee999704e909bd4152cc1c", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "da823779fdb73850abf76e3ba727123708a7988be3ee999704e909bd4152cc1c", kill_on_drop: false }`
[INFO] [stdout] da823779fdb73850abf76e3ba727123708a7988be3ee999704e909bd4152cc1c
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+1.95.0" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 32779b068c7da35e6bb510ede18785b7502b00e10b7604f1bc6d94d5b1bd020e
[INFO] running `Command { std: "docker" "start" "-a" "32779b068c7da35e6bb510ede18785b7502b00e10b7604f1bc6d94d5b1bd020e", kill_on_drop: false }`
[INFO] [stderr]    Compiling libc v0.2.136
[INFO] [stderr]    Compiling proc-macro2 v1.0.47
[INFO] [stderr]    Compiling unicode-ident v1.0.5
[INFO] [stderr]    Compiling syn v1.0.103
[INFO] [stderr]     Checking once_cell v1.15.0
[INFO] [stderr]    Compiling serde_derive v1.0.147
[INFO] [stderr]    Compiling serde v1.0.147
[INFO] [stderr]    Compiling generic-array v0.14.6
[INFO] [stderr]    Compiling lock_api v0.4.9
[INFO] [stderr]    Compiling futures-core v0.3.25
[INFO] [stderr]    Compiling futures-channel v0.3.25
[INFO] [stderr]     Checking itoa v1.0.4
[INFO] [stderr]     Checking bytes v1.2.1
[INFO] [stderr]     Checking futures-sink v0.3.25
[INFO] [stderr]    Compiling parking_lot_core v0.9.4
[INFO] [stderr]    Compiling tokio v1.21.2
[INFO] [stderr]    Compiling slab v0.4.7
[INFO] [stderr]    Compiling futures-task v0.3.25
[INFO] [stderr]    Compiling num-traits v0.2.15
[INFO] [stderr]    Compiling futures-util v0.3.25
[INFO] [stderr]    Compiling num-integer v0.1.45
[INFO] [stderr]     Checking futures-io v0.3.25
[INFO] [stderr]    Compiling indexmap v1.9.1
[INFO] [stderr]     Checking cpufeatures v0.2.5
[INFO] [stderr]    Compiling time-core v0.1.0
[INFO] [stderr]     Checking tracing-core v0.1.30
[INFO] [stderr]    Compiling ring v0.16.20
[INFO] [stderr]     Checking percent-encoding v2.2.0
[INFO] [stderr]     Checking http v0.2.8
[INFO] [stderr]    Compiling time-macros v0.2.5
[INFO] [stderr]    Compiling serde_json v1.0.87
[INFO] [stderr]     Checking ryu v1.0.11
[INFO] [stderr]     Checking unicode-normalization v0.1.22
[INFO] [stderr]    Compiling cookie v0.16.1
[INFO] [stderr]    Compiling crossbeam-utils v0.8.12
[INFO] [stderr]     Checking unicode-bidi v0.3.8
[INFO] [stderr]     Checking spin v0.5.2
[INFO] [stderr]    Compiling getrandom v0.2.8
[INFO] [stderr]    Compiling ref-cast v1.0.12
[INFO] [stderr]     Checking untrusted v0.7.1
[INFO] [stderr]    Compiling quote v1.0.21
[INFO] [stderr]     Checking num_cpus v1.13.1
[INFO] [stderr]     Checking rand_core v0.6.4
[INFO] [stderr]     Checking mio v0.8.5
[INFO] [stderr]     Checking socket2 v0.4.7
[INFO] [stderr]     Checking signal-hook-registry v1.4.0
[INFO] [stderr]     Checking ahash v0.7.6
[INFO] [stderr]     Checking tracing v0.1.37
[INFO] [stderr]     Checking rand_chacha v0.3.1
[INFO] [stderr]     Checking hashbrown v0.12.3
[INFO] [stderr]     Checking crypto-common v0.1.6
[INFO] [stderr]     Checking block-buffer v0.10.3
[INFO] [stderr]     Checking parking_lot v0.12.1
[INFO] [stderr]     Checking inout v0.1.3
[INFO] [stderr]    Compiling openssl-sys v0.9.77
[INFO] [stderr]     Checking http-body v0.4.5
[INFO] [stderr]     Checking cipher v0.4.3
[INFO] [stderr]     Checking universal-hash v0.5.0
[INFO] [stderr]     Checking digest v0.10.5
[INFO] [stderr]     Checking rand v0.8.5
[INFO] [stderr]     Checking hmac v0.12.1
[INFO] [stderr]     Checking sha2 v0.10.6
[INFO] [stderr]    Compiling polyval v0.6.0
[INFO] [stderr]    Compiling aead v0.5.1
[INFO] [stderr]    Compiling ghash v0.5.0
[INFO] [stderr]     Checking time v0.1.44
[INFO] [stderr]    Compiling crossbeam-epoch v0.9.11
[INFO] [stderr]    Compiling ctr v0.9.2
[INFO] [stderr]    Compiling aes v0.8.1
[INFO] [stderr]     Checking either v1.8.0
[INFO] [stderr]     Checking iana-time-zone v0.1.51
[INFO] [stderr]    Compiling time v0.3.16
[INFO] [stderr]    Compiling hkdf v0.12.3
[INFO] [stderr]     Checking spin v0.9.4
[INFO] [stderr]    Compiling httparse v1.8.0
[INFO] [stderr]    Compiling async-trait v0.1.58
[INFO] [stderr]    Compiling tower-service v0.3.2
[INFO] [stderr]    Compiling rayon-core v1.9.3
[INFO] [stderr]    Compiling base64 v0.13.1
[INFO] [stderr]    Compiling aes-gcm v0.10.1
[INFO] [stderr]    Compiling crc32fast v1.3.2
[INFO] [stderr]    Compiling rustls v0.20.7
[INFO] [stderr]    Compiling thiserror v1.0.37
[INFO] [stderr]    Compiling smallvec v1.10.0
[INFO] [stderr]    Compiling openssl v0.10.42
[INFO] [stderr]     Checking crossbeam-deque v0.8.2
[INFO] [stderr]     Checking crossbeam-channel v0.5.6
[INFO] [stderr]    Compiling multer v2.0.4
[INFO] [stderr]    Compiling rayon v1.5.3
[INFO] [stderr]    Compiling figment v0.10.8
[INFO] [stderr]     Checking fastrand v1.8.0
[INFO] [stderr]    Compiling native-tls v0.2.10
[INFO] [stderr]     Checking miniz_oxide v0.5.4
[INFO] [stderr]     Checking form_urlencoded v1.1.0
[INFO] [stderr]    Compiling rocket v0.5.0-rc.2
[INFO] [stderr]    Compiling num-bigint v0.4.3
[INFO] [stderr]    Compiling schemars v0.8.11
[INFO] [stderr]    Compiling unicode-xid v0.2.4
[INFO] [stderr]     Checking tempfile v3.3.0
[INFO] [stderr]     Checking md-5 v0.10.5
[INFO] [stderr]     Checking stringprep v0.1.2
[INFO] [stderr]     Checking idna v0.3.0
[INFO] [stderr]     Checking nanorand v0.7.0
[INFO] [stderr]     Checking atty v0.2.14
[INFO] [stderr]    Compiling num-rational v0.4.1
[INFO] [stderr]     Checking dyn-clone v1.0.9
[INFO] [stderr]     Checking siphasher v0.3.10
[INFO] [stderr]     Checking fallible-iterator v0.2.0
[INFO] [stderr]     Checking weezl v0.1.7
[INFO] [stderr]     Checking flate2 v1.0.24
[INFO] [stderr]     Checking phf_shared v0.11.1
[INFO] [stderr]     Checking miniz_oxide v0.6.2
[INFO] [stderr]     Checking threadpool v1.8.1
[INFO] [stderr]     Checking rustls-pemfile v1.0.1
[INFO] [stderr]     Checking url v2.3.1
[INFO] [stderr]     Checking bit_field v0.10.1
[INFO] [stderr]     Checking xml-rs v0.8.4
[INFO] [stderr]     Checking postgres-protocol v0.6.4
[INFO] [stderr]     Checking lebe v0.5.2
[INFO] [stderr]     Checking matches v0.1.9
[INFO] [stderr]     Checking half v2.1.0
[INFO] [stderr]     Checking base64ct v1.5.3
[INFO] [stderr]    Compiling futures v0.3.25
[INFO] [stderr]     Checking match_cfg v0.1.0
[INFO] [stderr]     Checking idna v0.2.3
[INFO] [stderr]     Checking png v0.17.6
[INFO] [stderr]     Checking webpki v0.22.0
[INFO] [stderr]     Checking sct v0.7.0
[INFO] [stderr]     Checking hostname v0.3.1
[INFO] [stderr]     Checking nom v7.1.1
[INFO] [stderr]     Checking gif v0.11.4
[INFO] [stderr]     Checking phf v0.11.1
[INFO] [stderr]     Checking pem v1.1.0
[INFO] [stderr]     Checking password-hash v0.4.2
[INFO] [stderr]     Checking email-encoding v0.1.3
[INFO] [stderr]     Checking aho-corasick v0.7.19
[INFO] [stderr]     Checking quoted_printable v0.4.5
[INFO] [stderr]     Checking email_address v0.2.3
[INFO] [stderr]     Checking webpki-roots v0.22.5
[INFO] [stderr]     Checking ipnet v2.5.0
[INFO] [stderr]     Checking scoped_threadpool v0.1.9
[INFO] [stderr]     Checking utf8-width v0.1.6
[INFO] [stderr]     Checking bytemuck v1.12.1
[INFO] [stderr]     Checking html-escape v0.2.11
[INFO] [stderr]     Checking whatlang v0.16.2
[INFO] [stderr]     Checking pbkdf2 v0.11.0
[INFO] [stderr]     Checking uuid v1.2.1
[INFO] [stderr]     Checking regex v1.6.0
[INFO] [stderr]    Compiling proc-macro2-diagnostics v0.9.1
[INFO] [stderr]    Compiling darling_core v0.13.4
[INFO] [stderr]    Compiling serde_derive_internals v0.26.0
[INFO] [stderr]    Compiling devise_core v0.3.1
[INFO] [stderr]    Compiling hyper v0.14.20
[INFO] [stderr]     Checking jpeg-decoder v0.2.6
[INFO] [stderr]    Compiling tokio-macros v1.8.0
[INFO] [stderr]    Compiling futures-macro v0.3.25
[INFO] [stderr]    Compiling pear_codegen v0.2.3
[INFO] [stderr]    Compiling ref-cast-impl v1.0.12
[INFO] [stderr]    Compiling openssl-macros v0.1.0
[INFO] [stderr]    Compiling thiserror-impl v1.0.37
[INFO] [stderr]    Compiling async-stream-impl v0.3.3
[INFO] [stderr]    Compiling pin-project-internal v1.0.12
[INFO] [stderr]     Checking tiff v0.7.3
[INFO] [stderr]     Checking async-stream v0.3.3
[INFO] [stderr]    Compiling schemars_derive v0.8.11
[INFO] [stderr]    Compiling devise_codegen v0.3.1
[INFO] [stderr]     Checking pin-project v1.0.12
[INFO] [stderr]     Checking flume v0.10.14
[INFO] [stderr]    Compiling devise v0.3.1
[INFO] [stderr]    Compiling pear v0.2.3
[INFO] [stderr]     Checking simple_asn1 v0.6.2
[INFO] [stderr]     Checking exr v1.5.2
[INFO] [stderr]    Compiling darling_macro v0.13.4
[INFO] [stderr]    Compiling darling v0.13.4
[INFO] [stderr]    Compiling rocket_http v0.5.0-rc.2
[INFO] [stderr]     Checking futures-executor v0.3.25
[INFO] [stderr]     Checking image v0.24.4
[INFO] [stderr]    Compiling rocket_codegen v0.5.0-rc.2
[INFO] [stderr]    Compiling rocket_okapi_codegen v0.8.0-rc.1 (https://github.com/ThouCheese/okapi?branch=feat%2Frocket0.5-rc.2#36804499)
[INFO] [stderr]     Checking tokio-util v0.7.4
[INFO] [stderr]     Checking tokio-stream v0.1.11
[INFO] [stderr]     Checking tokio-rustls v0.23.4
[INFO] [stderr]     Checking tokio-native-tls v0.3.0
[INFO] [stderr]     Checking lettre v0.10.1
[INFO] [stderr]     Checking chrono v0.4.22
[INFO] [stderr]     Checking uncased v0.9.7
[INFO] [stderr]     Checking toml v0.5.9
[INFO] [stderr]     Checking ubyte v0.10.3
[INFO] [stderr]     Checking serde_urlencoded v0.7.1
[INFO] [stderr]     Checking serde_qs v0.10.1
[INFO] [stderr]     Checking serde-xml-rs v0.6.0
[INFO] [stderr]     Checking quick-xml v0.25.0
[INFO] [stderr]     Checking h2 v0.3.15
[INFO] [stderr]     Checking simple-xml-builder v1.1.0
[INFO] [stderr]     Checking jsonwebtoken v8.1.1
[INFO] [stderr]     Checking postgres-types v0.2.4
[INFO] [stderr]     Checking chrono_utils v0.1.3
[INFO] [stderr]     Checking sitemap v0.4.1
[INFO] [stderr]     Checking tokio-postgres v0.7.7
[INFO] [stderr]     Checking okapi v0.7.0-rc.1 (https://github.com/ThouCheese/okapi?branch=feat%2Frocket0.5-rc.2#36804499)
[INFO] [stderr]     Checking hyper-rustls v0.23.0
[INFO] [stderr]     Checking hyper-tls v0.5.0
[INFO] [stderr]     Checking reqwest v0.11.12
[INFO] [stderr]     Checking rocket_okapi v0.8.0-rc.1 (https://github.com/ThouCheese/okapi?branch=feat%2Frocket0.5-rc.2#36804499)
[INFO] [stderr]     Checking rocket-multipart-form-data v0.10.3
[INFO] [stderr]     Checking npify-api v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unused import: `entities::XMLSitemapItem`
[INFO] [stdout]  --> src/domain/xml/mod.rs:3:9
[INFO] [stdout]   |
[INFO] [stdout] 3 | pub use entities::XMLSitemapItem;
[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: `IsNull`
[INFO] [stdout]  --> src/infrastructure/persistence/postgresql/mod.rs:9:59
[INFO] [stdout]   |
[INFO] [stdout] 9 | pub use types::{FromSqlResult, FromSqlType, FromSqlValue, IsNull, ToSqlResult, ToSqlType, ToSqlValue};
[INFO] [stdout]   |                                                           ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `PostgreSQLClient`
[INFO] [stdout]  --> src/infrastructure/persistence/mod.rs:3:60
[INFO] [stdout]   |
[INFO] [stdout] 3 |   PostgreSQLBoardRepository, PostgreSQLCategoryRepository, PostgreSQLClient, PostgreSQLLanguageRepository, PostgreSQLMessageRepository,
[INFO] [stdout]   |                                                            ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `HttpError`, `HttpJsonResponse`, and `HttpXMLResponse`
[INFO] [stdout]  --> src/infrastructure/http/mod.rs:5:17
[INFO] [stdout]   |
[INFO] [stdout] 5 | pub use types::{HttpError, HttpJsonResponse, HttpXMLResponse};
[INFO] [stdout]   |                 ^^^^^^^^^  ^^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `QueryParamsFilter`
[INFO] [stdout]  --> src/infrastructure/http/middlewares/mod.rs:8:37
[INFO] [stdout]   |
[INFO] [stdout] 8 | pub use query_params::{QueryParams, QueryParamsFilter, QueryParamsPage};
[INFO] [stdout]   |                                     ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `get_all`
[INFO] [stdout]   --> src/infrastructure/http/routes/board.rs:12:14
[INFO] [stdout]    |
[INFO] [stdout] 12 | pub async fn get_all(query_params: QueryParams, session: Session) -> HttpJsonResponse<Board> {
[INFO] [stdout]    |              ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `get_all`
[INFO] [stdout]   --> src/infrastructure/http/routes/category.rs:12:14
[INFO] [stdout]    |
[INFO] [stdout] 12 | pub async fn get_all(query_params: QueryParams) -> HttpJsonResponse<Category> {
[INFO] [stdout]    |              ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `get_by_board`
[INFO] [stdout]   --> src/infrastructure/http/routes/category.rs:25:14
[INFO] [stdout]    |
[INFO] [stdout] 25 | pub async fn get_by_board(board_id: &str, query_params: QueryParams) -> HttpJsonResponse<Category> {
[INFO] [stdout]    |              ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `file_get_one`
[INFO] [stdout]   --> src/infrastructure/http/routes/file.rs:21:14
[INFO] [stdout]    |
[INFO] [stdout] 21 | pub async fn file_get_one(file_path: PathBuf) -> Option<NamedFile> {
[INFO] [stdout]    |              ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `file_upload`
[INFO] [stdout]   --> src/infrastructure/http/routes/file.rs:29:14
[INFO] [stdout]    |
[INFO] [stdout] 29 | pub async fn file_upload(content_type: &ContentType, data: Data<'_>) -> HttpJsonResponse<FileDto> {
[INFO] [stdout]    |              ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `file_delete`
[INFO] [stdout]   --> src/infrastructure/http/routes/file.rs:72:14
[INFO] [stdout]    |
[INFO] [stdout] 72 | pub async fn file_delete(data: Json<FileDeleteOneDto>) -> HttpJsonResponse<Option<String>> {
[INFO] [stdout]    |              ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `get_one`
[INFO] [stdout]   --> src/infrastructure/http/routes/language.rs:10:14
[INFO] [stdout]    |
[INFO] [stdout] 10 | pub async fn get_one(id_or_slug: String) -> HttpJsonResponse<Language> {
[INFO] [stdout]    |              ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `get_all`
[INFO] [stdout]   --> src/infrastructure/http/routes/language.rs:20:14
[INFO] [stdout]    |
[INFO] [stdout] 20 | pub async fn get_all() -> HttpJsonResponse<Language> {
[INFO] [stdout]    |              ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `login`
[INFO] [stdout]   --> src/infrastructure/http/routes/login.rs:19:14
[INFO] [stdout]    |
[INFO] [stdout] 19 | pub async fn login(cookies: &CookieJar<'_>, session: Session, login_data: Json<LoginDataDto>) -> HttpJsonResponse<User> {
[INFO] [stdout]    |              ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `log_out`
[INFO] [stdout]   --> src/infrastructure/http/routes/login.rs:29:14
[INFO] [stdout]    |
[INFO] [stdout] 29 | pub async fn log_out(_authenticated: Authenticated, cookies: &CookieJar<'_>, session: Session) -> HttpJsonResponse<()> {
[INFO] [stdout]    |              ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `password_forgotten`
[INFO] [stdout]   --> src/infrastructure/http/routes/login.rs:39:14
[INFO] [stdout]    |
[INFO] [stdout] 39 | pub async fn password_forgotten(password_forgotten_data: Json<PasswordForgottenRequestDto>) -> HttpJsonResponse<()> {
[INFO] [stdout]    |              ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `password_reset`
[INFO] [stdout]   --> src/infrastructure/http/routes/login.rs:49:14
[INFO] [stdout]    |
[INFO] [stdout] 49 | pub async fn password_reset(cookies: &CookieJar<'_>, password_reset_data: Json<PasswordResetRequestDto>) -> HttpJsonResponse<()> {
[INFO] [stdout]    |              ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `message_get_one`
[INFO] [stdout]   --> src/infrastructure/http/routes/message.rs:18:14
[INFO] [stdout]    |
[INFO] [stdout] 18 | pub async fn message_get_one(session: Session, message_id: String) -> HttpJsonResponse<Message> {
[INFO] [stdout]    |              ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `message_get_by_thread`
[INFO] [stdout]   --> src/infrastructure/http/routes/message.rs:28:14
[INFO] [stdout]    |
[INFO] [stdout] 28 | pub async fn message_get_by_thread(session: Session, thread_id: String, query_params: QueryParams) -> HttpJsonResponse<Message> {
[INFO] [stdout]    |              ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `message_get_by_user`
[INFO] [stdout]   --> src/infrastructure/http/routes/message.rs:38:14
[INFO] [stdout]    |
[INFO] [stdout] 38 | pub async fn message_get_by_user(user_id: String, query_params: QueryParams, session: Session) -> HttpJsonResponse<Message> {
[INFO] [stdout]    |              ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `message_get_all`
[INFO] [stdout]   --> src/infrastructure/http/routes/message.rs:48:14
[INFO] [stdout]    |
[INFO] [stdout] 48 | pub async fn message_get_all(query_params: QueryParams, session: Session) -> HttpJsonResponse<Message> {
[INFO] [stdout]    |              ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `message_create_one`
[INFO] [stdout]   --> src/infrastructure/http/routes/message.rs:58:14
[INFO] [stdout]    |
[INFO] [stdout] 58 | pub async fn message_create_one(_authenticated: Authenticated, session: Session, message_create_one_dto: Json<MessageCreateOneDto>) ...
[INFO] [stdout]    |              ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `message_update_one`
[INFO] [stdout]   --> src/infrastructure/http/routes/message.rs:70:14
[INFO] [stdout]    |
[INFO] [stdout] 70 | pub async fn message_update_one(
[INFO] [stdout]    |              ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `state_reset`
[INFO] [stdout]   --> src/infrastructure/http/routes/state.rs:11:14
[INFO] [stdout]    |
[INFO] [stdout] 11 | pub async fn state_reset(_authenticated: Authenticated, session: Session) -> HttpJsonResponse<()> {
[INFO] [stdout]    |              ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `db_health_check`
[INFO] [stdout]   --> src/infrastructure/http/routes/state.rs:21:14
[INFO] [stdout]    |
[INFO] [stdout] 21 | pub async fn db_health_check(session: Session) -> HttpJsonResponse<()> {
[INFO] [stdout]    |              ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `get_all`
[INFO] [stdout]   --> src/infrastructure/http/routes/tag.rs:11:14
[INFO] [stdout]    |
[INFO] [stdout] 11 | pub async fn get_all(query_params: QueryParams) -> HttpJsonResponse<Tag> {
[INFO] [stdout]    |              ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `get_by_thread`
[INFO] [stdout]   --> src/infrastructure/http/routes/tag.rs:23:14
[INFO] [stdout]    |
[INFO] [stdout] 23 | pub async fn get_by_thread(thread_id: &str) -> HttpJsonResponse<Tag> {
[INFO] [stdout]    |              ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `thread_get_one`
[INFO] [stdout]   --> src/infrastructure/http/routes/thread.rs:20:14
[INFO] [stdout]    |
[INFO] [stdout] 20 | pub async fn thread_get_one(id: String, session: Session) -> HttpJsonResponse<Thread> {
[INFO] [stdout]    |              ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `thread_create_one`
[INFO] [stdout]   --> src/infrastructure/http/routes/thread.rs:30:14
[INFO] [stdout]    |
[INFO] [stdout] 30 | pub async fn thread_create_one(
[INFO] [stdout]    |              ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `thread_update_one`
[INFO] [stdout]   --> src/infrastructure/http/routes/thread.rs:54:14
[INFO] [stdout]    |
[INFO] [stdout] 54 | pub async fn thread_update_one(
[INFO] [stdout]    |              ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `thread_get_all`
[INFO] [stdout]   --> src/infrastructure/http/routes/thread.rs:72:14
[INFO] [stdout]    |
[INFO] [stdout] 72 | pub async fn thread_get_all(query_params: QueryParams, session: Session) -> HttpJsonResponse<Thread> {
[INFO] [stdout]    |              ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `thread_get_by_topic`
[INFO] [stdout]   --> src/infrastructure/http/routes/thread.rs:82:14
[INFO] [stdout]    |
[INFO] [stdout] 82 | pub async fn thread_get_by_topic(topic_id: &str, query_params: QueryParams, session: Session) -> HttpJsonResponse<Thread> {
[INFO] [stdout]    |              ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `topic_get_one`
[INFO] [stdout]   --> src/infrastructure/http/routes/topic.rs:14:14
[INFO] [stdout]    |
[INFO] [stdout] 14 | pub async fn topic_get_one(topic_id: &str, query_params: QueryParams, session: Session) -> HttpJsonResponse<Topic> {
[INFO] [stdout]    |              ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `topic_get_all`
[INFO] [stdout]   --> src/infrastructure/http/routes/topic.rs:26:14
[INFO] [stdout]    |
[INFO] [stdout] 26 | pub async fn topic_get_all(query_params: QueryParams, session: Session) -> HttpJsonResponse<Topic> {
[INFO] [stdout]    |              ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `topic_get_by_board`
[INFO] [stdout]   --> src/infrastructure/http/routes/topic.rs:38:14
[INFO] [stdout]    |
[INFO] [stdout] 38 | pub async fn topic_get_by_board(board_id: String, query_params: QueryParams, session: Session) -> HttpJsonResponse<Topic> {
[INFO] [stdout]    |              ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `get_me`
[INFO] [stdout]   --> src/infrastructure/http/routes/user.rs:22:14
[INFO] [stdout]    |
[INFO] [stdout] 22 | pub async fn get_me(_authenticated: Authenticated, session: Session) -> HttpJsonResponse<User> {
[INFO] [stdout]    |              ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `get_one`
[INFO] [stdout]   --> src/infrastructure/http/routes/user.rs:32:14
[INFO] [stdout]    |
[INFO] [stdout] 32 | pub async fn get_one(id: &str) -> HttpJsonResponse<User> {
[INFO] [stdout]    |              ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `get_all`
[INFO] [stdout]   --> src/infrastructure/http/routes/user.rs:42:14
[INFO] [stdout]    |
[INFO] [stdout] 42 | pub async fn get_all() -> HttpJsonResponse<User> {
[INFO] [stdout]    |              ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `create_one`
[INFO] [stdout]   --> src/infrastructure/http/routes/user.rs:52:14
[INFO] [stdout]    |
[INFO] [stdout] 52 | pub async fn create_one(sign_up_data: Json<SignUpDataDto>) -> HttpJsonResponse<()> {
[INFO] [stdout]    |              ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `sign_up_confirmation`
[INFO] [stdout]   --> src/infrastructure/http/routes/user.rs:64:14
[INFO] [stdout]    |
[INFO] [stdout] 64 | pub async fn sign_up_confirmation(cookies: &CookieJar<'_>, sign_up_confirmation_dto: Json<CreateOneConfirmationDto>) -> HttpJsonResp...
[INFO] [stdout]    |              ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `user_update_one`
[INFO] [stdout]   --> src/infrastructure/http/routes/user.rs:74:14
[INFO] [stdout]    |
[INFO] [stdout] 74 | pub async fn user_update_one(
[INFO] [stdout]    |              ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `user_delete_me_request`
[INFO] [stdout]   --> src/infrastructure/http/routes/user.rs:90:14
[INFO] [stdout]    |
[INFO] [stdout] 90 | pub async fn user_delete_me_request(_authenticated: Authenticated, session: Session) -> HttpJsonResponse<()> {
[INFO] [stdout]    |              ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `user_delete_me_confirmation`
[INFO] [stdout]    --> src/infrastructure/http/routes/user.rs:100:14
[INFO] [stdout]     |
[INFO] [stdout] 100 | pub async fn user_delete_me_confirmation(
[INFO] [stdout]     |              ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `sitemap`
[INFO] [stdout]   --> src/infrastructure/http/routes/xml.rs:10:14
[INFO] [stdout]    |
[INFO] [stdout] 10 | pub async fn sitemap() -> HttpXMLResponse<String> {
[INFO] [stdout]    |              ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `text_editor_to_html::text_editor_to_html`
[INFO] [stdout]   --> src/shared/services/rich_content/mod.rs:10:9
[INFO] [stdout]    |
[INFO] [stdout] 10 | pub use text_editor_to_html::text_editor_to_html;
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `http_client::HttpClient`
[INFO] [stdout]   --> src/shared/services/mod.rs:12:9
[INFO] [stdout]    |
[INFO] [stdout] 12 | pub use http_client::HttpClient;
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `TokenContent`
[INFO] [stdout]   --> src/shared/services/mod.rs:17:25
[INFO] [stdout]    |
[INFO] [stdout] 17 | pub use token_service::{TokenContent, TokenService};
[INFO] [stdout]    |                         ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `validate_email_address::validate_email_address`
[INFO] [stdout]  --> src/shared/utils/string/mod.rs:4:9
[INFO] [stdout]   |
[INFO] [stdout] 4 | pub use validate_email_address::validate_email_address;
[INFO] [stdout]   |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `validate_password::validate_password`
[INFO] [stdout]  --> src/shared/utils/string/mod.rs:5:9
[INFO] [stdout]   |
[INFO] [stdout] 5 | pub use validate_password::validate_password;
[INFO] [stdout]   |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `validate_user_name::validate_user_name`
[INFO] [stdout]  --> src/shared/utils/string/mod.rs:6:9
[INFO] [stdout]   |
[INFO] [stdout] 6 | pub use validate_user_name::validate_user_name;
[INFO] [stdout]   |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `entities::XMLSitemapItem`
[INFO] [stdout]  --> src/domain/xml/mod.rs:3:9
[INFO] [stdout]   |
[INFO] [stdout] 3 | pub use entities::XMLSitemapItem;
[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: `IsNull`
[INFO] [stdout]  --> src/infrastructure/persistence/postgresql/mod.rs:9:59
[INFO] [stdout]   |
[INFO] [stdout] 9 | pub use types::{FromSqlResult, FromSqlType, FromSqlValue, IsNull, ToSqlResult, ToSqlType, ToSqlValue};
[INFO] [stdout]   |                                                           ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `PostgreSQLClient`
[INFO] [stdout]  --> src/infrastructure/persistence/mod.rs:3:60
[INFO] [stdout]   |
[INFO] [stdout] 3 |   PostgreSQLBoardRepository, PostgreSQLCategoryRepository, PostgreSQLClient, PostgreSQLLanguageRepository, PostgreSQLMessageRepository,
[INFO] [stdout]   |                                                            ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `HttpError`, `HttpJsonResponse`, and `HttpXMLResponse`
[INFO] [stdout]  --> src/infrastructure/http/mod.rs:5:17
[INFO] [stdout]   |
[INFO] [stdout] 5 | pub use types::{HttpError, HttpJsonResponse, HttpXMLResponse};
[INFO] [stdout]   |                 ^^^^^^^^^  ^^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `QueryParamsFilter`
[INFO] [stdout]  --> src/infrastructure/http/middlewares/mod.rs:8:37
[INFO] [stdout]   |
[INFO] [stdout] 8 | pub use query_params::{QueryParams, QueryParamsFilter, QueryParamsPage};
[INFO] [stdout]   |                                     ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `get_all`
[INFO] [stdout]   --> src/infrastructure/http/routes/board.rs:12:14
[INFO] [stdout]    |
[INFO] [stdout] 12 | pub async fn get_all(query_params: QueryParams, session: Session) -> HttpJsonResponse<Board> {
[INFO] [stdout]    |              ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `get_all`
[INFO] [stdout]   --> src/infrastructure/http/routes/category.rs:12:14
[INFO] [stdout]    |
[INFO] [stdout] 12 | pub async fn get_all(query_params: QueryParams) -> HttpJsonResponse<Category> {
[INFO] [stdout]    |              ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `get_by_board`
[INFO] [stdout]   --> src/infrastructure/http/routes/category.rs:25:14
[INFO] [stdout]    |
[INFO] [stdout] 25 | pub async fn get_by_board(board_id: &str, query_params: QueryParams) -> HttpJsonResponse<Category> {
[INFO] [stdout]    |              ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `file_get_one`
[INFO] [stdout]   --> src/infrastructure/http/routes/file.rs:21:14
[INFO] [stdout]    |
[INFO] [stdout] 21 | pub async fn file_get_one(file_path: PathBuf) -> Option<NamedFile> {
[INFO] [stdout]    |              ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `file_upload`
[INFO] [stdout]   --> src/infrastructure/http/routes/file.rs:29:14
[INFO] [stdout]    |
[INFO] [stdout] 29 | pub async fn file_upload(content_type: &ContentType, data: Data<'_>) -> HttpJsonResponse<FileDto> {
[INFO] [stdout]    |              ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `file_delete`
[INFO] [stdout]   --> src/infrastructure/http/routes/file.rs:72:14
[INFO] [stdout]    |
[INFO] [stdout] 72 | pub async fn file_delete(data: Json<FileDeleteOneDto>) -> HttpJsonResponse<Option<String>> {
[INFO] [stdout]    |              ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `get_one`
[INFO] [stdout]   --> src/infrastructure/http/routes/language.rs:10:14
[INFO] [stdout]    |
[INFO] [stdout] 10 | pub async fn get_one(id_or_slug: String) -> HttpJsonResponse<Language> {
[INFO] [stdout]    |              ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `get_all`
[INFO] [stdout]   --> src/infrastructure/http/routes/language.rs:20:14
[INFO] [stdout]    |
[INFO] [stdout] 20 | pub async fn get_all() -> HttpJsonResponse<Language> {
[INFO] [stdout]    |              ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `login`
[INFO] [stdout]   --> src/infrastructure/http/routes/login.rs:19:14
[INFO] [stdout]    |
[INFO] [stdout] 19 | pub async fn login(cookies: &CookieJar<'_>, session: Session, login_data: Json<LoginDataDto>) -> HttpJsonResponse<User> {
[INFO] [stdout]    |              ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `log_out`
[INFO] [stdout]   --> src/infrastructure/http/routes/login.rs:29:14
[INFO] [stdout]    |
[INFO] [stdout] 29 | pub async fn log_out(_authenticated: Authenticated, cookies: &CookieJar<'_>, session: Session) -> HttpJsonResponse<()> {
[INFO] [stdout]    |              ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `password_forgotten`
[INFO] [stdout]   --> src/infrastructure/http/routes/login.rs:39:14
[INFO] [stdout]    |
[INFO] [stdout] 39 | pub async fn password_forgotten(password_forgotten_data: Json<PasswordForgottenRequestDto>) -> HttpJsonResponse<()> {
[INFO] [stdout]    |              ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `password_reset`
[INFO] [stdout]   --> src/infrastructure/http/routes/login.rs:49:14
[INFO] [stdout]    |
[INFO] [stdout] 49 | pub async fn password_reset(cookies: &CookieJar<'_>, password_reset_data: Json<PasswordResetRequestDto>) -> HttpJsonResponse<()> {
[INFO] [stdout]    |              ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `message_get_one`
[INFO] [stdout]   --> src/infrastructure/http/routes/message.rs:18:14
[INFO] [stdout]    |
[INFO] [stdout] 18 | pub async fn message_get_one(session: Session, message_id: String) -> HttpJsonResponse<Message> {
[INFO] [stdout]    |              ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `message_get_by_thread`
[INFO] [stdout]   --> src/infrastructure/http/routes/message.rs:28:14
[INFO] [stdout]    |
[INFO] [stdout] 28 | pub async fn message_get_by_thread(session: Session, thread_id: String, query_params: QueryParams) -> HttpJsonResponse<Message> {
[INFO] [stdout]    |              ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `message_get_by_user`
[INFO] [stdout]   --> src/infrastructure/http/routes/message.rs:38:14
[INFO] [stdout]    |
[INFO] [stdout] 38 | pub async fn message_get_by_user(user_id: String, query_params: QueryParams, session: Session) -> HttpJsonResponse<Message> {
[INFO] [stdout]    |              ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `message_get_all`
[INFO] [stdout]   --> src/infrastructure/http/routes/message.rs:48:14
[INFO] [stdout]    |
[INFO] [stdout] 48 | pub async fn message_get_all(query_params: QueryParams, session: Session) -> HttpJsonResponse<Message> {
[INFO] [stdout]    |              ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `message_create_one`
[INFO] [stdout]   --> src/infrastructure/http/routes/message.rs:58:14
[INFO] [stdout]    |
[INFO] [stdout] 58 | pub async fn message_create_one(_authenticated: Authenticated, session: Session, message_create_one_dto: Json<MessageCreateOneDto>) ...
[INFO] [stdout]    |              ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `message_update_one`
[INFO] [stdout]   --> src/infrastructure/http/routes/message.rs:70:14
[INFO] [stdout]    |
[INFO] [stdout] 70 | pub async fn message_update_one(
[INFO] [stdout]    |              ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `state_reset`
[INFO] [stdout]   --> src/infrastructure/http/routes/state.rs:11:14
[INFO] [stdout]    |
[INFO] [stdout] 11 | pub async fn state_reset(_authenticated: Authenticated, session: Session) -> HttpJsonResponse<()> {
[INFO] [stdout]    |              ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `db_health_check`
[INFO] [stdout]   --> src/infrastructure/http/routes/state.rs:21:14
[INFO] [stdout]    |
[INFO] [stdout] 21 | pub async fn db_health_check(session: Session) -> HttpJsonResponse<()> {
[INFO] [stdout]    |              ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `get_all`
[INFO] [stdout]   --> src/infrastructure/http/routes/tag.rs:11:14
[INFO] [stdout]    |
[INFO] [stdout] 11 | pub async fn get_all(query_params: QueryParams) -> HttpJsonResponse<Tag> {
[INFO] [stdout]    |              ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `get_by_thread`
[INFO] [stdout]   --> src/infrastructure/http/routes/tag.rs:23:14
[INFO] [stdout]    |
[INFO] [stdout] 23 | pub async fn get_by_thread(thread_id: &str) -> HttpJsonResponse<Tag> {
[INFO] [stdout]    |              ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `thread_get_one`
[INFO] [stdout]   --> src/infrastructure/http/routes/thread.rs:20:14
[INFO] [stdout]    |
[INFO] [stdout] 20 | pub async fn thread_get_one(id: String, session: Session) -> HttpJsonResponse<Thread> {
[INFO] [stdout]    |              ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `thread_create_one`
[INFO] [stdout]   --> src/infrastructure/http/routes/thread.rs:30:14
[INFO] [stdout]    |
[INFO] [stdout] 30 | pub async fn thread_create_one(
[INFO] [stdout]    |              ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `thread_update_one`
[INFO] [stdout]   --> src/infrastructure/http/routes/thread.rs:54:14
[INFO] [stdout]    |
[INFO] [stdout] 54 | pub async fn thread_update_one(
[INFO] [stdout]    |              ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `thread_get_all`
[INFO] [stdout]   --> src/infrastructure/http/routes/thread.rs:72:14
[INFO] [stdout]    |
[INFO] [stdout] 72 | pub async fn thread_get_all(query_params: QueryParams, session: Session) -> HttpJsonResponse<Thread> {
[INFO] [stdout]    |              ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `thread_get_by_topic`
[INFO] [stdout]   --> src/infrastructure/http/routes/thread.rs:82:14
[INFO] [stdout]    |
[INFO] [stdout] 82 | pub async fn thread_get_by_topic(topic_id: &str, query_params: QueryParams, session: Session) -> HttpJsonResponse<Thread> {
[INFO] [stdout]    |              ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `topic_get_one`
[INFO] [stdout]   --> src/infrastructure/http/routes/topic.rs:14:14
[INFO] [stdout]    |
[INFO] [stdout] 14 | pub async fn topic_get_one(topic_id: &str, query_params: QueryParams, session: Session) -> HttpJsonResponse<Topic> {
[INFO] [stdout]    |              ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `topic_get_all`
[INFO] [stdout]   --> src/infrastructure/http/routes/topic.rs:26:14
[INFO] [stdout]    |
[INFO] [stdout] 26 | pub async fn topic_get_all(query_params: QueryParams, session: Session) -> HttpJsonResponse<Topic> {
[INFO] [stdout]    |              ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `topic_get_by_board`
[INFO] [stdout]   --> src/infrastructure/http/routes/topic.rs:38:14
[INFO] [stdout]    |
[INFO] [stdout] 38 | pub async fn topic_get_by_board(board_id: String, query_params: QueryParams, session: Session) -> HttpJsonResponse<Topic> {
[INFO] [stdout]    |              ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `get_me`
[INFO] [stdout]   --> src/infrastructure/http/routes/user.rs:22:14
[INFO] [stdout]    |
[INFO] [stdout] 22 | pub async fn get_me(_authenticated: Authenticated, session: Session) -> HttpJsonResponse<User> {
[INFO] [stdout]    |              ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `get_one`
[INFO] [stdout]   --> src/infrastructure/http/routes/user.rs:32:14
[INFO] [stdout]    |
[INFO] [stdout] 32 | pub async fn get_one(id: &str) -> HttpJsonResponse<User> {
[INFO] [stdout]    |              ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `get_all`
[INFO] [stdout]   --> src/infrastructure/http/routes/user.rs:42:14
[INFO] [stdout]    |
[INFO] [stdout] 42 | pub async fn get_all() -> HttpJsonResponse<User> {
[INFO] [stdout]    |              ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `create_one`
[INFO] [stdout]   --> src/infrastructure/http/routes/user.rs:52:14
[INFO] [stdout]    |
[INFO] [stdout] 52 | pub async fn create_one(sign_up_data: Json<SignUpDataDto>) -> HttpJsonResponse<()> {
[INFO] [stdout]    |              ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `sign_up_confirmation`
[INFO] [stdout]   --> src/infrastructure/http/routes/user.rs:64:14
[INFO] [stdout]    |
[INFO] [stdout] 64 | pub async fn sign_up_confirmation(cookies: &CookieJar<'_>, sign_up_confirmation_dto: Json<CreateOneConfirmationDto>) -> HttpJsonResp...
[INFO] [stdout]    |              ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `user_update_one`
[INFO] [stdout]   --> src/infrastructure/http/routes/user.rs:74:14
[INFO] [stdout]    |
[INFO] [stdout] 74 | pub async fn user_update_one(
[INFO] [stdout]    |              ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `user_delete_me_request`
[INFO] [stdout]   --> src/infrastructure/http/routes/user.rs:90:14
[INFO] [stdout]    |
[INFO] [stdout] 90 | pub async fn user_delete_me_request(_authenticated: Authenticated, session: Session) -> HttpJsonResponse<()> {
[INFO] [stdout]    |              ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `user_delete_me_confirmation`
[INFO] [stdout]    --> src/infrastructure/http/routes/user.rs:100:14
[INFO] [stdout]     |
[INFO] [stdout] 100 | pub async fn user_delete_me_confirmation(
[INFO] [stdout]     |              ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `sitemap`
[INFO] [stdout]   --> src/infrastructure/http/routes/xml.rs:10:14
[INFO] [stdout]    |
[INFO] [stdout] 10 | pub async fn sitemap() -> HttpXMLResponse<String> {
[INFO] [stdout]    |              ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `text_editor_to_html::text_editor_to_html`
[INFO] [stdout]   --> src/shared/services/rich_content/mod.rs:10:9
[INFO] [stdout]    |
[INFO] [stdout] 10 | pub use text_editor_to_html::text_editor_to_html;
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `http_client::HttpClient`
[INFO] [stdout]   --> src/shared/services/mod.rs:12:9
[INFO] [stdout]    |
[INFO] [stdout] 12 | pub use http_client::HttpClient;
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `TokenContent`
[INFO] [stdout]   --> src/shared/services/mod.rs:17:25
[INFO] [stdout]    |
[INFO] [stdout] 17 | pub use token_service::{TokenContent, TokenService};
[INFO] [stdout]    |                         ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `validate_email_address::validate_email_address`
[INFO] [stdout]  --> src/shared/utils/string/mod.rs:4:9
[INFO] [stdout]   |
[INFO] [stdout] 4 | pub use validate_email_address::validate_email_address;
[INFO] [stdout]   |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `validate_password::validate_password`
[INFO] [stdout]  --> src/shared/utils/string/mod.rs:5:9
[INFO] [stdout]   |
[INFO] [stdout] 5 | pub use validate_password::validate_password;
[INFO] [stdout]   |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `validate_user_name::validate_user_name`
[INFO] [stdout]  --> src/shared/utils/string/mod.rs:6:9
[INFO] [stdout]   |
[INFO] [stdout] 6 | pub use validate_user_name::validate_user_name;
[INFO] [stdout]   |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `new` is never used
[INFO] [stdout]  --> src/domain/tag/use_cases/tag_get_all.rs:9:6
[INFO] [stdout]   |
[INFO] [stdout] 8 | pub trait ITagGetAllUseCase {
[INFO] [stdout]   |           ----------------- associated function in this trait
[INFO] [stdout] 9 |   fn new(tag_repository: Arc<dyn ITagRepository>) -> TagGetAllUseCase;
[INFO] [stdout]   |      ^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `new` is never used
[INFO] [stdout]  --> src/domain/tag/use_cases/tag_get_by_thread_use_case.rs:9:6
[INFO] [stdout]   |
[INFO] [stdout] 8 | pub trait ITagGetByThreadUseCase {
[INFO] [stdout]   |           ---------------------- associated function in this trait
[INFO] [stdout] 9 |   fn new(tag_repository: Arc<dyn ITagRepository>) -> TagGetByThreadUseCase;
[INFO] [stdout]   |      ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `InsertResult` is never constructed
[INFO] [stdout]   --> src/infrastructure/persistence/postgresql/repositories/thread_repository.rs:11:8
[INFO] [stdout]    |
[INFO] [stdout] 11 | struct InsertResult(String);
[INFO] [stdout]    |        ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `file_repository` is never read
[INFO] [stdout]   --> src/shared/services/rich_content/rich_content.rs:26:7
[INFO] [stdout]    |
[INFO] [stdout] 25 | pub struct RichContent {
[INFO] [stdout]    |            ----------- field in this struct
[INFO] [stdout] 26 |   pub file_repository: Arc<dyn IFileRepository>,
[INFO] [stdout]    |       ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]    --> src/infrastructure/persistence/postgresql/repositories/user_repository.rs:109:5
[INFO] [stdout]     |
[INFO] [stdout] 108 |     async fn user_get_credentials(&self, id: &str) -> Result<UserCredentials> {
[INFO] [stdout]     |  _____________________________________________________________________________-
[INFO] [stdout] 109 | |     impl From<Row> for UserCredentials {
[INFO] [stdout]     | |     ^^^^^----^---^^^^^^---------------
[INFO] [stdout]     | |          |    |        |
[INFO] [stdout]     | |          |    |        `UserCredentials` is not local
[INFO] [stdout]     | |          |    `Row` is not local
[INFO] [stdout]     | |          `From` is not local
[INFO] [stdout] 110 | |       fn from(row: Row) -> Self {
[INFO] [stdout] 111 | |         Self {
[INFO] [stdout] ...   |
[INFO] [stdout] 129 | |     Ok(credentials)
[INFO] [stdout] 130 | |   }
[INFO] [stdout]     | |___- move the `impl` block outside of this async block `<unnameable>` and up 2 bodies
[INFO] [stdout]     |
[INFO] [stdout]     = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]     = note: `#[warn(non_local_definitions)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `new` is never used
[INFO] [stdout]  --> src/domain/tag/use_cases/tag_get_all.rs:9:6
[INFO] [stdout]   |
[INFO] [stdout] 8 | pub trait ITagGetAllUseCase {
[INFO] [stdout]   |           ----------------- associated function in this trait
[INFO] [stdout] 9 |   fn new(tag_repository: Arc<dyn ITagRepository>) -> TagGetAllUseCase;
[INFO] [stdout]   |      ^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `new` is never used
[INFO] [stdout]  --> src/domain/tag/use_cases/tag_get_by_thread_use_case.rs:9:6
[INFO] [stdout]   |
[INFO] [stdout] 8 | pub trait ITagGetByThreadUseCase {
[INFO] [stdout]   |           ---------------------- associated function in this trait
[INFO] [stdout] 9 |   fn new(tag_repository: Arc<dyn ITagRepository>) -> TagGetByThreadUseCase;
[INFO] [stdout]   |      ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `InsertResult` is never constructed
[INFO] [stdout]   --> src/infrastructure/persistence/postgresql/repositories/thread_repository.rs:11:8
[INFO] [stdout]    |
[INFO] [stdout] 11 | struct InsertResult(String);
[INFO] [stdout]    |        ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `file_repository` is never read
[INFO] [stdout]   --> src/shared/services/rich_content/rich_content.rs:26:7
[INFO] [stdout]    |
[INFO] [stdout] 25 | pub struct RichContent {
[INFO] [stdout]    |            ----------- field in this struct
[INFO] [stdout] 26 |   pub file_repository: Arc<dyn IFileRepository>,
[INFO] [stdout]    |       ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]    --> src/infrastructure/persistence/postgresql/repositories/user_repository.rs:109:5
[INFO] [stdout]     |
[INFO] [stdout] 108 |     async fn user_get_credentials(&self, id: &str) -> Result<UserCredentials> {
[INFO] [stdout]     |  _____________________________________________________________________________-
[INFO] [stdout] 109 | |     impl From<Row> for UserCredentials {
[INFO] [stdout]     | |     ^^^^^----^---^^^^^^---------------
[INFO] [stdout]     | |          |    |        |
[INFO] [stdout]     | |          |    |        `UserCredentials` is not local
[INFO] [stdout]     | |          |    `Row` is not local
[INFO] [stdout]     | |          `From` is not local
[INFO] [stdout] 110 | |       fn from(row: Row) -> Self {
[INFO] [stdout] 111 | |         Self {
[INFO] [stdout] ...   |
[INFO] [stdout] 129 | |     Ok(credentials)
[INFO] [stdout] 130 | |   }
[INFO] [stdout]     | |___- move the `impl` block outside of this async block `<unnameable>` and up 2 bodies
[INFO] [stdout]     |
[INFO] [stdout]     = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]     = note: `#[warn(non_local_definitions)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 1m 27s
[INFO] [stderr] warning: the following packages contain code that will be rejected by a future version of Rust: openssl v0.10.42
[INFO] [stderr] note: to see what the problems were, use the option `--future-incompat-report`, or run `cargo report future-incompatibilities --id 2`
[INFO] running `Command { std: "docker" "inspect" "32779b068c7da35e6bb510ede18785b7502b00e10b7604f1bc6d94d5b1bd020e", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "32779b068c7da35e6bb510ede18785b7502b00e10b7604f1bc6d94d5b1bd020e", kill_on_drop: false }`
[INFO] [stdout] 32779b068c7da35e6bb510ede18785b7502b00e10b7604f1bc6d94d5b1bd020e
