[INFO] cloning repository https://github.com/shenxiang11/note-server
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/shenxiang11/note-server" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fshenxiang11%2Fnote-server", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fshenxiang11%2Fnote-server'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] ba5e801f8c0ab201330f9f4d82c4aa112fba2307
[INFO] testing shenxiang11/note-server against beta-2025-09-21 for beta-1.91-2
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fshenxiang11%2Fnote-server" "/workspace/builds/worker-0-tc2/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-0-tc2/source'...
[INFO] [stderr] done.
[INFO] started tweaking git repo https://github.com/shenxiang11/note-server
[INFO] finished tweaking git repo https://github.com/shenxiang11/note-server
[INFO] tweaked toml for git repo https://github.com/shenxiang11/note-server written to /workspace/builds/worker-0-tc2/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/shenxiang11/note-server on toolchain beta-2025-09-21
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+beta-2025-09-21" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate git repo https://github.com/shenxiang11/note-server 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" "+beta-2025-09-21" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:e90291280db7d1fac5b66fc6dad9f9662629e7365a55743daf9bdf73ebc4ea79" "/opt/rustwide/cargo-home/bin/cargo" "+beta-2025-09-21" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] 744b2297293054d7ea6fb438af9a7cf7f9cc7d098cb023d50bcb548eaf28e462
[INFO] running `Command { std: "docker" "start" "-a" "744b2297293054d7ea6fb438af9a7cf7f9cc7d098cb023d50bcb548eaf28e462", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "744b2297293054d7ea6fb438af9a7cf7f9cc7d098cb023d50bcb548eaf28e462", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "744b2297293054d7ea6fb438af9a7cf7f9cc7d098cb023d50bcb548eaf28e462", kill_on_drop: false }`
[INFO] [stdout] 744b2297293054d7ea6fb438af9a7cf7f9cc7d098cb023d50bcb548eaf28e462
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=warn" "-e" "RUSTDOCFLAGS=--cap-lints=warn" "-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" "+beta-2025-09-21" "build" "--frozen" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 221f0951ef0587d31ae1c4de165381af44259c02d97cac58c011b0a54bda2472
[INFO] running `Command { std: "docker" "start" "-a" "221f0951ef0587d31ae1c4de165381af44259c02d97cac58c011b0a54bda2472", kill_on_drop: false }`
[INFO] [stderr]    Compiling quote v1.0.37
[INFO] [stderr]    Compiling serde v1.0.217
[INFO] [stderr]    Compiling allocator-api2 v0.2.21
[INFO] [stderr]    Compiling foldhash v0.1.4
[INFO] [stderr]    Compiling cc v1.2.5
[INFO] [stderr]    Compiling mio v1.0.3
[INFO] [stderr]    Compiling log v0.4.22
[INFO] [stderr]    Compiling bitflags v2.6.0
[INFO] [stderr]    Compiling serde_json v1.0.135
[INFO] [stderr]    Compiling syn v2.0.91
[INFO] [stderr]    Compiling hashbrown v0.15.2
[INFO] [stderr]    Compiling anyhow v1.0.94
[INFO] [stderr]    Compiling rustix v0.38.42
[INFO] [stderr]    Compiling thiserror v2.0.9
[INFO] [stderr]    Compiling fastrand v2.3.0
[INFO] [stderr]    Compiling num-traits v0.2.19
[INFO] [stderr]    Compiling linux-raw-sys v0.4.14
[INFO] [stderr]    Compiling iana-time-zone v0.1.61
[INFO] [stderr]    Compiling prettyplease v0.2.25
[INFO] [stderr]    Compiling rustversion v1.0.18
[INFO] [stderr]    Compiling spin v0.9.8
[INFO] [stderr]    Compiling multimap v0.10.0
[INFO] [stderr]    Compiling sync_wrapper v1.0.2
[INFO] [stderr]    Compiling winnow v0.6.20
[INFO] [stderr]    Compiling cmake v0.1.52
[INFO] [stderr]    Compiling rustls-pki-types v1.10.1
[INFO] [stderr]    Compiling concurrent-queue v2.5.0
[INFO] [stderr]    Compiling aws-lc-rs v1.12.0
[INFO] [stderr]    Compiling parking v2.2.1
[INFO] [stderr]    Compiling byteorder v1.5.0
[INFO] [stderr]    Compiling openssl v0.10.68
[INFO] [stderr]    Compiling event-listener v5.3.1
[INFO] [stderr]    Compiling tinyvec v1.8.1
[INFO] [stderr]    Compiling hashlink v0.10.0
[INFO] [stderr]    Compiling crossbeam-queue v0.3.12
[INFO] [stderr]    Compiling openssl-sys v0.9.104
[INFO] [stderr]    Compiling aws-lc-sys v0.24.0
[INFO] [stderr]    Compiling ring v0.17.8
[INFO] [stderr]    Compiling sha1 v0.10.6
[INFO] [stderr]    Compiling futures-sink v0.3.31
[INFO] [stderr]    Compiling unicode-normalization v0.1.24
[INFO] [stderr]    Compiling zstd-sys v2.0.13+zstd.1.5.6
[INFO] [stderr]    Compiling form_urlencoded v1.2.1
[INFO] [stderr]    Compiling tempfile v3.14.0
[INFO] [stderr]    Compiling tracing-core v0.1.33
[INFO] [stderr]    Compiling unicode-bidi v0.3.18
[INFO] [stderr]    Compiling unicode-properties v0.1.3
[INFO] [stderr]    Compiling hkdf v0.12.4
[INFO] [stderr]    Compiling stringprep v0.1.5
[INFO] [stderr]    Compiling futures-util v0.3.31
[INFO] [stderr]    Compiling chrono v0.4.39
[INFO] [stderr]    Compiling rustls-pemfile v2.2.0
[INFO] [stderr]    Compiling sha2 v0.10.8
[INFO] [stderr]    Compiling synstructure v0.13.1
[INFO] [stderr]    Compiling md-5 v0.10.6
[INFO] [stderr]    Compiling home v0.5.11
[INFO] [stderr]    Compiling whoami v1.5.2
[INFO] [stderr]    Compiling ucd-trie v0.1.7
[INFO] [stderr]    Compiling rustls v0.23.20
[INFO] [stderr]    Compiling futures-channel v0.3.31
[INFO] [stderr]    Compiling atoi v2.0.0
[INFO] [stderr]    Compiling matchit v0.7.3
[INFO] [stderr]    Compiling base64 v0.22.1
[INFO] [stderr]    Compiling darling_core v0.20.10
[INFO] [stderr]    Compiling native-tls v0.2.12
[INFO] [stderr]    Compiling num-integer v0.1.46
[INFO] [stderr]    Compiling serde_derive v1.0.217
[INFO] [stderr]    Compiling tokio-macros v2.4.0
[INFO] [stderr]    Compiling zerofrom-derive v0.1.5
[INFO] [stderr]    Compiling yoke-derive v0.7.5
[INFO] [stderr]    Compiling zerocopy-derive v0.7.35
[INFO] [stderr]    Compiling futures-macro v0.3.31
[INFO] [stderr]    Compiling zerofrom v0.1.5
[INFO] [stderr]    Compiling tracing-attributes v0.1.28
[INFO] [stderr]    Compiling zerovec-derive v0.10.3
[INFO] [stderr]    Compiling yoke v0.7.5
[INFO] [stderr]    Compiling displaydoc v0.2.5
[INFO] [stderr]    Compiling icu_provider_macros v1.5.0
[INFO] [stderr]    Compiling zerovec v0.10.4
[INFO] [stderr]    Compiling zerocopy v0.7.35
[INFO] [stderr]    Compiling tracing v0.1.41
[INFO] [stderr]    Compiling thiserror-impl v2.0.9
[INFO] [stderr]    Compiling thiserror-impl v1.0.69
[INFO] [stderr]    Compiling ppv-lite86 v0.2.20
[INFO] [stderr]    Compiling tinystr v0.7.6
[INFO] [stderr]    Compiling icu_locid v1.5.0
[INFO] [stderr]    Compiling icu_collections v1.5.0
[INFO] [stderr]    Compiling rand_chacha v0.3.1
[INFO] [stderr]    Compiling thiserror v1.0.69
[INFO] [stderr]    Compiling async-trait v0.1.83
[INFO] [stderr]    Compiling icu_provider v1.5.0
[INFO] [stderr]    Compiling rand v0.8.5
[INFO] [stderr]    Compiling openssl-macros v0.1.1
[INFO] [stderr]    Compiling icu_locid_transform v1.5.0
[INFO] [stderr]    Compiling pest v2.7.15
[INFO] [stderr]    Compiling async-stream-impl v0.3.6
[INFO] [stderr]    Compiling icu_properties v1.5.1
[INFO] [stderr]    Compiling bytes v1.9.0
[INFO] [stderr]    Compiling indexmap v2.7.0
[INFO] [stderr]    Compiling either v1.13.0
[INFO] [stderr]    Compiling tokio v1.42.0
[INFO] [stderr]    Compiling smallvec v1.13.2
[INFO] [stderr]    Compiling http v1.2.0
[INFO] [stderr]    Compiling itertools v0.13.0
[INFO] [stderr]    Compiling http-body v1.0.1
[INFO] [stderr]    Compiling icu_normalizer v1.5.0
[INFO] [stderr]    Compiling http-body-util v0.1.2
[INFO] [stderr]    Compiling prost-derive v0.13.4
[INFO] [stderr]    Compiling petgraph v0.6.5
[INFO] [stderr]    Compiling idna_adapter v1.2.0
[INFO] [stderr]    Compiling idna v1.0.3
[INFO] [stderr]    Compiling url v2.5.4
[INFO] [stderr]    Compiling prost v0.13.4
[INFO] [stderr]    Compiling serde_urlencoded v0.7.1
[INFO] [stderr]    Compiling parking_lot_core v0.9.10
[INFO] [stderr]    Compiling prost-types v0.13.4
[INFO] [stderr]    Compiling parking_lot v0.12.3
[INFO] [stderr]    Compiling futures-intrusive v0.5.0
[INFO] [stderr]    Compiling tungstenite v0.24.0
[INFO] [stderr]    Compiling prost-build v0.13.4
[INFO] [stderr]    Compiling tokio-util v0.7.13
[INFO] [stderr]    Compiling tonic-build v0.12.3
[INFO] [stderr]    Compiling tower v0.5.2
[INFO] [stderr]    Compiling tokio-stream v0.1.17
[INFO] [stderr]    Compiling h2 v0.4.7
[INFO] [stderr]    Compiling tokio-tungstenite v0.24.0
[INFO] [stderr]    Compiling axum-core v0.4.5
[INFO] [stderr]    Compiling serde_path_to_error v0.1.16
[INFO] [stderr]    Compiling toml_datetime v0.6.8
[INFO] [stderr]    Compiling serde_spanned v0.6.8
[INFO] [stderr]    Compiling pin-project-internal v1.1.7
[INFO] [stderr]    Compiling toml_edit v0.22.22
[INFO] [stderr]    Compiling zstd-safe v7.2.1
[INFO] [stderr]    Compiling async-stream v0.3.6
[INFO] [stderr]    Compiling pin-project v1.1.7
[INFO] [stderr]    Compiling tower v0.4.13
[INFO] [stderr]    Compiling sqlx-core v0.8.3
[INFO] [stderr]    Compiling toml v0.8.19
[INFO] [stderr]    Compiling zstd v0.13.2
[INFO] [stderr]    Compiling pest_meta v2.7.15
[INFO] [stderr]    Compiling multer v3.1.0
[INFO] [stderr]    Compiling regex-syntax v0.6.29
[INFO] [stderr]    Compiling hyper v1.5.2
[INFO] [stderr]    Compiling sqlx-postgres v0.8.3
[INFO] [stderr]    Compiling hyper-util v0.1.10
[INFO] [stderr]    Compiling snap v1.1.1
[INFO] [stderr]    Compiling miniz_oxide v0.8.2
[INFO] [stderr]    Compiling regex-automata v0.1.10
[INFO] [stderr]    Compiling axum v0.7.9
[INFO] [stderr]    Compiling hyper-timeout v0.5.2
[INFO] [stderr]    Compiling pest_generator v2.7.15
[INFO] [stderr]    Compiling async-graphql-value v7.0.13
[INFO] [stderr]    Compiling darling_macro v0.20.10
[INFO] [stderr]    Compiling num-bigint v0.4.6
[INFO] [stderr]    Compiling strum_macros v0.26.4
[INFO] [stderr]    Compiling kafka v0.10.0
[INFO] [stderr]    Compiling twox-hash v1.6.3
[INFO] [stderr]    Compiling flate2 v1.0.35
[INFO] [stderr]    Compiling darling v0.20.10
[INFO] [stderr]    Compiling pest_derive v2.7.15
[INFO] [stderr]    Compiling proc-macro-crate v3.2.0
[INFO] [stderr]    Compiling async-graphql-parser v7.0.13
[INFO] [stderr]    Compiling strum v0.26.3
[INFO] [stderr]    Compiling matchers v0.1.0
[INFO] [stderr]    Compiling Inflector v0.11.4
[INFO] [stderr]    Compiling psm v0.1.24
[INFO] [stderr]    Compiling tracing-log v0.2.0
[INFO] [stderr]    Compiling sqlx-macros-core v0.8.3
[INFO] [stderr]    Compiling ahash v0.8.11
[INFO] [stderr]    Compiling ref_slice v1.2.1
[INFO] [stderr]    Compiling arc-swap v1.7.1
[INFO] [stderr]    Compiling ascii_utils v0.9.3
[INFO] [stderr]    Compiling fast_chemail v0.9.6
[INFO] [stderr]    Compiling tracing-subscriber v0.3.19
[INFO] [stderr]    Compiling handlebars v5.1.2
[INFO] [stderr]    Compiling sqlx-macros v0.8.3
[INFO] [stderr]    Compiling async-graphql-derive v7.0.13
[INFO] [stderr]    Compiling combine v4.6.7
[INFO] [stderr]    Compiling deadpool-runtime v0.1.4
[INFO] [stderr]    Compiling sqlx v0.8.3
[INFO] [stderr]    Compiling stacker v0.1.17
[INFO] [stderr]    Compiling lru v0.12.5
[INFO] [stderr]    Compiling futures-timer v3.0.3
[INFO] [stderr]    Compiling static_assertions_next v1.1.2
[INFO] [stderr]    Compiling sha1_smol v1.0.1
[INFO] [stderr]    Compiling deadpool v0.12.1
[INFO] [stderr]    Compiling tokio-native-tls v0.3.1
[INFO] [stderr]    Compiling hashbrown v0.14.5
[INFO] [stderr]    Compiling unicase v2.8.0
[INFO] [stderr]    Compiling base64ct v1.6.0
[INFO] [stderr]    Compiling mime_guess v2.0.5
[INFO] [stderr]    Compiling hyper-tls v0.6.0
[INFO] [stderr]    Compiling password-hash v0.5.0
[INFO] [stderr]    Compiling nom v7.1.3
[INFO] [stderr]    Compiling interactive v0.1.0 (/opt/rustwide/workdir/interactive)
[INFO] [stderr]    Compiling chumsky v0.9.3
[INFO] [stderr]    Compiling comment v0.1.0 (/opt/rustwide/workdir/comment)
[INFO] [stderr]    Compiling user v0.1.0 (/opt/rustwide/workdir/user)
[INFO] [stderr]    Compiling note v0.1.0 (/opt/rustwide/workdir/note)
[INFO] [stderr]    Compiling derive_more-impl v2.0.1
[INFO] [stderr]    Compiling email-encoding v0.3.1
[INFO] [stderr]    Compiling blake2 v0.10.6
[INFO] [stderr]    Compiling hostname v0.4.0
[INFO] [stderr]    Compiling email_address v0.2.9
[INFO] [stderr]    Compiling quoted_printable v0.5.1
[INFO] [stderr]    Compiling reqwest v0.12.12
[INFO] [stderr]    Compiling argon2 v0.5.3
[INFO] [stderr]    Compiling lettre v0.11.11
[INFO] [stderr]    Compiling headers-core v0.3.0
[INFO] [stderr]    Compiling simple_asn1 v0.6.2
[INFO] [stderr]    Compiling headers v0.4.0
[INFO] [stderr]    Compiling derive_more v2.0.1
[INFO] [stderr]    Compiling futures-executor v0.3.31
[INFO] [stderr]    Compiling pem v3.0.4
[INFO] [stderr]    Compiling uuid v1.11.0
[INFO] [stderr]    Compiling http-range-header v0.4.2
[INFO] [stderr]    Compiling jsonwebtoken v9.3.0
[INFO] [stderr]    Compiling futures v0.3.31
[INFO] [stderr]    Compiling axum-extra v0.9.6
[INFO] [stderr]    Compiling tower-http v0.6.2
[INFO] [stderr]    Compiling redis v0.27.6
[INFO] [stderr]    Compiling async-graphql v7.0.13
[INFO] [stderr]    Compiling rustls-webpki v0.102.8
[INFO] [stderr]    Compiling async-graphql-axum v7.0.13
[INFO] [stderr]    Compiling deadpool-redis v0.18.0
[INFO] [stderr]    Compiling im v0.1.0 (/opt/rustwide/workdir/im)
[INFO] [stdout] warning: unused import: `std::time::Instant`
[INFO] [stdout]  --> im/src/consumer/user_register_consumer.rs:5:5
[INFO] [stdout]   |
[INFO] [stdout] 5 | use std::time::Instant;
[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: `debug`
[INFO] [stdout]  --> im/src/consumer/user_register_consumer.rs:6:15
[INFO] [stdout]   |
[INFO] [stdout] 6 | use tracing::{debug, error};
[INFO] [stdout]   |               ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::consumer::user_register_consumer::UserRegisterMessage`
[INFO] [stdout]  --> im/src/consumer/user_update_consumer.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use crate::consumer::user_register_consumer::UserRegisterMessage;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: this function depends on never type fallback being `()`
[INFO] [stdout]    --> im/src/repository/mod.rs:142:5
[INFO] [stdout]     |
[INFO] [stdout] 142 |     async fn get_token(&self) -> Result<String> {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in Rust 2024 and in a future release in all editions!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/never-type-fallback.html>
[INFO] [stdout]     = help: specify the types explicitly
[INFO] [stdout] note: in edition 2024, the requirement `!: FromRedisValue` will fail
[INFO] [stdout]    --> im/src/repository/mod.rs:167:22
[INFO] [stdout]     |
[INFO] [stdout] 167 |                 conn.set_ex("im:admin::token", data.token, data.expire_time_seconds)
[INFO] [stdout]     |                      ^^^^^^
[INFO] [stdout]     = note: `#[warn(dependency_on_unit_never_type_fallback)]` (part of `#[warn(rust_2024_compatibility)]`) on by default
[INFO] [stdout] help: use `()` annotations to avoid fallback changes
[INFO] [stdout]     |
[INFO] [stdout] 167 |                 conn.set_ex::<_, _, ()>("im:admin::token", data.token, data.expire_time_seconds)
[INFO] [stdout]     |                            ++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `user_id` is never read
[INFO] [stdout]    --> im/src/repository/mod.rs:191:5
[INFO] [stdout]     |
[INFO] [stdout] 189 | struct CheckUserDataItem {
[INFO] [stdout]     |        ----------------- field in this struct
[INFO] [stdout] 190 |     #[serde(rename = "userID")]
[INFO] [stdout] 191 |     user_id: String,
[INFO] [stdout]     |     ^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `CheckUserDataItem` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout]     = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `err_dlt` is never read
[INFO] [stdout]    --> im/src/repository/mod.rs:203:5
[INFO] [stdout]     |
[INFO] [stdout] 197 | struct IMResponse<T> {
[INFO] [stdout]     |        ---------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 203 |     err_dlt: String,
[INFO] [stdout]     |     ^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `IMResponse` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `userInfo` should have a snake case name
[INFO] [stdout]   --> im/src/repository/mod.rs:58:17
[INFO] [stdout]    |
[INFO] [stdout] 58 |         let mut userInfo = HashMap::new();
[INFO] [stdout]    |                 ^^^^^^^^ help: convert the identifier to snake case: `user_info`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(non_snake_case)]` (part of `#[warn(nonstandard_style)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]    Compiling tokio-rustls v0.26.1
[INFO] [stderr]    Compiling tonic v0.12.3
[INFO] [stderr]    Compiling axum-server v0.7.1
[INFO] [stdout] warning: unused import: `UserUpdateMessage`
[INFO] [stdout]  --> im/src/main.rs:6:62
[INFO] [stdout]   |
[INFO] [stdout] 6 | use im::consumer::user_update_consumer::{UserUpdateConsumer, UserUpdateMessage};
[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: `IntoRequest`
[INFO] [stdout]   --> interactive/src/lib.rs:12:26
[INFO] [stdout]    |
[INFO] [stdout] 12 | use tonic::{async_trait, IntoRequest, Request, Response, Status};
[INFO] [stdout]    |                          ^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `NoteLikeMessage`, `NoteReadMessage`, and `UserHistoryBiz`
[INFO] [stdout]  --> interactive/src/consumer/comment_like_consumer.rs:2:35
[INFO] [stdout]   |
[INFO] [stdout] 2 |     CommentLikeMessage, CountBiz, NoteLikeMessage, NoteReadMessage, UserHistoryBiz,
[INFO] [stdout]   |                                   ^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Deserialize` and `Serialize`
[INFO] [stdout]  --> interactive/src/consumer/comment_like_consumer.rs:7:13
[INFO] [stdout]   |
[INFO] [stdout] 7 | use serde::{Deserialize, Serialize};
[INFO] [stdout]   |             ^^^^^^^^^^^  ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::time::Instant`
[INFO] [stdout]  --> interactive/src/consumer/comment_like_consumer.rs:8:5
[INFO] [stdout]   |
[INFO] [stdout] 8 | use std::time::Instant;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `debug`
[INFO] [stdout]  --> interactive/src/consumer/comment_like_consumer.rs:9:15
[INFO] [stdout]   |
[INFO] [stdout] 9 | use tracing::{debug, error};
[INFO] [stdout]   |               ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `NoteLikeMessage`, `NoteReadMessage`, and `UserHistoryBiz`
[INFO] [stdout]  --> interactive/src/consumer/note_collect_consumer.rs:2:35
[INFO] [stdout]   |
[INFO] [stdout] 2 |     CountBiz, NoteCollectMessage, NoteLikeMessage, NoteReadMessage, UserHistoryBiz,
[INFO] [stdout]   |                                   ^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Deserialize` and `Serialize`
[INFO] [stdout]  --> interactive/src/consumer/note_collect_consumer.rs:7:13
[INFO] [stdout]   |
[INFO] [stdout] 7 | use serde::{Deserialize, Serialize};
[INFO] [stdout]   |             ^^^^^^^^^^^  ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::time::Instant`
[INFO] [stdout]  --> interactive/src/consumer/note_collect_consumer.rs:8:5
[INFO] [stdout]   |
[INFO] [stdout] 8 | use std::time::Instant;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `debug`
[INFO] [stdout]  --> interactive/src/consumer/note_collect_consumer.rs:9:15
[INFO] [stdout]   |
[INFO] [stdout] 9 | use tracing::{debug, error};
[INFO] [stdout]   |               ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `NoteReadMessage` and `UserHistoryBiz`
[INFO] [stdout]  --> interactive/src/consumer/note_comment_consumer.rs:1:50
[INFO] [stdout]   |
[INFO] [stdout] 1 | use crate::model::{CountBiz, NoteCommentMessage, NoteReadMessage, UserHistoryBiz};
[INFO] [stdout]   |                                                  ^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Deserialize` and `Serialize`
[INFO] [stdout]  --> interactive/src/consumer/note_comment_consumer.rs:5:13
[INFO] [stdout]   |
[INFO] [stdout] 5 | use serde::{Deserialize, Serialize};
[INFO] [stdout]   |             ^^^^^^^^^^^  ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::time::Instant`
[INFO] [stdout]  --> interactive/src/consumer/note_comment_consumer.rs:6:5
[INFO] [stdout]   |
[INFO] [stdout] 6 | use std::time::Instant;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `debug`
[INFO] [stdout]  --> interactive/src/consumer/note_comment_consumer.rs:7:15
[INFO] [stdout]   |
[INFO] [stdout] 7 | use tracing::{debug, error};
[INFO] [stdout]   |               ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `NoteReadMessage` and `UserHistoryBiz`
[INFO] [stdout]  --> interactive/src/consumer/note_like_consumer.rs:1:47
[INFO] [stdout]   |
[INFO] [stdout] 1 | use crate::model::{CountBiz, NoteLikeMessage, NoteReadMessage, UserHistoryBiz};
[INFO] [stdout]   |                                               ^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Deserialize` and `Serialize`
[INFO] [stdout]  --> interactive/src/consumer/note_like_consumer.rs:5:13
[INFO] [stdout]   |
[INFO] [stdout] 5 | use serde::{Deserialize, Serialize};
[INFO] [stdout]   |             ^^^^^^^^^^^  ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::time::Instant`
[INFO] [stdout]  --> interactive/src/consumer/note_like_consumer.rs:6:5
[INFO] [stdout]   |
[INFO] [stdout] 6 | use std::time::Instant;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `debug`
[INFO] [stdout]  --> interactive/src/consumer/note_like_consumer.rs:7:15
[INFO] [stdout]   |
[INFO] [stdout] 7 | use tracing::{debug, error};
[INFO] [stdout]   |               ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Deserialize` and `Serialize`
[INFO] [stdout]  --> interactive/src/consumer/note_read_consumer.rs:5:13
[INFO] [stdout]   |
[INFO] [stdout] 5 | use serde::{Deserialize, Serialize};
[INFO] [stdout]   |             ^^^^^^^^^^^  ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::time::Instant`
[INFO] [stdout]  --> interactive/src/consumer/note_read_consumer.rs:6:5
[INFO] [stdout]   |
[INFO] [stdout] 6 | use std::time::Instant;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `debug`
[INFO] [stdout]  --> interactive/src/consumer/note_read_consumer.rs:7:15
[INFO] [stdout]   |
[INFO] [stdout] 7 | use tracing::{debug, error};
[INFO] [stdout]   |               ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Database`
[INFO] [stdout]  --> interactive/src/repository/mod.rs:5:12
[INFO] [stdout]   |
[INFO] [stdout] 5 | use sqlx::{Database, PgPool, Row};
[INFO] [stdout]   |            ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::hash::Hash`
[INFO] [stdout]  --> interactive/src/repository/mod.rs:7:5
[INFO] [stdout]   |
[INFO] [stdout] 7 | use std::hash::Hash;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `req`
[INFO] [stdout]    --> comment/src/abi/mod.rs:127:9
[INFO] [stdout]     |
[INFO] [stdout] 127 |         req: comment::BatchGetNoteCommentsCountRequest,
[INFO] [stdout]     |         ^^^ help: if this is intentional, prefix it with an underscore: `_req`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> interactive/src/abi/mod.rs:242:13
[INFO] [stdout]     |
[INFO] [stdout] 242 |         let mut ret = self
[INFO] [stdout]     |             ----^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             help: remove this `mut`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unreachable pattern
[INFO] [stdout]   --> user/src/repository/mod.rs:91:13
[INFO] [stdout]    |
[INFO] [stdout] 91 |             _ => Err(UserServiceError::InternalServerError("Unknown".to_string())),
[INFO] [stdout]    |             ^ no value can reach this
[INFO] [stdout]    |
[INFO] [stdout] note: multiple earlier patterns match some of the same values
[INFO] [stdout]   --> user/src/repository/mod.rs:91:13
[INFO] [stdout]    |
[INFO] [stdout] 79 |             Ok(0) => {
[INFO] [stdout]    |             ----- matches some of the same values
[INFO] [stdout] ...
[INFO] [stdout] 84 |             Ok(-1) => Err(UserServiceError::TooFrequently(
[INFO] [stdout]    |             ------ matches some of the same values
[INFO] [stdout] ...
[INFO] [stdout] 88 |             Ok(-2) | _ => Err(UserServiceError::InternalServerError(
[INFO] [stdout]    |             ---------- matches some of the same values
[INFO] [stdout] ...
[INFO] [stdout] 91 |             _ => Err(UserServiceError::InternalServerError("Unknown".to_string())),
[INFO] [stdout]    |             ^ collectively making this unreachable
[INFO] [stdout]    = note: `#[warn(unreachable_patterns)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: irrefutable `if let` pattern
[INFO] [stdout]    --> user/src/repository/mod.rs:279:24
[INFO] [stdout]     |
[INFO] [stdout] 279 |                       if let code = db_err
[INFO] [stdout]     |  ________________________^
[INFO] [stdout] 280 | |                         .code()
[INFO] [stdout] 281 | |                         .ok_or(UserServiceError::InternalServerError("".to_string()))?
[INFO] [stdout]     | |______________________________________________________________________________________^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this pattern will always match, so the `if let` is useless
[INFO] [stdout]     = help: consider replacing the `if let` with a `let`
[INFO] [stdout]     = note: `#[warn(irrefutable_let_patterns)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: this function depends on never type fallback being `()`
[INFO] [stdout]    --> user/src/repository/mod.rs:304:5
[INFO] [stdout]     |
[INFO] [stdout] 304 |     async fn gen_serial_no(&self) -> Result<String, UserServiceError> {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in Rust 2024 and in a future release in all editions!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/never-type-fallback.html>
[INFO] [stdout]     = help: specify the types explicitly
[INFO] [stdout] note: in edition 2024, the requirement `!: FromRedisValue` will fail
[INFO] [stdout]    --> user/src/repository/mod.rs:316:17
[INFO] [stdout]     |
[INFO] [stdout] 316 |             rdb.expire_at(&rkey, expire_at).await?;
[INFO] [stdout]     |                 ^^^^^^^^^
[INFO] [stdout]     = note: `#[warn(dependency_on_unit_never_type_fallback)]` (part of `#[warn(rust_2024_compatibility)]`) on by default
[INFO] [stdout] help: use `()` annotations to avoid fallback changes
[INFO] [stdout]     |
[INFO] [stdout] 316 |             rdb.expire_at::<_, ()>(&rkey, expire_at).await?;
[INFO] [stdout]     |                          +++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `e`
[INFO] [stdout]    --> interactive/src/repository/mod.rs:178:17
[INFO] [stdout]     |
[INFO] [stdout] 178 |             Err(e) => Ok(0),
[INFO] [stdout]     |                 ^ help: if this is intentional, prefix it with an underscore: `_e`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::pb::user::user_service_server::UserService`
[INFO] [stdout]  --> user/src/abi/mod.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use crate::pb::user::user_service_server::UserService;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `error_code` is never read
[INFO] [stdout]   --> user/src/error.rs:35:17
[INFO] [stdout]    |
[INFO] [stdout] 35 |         let mut error_code = 0;
[INFO] [stdout]    |                 ^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = help: maybe it is overwritten before being read?
[INFO] [stdout]    = note: `#[warn(unused_assignments)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `biz` is never read
[INFO] [stdout]  --> note/src/repository/mod.rs:6:5
[INFO] [stdout]   |
[INFO] [stdout] 5 | pub struct NoteRepo {
[INFO] [stdout]   |            -------- field in this struct
[INFO] [stdout] 6 |     biz: String,
[INFO] [stdout]   |     ^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `request`
[INFO] [stdout]   --> comment/src/lib.rs:53:9
[INFO] [stdout]    |
[INFO] [stdout] 53 |         request: Request<DeleteCommentRequest>,
[INFO] [stdout]    |         ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_request`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `request`
[INFO] [stdout]   --> comment/src/lib.rs:82:9
[INFO] [stdout]    |
[INFO] [stdout] 82 |         request: Request<GetMoreCommentsRequest>,
[INFO] [stdout]    |         ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_request`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `biz` is never read
[INFO] [stdout]   --> comment/src/repository/mod.rs:22:5
[INFO] [stdout]    |
[INFO] [stdout] 21 | pub struct CommentRepoInner {
[INFO] [stdout]    |            ---------------- field in this struct
[INFO] [stdout] 22 |     biz: String,
[INFO] [stdout]    |     ^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `send_email_code` is never used
[INFO] [stdout]    --> user/src/repository/mod.rs:434:10
[INFO] [stdout]     |
[INFO] [stdout] 434 | async fn send_email_code(email: &str, code: &str) -> Result<()> {
[INFO] [stdout]     |          ^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `biz` is never read
[INFO] [stdout]   --> interactive/src/repository/mod.rs:25:5
[INFO] [stdout]    |
[INFO] [stdout] 24 | pub struct InteractiveRepoInner {
[INFO] [stdout]    |            -------------------- field in this struct
[INFO] [stdout] 25 |     biz: String,
[INFO] [stdout]    |     ^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]    Compiling bff v0.1.0 (/opt/rustwide/workdir/bff)
[INFO] [stdout] warning: struct `Comment` is never constructed
[INFO] [stdout]   --> comment/src/model/mod.rs:30:12
[INFO] [stdout]    |
[INFO] [stdout] 30 | pub struct Comment {
[INFO] [stdout]    |            ^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `async_graphql::extensions::ExtensionFactory`
[INFO] [stdout]   --> bff/src/lib.rs:25:5
[INFO] [stdout]    |
[INFO] [stdout] 25 | use async_graphql::extensions::ExtensionFactory;
[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: `async_graphql::dataloader::Loader`
[INFO] [stdout]  --> bff/src/model/note.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use async_graphql::dataloader::Loader;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Deserialize` and `Serialize`
[INFO] [stdout]  --> bff/src/query/note.rs:5:13
[INFO] [stdout]   |
[INFO] [stdout] 5 | use serde::{Deserialize, Serialize};
[INFO] [stdout]   |             ^^^^^^^^^^^  ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `debug`
[INFO] [stdout]  --> bff/src/query/note.rs:6:15
[INFO] [stdout]   |
[INFO] [stdout] 6 | use tracing::{debug, error};
[INFO] [stdout]   |               ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `interactive::consumer::comment_like_consumer::CommentLikeConsumer`
[INFO] [stdout]  --> interactive/src/main.rs:3:5
[INFO] [stdout]   |
[INFO] [stdout] 3 | use interactive::consumer::comment_like_consumer::CommentLikeConsumer;
[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: `interactive::consumer::note_collect_consumer::NoteCollectConsumer`
[INFO] [stdout]  --> interactive/src/main.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | use interactive::consumer::note_collect_consumer::NoteCollectConsumer;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `interactive::consumer::note_comment_consumer::NoteCommentConsumer`
[INFO] [stdout]  --> interactive/src/main.rs:5:5
[INFO] [stdout]   |
[INFO] [stdout] 5 | use interactive::consumer::note_comment_consumer::NoteCommentConsumer;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `interactive::consumer::note_like_consumer::NoteLikeConsumer`
[INFO] [stdout]  --> interactive/src/main.rs:6:5
[INFO] [stdout]   |
[INFO] [stdout] 6 | use interactive::consumer::note_like_consumer::NoteLikeConsumer;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `db`
[INFO] [stdout]    --> bff/src/lib.rs:254:13
[INFO] [stdout]     |
[INFO] [stdout] 254 |         let db = PgPool::connect(app_config.server.postgres_url.as_str())
[INFO] [stdout]     |             ^^ help: if this is intentional, prefix it with an underscore: `_db`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `db_read`
[INFO] [stdout]    --> bff/src/lib.rs:258:13
[INFO] [stdout]     |
[INFO] [stdout] 258 |         let db_read = PgPool::connect(app_config.server.postgres_url_read.as_str())
[INFO] [stdout]     |             ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_db_read`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `rdb`
[INFO] [stdout]    --> bff/src/lib.rs:264:13
[INFO] [stdout]     |
[INFO] [stdout] 264 |         let rdb = redis_cfg
[INFO] [stdout]     |             ^^^ help: if this is intentional, prefix it with an underscore: `_rdb`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `shutdown_signal` is never used
[INFO] [stdout]    --> bff/src/lib.rs:208:10
[INFO] [stdout]     |
[INFO] [stdout] 208 | async fn shutdown_signal() {
[INFO] [stdout]     |          ^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `MakeRequestUuidV7` is never constructed
[INFO] [stdout]    --> bff/src/lib.rs:233:8
[INFO] [stdout]     |
[INFO] [stdout] 233 | struct MakeRequestUuidV7;
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `app_config` is never read
[INFO] [stdout]    --> bff/src/lib.rs:315:16
[INFO] [stdout]     |
[INFO] [stdout] 312 | pub struct AppStateInner {
[INFO] [stdout]     |            ------------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 315 |     pub(crate) app_config: AppConfig,
[INFO] [stdout]     |                ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variants `DuplicateKey`, `ValidationError`, `NotFound`, and `InternalServerError` are never constructed
[INFO] [stdout]   --> bff/src/app_error.rs:24:5
[INFO] [stdout]    |
[INFO] [stdout]  4 | pub(crate) enum AppError {
[INFO] [stdout]    |                 -------- variants in this enum
[INFO] [stdout] ...
[INFO] [stdout] 24 |     DuplicateKey(String),
[INFO] [stdout]    |     ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 27 |     ValidationError(String),
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 30 |     NotFound(String),
[INFO] [stdout]    |     ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 36 |     InternalServerError,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `AppError` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Counter` is never constructed
[INFO] [stdout]   --> bff/src/model/interactive.rs:20:12
[INFO] [stdout]    |
[INFO] [stdout] 20 | pub struct Counter {
[INFO] [stdout]    |            ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `PublishedNote` is never constructed
[INFO] [stdout]   --> bff/src/model/note.rs:30:12
[INFO] [stdout]    |
[INFO] [stdout] 30 | pub struct PublishedNote {
[INFO] [stdout]    |            ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `User` is never constructed
[INFO] [stdout]  --> bff/src/model/user.rs:9:12
[INFO] [stdout]   |
[INFO] [stdout] 9 | pub struct User {
[INFO] [stdout]   |            ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `batch_get_note_comments_count` is never used
[INFO] [stdout]   --> bff/src/service/comment.rs:78:18
[INFO] [stdout]    |
[INFO] [stdout] 31 | impl CommentSrv {
[INFO] [stdout]    | --------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 78 |     pub async fn batch_get_note_comments_count(
[INFO] [stdout]    |                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `get_count` is never used
[INFO] [stdout]    --> bff/src/service/interactive.rs:177:18
[INFO] [stdout]     |
[INFO] [stdout]  30 | impl InteractiveSrv {
[INFO] [stdout]     | ------------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 177 |     pub async fn get_count(&self, biz: CountBiz, biz_id: i64) -> Result<i64> {
[INFO] [stdout]     |                  ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 7m 26s
[INFO] [stderr] warning: the following packages contain code that will be rejected by a future version of Rust: im v0.1.0 (/opt/rustwide/workdir/im), user v0.1.0 (/opt/rustwide/workdir/user)
[INFO] [stderr] note: to see what the problems were, use the option `--future-incompat-report`, or run `cargo report future-incompatibilities --id 3`
[INFO] running `Command { std: "docker" "inspect" "221f0951ef0587d31ae1c4de165381af44259c02d97cac58c011b0a54bda2472", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "221f0951ef0587d31ae1c4de165381af44259c02d97cac58c011b0a54bda2472", kill_on_drop: false }`
[INFO] [stdout] 221f0951ef0587d31ae1c4de165381af44259c02d97cac58c011b0a54bda2472
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=warn" "-e" "RUSTDOCFLAGS=--cap-lints=warn" "-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" "+beta-2025-09-21" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 1f724b565c47cf8e60e00a6b2c5d1171dba2bcf6103bb0b1581802eef11e6f2a
[INFO] running `Command { std: "docker" "start" "-a" "1f724b565c47cf8e60e00a6b2c5d1171dba2bcf6103bb0b1581802eef11e6f2a", kill_on_drop: false }`
[INFO] [stdout] warning: field `biz` is never read
[INFO] [stdout]  --> note/src/repository/mod.rs:6:5
[INFO] [stdout]   |
[INFO] [stdout] 5 | pub struct NoteRepo {
[INFO] [stdout]   |            -------- field in this struct
[INFO] [stdout] 6 |     biz: String,
[INFO] [stdout]   |     ^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `req`
[INFO] [stdout]    --> comment/src/abi/mod.rs:127:9
[INFO] [stdout]     |
[INFO] [stdout] 127 |         req: comment::BatchGetNoteCommentsCountRequest,
[INFO] [stdout]     |         ^^^ help: if this is intentional, prefix it with an underscore: `_req`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `request`
[INFO] [stdout]   --> comment/src/lib.rs:53:9
[INFO] [stdout]    |
[INFO] [stdout] 53 |         request: Request<DeleteCommentRequest>,
[INFO] [stdout]    |         ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_request`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `request`
[INFO] [stdout]   --> comment/src/lib.rs:82:9
[INFO] [stdout]    |
[INFO] [stdout] 82 |         request: Request<GetMoreCommentsRequest>,
[INFO] [stdout]    |         ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_request`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `biz` is never read
[INFO] [stdout]   --> comment/src/repository/mod.rs:22:5
[INFO] [stdout]    |
[INFO] [stdout] 21 | pub struct CommentRepoInner {
[INFO] [stdout]    |            ---------------- field in this struct
[INFO] [stdout] 22 |     biz: String,
[INFO] [stdout]    |     ^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unreachable pattern
[INFO] [stdout]   --> user/src/repository/mod.rs:91:13
[INFO] [stdout]    |
[INFO] [stdout] 91 |             _ => Err(UserServiceError::InternalServerError("Unknown".to_string())),
[INFO] [stdout]    |             ^ no value can reach this
[INFO] [stdout]    |
[INFO] [stdout] note: multiple earlier patterns match some of the same values
[INFO] [stdout]   --> user/src/repository/mod.rs:91:13
[INFO] [stdout]    |
[INFO] [stdout] 79 |             Ok(0) => {
[INFO] [stdout]    |             ----- matches some of the same values
[INFO] [stdout] ...
[INFO] [stdout] 84 |             Ok(-1) => Err(UserServiceError::TooFrequently(
[INFO] [stdout]    |             ------ matches some of the same values
[INFO] [stdout] ...
[INFO] [stdout] 88 |             Ok(-2) | _ => Err(UserServiceError::InternalServerError(
[INFO] [stdout]    |             ---------- matches some of the same values
[INFO] [stdout] ...
[INFO] [stdout] 91 |             _ => Err(UserServiceError::InternalServerError("Unknown".to_string())),
[INFO] [stdout]    |             ^ collectively making this unreachable
[INFO] [stdout]    = note: `#[warn(unreachable_patterns)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: irrefutable `if let` pattern
[INFO] [stdout]    --> user/src/repository/mod.rs:279:24
[INFO] [stdout]     |
[INFO] [stdout] 279 |                       if let code = db_err
[INFO] [stdout]     |  ________________________^
[INFO] [stdout] 280 | |                         .code()
[INFO] [stdout] 281 | |                         .ok_or(UserServiceError::InternalServerError("".to_string()))?
[INFO] [stdout]     | |______________________________________________________________________________________^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this pattern will always match, so the `if let` is useless
[INFO] [stdout]     = help: consider replacing the `if let` with a `let`
[INFO] [stdout]     = note: `#[warn(irrefutable_let_patterns)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: this function depends on never type fallback being `()`
[INFO] [stdout]    --> user/src/repository/mod.rs:304:5
[INFO] [stdout]     |
[INFO] [stdout] 304 |     async fn gen_serial_no(&self) -> Result<String, UserServiceError> {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in Rust 2024 and in a future release in all editions!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/never-type-fallback.html>
[INFO] [stdout]     = help: specify the types explicitly
[INFO] [stdout] note: in edition 2024, the requirement `!: FromRedisValue` will fail
[INFO] [stdout]    --> user/src/repository/mod.rs:316:17
[INFO] [stdout]     |
[INFO] [stdout] 316 |             rdb.expire_at(&rkey, expire_at).await?;
[INFO] [stdout]     |                 ^^^^^^^^^
[INFO] [stdout]     = note: `#[warn(dependency_on_unit_never_type_fallback)]` (part of `#[warn(rust_2024_compatibility)]`) on by default
[INFO] [stdout] help: use `()` annotations to avoid fallback changes
[INFO] [stdout]     |
[INFO] [stdout] 316 |             rdb.expire_at::<_, ()>(&rkey, expire_at).await?;
[INFO] [stdout]     |                          +++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::pb::user::user_service_server::UserService`
[INFO] [stdout]  --> user/src/abi/mod.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use crate::pb::user::user_service_server::UserService;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `error_code` is never read
[INFO] [stdout]   --> user/src/error.rs:35:17
[INFO] [stdout]    |
[INFO] [stdout] 35 |         let mut error_code = 0;
[INFO] [stdout]    |                 ^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = help: maybe it is overwritten before being read?
[INFO] [stdout]    = note: `#[warn(unused_assignments)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `send_email_code` is never used
[INFO] [stdout]    --> user/src/repository/mod.rs:434:10
[INFO] [stdout]     |
[INFO] [stdout] 434 | async fn send_email_code(email: &str, code: &str) -> Result<()> {
[INFO] [stdout]     |          ^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `IntoRequest`
[INFO] [stdout]   --> interactive/src/lib.rs:12:26
[INFO] [stdout]    |
[INFO] [stdout] 12 | use tonic::{async_trait, IntoRequest, Request, Response, Status};
[INFO] [stdout]    |                          ^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `NoteLikeMessage`, `NoteReadMessage`, and `UserHistoryBiz`
[INFO] [stdout]  --> interactive/src/consumer/comment_like_consumer.rs:2:35
[INFO] [stdout]   |
[INFO] [stdout] 2 |     CommentLikeMessage, CountBiz, NoteLikeMessage, NoteReadMessage, UserHistoryBiz,
[INFO] [stdout]   |                                   ^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Deserialize` and `Serialize`
[INFO] [stdout]  --> interactive/src/consumer/comment_like_consumer.rs:7:13
[INFO] [stdout]   |
[INFO] [stdout] 7 | use serde::{Deserialize, Serialize};
[INFO] [stdout]   |             ^^^^^^^^^^^  ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::time::Instant`
[INFO] [stdout]  --> interactive/src/consumer/comment_like_consumer.rs:8:5
[INFO] [stdout]   |
[INFO] [stdout] 8 | use std::time::Instant;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `debug`
[INFO] [stdout]  --> interactive/src/consumer/comment_like_consumer.rs:9:15
[INFO] [stdout]   |
[INFO] [stdout] 9 | use tracing::{debug, error};
[INFO] [stdout]   |               ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `NoteLikeMessage`, `NoteReadMessage`, and `UserHistoryBiz`
[INFO] [stdout]  --> interactive/src/consumer/note_collect_consumer.rs:2:35
[INFO] [stdout]   |
[INFO] [stdout] 2 |     CountBiz, NoteCollectMessage, NoteLikeMessage, NoteReadMessage, UserHistoryBiz,
[INFO] [stdout]   |                                   ^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Deserialize` and `Serialize`
[INFO] [stdout]  --> interactive/src/consumer/note_collect_consumer.rs:7:13
[INFO] [stdout]   |
[INFO] [stdout] 7 | use serde::{Deserialize, Serialize};
[INFO] [stdout]   |             ^^^^^^^^^^^  ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::time::Instant`
[INFO] [stdout]  --> interactive/src/consumer/note_collect_consumer.rs:8:5
[INFO] [stdout]   |
[INFO] [stdout] 8 | use std::time::Instant;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `debug`
[INFO] [stdout]  --> interactive/src/consumer/note_collect_consumer.rs:9:15
[INFO] [stdout]   |
[INFO] [stdout] 9 | use tracing::{debug, error};
[INFO] [stdout]   |               ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `NoteReadMessage` and `UserHistoryBiz`
[INFO] [stdout]  --> interactive/src/consumer/note_comment_consumer.rs:1:50
[INFO] [stdout]   |
[INFO] [stdout] 1 | use crate::model::{CountBiz, NoteCommentMessage, NoteReadMessage, UserHistoryBiz};
[INFO] [stdout]   |                                                  ^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Deserialize` and `Serialize`
[INFO] [stdout]  --> interactive/src/consumer/note_comment_consumer.rs:5:13
[INFO] [stdout]   |
[INFO] [stdout] 5 | use serde::{Deserialize, Serialize};
[INFO] [stdout]   |             ^^^^^^^^^^^  ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::time::Instant`
[INFO] [stdout]  --> interactive/src/consumer/note_comment_consumer.rs:6:5
[INFO] [stdout]   |
[INFO] [stdout] 6 | use std::time::Instant;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `debug`
[INFO] [stdout]  --> interactive/src/consumer/note_comment_consumer.rs:7:15
[INFO] [stdout]   |
[INFO] [stdout] 7 | use tracing::{debug, error};
[INFO] [stdout]   |               ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `NoteReadMessage` and `UserHistoryBiz`
[INFO] [stdout]  --> interactive/src/consumer/note_like_consumer.rs:1:47
[INFO] [stdout]   |
[INFO] [stdout] 1 | use crate::model::{CountBiz, NoteLikeMessage, NoteReadMessage, UserHistoryBiz};
[INFO] [stdout]   |                                               ^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Deserialize` and `Serialize`
[INFO] [stdout]  --> interactive/src/consumer/note_like_consumer.rs:5:13
[INFO] [stdout]   |
[INFO] [stdout] 5 | use serde::{Deserialize, Serialize};
[INFO] [stdout]   |             ^^^^^^^^^^^  ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::time::Instant`
[INFO] [stdout]  --> interactive/src/consumer/note_like_consumer.rs:6:5
[INFO] [stdout]   |
[INFO] [stdout] 6 | use std::time::Instant;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `debug`
[INFO] [stdout]  --> interactive/src/consumer/note_like_consumer.rs:7:15
[INFO] [stdout]   |
[INFO] [stdout] 7 | use tracing::{debug, error};
[INFO] [stdout]   |               ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Deserialize` and `Serialize`
[INFO] [stdout]  --> interactive/src/consumer/note_read_consumer.rs:5:13
[INFO] [stdout]   |
[INFO] [stdout] 5 | use serde::{Deserialize, Serialize};
[INFO] [stdout]   |             ^^^^^^^^^^^  ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::time::Instant`
[INFO] [stdout]  --> interactive/src/consumer/note_read_consumer.rs:6:5
[INFO] [stdout]   |
[INFO] [stdout] 6 | use std::time::Instant;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `debug`
[INFO] [stdout]  --> interactive/src/consumer/note_read_consumer.rs:7:15
[INFO] [stdout]   |
[INFO] [stdout] 7 | use tracing::{debug, error};
[INFO] [stdout]   |               ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Database`
[INFO] [stdout]  --> interactive/src/repository/mod.rs:5:12
[INFO] [stdout]   |
[INFO] [stdout] 5 | use sqlx::{Database, PgPool, Row};
[INFO] [stdout]   |            ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::hash::Hash`
[INFO] [stdout]  --> interactive/src/repository/mod.rs:7:5
[INFO] [stdout]   |
[INFO] [stdout] 7 | use std::hash::Hash;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> interactive/src/abi/mod.rs:242:13
[INFO] [stdout]     |
[INFO] [stdout] 242 |         let mut ret = self
[INFO] [stdout]     |             ----^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             help: remove this `mut`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `e`
[INFO] [stdout]    --> interactive/src/repository/mod.rs:178:17
[INFO] [stdout]     |
[INFO] [stdout] 178 |             Err(e) => Ok(0),
[INFO] [stdout]     |                 ^ help: if this is intentional, prefix it with an underscore: `_e`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]    Compiling im v0.1.0 (/opt/rustwide/workdir/im)
[INFO] [stdout] warning: field `biz` is never read
[INFO] [stdout]   --> interactive/src/repository/mod.rs:25:5
[INFO] [stdout]    |
[INFO] [stdout] 24 | pub struct InteractiveRepoInner {
[INFO] [stdout]    |            -------------------- field in this struct
[INFO] [stdout] 25 |     biz: String,
[INFO] [stdout]    |     ^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]    Compiling comment v0.1.0 (/opt/rustwide/workdir/comment)
[INFO] [stdout] warning: unused import: `std::time::Instant`
[INFO] [stdout]  --> im/src/consumer/user_register_consumer.rs:5:5
[INFO] [stdout]   |
[INFO] [stdout] 5 | use std::time::Instant;
[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: `debug`
[INFO] [stdout]  --> im/src/consumer/user_register_consumer.rs:6:15
[INFO] [stdout]   |
[INFO] [stdout] 6 | use tracing::{debug, error};
[INFO] [stdout]   |               ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::consumer::user_register_consumer::UserRegisterMessage`
[INFO] [stdout]  --> im/src/consumer/user_update_consumer.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use crate::consumer::user_register_consumer::UserRegisterMessage;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: this function depends on never type fallback being `()`
[INFO] [stdout]    --> im/src/repository/mod.rs:142:5
[INFO] [stdout]     |
[INFO] [stdout] 142 |     async fn get_token(&self) -> Result<String> {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in Rust 2024 and in a future release in all editions!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/never-type-fallback.html>
[INFO] [stdout]     = help: specify the types explicitly
[INFO] [stdout] note: in edition 2024, the requirement `!: FromRedisValue` will fail
[INFO] [stdout]    --> im/src/repository/mod.rs:167:22
[INFO] [stdout]     |
[INFO] [stdout] 167 |                 conn.set_ex("im:admin::token", data.token, data.expire_time_seconds)
[INFO] [stdout]     |                      ^^^^^^
[INFO] [stdout]     = note: `#[warn(dependency_on_unit_never_type_fallback)]` (part of `#[warn(rust_2024_compatibility)]`) on by default
[INFO] [stdout] help: use `()` annotations to avoid fallback changes
[INFO] [stdout]     |
[INFO] [stdout] 167 |                 conn.set_ex::<_, _, ()>("im:admin::token", data.token, data.expire_time_seconds)
[INFO] [stdout]     |                            ++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `user_id` is never read
[INFO] [stdout]    --> im/src/repository/mod.rs:191:5
[INFO] [stdout]     |
[INFO] [stdout] 189 | struct CheckUserDataItem {
[INFO] [stdout]     |        ----------------- field in this struct
[INFO] [stdout] 190 |     #[serde(rename = "userID")]
[INFO] [stdout] 191 |     user_id: String,
[INFO] [stdout]     |     ^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `CheckUserDataItem` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout]     = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `err_dlt` is never read
[INFO] [stdout]    --> im/src/repository/mod.rs:203:5
[INFO] [stdout]     |
[INFO] [stdout] 197 | struct IMResponse<T> {
[INFO] [stdout]     |        ---------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 203 |     err_dlt: String,
[INFO] [stdout]     |     ^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `IMResponse` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `userInfo` should have a snake case name
[INFO] [stdout]   --> im/src/repository/mod.rs:58:17
[INFO] [stdout]    |
[INFO] [stdout] 58 |         let mut userInfo = HashMap::new();
[INFO] [stdout]    |                 ^^^^^^^^ help: convert the identifier to snake case: `user_info`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(non_snake_case)]` (part of `#[warn(nonstandard_style)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]    Compiling note v0.1.0 (/opt/rustwide/workdir/note)
[INFO] [stderr]    Compiling user v0.1.0 (/opt/rustwide/workdir/user)
[INFO] [stderr]    Compiling interactive v0.1.0 (/opt/rustwide/workdir/interactive)
[INFO] [stdout] warning: unused import: `async_graphql::extensions::ExtensionFactory`
[INFO] [stdout]   --> bff/src/lib.rs:25:5
[INFO] [stdout]    |
[INFO] [stdout] 25 | use async_graphql::extensions::ExtensionFactory;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]    Compiling bff v0.1.0 (/opt/rustwide/workdir/bff)
[INFO] [stdout] warning: unused import: `async_graphql::dataloader::Loader`
[INFO] [stdout]  --> bff/src/model/note.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use async_graphql::dataloader::Loader;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Deserialize` and `Serialize`
[INFO] [stdout]  --> bff/src/query/note.rs:5:13
[INFO] [stdout]   |
[INFO] [stdout] 5 | use serde::{Deserialize, Serialize};
[INFO] [stdout]   |             ^^^^^^^^^^^  ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `debug`
[INFO] [stdout]  --> bff/src/query/note.rs:6:15
[INFO] [stdout]   |
[INFO] [stdout] 6 | use tracing::{debug, error};
[INFO] [stdout]   |               ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `db`
[INFO] [stdout]    --> bff/src/lib.rs:254:13
[INFO] [stdout]     |
[INFO] [stdout] 254 |         let db = PgPool::connect(app_config.server.postgres_url.as_str())
[INFO] [stdout]     |             ^^ help: if this is intentional, prefix it with an underscore: `_db`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `db_read`
[INFO] [stdout]    --> bff/src/lib.rs:258:13
[INFO] [stdout]     |
[INFO] [stdout] 258 |         let db_read = PgPool::connect(app_config.server.postgres_url_read.as_str())
[INFO] [stdout]     |             ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_db_read`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `rdb`
[INFO] [stdout]    --> bff/src/lib.rs:264:13
[INFO] [stdout]     |
[INFO] [stdout] 264 |         let rdb = redis_cfg
[INFO] [stdout]     |             ^^^ help: if this is intentional, prefix it with an underscore: `_rdb`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `shutdown_signal` is never used
[INFO] [stdout]    --> bff/src/lib.rs:208:10
[INFO] [stdout]     |
[INFO] [stdout] 208 | async fn shutdown_signal() {
[INFO] [stdout]     |          ^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `MakeRequestUuidV7` is never constructed
[INFO] [stdout]    --> bff/src/lib.rs:233:8
[INFO] [stdout]     |
[INFO] [stdout] 233 | struct MakeRequestUuidV7;
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `app_config` is never read
[INFO] [stdout]    --> bff/src/lib.rs:315:16
[INFO] [stdout]     |
[INFO] [stdout] 312 | pub struct AppStateInner {
[INFO] [stdout]     |            ------------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 315 |     pub(crate) app_config: AppConfig,
[INFO] [stdout]     |                ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variants `DuplicateKey`, `ValidationError`, `NotFound`, and `InternalServerError` are never constructed
[INFO] [stdout]   --> bff/src/app_error.rs:24:5
[INFO] [stdout]    |
[INFO] [stdout]  4 | pub(crate) enum AppError {
[INFO] [stdout]    |                 -------- variants in this enum
[INFO] [stdout] ...
[INFO] [stdout] 24 |     DuplicateKey(String),
[INFO] [stdout]    |     ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 27 |     ValidationError(String),
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 30 |     NotFound(String),
[INFO] [stdout]    |     ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 36 |     InternalServerError,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `AppError` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Counter` is never constructed
[INFO] [stdout]   --> bff/src/model/interactive.rs:20:12
[INFO] [stdout]    |
[INFO] [stdout] 20 | pub struct Counter {
[INFO] [stdout]    |            ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `PublishedNote` is never constructed
[INFO] [stdout]   --> bff/src/model/note.rs:30:12
[INFO] [stdout]    |
[INFO] [stdout] 30 | pub struct PublishedNote {
[INFO] [stdout]    |            ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `User` is never constructed
[INFO] [stdout]  --> bff/src/model/user.rs:9:12
[INFO] [stdout]   |
[INFO] [stdout] 9 | pub struct User {
[INFO] [stdout]   |            ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `batch_get_note_comments_count` is never used
[INFO] [stdout]   --> bff/src/service/comment.rs:78:18
[INFO] [stdout]    |
[INFO] [stdout] 31 | impl CommentSrv {
[INFO] [stdout]    | --------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 78 |     pub async fn batch_get_note_comments_count(
[INFO] [stdout]    |                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `get_count` is never used
[INFO] [stdout]    --> bff/src/service/interactive.rs:177:18
[INFO] [stdout]     |
[INFO] [stdout]  30 | impl InteractiveSrv {
[INFO] [stdout]     | ------------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 177 |     pub async fn get_count(&self, biz: CountBiz, biz_id: i64) -> Result<i64> {
[INFO] [stdout]     |                  ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `interactive::consumer::comment_like_consumer::CommentLikeConsumer`
[INFO] [stdout]  --> interactive/src/main.rs:3:5
[INFO] [stdout]   |
[INFO] [stdout] 3 | use interactive::consumer::comment_like_consumer::CommentLikeConsumer;
[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: `interactive::consumer::note_collect_consumer::NoteCollectConsumer`
[INFO] [stdout]  --> interactive/src/main.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | use interactive::consumer::note_collect_consumer::NoteCollectConsumer;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `interactive::consumer::note_comment_consumer::NoteCommentConsumer`
[INFO] [stdout]  --> interactive/src/main.rs:5:5
[INFO] [stdout]   |
[INFO] [stdout] 5 | use interactive::consumer::note_comment_consumer::NoteCommentConsumer;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `interactive::consumer::note_like_consumer::NoteLikeConsumer`
[INFO] [stdout]  --> interactive/src/main.rs:6:5
[INFO] [stdout]   |
[INFO] [stdout] 6 | use interactive::consumer::note_like_consumer::NoteLikeConsumer;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `UserUpdateMessage`
[INFO] [stdout]  --> im/src/main.rs:6:62
[INFO] [stdout]   |
[INFO] [stdout] 6 | use im::consumer::user_update_consumer::{UserUpdateConsumer, UserUpdateMessage};
[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: `async_graphql::extensions::ExtensionFactory`
[INFO] [stdout]   --> bff/src/lib.rs:25:5
[INFO] [stdout]    |
[INFO] [stdout] 25 | use async_graphql::extensions::ExtensionFactory;
[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: `async_graphql::dataloader::Loader`
[INFO] [stdout]  --> bff/src/model/note.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use async_graphql::dataloader::Loader;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Deserialize` and `Serialize`
[INFO] [stdout]  --> bff/src/query/note.rs:5:13
[INFO] [stdout]   |
[INFO] [stdout] 5 | use serde::{Deserialize, Serialize};
[INFO] [stdout]   |             ^^^^^^^^^^^  ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `debug`
[INFO] [stdout]  --> bff/src/query/note.rs:6:15
[INFO] [stdout]   |
[INFO] [stdout] 6 | use tracing::{debug, error};
[INFO] [stdout]   |               ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Comment` is never constructed
[INFO] [stdout]   --> comment/src/model/mod.rs:30:12
[INFO] [stdout]    |
[INFO] [stdout] 30 | pub struct Comment {
[INFO] [stdout]    |            ^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `balance_v1` is never used
[INFO] [stdout]   --> bff/examples/redis_count.rs:11:10
[INFO] [stdout]    |
[INFO] [stdout] 11 | async fn balance_v1() {
[INFO] [stdout]    |          ^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `IntoRequest`
[INFO] [stdout]   --> interactive/src/lib.rs:12:26
[INFO] [stdout]    |
[INFO] [stdout] 12 | use tonic::{async_trait, IntoRequest, Request, Response, Status};
[INFO] [stdout]    |                          ^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `NoteLikeMessage`, `NoteReadMessage`, and `UserHistoryBiz`
[INFO] [stdout]  --> interactive/src/consumer/comment_like_consumer.rs:2:35
[INFO] [stdout]   |
[INFO] [stdout] 2 |     CommentLikeMessage, CountBiz, NoteLikeMessage, NoteReadMessage, UserHistoryBiz,
[INFO] [stdout]   |                                   ^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Deserialize` and `Serialize`
[INFO] [stdout]  --> interactive/src/consumer/comment_like_consumer.rs:7:13
[INFO] [stdout]   |
[INFO] [stdout] 7 | use serde::{Deserialize, Serialize};
[INFO] [stdout]   |             ^^^^^^^^^^^  ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::time::Instant`
[INFO] [stdout]  --> interactive/src/consumer/comment_like_consumer.rs:8:5
[INFO] [stdout]   |
[INFO] [stdout] 8 | use std::time::Instant;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `debug`
[INFO] [stdout]  --> interactive/src/consumer/comment_like_consumer.rs:9:15
[INFO] [stdout]   |
[INFO] [stdout] 9 | use tracing::{debug, error};
[INFO] [stdout]   |               ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `NoteLikeMessage`, `NoteReadMessage`, and `UserHistoryBiz`
[INFO] [stdout]  --> interactive/src/consumer/note_collect_consumer.rs:2:35
[INFO] [stdout]   |
[INFO] [stdout] 2 |     CountBiz, NoteCollectMessage, NoteLikeMessage, NoteReadMessage, UserHistoryBiz,
[INFO] [stdout]   |                                   ^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Deserialize` and `Serialize`
[INFO] [stdout]  --> interactive/src/consumer/note_collect_consumer.rs:7:13
[INFO] [stdout]   |
[INFO] [stdout] 7 | use serde::{Deserialize, Serialize};
[INFO] [stdout]   |             ^^^^^^^^^^^  ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::time::Instant`
[INFO] [stdout]  --> interactive/src/consumer/note_collect_consumer.rs:8:5
[INFO] [stdout]   |
[INFO] [stdout] 8 | use std::time::Instant;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `debug`
[INFO] [stdout]  --> interactive/src/consumer/note_collect_consumer.rs:9:15
[INFO] [stdout]   |
[INFO] [stdout] 9 | use tracing::{debug, error};
[INFO] [stdout]   |               ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `NoteReadMessage` and `UserHistoryBiz`
[INFO] [stdout]  --> interactive/src/consumer/note_comment_consumer.rs:1:50
[INFO] [stdout]   |
[INFO] [stdout] 1 | use crate::model::{CountBiz, NoteCommentMessage, NoteReadMessage, UserHistoryBiz};
[INFO] [stdout]   |                                                  ^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Deserialize` and `Serialize`
[INFO] [stdout]  --> interactive/src/consumer/note_comment_consumer.rs:5:13
[INFO] [stdout]   |
[INFO] [stdout] 5 | use serde::{Deserialize, Serialize};
[INFO] [stdout]   |             ^^^^^^^^^^^  ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::time::Instant`
[INFO] [stdout]  --> interactive/src/consumer/note_comment_consumer.rs:6:5
[INFO] [stdout]   |
[INFO] [stdout] 6 | use std::time::Instant;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `debug`
[INFO] [stdout]  --> interactive/src/consumer/note_comment_consumer.rs:7:15
[INFO] [stdout]   |
[INFO] [stdout] 7 | use tracing::{debug, error};
[INFO] [stdout]   |               ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `NoteReadMessage` and `UserHistoryBiz`
[INFO] [stdout]  --> interactive/src/consumer/note_like_consumer.rs:1:47
[INFO] [stdout]   |
[INFO] [stdout] 1 | use crate::model::{CountBiz, NoteLikeMessage, NoteReadMessage, UserHistoryBiz};
[INFO] [stdout]   |                                               ^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Deserialize` and `Serialize`
[INFO] [stdout]  --> interactive/src/consumer/note_like_consumer.rs:5:13
[INFO] [stdout]   |
[INFO] [stdout] 5 | use serde::{Deserialize, Serialize};
[INFO] [stdout]   |             ^^^^^^^^^^^  ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::time::Instant`
[INFO] [stdout]  --> interactive/src/consumer/note_like_consumer.rs:6:5
[INFO] [stdout]   |
[INFO] [stdout] 6 | use std::time::Instant;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `debug`
[INFO] [stdout]  --> interactive/src/consumer/note_like_consumer.rs:7:15
[INFO] [stdout]   |
[INFO] [stdout] 7 | use tracing::{debug, error};
[INFO] [stdout]   |               ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Deserialize` and `Serialize`
[INFO] [stdout]  --> interactive/src/consumer/note_read_consumer.rs:5:13
[INFO] [stdout]   |
[INFO] [stdout] 5 | use serde::{Deserialize, Serialize};
[INFO] [stdout]   |             ^^^^^^^^^^^  ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::time::Instant`
[INFO] [stdout]  --> interactive/src/consumer/note_read_consumer.rs:6:5
[INFO] [stdout]   |
[INFO] [stdout] 6 | use std::time::Instant;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `debug`
[INFO] [stdout]  --> interactive/src/consumer/note_read_consumer.rs:7:15
[INFO] [stdout]   |
[INFO] [stdout] 7 | use tracing::{debug, error};
[INFO] [stdout]   |               ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Database`
[INFO] [stdout]  --> interactive/src/repository/mod.rs:5:12
[INFO] [stdout]   |
[INFO] [stdout] 5 | use sqlx::{Database, PgPool, Row};
[INFO] [stdout]   |            ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::hash::Hash`
[INFO] [stdout]  --> interactive/src/repository/mod.rs:7:5
[INFO] [stdout]   |
[INFO] [stdout] 7 | use std::hash::Hash;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::time::Instant`
[INFO] [stdout]  --> im/src/consumer/user_register_consumer.rs:5:5
[INFO] [stdout]   |
[INFO] [stdout] 5 | use std::time::Instant;
[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: `debug`
[INFO] [stdout]  --> im/src/consumer/user_register_consumer.rs:6:15
[INFO] [stdout]   |
[INFO] [stdout] 6 | use tracing::{debug, error};
[INFO] [stdout]   |               ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::consumer::user_register_consumer::UserRegisterMessage`
[INFO] [stdout]  --> im/src/consumer/user_update_consumer.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use crate::consumer::user_register_consumer::UserRegisterMessage;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unreachable pattern
[INFO] [stdout]   --> user/src/repository/mod.rs:91:13
[INFO] [stdout]    |
[INFO] [stdout] 91 |             _ => Err(UserServiceError::InternalServerError("Unknown".to_string())),
[INFO] [stdout]    |             ^ no value can reach this
[INFO] [stdout]    |
[INFO] [stdout] note: multiple earlier patterns match some of the same values
[INFO] [stdout]   --> user/src/repository/mod.rs:91:13
[INFO] [stdout]    |
[INFO] [stdout] 79 |             Ok(0) => {
[INFO] [stdout]    |             ----- matches some of the same values
[INFO] [stdout] ...
[INFO] [stdout] 84 |             Ok(-1) => Err(UserServiceError::TooFrequently(
[INFO] [stdout]    |             ------ matches some of the same values
[INFO] [stdout] ...
[INFO] [stdout] 88 |             Ok(-2) | _ => Err(UserServiceError::InternalServerError(
[INFO] [stdout]    |             ---------- matches some of the same values
[INFO] [stdout] ...
[INFO] [stdout] 91 |             _ => Err(UserServiceError::InternalServerError("Unknown".to_string())),
[INFO] [stdout]    |             ^ collectively making this unreachable
[INFO] [stdout]    = note: `#[warn(unreachable_patterns)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: this function depends on never type fallback being `()`
[INFO] [stdout]    --> im/src/repository/mod.rs:142:5
[INFO] [stdout]     |
[INFO] [stdout] 142 |     async fn get_token(&self) -> Result<String> {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in Rust 2024 and in a future release in all editions!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/never-type-fallback.html>
[INFO] [stdout]     = help: specify the types explicitly
[INFO] [stdout] note: in edition 2024, the requirement `!: FromRedisValue` will fail
[INFO] [stdout]    --> im/src/repository/mod.rs:167:22
[INFO] [stdout]     |
[INFO] [stdout] 167 |                 conn.set_ex("im:admin::token", data.token, data.expire_time_seconds)
[INFO] [stdout]     |                      ^^^^^^
[INFO] [stdout]     = note: `#[warn(dependency_on_unit_never_type_fallback)]` (part of `#[warn(rust_2024_compatibility)]`) on by default
[INFO] [stdout] help: use `()` annotations to avoid fallback changes
[INFO] [stdout]     |
[INFO] [stdout] 167 |                 conn.set_ex::<_, _, ()>("im:admin::token", data.token, data.expire_time_seconds)
[INFO] [stdout]     |                            ++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: irrefutable `if let` pattern
[INFO] [stdout]    --> user/src/repository/mod.rs:279:24
[INFO] [stdout]     |
[INFO] [stdout] 279 |                       if let code = db_err
[INFO] [stdout]     |  ________________________^
[INFO] [stdout] 280 | |                         .code()
[INFO] [stdout] 281 | |                         .ok_or(UserServiceError::InternalServerError("".to_string()))?
[INFO] [stdout]     | |______________________________________________________________________________________^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this pattern will always match, so the `if let` is useless
[INFO] [stdout]     = help: consider replacing the `if let` with a `let`
[INFO] [stdout]     = note: `#[warn(irrefutable_let_patterns)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: this function depends on never type fallback being `()`
[INFO] [stdout]    --> user/src/repository/mod.rs:304:5
[INFO] [stdout]     |
[INFO] [stdout] 304 |     async fn gen_serial_no(&self) -> Result<String, UserServiceError> {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in Rust 2024 and in a future release in all editions!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/never-type-fallback.html>
[INFO] [stdout]     = help: specify the types explicitly
[INFO] [stdout] note: in edition 2024, the requirement `!: FromRedisValue` will fail
[INFO] [stdout]    --> user/src/repository/mod.rs:316:17
[INFO] [stdout]     |
[INFO] [stdout] 316 |             rdb.expire_at(&rkey, expire_at).await?;
[INFO] [stdout]     |                 ^^^^^^^^^
[INFO] [stdout]     = note: `#[warn(dependency_on_unit_never_type_fallback)]` (part of `#[warn(rust_2024_compatibility)]`) on by default
[INFO] [stdout] help: use `()` annotations to avoid fallback changes
[INFO] [stdout]     |
[INFO] [stdout] 316 |             rdb.expire_at::<_, ()>(&rkey, expire_at).await?;
[INFO] [stdout]     |                          +++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> interactive/src/abi/mod.rs:242:13
[INFO] [stdout]     |
[INFO] [stdout] 242 |         let mut ret = self
[INFO] [stdout]     |             ----^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             help: remove this `mut`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `user_id` is never read
[INFO] [stdout]    --> im/src/repository/mod.rs:191:5
[INFO] [stdout]     |
[INFO] [stdout] 189 | struct CheckUserDataItem {
[INFO] [stdout]     |        ----------------- field in this struct
[INFO] [stdout] 190 |     #[serde(rename = "userID")]
[INFO] [stdout] 191 |     user_id: String,
[INFO] [stdout]     |     ^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `CheckUserDataItem` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout]     = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `err_dlt` is never read
[INFO] [stdout]    --> im/src/repository/mod.rs:203:5
[INFO] [stdout]     |
[INFO] [stdout] 197 | struct IMResponse<T> {
[INFO] [stdout]     |        ---------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 203 |     err_dlt: String,
[INFO] [stdout]     |     ^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `IMResponse` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `userInfo` should have a snake case name
[INFO] [stdout]   --> im/src/repository/mod.rs:58:17
[INFO] [stdout]    |
[INFO] [stdout] 58 |         let mut userInfo = HashMap::new();
[INFO] [stdout]    |                 ^^^^^^^^ help: convert the identifier to snake case: `user_info`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(non_snake_case)]` (part of `#[warn(nonstandard_style)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::pb::user::user_service_server::UserService`
[INFO] [stdout]  --> user/src/abi/mod.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use crate::pb::user::user_service_server::UserService;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `env`
[INFO] [stdout]   --> user/src/config.rs:48:13
[INFO] [stdout]    |
[INFO] [stdout] 48 |         let env = std::env::var("NOTE_ENV").unwrap_or_else(|_| "test".to_string());
[INFO] [stdout]    |             ^^^ help: if this is intentional, prefix it with an underscore: `_env`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `error_code` is never read
[INFO] [stdout]   --> user/src/error.rs:35:17
[INFO] [stdout]    |
[INFO] [stdout] 35 |         let mut error_code = 0;
[INFO] [stdout]    |                 ^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = help: maybe it is overwritten before being read?
[INFO] [stdout]    = note: `#[warn(unused_assignments)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `e`
[INFO] [stdout]    --> interactive/src/repository/mod.rs:178:17
[INFO] [stdout]     |
[INFO] [stdout] 178 |             Err(e) => Ok(0),
[INFO] [stdout]     |                 ^ help: if this is intentional, prefix it with an underscore: `_e`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `req`
[INFO] [stdout]    --> comment/src/abi/mod.rs:127:9
[INFO] [stdout]     |
[INFO] [stdout] 127 |         req: comment::BatchGetNoteCommentsCountRequest,
[INFO] [stdout]     |         ^^^ help: if this is intentional, prefix it with an underscore: `_req`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `send_email_code` is never used
[INFO] [stdout]    --> user/src/repository/mod.rs:434:10
[INFO] [stdout]     |
[INFO] [stdout] 434 | async fn send_email_code(email: &str, code: &str) -> Result<()> {
[INFO] [stdout]     |          ^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `env`
[INFO] [stdout]   --> comment/src/config.rs:48:13
[INFO] [stdout]    |
[INFO] [stdout] 48 |         let env = std::env::var("NOTE_ENV").unwrap_or_else(|_| "test".to_string());
[INFO] [stdout]    |             ^^^ help: if this is intentional, prefix it with an underscore: `_env`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `env`
[INFO] [stdout]   --> interactive/src/config.rs:48:13
[INFO] [stdout]    |
[INFO] [stdout] 48 |         let env = std::env::var("NOTE_ENV").unwrap_or_else(|_| "test".to_string());
[INFO] [stdout]    |             ^^^ help: if this is intentional, prefix it with an underscore: `_env`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `request`
[INFO] [stdout]   --> comment/src/lib.rs:53:9
[INFO] [stdout]    |
[INFO] [stdout] 53 |         request: Request<DeleteCommentRequest>,
[INFO] [stdout]    |         ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_request`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `request`
[INFO] [stdout]   --> comment/src/lib.rs:82:9
[INFO] [stdout]    |
[INFO] [stdout] 82 |         request: Request<GetMoreCommentsRequest>,
[INFO] [stdout]    |         ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_request`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `biz` is never read
[INFO] [stdout]   --> comment/src/repository/mod.rs:22:5
[INFO] [stdout]    |
[INFO] [stdout] 21 | pub struct CommentRepoInner {
[INFO] [stdout]    |            ---------------- field in this struct
[INFO] [stdout] 22 |     biz: String,
[INFO] [stdout]    |     ^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `biz` is never read
[INFO] [stdout]   --> interactive/src/repository/mod.rs:25:5
[INFO] [stdout]    |
[INFO] [stdout] 24 | pub struct InteractiveRepoInner {
[INFO] [stdout]    |            -------------------- field in this struct
[INFO] [stdout] 25 |     biz: String,
[INFO] [stdout]    |     ^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `env`
[INFO] [stdout]   --> note/src/config.rs:48:13
[INFO] [stdout]    |
[INFO] [stdout] 48 |         let env = std::env::var("NOTE_ENV").unwrap_or_else(|_| "test".to_string());
[INFO] [stdout]    |             ^^^ help: if this is intentional, prefix it with an underscore: `_env`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `biz` is never read
[INFO] [stdout]  --> note/src/repository/mod.rs:6:5
[INFO] [stdout]   |
[INFO] [stdout] 5 | pub struct NoteRepo {
[INFO] [stdout]   |            -------- field in this struct
[INFO] [stdout] 6 |     biz: String,
[INFO] [stdout]   |     ^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `db`
[INFO] [stdout]    --> bff/src/lib.rs:254:13
[INFO] [stdout]     |
[INFO] [stdout] 254 |         let db = PgPool::connect(app_config.server.postgres_url.as_str())
[INFO] [stdout]     |             ^^ help: if this is intentional, prefix it with an underscore: `_db`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `db_read`
[INFO] [stdout]    --> bff/src/lib.rs:258:13
[INFO] [stdout]     |
[INFO] [stdout] 258 |         let db_read = PgPool::connect(app_config.server.postgres_url_read.as_str())
[INFO] [stdout]     |             ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_db_read`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `rdb`
[INFO] [stdout]    --> bff/src/lib.rs:264:13
[INFO] [stdout]     |
[INFO] [stdout] 264 |         let rdb = redis_cfg
[INFO] [stdout]     |             ^^^ help: if this is intentional, prefix it with an underscore: `_rdb`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `env`
[INFO] [stdout]   --> bff/src/config.rs:48:13
[INFO] [stdout]    |
[INFO] [stdout] 48 |         let env = std::env::var("NOTE_ENV").unwrap_or_else(|_| "test".to_string());
[INFO] [stdout]    |             ^^^ help: if this is intentional, prefix it with an underscore: `_env`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `shutdown_signal` is never used
[INFO] [stdout]    --> bff/src/lib.rs:208:10
[INFO] [stdout]     |
[INFO] [stdout] 208 | async fn shutdown_signal() {
[INFO] [stdout]     |          ^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `MakeRequestUuidV7` is never constructed
[INFO] [stdout]    --> bff/src/lib.rs:233:8
[INFO] [stdout]     |
[INFO] [stdout] 233 | struct MakeRequestUuidV7;
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `app_config` is never read
[INFO] [stdout]    --> bff/src/lib.rs:315:16
[INFO] [stdout]     |
[INFO] [stdout] 312 | pub struct AppStateInner {
[INFO] [stdout]     |            ------------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 315 |     pub(crate) app_config: AppConfig,
[INFO] [stdout]     |                ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variants `DuplicateKey`, `ValidationError`, `NotFound`, and `InternalServerError` are never constructed
[INFO] [stdout]   --> bff/src/app_error.rs:24:5
[INFO] [stdout]    |
[INFO] [stdout]  4 | pub(crate) enum AppError {
[INFO] [stdout]    |                 -------- variants in this enum
[INFO] [stdout] ...
[INFO] [stdout] 24 |     DuplicateKey(String),
[INFO] [stdout]    |     ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 27 |     ValidationError(String),
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 30 |     NotFound(String),
[INFO] [stdout]    |     ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 36 |     InternalServerError,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `AppError` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Counter` is never constructed
[INFO] [stdout]   --> bff/src/model/interactive.rs:20:12
[INFO] [stdout]    |
[INFO] [stdout] 20 | pub struct Counter {
[INFO] [stdout]    |            ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `PublishedNote` is never constructed
[INFO] [stdout]   --> bff/src/model/note.rs:30:12
[INFO] [stdout]    |
[INFO] [stdout] 30 | pub struct PublishedNote {
[INFO] [stdout]    |            ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `User` is never constructed
[INFO] [stdout]  --> bff/src/model/user.rs:9:12
[INFO] [stdout]   |
[INFO] [stdout] 9 | pub struct User {
[INFO] [stdout]   |            ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `batch_get_note_comments_count` is never used
[INFO] [stdout]   --> bff/src/service/comment.rs:78:18
[INFO] [stdout]    |
[INFO] [stdout] 31 | impl CommentSrv {
[INFO] [stdout]    | --------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 78 |     pub async fn batch_get_note_comments_count(
[INFO] [stdout]    |                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `get_count` is never used
[INFO] [stdout]    --> bff/src/service/interactive.rs:177:18
[INFO] [stdout]     |
[INFO] [stdout]  30 | impl InteractiveSrv {
[INFO] [stdout]     | ------------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 177 |     pub async fn get_count(&self, biz: CountBiz, biz_id: i64) -> Result<i64> {
[INFO] [stdout]     |                  ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 47.79s
[INFO] [stderr] warning: the following packages contain code that will be rejected by a future version of Rust: im v0.1.0 (/opt/rustwide/workdir/im), user v0.1.0 (/opt/rustwide/workdir/user)
[INFO] [stderr] note: to see what the problems were, use the option `--future-incompat-report`, or run `cargo report future-incompatibilities --id 4`
[INFO] running `Command { std: "docker" "inspect" "1f724b565c47cf8e60e00a6b2c5d1171dba2bcf6103bb0b1581802eef11e6f2a", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "1f724b565c47cf8e60e00a6b2c5d1171dba2bcf6103bb0b1581802eef11e6f2a", kill_on_drop: false }`
[INFO] [stdout] 1f724b565c47cf8e60e00a6b2c5d1171dba2bcf6103bb0b1581802eef11e6f2a
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=warn" "-e" "RUSTDOCFLAGS=--cap-lints=warn" "-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" "+beta-2025-09-21" "test" "--frozen", kill_on_drop: false }`
[INFO] [stdout] 8105408df7cbdb2a6ebfc06a10ed6ac1d34400037a3d562e6e71ebf1c01f4eb6
[INFO] running `Command { std: "docker" "start" "-a" "8105408df7cbdb2a6ebfc06a10ed6ac1d34400037a3d562e6e71ebf1c01f4eb6", kill_on_drop: false }`
[INFO] [stderr] warning: unreachable pattern
[INFO] [stderr]   --> user/src/repository/mod.rs:91:13
[INFO] [stderr]    |
[INFO] [stderr] 91 |             _ => Err(UserServiceError::InternalServerError("Unknown".to_string())),
[INFO] [stderr]    |             ^ no value can reach this
[INFO] [stderr]    |
[INFO] [stderr] note: multiple earlier patterns match some of the same values
[INFO] [stderr]   --> user/src/repository/mod.rs:91:13
[INFO] [stderr]    |
[INFO] [stderr] 79 |             Ok(0) => {
[INFO] [stderr]    |             ----- matches some of the same values
[INFO] [stderr] ...
[INFO] [stderr] 84 |             Ok(-1) => Err(UserServiceError::TooFrequently(
[INFO] [stderr]    |             ------ matches some of the same values
[INFO] [stderr] ...
[INFO] [stderr] 88 |             Ok(-2) | _ => Err(UserServiceError::InternalServerError(
[INFO] [stderr]    |             ---------- matches some of the same values
[INFO] [stderr] ...
[INFO] [stderr] 91 |             _ => Err(UserServiceError::InternalServerError("Unknown".to_string())),
[INFO] [stderr]    |             ^ collectively making this unreachable
[INFO] [stderr]    = note: `#[warn(unreachable_patterns)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: irrefutable `if let` pattern
[INFO] [stderr]    --> user/src/repository/mod.rs:279:24
[INFO] [stderr]     |
[INFO] [stderr] 279 |                       if let code = db_err
[INFO] [stderr]     |  ________________________^
[INFO] [stderr] 280 | |                         .code()
[INFO] [stderr] 281 | |                         .ok_or(UserServiceError::InternalServerError("".to_string()))?
[INFO] [stderr]     | |______________________________________________________________________________________^
[INFO] [stderr]     |
[INFO] [stderr]     = note: this pattern will always match, so the `if let` is useless
[INFO] [stderr]     = help: consider replacing the `if let` with a `let`
[INFO] [stderr]     = note: `#[warn(irrefutable_let_patterns)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: this function depends on never type fallback being `()`
[INFO] [stderr]    --> user/src/repository/mod.rs:304:5
[INFO] [stderr]     |
[INFO] [stderr] 304 |     async fn gen_serial_no(&self) -> Result<String, UserServiceError> {
[INFO] [stderr]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in Rust 2024 and in a future release in all editions!
[INFO] [stderr]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/never-type-fallback.html>
[INFO] [stderr]     = help: specify the types explicitly
[INFO] [stderr] note: in edition 2024, the requirement `!: FromRedisValue` will fail
[INFO] [stderr]    --> user/src/repository/mod.rs:316:17
[INFO] [stderr]     |
[INFO] [stderr] 316 |             rdb.expire_at(&rkey, expire_at).await?;
[INFO] [stderr]     |                 ^^^^^^^^^
[INFO] [stderr]     = note: `#[warn(dependency_on_unit_never_type_fallback)]` (part of `#[warn(rust_2024_compatibility)]`) on by default
[INFO] [stderr] help: use `()` annotations to avoid fallback changes
[INFO] [stderr]     |
[INFO] [stderr] 316 |             rdb.expire_at::<_, ()>(&rkey, expire_at).await?;
[INFO] [stderr]     |                          +++++++++
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `crate::pb::user::user_service_server::UserService`
[INFO] [stderr]  --> user/src/abi/mod.rs:1:5
[INFO] [stderr]   |
[INFO] [stderr] 1 | use crate::pb::user::user_service_server::UserService;
[INFO] [stderr]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]   |
[INFO] [stderr]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: value assigned to `error_code` is never read
[INFO] [stderr]   --> user/src/error.rs:35:17
[INFO] [stderr]    |
[INFO] [stderr] 35 |         let mut error_code = 0;
[INFO] [stderr]    |                 ^^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = help: maybe it is overwritten before being read?
[INFO] [stderr]    = note: `#[warn(unused_assignments)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: function `send_email_code` is never used
[INFO] [stderr]    --> user/src/repository/mod.rs:434:10
[INFO] [stderr]     |
[INFO] [stderr] 434 | async fn send_email_code(email: &str, code: &str) -> Result<()> {
[INFO] [stderr]     |          ^^^^^^^^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `std::time::Instant`
[INFO] [stderr]  --> im/src/consumer/user_register_consumer.rs:5:5
[INFO] [stderr]   |
[INFO] [stderr] 5 | use std::time::Instant;
[INFO] [stderr]   |     ^^^^^^^^^^^^^^^^^^
[INFO] [stderr]   |
[INFO] [stderr]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `debug`
[INFO] [stderr]  --> im/src/consumer/user_register_consumer.rs:6:15
[INFO] [stderr]   |
[INFO] [stderr] 6 | use tracing::{debug, error};
[INFO] [stderr]   |               ^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `crate::consumer::user_register_consumer::UserRegisterMessage`
[INFO] [stderr]  --> im/src/consumer/user_update_consumer.rs:1:5
[INFO] [stderr]   |
[INFO] [stderr] 1 | use crate::consumer::user_register_consumer::UserRegisterMessage;
[INFO] [stderr]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: this function depends on never type fallback being `()`
[INFO] [stderr]    --> im/src/repository/mod.rs:142:5
[INFO] [stderr]     |
[INFO] [stderr] 142 |     async fn get_token(&self) -> Result<String> {
[INFO] [stderr]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in Rust 2024 and in a future release in all editions!
[INFO] [stderr]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/never-type-fallback.html>
[INFO] [stderr]     = help: specify the types explicitly
[INFO] [stderr] note: in edition 2024, the requirement `!: FromRedisValue` will fail
[INFO] [stderr]    --> im/src/repository/mod.rs:167:22
[INFO] [stderr]     |
[INFO] [stderr] 167 |                 conn.set_ex("im:admin::token", data.token, data.expire_time_seconds)
[INFO] [stderr]     |                      ^^^^^^
[INFO] [stderr]     = note: `#[warn(dependency_on_unit_never_type_fallback)]` (part of `#[warn(rust_2024_compatibility)]`) on by default
[INFO] [stderr] help: use `()` annotations to avoid fallback changes
[INFO] [stderr]     |
[INFO] [stderr] 167 |                 conn.set_ex::<_, _, ()>("im:admin::token", data.token, data.expire_time_seconds)
[INFO] [stderr]     |                            ++++++++++++
[INFO] [stderr] 
[INFO] [stderr] warning: field `user_id` is never read
[INFO] [stderr]    --> im/src/repository/mod.rs:191:5
[INFO] [stderr]     |
[INFO] [stderr] 189 | struct CheckUserDataItem {
[INFO] [stderr]     |        ----------------- field in this struct
[INFO] [stderr] 190 |     #[serde(rename = "userID")]
[INFO] [stderr] 191 |     user_id: String,
[INFO] [stderr]     |     ^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = note: `CheckUserDataItem` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stderr]     = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: field `err_dlt` is never read
[INFO] [stderr]    --> im/src/repository/mod.rs:203:5
[INFO] [stderr]     |
[INFO] [stderr] 197 | struct IMResponse<T> {
[INFO] [stderr]     |        ---------- field in this struct
[INFO] [stderr] ...
[INFO] [stderr] 203 |     err_dlt: String,
[INFO] [stderr]     |     ^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = note: `IMResponse` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stderr] 
[INFO] [stderr] warning: variable `userInfo` should have a snake case name
[INFO] [stderr]   --> im/src/repository/mod.rs:58:17
[INFO] [stderr]    |
[INFO] [stderr] 58 |         let mut userInfo = HashMap::new();
[INFO] [stderr]    |                 ^^^^^^^^ help: convert the identifier to snake case: `user_info`
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(non_snake_case)]` (part of `#[warn(nonstandard_style)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `req`
[INFO] [stderr]    --> comment/src/abi/mod.rs:127:9
[INFO] [stderr]     |
[INFO] [stderr] 127 |         req: comment::BatchGetNoteCommentsCountRequest,
[INFO] [stderr]     |         ^^^ help: if this is intentional, prefix it with an underscore: `_req`
[INFO] [stderr]     |
[INFO] [stderr]     = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `request`
[INFO] [stderr]   --> comment/src/lib.rs:53:9
[INFO] [stderr]    |
[INFO] [stderr] 53 |         request: Request<DeleteCommentRequest>,
[INFO] [stderr]    |         ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_request`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `request`
[INFO] [stderr]   --> comment/src/lib.rs:82:9
[INFO] [stderr]    |
[INFO] [stderr] 82 |         request: Request<GetMoreCommentsRequest>,
[INFO] [stderr]    |         ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_request`
[INFO] [stderr] 
[INFO] [stderr] warning: field `biz` is never read
[INFO] [stderr]   --> comment/src/repository/mod.rs:22:5
[INFO] [stderr]    |
[INFO] [stderr] 21 | pub struct CommentRepoInner {
[INFO] [stderr]    |            ---------------- field in this struct
[INFO] [stderr] 22 |     biz: String,
[INFO] [stderr]    |     ^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `IntoRequest`
[INFO] [stderr]   --> interactive/src/lib.rs:12:26
[INFO] [stderr]    |
[INFO] [stderr] 12 | use tonic::{async_trait, IntoRequest, Request, Response, Status};
[INFO] [stderr]    |                          ^^^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unused imports: `NoteLikeMessage`, `NoteReadMessage`, and `UserHistoryBiz`
[INFO] [stderr]  --> interactive/src/consumer/comment_like_consumer.rs:2:35
[INFO] [stderr]   |
[INFO] [stderr] 2 |     CommentLikeMessage, CountBiz, NoteLikeMessage, NoteReadMessage, UserHistoryBiz,
[INFO] [stderr]   |                                   ^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused imports: `Deserialize` and `Serialize`
[INFO] [stderr]  --> interactive/src/consumer/comment_like_consumer.rs:7:13
[INFO] [stderr]   |
[INFO] [stderr] 7 | use serde::{Deserialize, Serialize};
[INFO] [stderr]   |             ^^^^^^^^^^^  ^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `std::time::Instant`
[INFO] [stderr]  --> interactive/src/consumer/comment_like_consumer.rs:8:5
[INFO] [stderr]   |
[INFO] [stderr] 8 | use std::time::Instant;
[INFO] [stderr]   |     ^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `debug`
[INFO] [stderr]  --> interactive/src/consumer/comment_like_consumer.rs:9:15
[INFO] [stderr]   |
[INFO] [stderr] 9 | use tracing::{debug, error};
[INFO] [stderr]   |               ^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused imports: `NoteLikeMessage`, `NoteReadMessage`, and `UserHistoryBiz`
[INFO] [stderr]  --> interactive/src/consumer/note_collect_consumer.rs:2:35
[INFO] [stderr]   |
[INFO] [stderr] 2 |     CountBiz, NoteCollectMessage, NoteLikeMessage, NoteReadMessage, UserHistoryBiz,
[INFO] [stderr]   |                                   ^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused imports: `Deserialize` and `Serialize`
[INFO] [stderr]  --> interactive/src/consumer/note_collect_consumer.rs:7:13
[INFO] [stderr]   |
[INFO] [stderr] 7 | use serde::{Deserialize, Serialize};
[INFO] [stderr]   |             ^^^^^^^^^^^  ^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `std::time::Instant`
[INFO] [stderr]  --> interactive/src/consumer/note_collect_consumer.rs:8:5
[INFO] [stderr]   |
[INFO] [stderr] 8 | use std::time::Instant;
[INFO] [stderr]   |     ^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `debug`
[INFO] [stderr]  --> interactive/src/consumer/note_collect_consumer.rs:9:15
[INFO] [stderr]   |
[INFO] [stderr] 9 | use tracing::{debug, error};
[INFO] [stderr]   |               ^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused imports: `NoteReadMessage` and `UserHistoryBiz`
[INFO] [stderr]  --> interactive/src/consumer/note_comment_consumer.rs:1:50
[INFO] [stderr]   |
[INFO] [stderr] 1 | use crate::model::{CountBiz, NoteCommentMessage, NoteReadMessage, UserHistoryBiz};
[INFO] [stderr]   |                                                  ^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused imports: `Deserialize` and `Serialize`
[INFO] [stderr]  --> interactive/src/consumer/note_comment_consumer.rs:5:13
[INFO] [stderr]   |
[INFO] [stderr] 5 | use serde::{Deserialize, Serialize};
[INFO] [stderr]   |             ^^^^^^^^^^^  ^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `std::time::Instant`
[INFO] [stderr]  --> interactive/src/consumer/note_comment_consumer.rs:6:5
[INFO] [stderr]   |
[INFO] [stderr] 6 | use std::time::Instant;
[INFO] [stderr]   |     ^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `debug`
[INFO] [stderr]  --> interactive/src/consumer/note_comment_consumer.rs:7:15
[INFO] [stderr]   |
[INFO] [stderr] 7 | use tracing::{debug, error};
[INFO] [stderr]   |               ^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused imports: `NoteReadMessage` and `UserHistoryBiz`
[INFO] [stderr]  --> interactive/src/consumer/note_like_consumer.rs:1:47
[INFO] [stderr]   |
[INFO] [stderr] 1 | use crate::model::{CountBiz, NoteLikeMessage, NoteReadMessage, UserHistoryBiz};
[INFO] [stderr]   |                                               ^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused imports: `Deserialize` and `Serialize`
[INFO] [stderr]  --> interactive/src/consumer/note_like_consumer.rs:5:13
[INFO] [stderr]   |
[INFO] [stderr] 5 | use serde::{Deserialize, Serialize};
[INFO] [stderr]   |             ^^^^^^^^^^^  ^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `std::time::Instant`
[INFO] [stderr]  --> interactive/src/consumer/note_like_consumer.rs:6:5
[INFO] [stderr]   |
[INFO] [stderr] 6 | use std::time::Instant;
[INFO] [stderr]   |     ^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `debug`
[INFO] [stderr]  --> interactive/src/consumer/note_like_consumer.rs:7:15
[INFO] [stderr]   |
[INFO] [stderr] 7 | use tracing::{debug, error};
[INFO] [stderr]   |               ^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused imports: `Deserialize` and `Serialize`
[INFO] [stderr]  --> interactive/src/consumer/note_read_consumer.rs:5:13
[INFO] [stderr]   |
[INFO] [stderr] 5 | use serde::{Deserialize, Serialize};
[INFO] [stderr]   |             ^^^^^^^^^^^  ^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `std::time::Instant`
[INFO] [stderr]  --> interactive/src/consumer/note_read_consumer.rs:6:5
[INFO] [stderr]   |
[INFO] [stderr] 6 | use std::time::Instant;
[INFO] [stderr]   |     ^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `debug`
[INFO] [stderr]  --> interactive/src/consumer/note_read_consumer.rs:7:15
[INFO] [stderr]   |
[INFO] [stderr] 7 | use tracing::{debug, error};
[INFO] [stderr]   |               ^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `Database`
[INFO] [stderr]  --> interactive/src/repository/mod.rs:5:12
[INFO] [stderr]   |
[INFO] [stderr] 5 | use sqlx::{Database, PgPool, Row};
[INFO] [stderr]   |            ^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `std::hash::Hash`
[INFO] [stderr]  --> interactive/src/repository/mod.rs:7:5
[INFO] [stderr]   |
[INFO] [stderr] 7 | use std::hash::Hash;
[INFO] [stderr]   |     ^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]    --> interactive/src/abi/mod.rs:242:13
[INFO] [stderr]     |
[INFO] [stderr] 242 |         let mut ret = self
[INFO] [stderr]     |             ----^^^
[INFO] [stderr]     |             |
[INFO] [stderr]     |             help: remove this `mut`
[INFO] [stderr]     |
[INFO] [stderr]     = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `e`
[INFO] [stderr]    --> interactive/src/repository/mod.rs:178:17
[INFO] [stderr]     |
[INFO] [stderr] 178 |             Err(e) => Ok(0),
[INFO] [stderr]     |                 ^ help: if this is intentional, prefix it with an underscore: `_e`
[INFO] [stderr]     |
[INFO] [stderr]     = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: field `biz` is never read
[INFO] [stderr]   --> interactive/src/repository/mod.rs:25:5
[INFO] [stderr]    |
[INFO] [stderr] 24 | pub struct InteractiveRepoInner {
[INFO] [stderr]    |            -------------------- field in this struct
[INFO] [stderr] 25 |     biz: String,
[INFO] [stderr]    |     ^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: `user` (lib) generated 6 warnings (run `cargo fix --lib -p user` to apply 1 suggestion)
[INFO] [stderr] warning: `im` (lib) generated 7 warnings (run `cargo fix --lib -p im` to apply 4 suggestions)
[INFO] [stderr] warning: `comment` (lib) generated 4 warnings
[INFO] [stderr] warning: `interactive` (lib) generated 25 warnings (run `cargo fix --lib -p interactive` to apply 23 suggestions)
[INFO] [stderr] warning: field `biz` is never read
[INFO] [stderr]  --> note/src/repository/mod.rs:6:5
[INFO] [stderr]   |
[INFO] [stderr] 5 | pub struct NoteRepo {
[INFO] [stderr]   |            -------- field in this struct
[INFO] [stderr] 6 |     biz: String,
[INFO] [stderr]   |     ^^^
[INFO] [stderr]   |
[INFO] [stderr]   = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: `note` (lib) generated 1 warning
[INFO] [stderr] warning: unused import: `UserUpdateMessage`
[INFO] [stderr]  --> im/src/main.rs:6:62
[INFO] [stderr]   |
[INFO] [stderr] 6 | use im::consumer::user_update_consumer::{UserUpdateConsumer, UserUpdateMessage};
[INFO] [stderr]   |                                                              ^^^^^^^^^^^^^^^^^
[INFO] [stderr]   |
[INFO] [stderr]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `interactive::consumer::comment_like_consumer::CommentLikeConsumer`
[INFO] [stderr]  --> interactive/src/main.rs:3:5
[INFO] [stderr]   |
[INFO] [stderr] 3 | use interactive::consumer::comment_like_consumer::CommentLikeConsumer;
[INFO] [stderr]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]   |
[INFO] [stderr]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `interactive::consumer::note_collect_consumer::NoteCollectConsumer`
[INFO] [stderr]  --> interactive/src/main.rs:4:5
[INFO] [stderr]   |
[INFO] [stderr] 4 | use interactive::consumer::note_collect_consumer::NoteCollectConsumer;
[INFO] [stderr]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `interactive::consumer::note_comment_consumer::NoteCommentConsumer`
[INFO] [stderr]  --> interactive/src/main.rs:5:5
[INFO] [stderr]   |
[INFO] [stderr] 5 | use interactive::consumer::note_comment_consumer::NoteCommentConsumer;
[INFO] [stderr]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `interactive::consumer::note_like_consumer::NoteLikeConsumer`
[INFO] [stderr]  --> interactive/src/main.rs:6:5
[INFO] [stderr]   |
[INFO] [stderr] 6 | use interactive::consumer::note_like_consumer::NoteLikeConsumer;
[INFO] [stderr]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: `im` (bin "im" test) generated 1 warning (run `cargo fix --bin "im" --tests` to apply 1 suggestion)
[INFO] [stderr] warning: `interactive` (bin "interactive" test) generated 4 warnings (run `cargo fix --bin "interactive" --tests` to apply 4 suggestions)
[INFO] [stderr] warning: struct `Comment` is never constructed
[INFO] [stderr]   --> comment/src/model/mod.rs:30:12
[INFO] [stderr]    |
[INFO] [stderr] 30 | pub struct Comment {
[INFO] [stderr]    |            ^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `env`
[INFO] [stderr]   --> comment/src/config.rs:48:13
[INFO] [stderr]    |
[INFO] [stderr] 48 |         let env = std::env::var("NOTE_ENV").unwrap_or_else(|_| "test".to_string());
[INFO] [stderr]    |             ^^^ help: if this is intentional, prefix it with an underscore: `_env`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `env`
[INFO] [stderr]   --> user/src/config.rs:48:13
[INFO] [stderr]    |
[INFO] [stderr] 48 |         let env = std::env::var("NOTE_ENV").unwrap_or_else(|_| "test".to_string());
[INFO] [stderr]    |             ^^^ help: if this is intentional, prefix it with an underscore: `_env`
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `env`
[INFO] [stderr]   --> interactive/src/config.rs:48:13
[INFO] [stderr]    |
[INFO] [stderr] 48 |         let env = std::env::var("NOTE_ENV").unwrap_or_else(|_| "test".to_string());
[INFO] [stderr]    |             ^^^ help: if this is intentional, prefix it with an underscore: `_env`
[INFO] [stderr] 
[INFO] [stderr] warning: `comment` (bin "comment" test) generated 1 warning
[INFO] [stderr] warning: `comment` (lib test) generated 5 warnings (4 duplicates)
[INFO] [stderr] warning: `user` (lib test) generated 7 warnings (6 duplicates)
[INFO] [stderr] warning: `im` (lib test) generated 7 warnings (7 duplicates)
[INFO] [stderr] warning: `interactive` (lib test) generated 26 warnings (25 duplicates)
[INFO] [stderr] warning: unused import: `async_graphql::extensions::ExtensionFactory`
[INFO] [stderr]   --> bff/src/lib.rs:25:5
[INFO] [stderr]    |
[INFO] [stderr] 25 | use async_graphql::extensions::ExtensionFactory;
[INFO] [stderr]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `async_graphql::dataloader::Loader`
[INFO] [stderr]  --> bff/src/model/note.rs:1:5
[INFO] [stderr]   |
[INFO] [stderr] 1 | use async_graphql::dataloader::Loader;
[INFO] [stderr]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused imports: `Deserialize` and `Serialize`
[INFO] [stderr]  --> bff/src/query/note.rs:5:13
[INFO] [stderr]   |
[INFO] [stderr] 5 | use serde::{Deserialize, Serialize};
[INFO] [stderr]   |             ^^^^^^^^^^^  ^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `debug`
[INFO] [stderr]  --> bff/src/query/note.rs:6:15
[INFO] [stderr]   |
[INFO] [stderr] 6 | use tracing::{debug, error};
[INFO] [stderr]   |               ^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `db`
[INFO] [stderr]    --> bff/src/lib.rs:254:13
[INFO] [stderr]     |
[INFO] [stderr] 254 |         let db = PgPool::connect(app_config.server.postgres_url.as_str())
[INFO] [stderr]     |             ^^ help: if this is intentional, prefix it with an underscore: `_db`
[INFO] [stderr]     |
[INFO] [stderr]     = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `db_read`
[INFO] [stderr]    --> bff/src/lib.rs:258:13
[INFO] [stderr]     |
[INFO] [stderr] 258 |         let db_read = PgPool::connect(app_config.server.postgres_url_read.as_str())
[INFO] [stderr]     |             ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_db_read`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `rdb`
[INFO] [stderr]    --> bff/src/lib.rs:264:13
[INFO] [stderr]     |
[INFO] [stderr] 264 |         let rdb = redis_cfg
[INFO] [stderr]     |             ^^^ help: if this is intentional, prefix it with an underscore: `_rdb`
[INFO] [stderr] 
[INFO] [stderr] warning: function `shutdown_signal` is never used
[INFO] [stderr]    --> bff/src/lib.rs:208:10
[INFO] [stderr]     |
[INFO] [stderr] 208 | async fn shutdown_signal() {
[INFO] [stderr]     |          ^^^^^^^^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: struct `MakeRequestUuidV7` is never constructed
[INFO] [stderr]    --> bff/src/lib.rs:233:8
[INFO] [stderr]     |
[INFO] [stderr] 233 | struct MakeRequestUuidV7;
[INFO] [stderr]     |        ^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: field `app_config` is never read
[INFO] [stderr]    --> bff/src/lib.rs:315:16
[INFO] [stderr]     |
[INFO] [stderr] 312 | pub struct AppStateInner {
[INFO] [stderr]     |            ------------- field in this struct
[INFO] [stderr] ...
[INFO] [stderr] 315 |     pub(crate) app_config: AppConfig,
[INFO] [stderr]     |                ^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: variants `DuplicateKey`, `ValidationError`, `NotFound`, and `InternalServerError` are never constructed
[INFO] [stderr]   --> bff/src/app_error.rs:24:5
[INFO] [stderr]    |
[INFO] [stderr]  4 | pub(crate) enum AppError {
[INFO] [stderr]    |                 -------- variants in this enum
[INFO] [stderr] ...
[INFO] [stderr] 24 |     DuplicateKey(String),
[INFO] [stderr]    |     ^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 27 |     ValidationError(String),
[INFO] [stderr]    |     ^^^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 30 |     NotFound(String),
[INFO] [stderr]    |     ^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 36 |     InternalServerError,
[INFO] [stderr]    |     ^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `AppError` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stderr] 
[INFO] [stderr] warning: struct `Counter` is never constructed
[INFO] [stderr]   --> bff/src/model/interactive.rs:20:12
[INFO] [stderr]    |
[INFO] [stderr] 20 | pub struct Counter {
[INFO] [stderr]    |            ^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: struct `PublishedNote` is never constructed
[INFO] [stderr]   --> bff/src/model/note.rs:30:12
[INFO] [stderr]    |
[INFO] [stderr] 30 | pub struct PublishedNote {
[INFO] [stderr]    |            ^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: struct `User` is never constructed
[INFO] [stderr]  --> bff/src/model/user.rs:9:12
[INFO] [stderr]   |
[INFO] [stderr] 9 | pub struct User {
[INFO] [stderr]   |            ^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: method `batch_get_note_comments_count` is never used
[INFO] [stderr]   --> bff/src/service/comment.rs:78:18
[INFO] [stderr]    |
[INFO] [stderr] 31 | impl CommentSrv {
[INFO] [stderr]    | --------------- method in this implementation
[INFO] [stderr] ...
[INFO] [stderr] 78 |     pub async fn batch_get_note_comments_count(
[INFO] [stderr]    |                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: method `get_count` is never used
[INFO] [stderr]    --> bff/src/service/interactive.rs:177:18
[INFO] [stderr]     |
[INFO] [stderr]  30 | impl InteractiveSrv {
[INFO] [stderr]     | ------------------- method in this implementation
[INFO] [stderr] ...
[INFO] [stderr] 177 |     pub async fn get_count(&self, biz: CountBiz, biz_id: i64) -> Result<i64> {
[INFO] [stderr]     |                  ^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `env`
[INFO] [stderr]   --> bff/src/config.rs:48:13
[INFO] [stderr]    |
[INFO] [stderr] 48 |         let env = std::env::var("NOTE_ENV").unwrap_or_else(|_| "test".to_string());
[INFO] [stderr]    |             ^^^ help: if this is intentional, prefix it with an underscore: `_env`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `env`
[INFO] [stderr]   --> note/src/config.rs:48:13
[INFO] [stderr]    |
[INFO] [stderr] 48 |         let env = std::env::var("NOTE_ENV").unwrap_or_else(|_| "test".to_string());
[INFO] [stderr]    |             ^^^ help: if this is intentional, prefix it with an underscore: `_env`
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: `bff` (lib) generated 16 warnings (run `cargo fix --lib -p bff` to apply 4 suggestions)
[INFO] [stderr] warning: `bff` (lib test) generated 17 warnings (16 duplicates)
[INFO] [stderr] warning: `note` (lib test) generated 2 warnings (1 duplicate)
[INFO] [stderr] warning: function `balance_v1` is never used
[INFO] [stderr]   --> bff/examples/redis_count.rs:11:10
[INFO] [stderr]    |
[INFO] [stderr] 11 | async fn balance_v1() {
[INFO] [stderr]    |          ^^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: `bff` (example "redis_count") generated 1 warning
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 0.74s
[INFO] [stderr] warning: the following packages contain code that will be rejected by a future version of Rust: im v0.1.0 (/opt/rustwide/workdir/im), user v0.1.0 (/opt/rustwide/workdir/user)
[INFO] [stderr] note: to see what the problems were, use the option `--future-incompat-report`, or run `cargo report future-incompatibilities --id 4`
[INFO] [stderr]      Running unittests src/lib.rs (/opt/rustwide/target/debug/deps/bff-bfcc39e294609442)
[INFO] [stdout] 
[INFO] [stdout] running 0 tests
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s
[INFO] [stdout] 
[INFO] [stderr]      Running unittests src/main.rs (/opt/rustwide/target/debug/deps/bff-31ea152d122858de)
[INFO] [stdout] 
[INFO] [stdout] running 0 tests
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s
[INFO] [stdout] 
[INFO] [stderr]      Running unittests src/lib.rs (/opt/rustwide/target/debug/deps/comment-5743a83e1b143fe5)
[INFO] [stdout] 
[INFO] [stdout] running 2 tests
[INFO] [stdout] test repository::tests::test_find_by_biz ... FAILED
[INFO] [stdout] test repository::tests::test_create ... FAILED
[INFO] [stdout] 
[INFO] [stdout] failures:
[INFO] [stdout] 
[INFO] [stdout] ---- repository::tests::test_find_by_biz stdout ----
[INFO] [stdout] 
[INFO] [stdout] thread 'repository::tests::test_find_by_biz' (20) panicked at comment/src/repository/mod.rs:218:71:
[INFO] [stdout] called `Result::unwrap()` on an `Err` value: PoolTimedOut
[INFO] [stdout] stack backtrace:
[INFO] [stdout]    0:     0x635558b81fb2 - std::backtrace_rs::backtrace::libunwind::trace::hcab59e1e990fdc24
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/std/src/../../backtrace/src/backtrace/libunwind.rs:117:9
[INFO] [stdout]    1:     0x635558b81fb2 - std::backtrace_rs::backtrace::trace_unsynchronized::he24cc57f3d2f47b7
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/std/src/../../backtrace/src/backtrace/mod.rs:66:14
[INFO] [stdout]    2:     0x635558b81fb2 - std::sys::backtrace::_print_fmt::hf8d65ede198eeb54
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/std/src/sys/backtrace.rs:66:9
[INFO] [stdout]    3:     0x635558b81fb2 - <std::sys::backtrace::BacktraceLock::print::DisplayBacktrace as core::fmt::Display>::fmt::h67edf0e4d33c343c
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/std/src/sys/backtrace.rs:39:26
[INFO] [stdout]    4:     0x635558b94c7f - core::fmt::rt::Argument::fmt::hef94184842aeafdd
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/core/src/fmt/rt.rs:173:76
[INFO] [stdout]    5:     0x635558b94c7f - core::fmt::write::hcf0c66b48a8fa606
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/core/src/fmt/mod.rs:1468:25
[INFO] [stdout]    6:     0x635558b4cef1 - std::io::default_write_fmt::h69967ac0ba93195f
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/std/src/io/mod.rs:639:11
[INFO] [stdout]    7:     0x635558b4cef1 - std::io::Write::write_fmt::h8db9396209deaa1c
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/std/src/io/mod.rs:1954:13
[INFO] [stdout]    8:     0x635558b599c2 - std::sys::backtrace::BacktraceLock::print::h07e5435aa717b414
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/std/src/sys/backtrace.rs:42:9
[INFO] [stdout]    9:     0x635558b5f29f - std::panicking::default_hook::{{closure}}::h91001850288db5f7
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/std/src/panicking.rs:301:27
[INFO] [stdout]   10:     0x635558b5f131 - std::panicking::default_hook::h2346dbb704ef5512
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/std/src/panicking.rs:325:9
[INFO] [stdout]   11:     0x63555882556e - <alloc::boxed::Box<F,A> as core::ops::function::Fn<Args>>::call::h18383b2e29377420
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/alloc/src/boxed.rs:1999:9
[INFO] [stdout]   12:     0x63555882556e - test::test_main_with_exit_callback::{{closure}}::h272d7ef99aef06dc
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/test/src/lib.rs:145:21
[INFO] [stdout]   13:     0x635558b5fa0f - <alloc::boxed::Box<F,A> as core::ops::function::Fn<Args>>::call::h6dba6e441651a0d1
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/alloc/src/boxed.rs:1999:9
[INFO] [stdout]   14:     0x635558b5fa0f - std::panicking::panic_with_hook::hd2b063a6090d23a4
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/std/src/panicking.rs:842:13
[INFO] [stdout]   15:     0x635558b5f7ba - std::panicking::panic_handler::{{closure}}::he666d95f139a333e
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/std/src/panicking.rs:707:13
[INFO] [stdout]   16:     0x635558b59af9 - std::sys::backtrace::__rust_end_short_backtrace::h631ad224854ebee5
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/std/src/sys/backtrace.rs:174:18
[INFO] [stdout]   17:     0x635558b40fcd - __rustc[1d67440d6e82e4f]::rust_begin_unwind
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/std/src/panicking.rs:698:5
[INFO] [stdout]   18:     0x635558b9ef20 - core::panicking::panic_fmt::h420ddb7fd73daf53
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/core/src/panicking.rs:75:14
[INFO] [stdout]   19:     0x635558b9e0c6 - core::result::unwrap_failed::hdde076be853d034f
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/core/src/result.rs:1855:5
[INFO] [stdout]   20:     0x63555871e5e4 - core::result::Result<T,E>::unwrap::hd6ac802718a8ab53
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/core/src/result.rs:1226:23
[INFO] [stdout]   21:     0x63555871e5e4 - comment::repository::tests::test_find_by_biz::{{closure}}::h598ba160e22b8d7b
[INFO] [stdout]                                at /opt/rustwide/workdir/comment/src/repository/mod.rs:218:71
[INFO] [stdout]   22:     0x63555872ee92 - <core::pin::Pin<P> as core::future::future::Future>::poll::h62edc6533400acbf
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/core/src/future/future.rs:133:9
[INFO] [stdout]   23:     0x63555872ee0d - <core::pin::Pin<P> as core::future::future::Future>::poll::h325d4b9c09e391cf
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/core/src/future/future.rs:133:9
[INFO] [stdout]   24:     0x635558705f9d - tokio::runtime::scheduler::current_thread::CoreGuard::block_on::{{closure}}::{{closure}}::{{closure}}::h99bb365556274205
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.42.0/src/runtime/scheduler/current_thread/mod.rs:729:73
[INFO] [stdout]   25:     0x635558705cfb - tokio::runtime::coop::with_budget::h1338c777907e0838
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.42.0/src/runtime/coop.rs:107:5
[INFO] [stdout]   26:     0x635558705cfb - tokio::runtime::coop::budget::hb23c1db8d8aa79c4
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.42.0/src/runtime/coop.rs:73:5
[INFO] [stdout]   27:     0x635558705cfb - tokio::runtime::scheduler::current_thread::CoreGuard::block_on::{{closure}}::{{closure}}::h08bfe9bdb1648958
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.42.0/src/runtime/scheduler/current_thread/mod.rs:729:25
[INFO] [stdout]   28:     0x635558702d10 - tokio::runtime::scheduler::current_thread::Context::enter::h8dea4526a76e29df
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.42.0/src/runtime/scheduler/current_thread/mod.rs:428:19
[INFO] [stdout]   29:     0x635558704920 - tokio::runtime::scheduler::current_thread::CoreGuard::block_on::{{closure}}::h837232f427ccc5e8
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.42.0/src/runtime/scheduler/current_thread/mod.rs:728:44
[INFO] [stdout]   30:     0x6355587045c4 - tokio::runtime::scheduler::current_thread::CoreGuard::enter::{{closure}}::h1969172802c93254
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.42.0/src/runtime/scheduler/current_thread/mod.rs:807:68
[INFO] [stdout]   31:     0x63555871b42b - tokio::runtime::context::scoped::Scoped<T>::set::h7239b4a9cbdf762d
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.42.0/src/runtime/context/scoped.rs:40:9
[INFO] [stdout]   32:     0x635558728b89 - tokio::runtime::context::set_scheduler::{{closure}}::he730b307df3244b7
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.42.0/src/runtime/context.rs:180:38
[INFO] [stdout]   33:     0x635558726c72 - std::thread::local::LocalKey<T>::try_with::h42f7d2826b587885
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/std/src/thread/local.rs:315:12
[INFO] [stdout]   34:     0x6355587267be - std::thread::local::LocalKey<T>::with::hc336558cd4d53399
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/std/src/thread/local.rs:279:20
[INFO] [stdout]   35:     0x635558728abd - tokio::runtime::context::set_scheduler::h49a8e23e53350220
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.42.0/src/runtime/context.rs:180:17
[INFO] [stdout]   36:     0x635558703f50 - tokio::runtime::scheduler::current_thread::CoreGuard::enter::hab38cc526dcacd3f
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.42.0/src/runtime/scheduler/current_thread/mod.rs:807:27
[INFO] [stdout]   37:     0x635558704603 - tokio::runtime::scheduler::current_thread::CoreGuard::block_on::h27373ff8180db6c6
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.42.0/src/runtime/scheduler/current_thread/mod.rs:716:24
[INFO] [stdout]   38:     0x6355587028f3 - tokio::runtime::scheduler::current_thread::CurrentThread::block_on::{{closure}}::h942fa358ea32c826
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.42.0/src/runtime/scheduler/current_thread/mod.rs:196:33
[INFO] [stdout]   39:     0x63555872df40 - tokio::runtime::context::runtime::enter_runtime::hdb51f6a034d19f10
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.42.0/src/runtime/context/runtime.rs:65:16
[INFO] [stdout]   40:     0x635558702291 - tokio::runtime::scheduler::current_thread::CurrentThread::block_on::h3167de994301dd88
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.42.0/src/runtime/scheduler/current_thread/mod.rs:184:9
[INFO] [stdout]   41:     0x63555871b7f4 - tokio::runtime::runtime::Runtime::block_on_inner::heaf76e5c0f7c6df2
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.42.0/src/runtime/runtime.rs:368:52
[INFO] [stdout]   42:     0x63555871b9b7 - tokio::runtime::runtime::Runtime::block_on::h86ee851706de896f
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.42.0/src/runtime/runtime.rs:342:18
[INFO] [stdout]   43:     0x63555871e13d - comment::repository::tests::test_find_by_biz::h1215613a2e32f010
[INFO] [stdout]                                at /opt/rustwide/workdir/comment/src/repository/mod.rs:231:24
[INFO] [stdout]   44:     0x63555871e1d7 - comment::repository::tests::test_find_by_biz::{{closure}}::h22536d8740dee74c
[INFO] [stdout]                                at /opt/rustwide/workdir/comment/src/repository/mod.rs:216:32
[INFO] [stdout]   45:     0x6355586fbab6 - core::ops::function::FnOnce::call_once::h27bedf6c5dd93359
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   46:     0x63555882532b - core::ops::function::FnOnce::call_once::h70887edf07a630ba
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   47:     0x63555882532b - test::__rust_begin_short_backtrace::h27763c4cbbdb8601
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/test/src/lib.rs:663:18
[INFO] [stdout]   48:     0x63555883af95 - test::run_test_in_process::{{closure}}::h4dc8bc6d5e3924d3
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/test/src/lib.rs:686:74
[INFO] [stdout]   49:     0x63555883af95 - <core::panic::unwind_safe::AssertUnwindSafe<F> as core::ops::function::FnOnce<()>>::call_once::h75905e8ffe81974f
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/core/src/panic/unwind_safe.rs:274:9
[INFO] [stdout]   50:     0x63555883af95 - std::panicking::catch_unwind::do_call::h0bc60366ba66eba5
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/std/src/panicking.rs:590:40
[INFO] [stdout]   51:     0x63555883af95 - std::panicking::catch_unwind::hae1ec7bf94407afa
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/std/src/panicking.rs:553:19
[INFO] [stdout]   52:     0x63555883af95 - std::panic::catch_unwind::h0f4ff4773d84d3cd
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/std/src/panic.rs:359:14
[INFO] [stdout]   53:     0x63555883af95 - test::run_test_in_process::h03fbc77ae48b3f10
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/test/src/lib.rs:686:27
[INFO] [stdout]   54:     0x63555883af95 - test::run_test::{{closure}}::h83476a9c453dc4d3
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/test/src/lib.rs:607:43
[INFO] [stdout]   55:     0x635558811784 - test::run_test::{{closure}}::h515482ad1e7fe7de
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/test/src/lib.rs:637:41
[INFO] [stdout]   56:     0x635558811784 - std::sys::backtrace::__rust_begin_short_backtrace::hed09f6ac5fe9d647
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/std/src/sys/backtrace.rs:158:18
[INFO] [stdout]   57:     0x63555881504a - std::thread::Builder::spawn_unchecked_::{{closure}}::{{closure}}::h988e2cd969319888
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/std/src/thread/mod.rs:559:17
[INFO] [stdout]   58:     0x63555881504a - <core::panic::unwind_safe::AssertUnwindSafe<F> as core::ops::function::FnOnce<()>>::call_once::hd70e28dc46ec20be
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/core/src/panic/unwind_safe.rs:274:9
[INFO] [stdout]   59:     0x63555881504a - std::panicking::catch_unwind::do_call::hdc29e11311eb7655
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/std/src/panicking.rs:590:40
[INFO] [stdout]   60:     0x63555881504a - std::panicking::catch_unwind::h9e402d6a96fef41c
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/std/src/panicking.rs:553:19
[INFO] [stdout]   61:     0x63555881504a - std::panic::catch_unwind::h9213c0c54aec70e0
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/std/src/panic.rs:359:14
[INFO] [stdout]   62:     0x63555881504a - std::thread::Builder::spawn_unchecked_::{{closure}}::h6262965869ed2b87
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/std/src/thread/mod.rs:557:30
[INFO] [stdout]   63:     0x63555881504a - core::ops::function::FnOnce::call_once{{vtable.shim}}::h05c05ed02619e462
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   64:     0x635558b54c5f - <alloc::boxed::Box<F,A> as core::ops::function::FnOnce<Args>>::call_once::h2044e71c41d3958a
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/alloc/src/boxed.rs:1985:9
[INFO] [stdout]   65:     0x635558b54c5f - std::sys::thread::unix::Thread::new::thread_start::hf277835320aa8e5a
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/std/src/sys/thread/unix.rs:126:17
[INFO] [stdout]   66:     0x760e78c66aa4 - <unknown>
[INFO] [stdout]   67:     0x760e78cf3a34 - clone
[INFO] [stdout]   68:                0x0 - <unknown>
[INFO] [stdout] 
[INFO] [stdout] ---- repository::tests::test_create stdout ----
[INFO] [stdout] 
[INFO] [stdout] thread 'repository::tests::test_create' (19) panicked at comment/src/repository/mod.rs:196:71:
[INFO] [stdout] called `Result::unwrap()` on an `Err` value: PoolTimedOut
[INFO] [stdout] stack backtrace:
[INFO] [stdout]    0:     0x635558b81fb2 - std::backtrace_rs::backtrace::libunwind::trace::hcab59e1e990fdc24
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/std/src/../../backtrace/src/backtrace/libunwind.rs:117:9
[INFO] [stdout]    1:     0x635558b81fb2 - std::backtrace_rs::backtrace::trace_unsynchronized::he24cc57f3d2f47b7
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/std/src/../../backtrace/src/backtrace/mod.rs:66:14
[INFO] [stdout]    2:     0x635558b81fb2 - std::sys::backtrace::_print_fmt::hf8d65ede198eeb54
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/std/src/sys/backtrace.rs:66:9
[INFO] [stdout]    3:     0x635558b81fb2 - <std::sys::backtrace::BacktraceLock::print::DisplayBacktrace as core::fmt::Display>::fmt::h67edf0e4d33c343c
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/std/src/sys/backtrace.rs:39:26
[INFO] [stdout]    4:     0x635558b94c7f - core::fmt::rt::Argument::fmt::hef94184842aeafdd
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/core/src/fmt/rt.rs:173:76
[INFO] [stdout]    5:     0x635558b94c7f - core::fmt::write::hcf0c66b48a8fa606
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/core/src/fmt/mod.rs:1468:25
[INFO] [stdout]    6:     0x635558b4cef1 - std::io::default_write_fmt::h69967ac0ba93195f
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/std/src/io/mod.rs:639:11
[INFO] [stdout]    7:     0x635558b4cef1 - std::io::Write::write_fmt::h8db9396209deaa1c
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/std/src/io/mod.rs:1954:13
[INFO] [stdout]    8:     0x635558b599c2 - std::sys::backtrace::BacktraceLock::print::h07e5435aa717b414
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/std/src/sys/backtrace.rs:42:9
[INFO] [stdout]    9:     0x635558b5f29f - std::panicking::default_hook::{{closure}}::h91001850288db5f7
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/std/src/panicking.rs:301:27
[INFO] [stdout]   10:     0x635558b5f131 - std::panicking::default_hook::h2346dbb704ef5512
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/std/src/panicking.rs:325:9
[INFO] [stdout]   11:     0x63555882556e - <alloc::boxed::Box<F,A> as core::ops::function::Fn<Args>>::call::h18383b2e29377420
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/alloc/src/boxed.rs:1999:9
[INFO] [stdout]   12:     0x63555882556e - test::test_main_with_exit_callback::{{closure}}::h272d7ef99aef06dc
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/test/src/lib.rs:145:21
[INFO] [stdout]   13:     0x635558b5fa0f - <alloc::boxed::Box<F,A> as core::ops::function::Fn<Args>>::call::h6dba6e441651a0d1
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/alloc/src/boxed.rs:1999:9
[INFO] [stdout]   14:     0x635558b5fa0f - std::panicking::panic_with_hook::hd2b063a6090d23a4
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/std/src/panicking.rs:842:13
[INFO] [stdout]   15:     0x635558b5f7ba - std::panicking::panic_handler::{{closure}}::he666d95f139a333e
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/std/src/panicking.rs:707:13
[INFO] [stdout]   16:     0x635558b59af9 - std::sys::backtrace::__rust_end_short_backtrace::h631ad224854ebee5
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/std/src/sys/backtrace.rs:174:18
[INFO] [stdout]   17:     0x635558b40fcd - __rustc[1d67440d6e82e4f]::rust_begin_unwind
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/std/src/panicking.rs:698:5
[INFO] [stdout]   18:     0x635558b9ef20 - core::panicking::panic_fmt::h420ddb7fd73daf53
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/core/src/panicking.rs:75:14
[INFO] [stdout]   19:     0x635558b9e0c6 - core::result::unwrap_failed::hdde076be853d034f
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/core/src/result.rs:1855:5
[INFO] [stdout]   20:     0x63555871d921 - core::result::Result<T,E>::unwrap::hd6ac802718a8ab53
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/core/src/result.rs:1226:23
[INFO] [stdout]   21:     0x63555871d921 - comment::repository::tests::test_create::{{closure}}::ha0efe4cf4fa8399f
[INFO] [stdout]                                at /opt/rustwide/workdir/comment/src/repository/mod.rs:196:71
[INFO] [stdout]   22:     0x63555872ee92 - <core::pin::Pin<P> as core::future::future::Future>::poll::h62edc6533400acbf
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/core/src/future/future.rs:133:9
[INFO] [stdout]   23:     0x63555872ee0d - <core::pin::Pin<P> as core::future::future::Future>::poll::h325d4b9c09e391cf
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/core/src/future/future.rs:133:9
[INFO] [stdout]   24:     0x635558705f9d - tokio::runtime::scheduler::current_thread::CoreGuard::block_on::{{closure}}::{{closure}}::{{closure}}::h99bb365556274205
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.42.0/src/runtime/scheduler/current_thread/mod.rs:729:73
[INFO] [stdout]   25:     0x635558705cfb - tokio::runtime::coop::with_budget::h1338c777907e0838
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.42.0/src/runtime/coop.rs:107:5
[INFO] [stdout]   26:     0x635558705cfb - tokio::runtime::coop::budget::hb23c1db8d8aa79c4
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.42.0/src/runtime/coop.rs:73:5
[INFO] [stdout]   27:     0x635558705cfb - tokio::runtime::scheduler::current_thread::CoreGuard::block_on::{{closure}}::{{closure}}::h08bfe9bdb1648958
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.42.0/src/runtime/scheduler/current_thread/mod.rs:729:25
[INFO] [stdout]   28:     0x635558702d10 - tokio::runtime::scheduler::current_thread::Context::enter::h8dea4526a76e29df
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.42.0/src/runtime/scheduler/current_thread/mod.rs:428:19
[INFO] [stdout]   29:     0x635558704920 - tokio::runtime::scheduler::current_thread::CoreGuard::block_on::{{closure}}::h837232f427ccc5e8
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.42.0/src/runtime/scheduler/current_thread/mod.rs:728:44
[INFO] [stdout]   30:     0x6355587045c4 - tokio::runtime::scheduler::current_thread::CoreGuard::enter::{{closure}}::h1969172802c93254
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.42.0/src/runtime/scheduler/current_thread/mod.rs:807:68
[INFO] [stdout]   31:     0x63555871b42b - tokio::runtime::context::scoped::Scoped<T>::set::h7239b4a9cbdf762d
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.42.0/src/runtime/context/scoped.rs:40:9
[INFO] [stdout]   32:     0x635558728b89 - tokio::runtime::context::set_scheduler::{{closure}}::he730b307df3244b7
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.42.0/src/runtime/context.rs:180:38
[INFO] [stdout]   33:     0x635558726c72 - std::thread::local::LocalKey<T>::try_with::h42f7d2826b587885
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/std/src/thread/local.rs:315:12
[INFO] [stdout]   34:     0x6355587267be - std::thread::local::LocalKey<T>::with::hc336558cd4d53399
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/std/src/thread/local.rs:279:20
[INFO] [stdout]   35:     0x635558728abd - tokio::runtime::context::set_scheduler::h49a8e23e53350220
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.42.0/src/runtime/context.rs:180:17
[INFO] [stdout]   36:     0x635558703f50 - tokio::runtime::scheduler::current_thread::CoreGuard::enter::hab38cc526dcacd3f
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.42.0/src/runtime/scheduler/current_thread/mod.rs:807:27
[INFO] [stdout]   37:     0x635558704603 - tokio::runtime::scheduler::current_thread::CoreGuard::block_on::h27373ff8180db6c6
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.42.0/src/runtime/scheduler/current_thread/mod.rs:716:24
[INFO] [stdout]   38:     0x6355587028f3 - tokio::runtime::scheduler::current_thread::CurrentThread::block_on::{{closure}}::h942fa358ea32c826
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.42.0/src/runtime/scheduler/current_thread/mod.rs:196:33
[INFO] [stdout]   39:     0x63555872df40 - tokio::runtime::context::runtime::enter_runtime::hdb51f6a034d19f10
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.42.0/src/runtime/context/runtime.rs:65:16
[INFO] [stdout]   40:     0x635558702291 - tokio::runtime::scheduler::current_thread::CurrentThread::block_on::h3167de994301dd88
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.42.0/src/runtime/scheduler/current_thread/mod.rs:184:9
[INFO] [stdout]   41:     0x63555871b7f4 - tokio::runtime::runtime::Runtime::block_on_inner::heaf76e5c0f7c6df2
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.42.0/src/runtime/runtime.rs:368:52
[INFO] [stdout]   42:     0x63555871b9b7 - tokio::runtime::runtime::Runtime::block_on::h86ee851706de896f
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.42.0/src/runtime/runtime.rs:342:18
[INFO] [stdout]   43:     0x63555871d48d - comment::repository::tests::test_create::he74780101d31173a
[INFO] [stdout]                                at /opt/rustwide/workdir/comment/src/repository/mod.rs:212:29
[INFO] [stdout]   44:     0x63555871d527 - comment::repository::tests::test_create::{{closure}}::h63c915be5febf54f
[INFO] [stdout]                                at /opt/rustwide/workdir/comment/src/repository/mod.rs:194:27
[INFO] [stdout]   45:     0x6355586fbc66 - core::ops::function::FnOnce::call_once::hc1d066c59fcc9189
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   46:     0x63555882532b - core::ops::function::FnOnce::call_once::h70887edf07a630ba
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   47:     0x63555882532b - test::__rust_begin_short_backtrace::h27763c4cbbdb8601
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/test/src/lib.rs:663:18
[INFO] [stdout]   48:     0x63555883af95 - test::run_test_in_process::{{closure}}::h4dc8bc6d5e3924d3
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/test/src/lib.rs:686:74
[INFO] [stdout]   49:     0x63555883af95 - <core::panic::unwind_safe::AssertUnwindSafe<F> as core::ops::function::FnOnce<()>>::call_once::h75905e8ffe81974f
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/core/src/panic/unwind_safe.rs:274:9
[INFO] [stdout]   50:     0x63555883af95 - std::panicking::catch_unwind::do_call::h0bc60366ba66eba5
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/std/src/panicking.rs:590:40
[INFO] [stdout]   51:     0x63555883af95 - std::panicking::catch_unwind::hae1ec7bf94407afa
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/std/src/panicking.rs:553:19
[INFO] [stdout]   52:     0x63555883af95 - std::panic::catch_unwind::h0f4ff4773d84d3cd
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/std/src/panic.rs:359:14
[INFO] [stdout]   53:     0x63555883af95 - test::run_test_in_process::h03fbc77ae48b3f10
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/test/src/lib.rs:686:27
[INFO] [stdout]   54:     0x63555883af95 - test::run_test::{{closure}}::h83476a9c453dc4d3
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/test/src/lib.rs:607:43
[INFO] [stdout]   55:     0x635558811784 - test::run_test::{{closure}}::h515482ad1e7fe7de
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/test/src/lib.rs:637:41
[INFO] [stdout]   56:     0x635558811784 - std::sys::backtrace::__rust_begin_short_backtrace::hed09f6ac5fe9d647
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/std/src/sys/backtrace.rs:158:18
[INFO] [stdout]   57:     0x63555881504a - std::thread::Builder::spawn_unchecked_::{{closure}}::{{closure}}::h988e2cd969319888
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/std/src/thread/mod.rs:559:17
[INFO] [stdout]   58:     0x63555881504a - <core::panic::unwind_safe::AssertUnwindSafe<F> as core::ops::function::FnOnce<()>>::call_once::hd70e28dc46ec20be
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/core/src/panic/unwind_safe.rs:274:9
[INFO] [stdout]   59:     0x63555881504a - std::panicking::catch_unwind::do_call::hdc29e11311eb7655
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/std/src/panicking.rs:590:40
[INFO] [stdout]   60:     0x63555881504a - std::panicking::catch_unwind::h9e402d6a96fef41c
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/std/src/panicking.rs:553:19
[INFO] [stdout]   61:     0x63555881504a - std::panic::catch_unwind::h9213c0c54aec70e0
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/std/src/panic.rs:359:14
[INFO] [stdout]   62:     0x63555881504a - std::thread::Builder::spawn_unchecked_::{{closure}}::h6262965869ed2b87
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/std/src/thread/mod.rs:557:30
[INFO] [stdout]   63:     0x63555881504a - core::ops::function::FnOnce::call_once{{vtable.shim}}::h05c05ed02619e462
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   64:     0x635558b54c5f - <alloc::boxed::Box<F,A> as core::ops::function::FnOnce<Args>>::call_once::h2044e71c41d3958a
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/alloc/src/boxed.rs:1985:9
[INFO] [stdout]   65:     0x635558b54c5f - std::sys::thread::unix::Thread::new::thread_start::hf277835320aa8e5a
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/std/src/sys/thread/unix.rs:126:17
[INFO] [stdout]   66:     0x760e78c66aa4 - <unknown>
[INFO] [stdout]   67:     0x760e78cf3a34 - clone
[INFO] [stdout]   68:                0x0 - <unknown>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] failures:
[INFO] [stdout]     repository::tests::test_create
[INFO] [stdout]     repository::tests::test_find_by_biz
[INFO] [stdout] 
[INFO] [stdout] test result: FAILED. 0 passed; 2 failed; 0 ignored; 0 measured; 0 filtered out; finished in 30.13s
[INFO] [stdout] 
[INFO] [stderr] error: test failed, to rerun pass `-p comment --lib`
[INFO] running `Command { std: "docker" "inspect" "8105408df7cbdb2a6ebfc06a10ed6ac1d34400037a3d562e6e71ebf1c01f4eb6", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "8105408df7cbdb2a6ebfc06a10ed6ac1d34400037a3d562e6e71ebf1c01f4eb6", kill_on_drop: false }`
[INFO] [stdout] 8105408df7cbdb2a6ebfc06a10ed6ac1d34400037a3d562e6e71ebf1c01f4eb6
