[INFO] cloning repository https://github.com/Akiramex/im-server
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/Akiramex/im-server" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FAkiramex%2Fim-server", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FAkiramex%2Fim-server'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] c07bf0e86306a4acc7539bf6326a24c796cd266f
[INFO] checking Akiramex/im-server against try#18c1d185ac7a6a3bf399296b35e4b2736809a756 for pr-146972
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FAkiramex%2Fim-server" "/workspace/builds/worker-2-tc2/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-2-tc2/source'...
[INFO] [stderr] done.
[INFO] started tweaking git repo https://github.com/Akiramex/im-server
[INFO] finished tweaking git repo https://github.com/Akiramex/im-server
[INFO] tweaked toml for git repo https://github.com/Akiramex/im-server written to /workspace/builds/worker-2-tc2/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/Akiramex/im-server on toolchain 18c1d185ac7a6a3bf399296b35e4b2736809a756
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+18c1d185ac7a6a3bf399296b35e4b2736809a756" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate git repo https://github.com/Akiramex/im-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" "+18c1d185ac7a6a3bf399296b35e4b2736809a756" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-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:94a0c148923f5b2b52a63ef0eeb1882ad339ab61bce784c8077cbe41c61feb6c" "/opt/rustwide/cargo-home/bin/cargo" "+18c1d185ac7a6a3bf399296b35e4b2736809a756" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] 0688ed2d3dfa47f8051c264bdf8fe3c08f4930d03da471c6ffd190ee45a23781
[INFO] running `Command { std: "docker" "start" "-a" "0688ed2d3dfa47f8051c264bdf8fe3c08f4930d03da471c6ffd190ee45a23781", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "0688ed2d3dfa47f8051c264bdf8fe3c08f4930d03da471c6ffd190ee45a23781", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "0688ed2d3dfa47f8051c264bdf8fe3c08f4930d03da471c6ffd190ee45a23781", kill_on_drop: false }`
[INFO] [stdout] 0688ed2d3dfa47f8051c264bdf8fe3c08f4930d03da471c6ffd190ee45a23781
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:94a0c148923f5b2b52a63ef0eeb1882ad339ab61bce784c8077cbe41c61feb6c" "/opt/rustwide/cargo-home/bin/cargo" "+18c1d185ac7a6a3bf399296b35e4b2736809a756" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 67d3cf34869fab87bdb6e0a34efc1f21cb6d4b59dd361528822f28690ea91923
[INFO] running `Command { std: "docker" "start" "-a" "67d3cf34869fab87bdb6e0a34efc1f21cb6d4b59dd361528822f28690ea91923", kill_on_drop: false }`
[INFO] [stderr]    Compiling libc v0.2.177
[INFO] [stderr]    Compiling serde_core v1.0.228
[INFO] [stderr]    Compiling serde v1.0.228
[INFO] [stderr]    Compiling typenum v1.19.0
[INFO] [stderr]     Checking zeroize v1.8.2
[INFO] [stderr]    Compiling parking_lot_core v0.9.12
[INFO] [stderr]    Compiling generic-array v0.14.7
[INFO] [stderr]     Checking bytes v1.11.0
[INFO] [stderr]     Checking memchr v2.7.6
[INFO] [stderr]    Compiling find-msvc-tools v0.1.5
[INFO] [stderr]     Checking log v0.4.28
[INFO] [stderr]    Compiling syn v2.0.110
[INFO] [stderr]     Checking lock_api v0.4.14
[INFO] [stderr]    Compiling icu_properties_data v2.1.1
[INFO] [stderr]    Compiling icu_normalizer_data v2.1.1
[INFO] [stderr]     Checking stable_deref_trait v1.2.1
[INFO] [stderr]     Checking ppv-lite86 v0.2.21
[INFO] [stderr]    Compiling time-core v0.1.6
[INFO] [stderr]     Checking hashbrown v0.16.0
[INFO] [stderr]    Compiling thiserror v2.0.17
[INFO] [stderr]    Compiling time-macros v0.2.24
[INFO] [stderr]    Compiling serde_json v1.0.145
[INFO] [stderr]    Compiling libm v0.2.15
[INFO] [stderr]    Compiling cfg-if v1.0.4
[INFO] [stderr]    Compiling num-traits v0.2.19
[INFO] [stderr]     Checking litemap v0.8.1
[INFO] [stderr]     Checking writeable v0.6.2
[INFO] [stderr]     Checking bitflags v2.10.0
[INFO] [stderr]     Checking pem-rfc7468 v0.7.0
[INFO] [stderr]     Checking der v0.7.10
[INFO] [stderr]    Compiling getrandom v0.3.4
[INFO] [stderr]    Compiling subtle v2.6.1
[INFO] [stderr]     Checking num_threads v0.1.7
[INFO] [stderr]     Checking spin v0.9.8
[INFO] [stderr]     Checking rustls-pki-types v1.13.0
[INFO] [stderr]     Checking http v1.3.1
[INFO] [stderr]     Checking aho-corasick v1.1.4
[INFO] [stderr]    Compiling winnow v0.7.13
[INFO] [stderr]     Checking regex-syntax v0.8.8
[INFO] [stderr]    Compiling indexmap v2.12.0
[INFO] [stderr]    Compiling jobserver v0.1.34
[INFO] [stderr]    Compiling cc v1.2.46
[INFO] [stderr]     Checking http-body v1.0.1
[INFO] [stderr]     Checking spki v0.7.3
[INFO] [stderr]     Checking pkcs8 v0.10.2
[INFO] [stderr]    Compiling rustls v0.23.35
[INFO] [stderr]     Checking block-buffer v0.10.4
[INFO] [stderr]     Checking inout v0.1.4
[INFO] [stderr]    Compiling crypto-common v0.1.7
[INFO] [stderr]    Compiling crossbeam-utils v0.8.21
[INFO] [stderr]     Checking opaque-debug v0.3.1
[INFO] [stderr]    Compiling toml_datetime v0.7.3
[INFO] [stderr]    Compiling digest v0.10.7
[INFO] [stderr]     Checking encoding_rs v0.8.35
[INFO] [stderr]     Checking base16ct v0.2.0
[INFO] [stderr]    Compiling futures-core v0.3.31
[INFO] [stderr]    Compiling rustix v1.1.2
[INFO] [stderr]    Compiling nix v0.30.1
[INFO] [stderr]     Checking sec1 v0.7.3
[INFO] [stderr]    Compiling sha2 v0.10.9
[INFO] [stderr]     Checking num-integer v0.1.46
[INFO] [stderr]     Checking getrandom v0.2.16
[INFO] [stderr]     Checking mio v1.1.0
[INFO] [stderr]     Checking socket2 v0.6.1
[INFO] [stderr]     Checking signal-hook-registry v1.4.6
[INFO] [stderr]     Checking rand_core v0.6.4
[INFO] [stderr]    Compiling mime-infer v4.0.1
[INFO] [stderr]     Checking http-body-util v0.1.3
[INFO] [stderr]     Checking lazy_static v1.5.0
[INFO] [stderr]     Checking rand_chacha v0.3.1
[INFO] [stderr]     Checking rand_core v0.9.3
[INFO] [stderr]     Checking ff v0.13.1
[INFO] [stderr]     Checking group v0.13.0
[INFO] [stderr]     Checking universal-hash v0.5.1
[INFO] [stderr]     Checking cipher v0.4.4
[INFO] [stderr]     Checking rand v0.8.5
[INFO] [stderr]     Checking polyval v0.6.2
[INFO] [stderr]     Checking rand_chacha v0.9.0
[INFO] [stderr]     Checking rand v0.9.2
[INFO] [stderr]     Checking hmac v0.12.1
[INFO] [stderr]     Checking signature v2.2.0
[INFO] [stderr]     Checking ghash v0.5.1
[INFO] [stderr]     Checking ctr v0.9.2
[INFO] [stderr]     Checking aes v0.8.4
[INFO] [stderr]     Checking hkdf v0.12.4
[INFO] [stderr]     Checking aead v0.5.2
[INFO] [stderr]     Checking regex-automata v0.4.13
[INFO] [stderr]     Checking crypto-bigint v0.5.5
[INFO] [stderr]    Compiling cookie v0.18.1
[INFO] [stderr]     Checking deranged v0.5.5
[INFO] [stderr]    Compiling toml_parser v1.0.4
[INFO] [stderr]    Compiling proc-macro2-diagnostics v0.10.1
[INFO] [stderr]    Compiling semver v1.0.27
[INFO] [stderr]    Compiling scopeguard v1.2.0
[INFO] [stderr]     Checking linux-raw-sys v0.11.0
[INFO] [stderr]     Checking simd-adler32 v0.3.7
[INFO] [stderr]     Checking miniz_oxide v0.8.9
[INFO] [stderr]    Compiling rustc_version v0.4.1
[INFO] [stderr]    Compiling ring v0.17.14
[INFO] [stderr]    Compiling zstd-sys v2.0.16+zstd.1.5.7
[INFO] [stderr]    Compiling openssl-sys v0.9.111
[INFO] [stderr]    Compiling toml_edit v0.23.7
[INFO] [stderr]     Checking aes-gcm v0.10.3
[INFO] [stderr]     Checking sha1 v0.10.6
[INFO] [stderr]     Checking crc32fast v1.5.0
[INFO] [stderr]     Checking elliptic-curve v0.13.8
[INFO] [stderr]     Checking headers-core v0.3.0
[INFO] [stderr]    Compiling zerocopy v0.8.27
[INFO] [stderr]     Checking xml v1.1.0
[INFO] [stderr]    Compiling allocator-api2 v0.2.21
[INFO] [stderr]    Compiling proc-macro-crate v3.4.0
[INFO] [stderr]    Compiling percent-encoding v2.3.2
[INFO] [stderr]    Compiling itoa v1.0.15
[INFO] [stderr]    Compiling tinyvec_macros v0.1.1
[INFO] [stderr]    Compiling synstructure v0.13.2
[INFO] [stderr]    Compiling salvo-serde-util v0.84.2
[INFO] [stderr]    Compiling foldhash v0.1.5
[INFO] [stderr]    Compiling futures-sink v0.3.31
[INFO] [stderr]    Compiling once_cell v1.21.3
[INFO] [stderr]    Compiling powerfmt v0.2.0
[INFO] [stderr]    Compiling yansi v1.0.1
[INFO] [stderr]    Compiling hashbrown v0.15.5
[INFO] [stderr]    Compiling tracing-core v0.1.34
[INFO] [stderr]    Compiling tinyvec v1.10.0
[INFO] [stderr]    Compiling form_urlencoded v1.2.2
[INFO] [stderr]     Checking regex v1.12.2
[INFO] [stderr]     Checking flate2 v1.1.5
[INFO] [stderr]     Checking headers v0.4.1
[INFO] [stderr]     Checking brotli v8.0.2
[INFO] [stderr]    Compiling curve25519-dalek v4.1.3
[INFO] [stderr]     Checking chardetng v0.1.17
[INFO] [stderr]     Checking rfc6979 v0.4.0
[INFO] [stderr]    Compiling tokio v1.48.0
[INFO] [stderr]    Compiling concurrent-queue v2.5.0
[INFO] [stderr]     Checking rustls-pemfile v2.2.0
[INFO] [stderr]     Checking content_inspector v0.2.4
[INFO] [stderr]    Compiling crc-catalog v2.4.0
[INFO] [stderr]    Compiling slab v0.4.11
[INFO] [stderr]    Compiling parking v2.2.1
[INFO] [stderr]    Compiling num-bigint-dig v0.8.6
[INFO] [stderr]     Checking tempfile v3.23.0
[INFO] [stderr]    Compiling openssl v0.10.75
[INFO] [stderr]    Compiling futures-task v0.3.31
[INFO] [stderr]    Compiling ryu v1.0.20
[INFO] [stderr]    Compiling futures-io v0.3.31
[INFO] [stderr]    Compiling pin-utils v0.1.0
[INFO] [stderr]    Compiling walkdir v2.5.0
[INFO] [stderr]    Compiling event-listener v5.4.1
[INFO] [stderr]    Compiling crc v3.3.0
[INFO] [stderr]    Compiling time v0.3.44
[INFO] [stderr]    Compiling futures-util v0.3.31
[INFO] [stderr]     Checking ecdsa v0.16.9
[INFO] [stderr]    Compiling unicode-normalization v0.1.25
[INFO] [stderr]    Compiling hashlink v0.10.0
[INFO] [stderr]     Checking primeorder v0.13.6
[INFO] [stderr]    Compiling crossbeam-queue v0.3.12
[INFO] [stderr]     Checking num-iter v0.1.45
[INFO] [stderr]    Compiling serde_derive v1.0.228
[INFO] [stderr]    Compiling zerofrom-derive v0.1.6
[INFO] [stderr]    Compiling yoke-derive v0.8.1
[INFO] [stderr]    Compiling zerovec-derive v0.11.2
[INFO] [stderr]    Compiling displaydoc v0.2.5
[INFO] [stderr]    Compiling tokio-macros v2.6.0
[INFO] [stderr]    Compiling tracing-attributes v0.1.30
[INFO] [stderr]    Compiling futures-macro v0.3.31
[INFO] [stderr]    Compiling thiserror-impl v2.0.17
[INFO] [stderr]    Compiling pin-project-internal v1.1.10
[INFO] [stderr]    Compiling enumflags2_derive v0.7.12
[INFO] [stderr]    Compiling async-trait v0.1.89
[INFO] [stderr]     Checking zerofrom v0.1.6
[INFO] [stderr]     Checking yoke v0.8.1
[INFO] [stderr]     Checking zerotrie v0.2.3
[INFO] [stderr]     Checking zerovec v0.11.5
[INFO] [stderr]     Checking tracing v0.1.41
[INFO] [stderr]     Checking enumflags2 v0.7.12
[INFO] [stderr]    Compiling salvo_macros v0.84.2
[INFO] [stderr]    Compiling curve25519-dalek-derive v0.1.1
[INFO] [stderr]     Checking rustls-webpki v0.103.8
[INFO] [stderr]     Checking tinystr v0.8.2
[INFO] [stderr]     Checking potential_utf v0.1.4
[INFO] [stderr]     Checking pin-project v1.1.10
[INFO] [stderr]     Checking icu_locale_core v2.1.1
[INFO] [stderr]    Compiling openssl-macros v0.1.1
[INFO] [stderr]     Checking num-bigint v0.4.6
[INFO] [stderr]     Checking icu_collections v2.1.1
[INFO] [stderr]    Compiling unicode-properties v0.1.4
[INFO] [stderr]     Checking same-file v1.0.6
[INFO] [stderr]    Compiling unicode-bidi v0.3.18
[INFO] [stderr]    Compiling base64 v0.22.1
[INFO] [stderr]    Compiling native-tls v0.2.14
[INFO] [stderr]     Checking icu_provider v2.1.1
[INFO] [stderr]    Compiling atoi v2.0.0
[INFO] [stderr]    Compiling stringprep v0.1.5
[INFO] [stderr]    Compiling rust-embed-utils v8.9.0
[INFO] [stderr]    Compiling futures-channel v0.3.31
[INFO] [stderr]     Checking icu_properties v2.1.1
[INFO] [stderr]    Compiling tokio-stream v0.1.17
[INFO] [stderr]     Checking ed25519 v2.2.3
[INFO] [stderr]    Compiling md-5 v0.10.6
[INFO] [stderr]     Checking pkcs1 v0.7.5
[INFO] [stderr]    Compiling rust_decimal v1.39.0
[INFO] [stderr]    Compiling home v0.5.12
[INFO] [stderr]    Compiling hex v0.4.3
[INFO] [stderr]    Compiling whoami v1.6.1
[INFO] [stderr]    Compiling dotenvy v0.15.7
[INFO] [stderr]    Compiling byteorder v1.5.0
[INFO] [stderr]     Checking tungstenite v0.28.0
[INFO] [stderr]    Compiling rust-embed-impl v8.9.0
[INFO] [stderr]     Checking castaway v0.2.4
[INFO] [stderr]     Checking p256 v0.13.2
[INFO] [stderr]     Checking p384 v0.13.1
[INFO] [stderr]     Checking ulid v1.2.1
[INFO] [stderr]     Checking multer v3.1.0
[INFO] [stderr]     Checking ed25519-dalek v2.2.0
[INFO] [stderr]     Checking rustls-native-certs v0.8.2
[INFO] [stderr]     Checking pem v3.0.6
[INFO] [stderr]    Compiling uncased v0.9.10
[INFO] [stderr]     Checking str-buf v3.0.3
[INFO] [stderr]     Checking static_assertions v1.1.0
[INFO] [stderr]     Checking unsafe-libyaml-norway v0.2.15
[INFO] [stderr]     Checking toml_write v0.1.2
[INFO] [stderr]     Checking xxhash-rust v0.8.15
[INFO] [stderr]     Checking arrayvec v0.7.6
[INFO] [stderr]     Checking chrono v0.4.42
[INFO] [stderr]     Checking rust-embed v8.9.0
[INFO] [stderr]     Checking futures-executor v0.3.31
[INFO] [stderr]    Compiling salvo-oapi-macros v0.84.2
[INFO] [stderr]    Compiling thiserror-impl v1.0.69
[INFO] [stderr]     Checking etag v4.0.0
[INFO] [stderr]    Compiling pear_codegen v0.2.9
[INFO] [stderr]     Checking smallvec v1.15.1
[INFO] [stderr]     Checking serde_urlencoded v0.7.1
[INFO] [stderr]     Checking multimap v0.10.1
[INFO] [stderr]     Checking serde-xml-rs v0.8.2
[INFO] [stderr]     Checking icu_normalizer v2.1.1
[INFO] [stderr]     Checking serde_spanned v0.6.9
[INFO] [stderr]     Checking either v1.15.0
[INFO] [stderr]     Checking toml_datetime v0.6.11
[INFO] [stderr]     Checking parking_lot v0.12.5
[INFO] [stderr]     Checking serde_norway v0.9.42
[INFO] [stderr]     Checking idna_adapter v1.2.1
[INFO] [stderr]     Checking futures-intrusive v0.5.0
[INFO] [stderr]     Checking idna v1.1.0
[INFO] [stderr]     Checking compact_str v0.9.0
[INFO] [stderr]     Checking tracing-serde v0.2.0
[INFO] [stderr]     Checking url v2.5.7
[INFO] [stderr]     Checking matchers v0.2.0
[INFO] [stderr]     Checking sharded-slab v0.1.7
[INFO] [stderr]     Checking tracing-log v0.2.0
[INFO] [stderr]     Checking thread_local v1.1.9
[INFO] [stderr]    Compiling figment v0.10.19
[INFO] [stderr]     Checking inlinable_string v0.1.15
[INFO] [stderr]     Checking nu-ansi-term v0.50.3
[INFO] [stderr]     Checking iri-string v0.7.9
[INFO] [stderr]     Checking inventory v0.3.21
[INFO] [stderr]     Checking uuid v1.18.1
[INFO] [stderr]     Checking serde_yaml v0.9.34+deprecated
[INFO] [stderr]     Checking rsa v0.9.9
[INFO] [stderr]     Checking pear v0.2.9
[INFO] [stderr]     Checking toml_edit v0.22.27
[INFO] [stderr]     Checking thiserror v1.0.69
[INFO] [stderr]     Checking futures v0.3.31
[INFO] [stderr]     Checking blake2 v0.10.6
[INFO] [stderr]     Checking password-hash v0.5.0
[INFO] [stderr]     Checking socket2 v0.5.10
[INFO] [stderr]     Checking crossbeam-channel v0.5.15
[INFO] [stderr]     Checking arc-swap v1.7.1
[INFO] [stderr]     Checking hashbrown v0.14.5
[INFO] [stderr]     Checking sha1_smol v1.0.1
[INFO] [stderr]     Checking argon2 v0.5.3
[INFO] [stderr]     Checking dashmap v6.1.0
[INFO] [stderr]     Checking simple_asn1 v0.6.3
[INFO] [stderr]    Compiling sqlx-core v0.8.6
[INFO] [stderr]     Checking jsonwebtoken v10.2.0
[INFO] [stderr]     Checking tracing-subscriber v0.3.20
[INFO] [stderr]    Compiling zstd-safe v7.2.4
[INFO] [stderr]     Checking toml v0.8.23
[INFO] [stderr]     Checking zstd v0.13.3
[INFO] [stderr]     Checking tracing-appender v0.2.3
[INFO] [stderr]    Compiling sqlx-postgres v0.8.6
[INFO] [stderr]     Checking tokio-util v0.7.17
[INFO] [stderr]     Checking tokio-rustls v0.26.4
[INFO] [stderr]     Checking tokio-native-tls v0.3.1
[INFO] [stderr]     Checking tokio-tungstenite v0.28.0
[INFO] [stderr]     Checking tokio-retry v0.3.0
[INFO] [stderr]     Checking h2 v0.4.12
[INFO] [stderr]     Checking tower v0.5.2
[INFO] [stderr]     Checking combine v4.6.7
[INFO] [stderr]     Checking tower-http v0.6.6
[INFO] [stderr]    Compiling sqlx-macros-core v0.8.6
[INFO] [stderr]     Checking hyper v1.8.1
[INFO] [stderr]     Checking redis v0.26.1
[INFO] [stderr]    Compiling sqlx-macros v0.8.6
[INFO] [stderr]     Checking hyper-util v0.1.18
[INFO] [stderr]     Checking sqlx v0.8.6
[INFO] [stderr]     Checking salvo_core v0.84.2
[INFO] [stderr]     Checking hyper-rustls v0.27.7
[INFO] [stderr]     Checking hyper-tls v0.6.0
[INFO] [stderr]     Checking reqwest v0.12.24
[INFO] [stderr]     Checking salvo-oapi v0.84.2
[INFO] [stderr]     Checking salvo-jwt-auth v0.84.2
[INFO] [stderr]     Checking salvo_extra v0.84.2
[INFO] [stderr]     Checking salvo-cors v0.84.2
[INFO] [stderr]     Checking salvo v0.84.2
[INFO] [stderr]     Checking im-server v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] error: set `DATABASE_URL` to use query macros online, or run `cargo sqlx prepare` to update the query cache
[INFO] [stdout]    --> src/api/im_group_api.rs:526:51
[INFO] [stdout]     |
[INFO] [stdout] 526 |                       if let Ok(db_subscriptions) = sqlx::query_scalar!(
[INFO] [stdout]     |  ___________________________________________________^
[INFO] [stdout] 527 | |                         r#"SELECT subscription_id FROM subscriptions
[INFO] [stdout] 528 | |                          WHERE user_id = $1
[INFO] [stdout] 529 | |                          AND created_at >= NOW() - INTERVAL '24 HOURS'
[INFO] [stdout] 530 | |                          ORDER BY created_at DESC"#,
[INFO] [stdout] 531 | |                         member_user.id
[INFO] [stdout] 532 | |                     )
[INFO] [stdout]     | |_____________________^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `$crate::sqlx_macros::expand_query` which comes from the expansion of the macro `sqlx::query_scalar` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: set `DATABASE_URL` to use query macros online, or run `cargo sqlx prepare` to update the query cache
[INFO] [stdout]    --> src/api/im_group_api.rs:526:51
[INFO] [stdout]     |
[INFO] [stdout] 526 |                       if let Ok(db_subscriptions) = sqlx::query_scalar!(
[INFO] [stdout]     |  ___________________________________________________^
[INFO] [stdout] 527 | |                         r#"SELECT subscription_id FROM subscriptions
[INFO] [stdout] 528 | |                          WHERE user_id = $1
[INFO] [stdout] 529 | |                          AND created_at >= NOW() - INTERVAL '24 HOURS'
[INFO] [stdout] 530 | |                          ORDER BY created_at DESC"#,
[INFO] [stdout] 531 | |                         member_user.id
[INFO] [stdout] 532 | |                     )
[INFO] [stdout]     | |_____________________^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `$crate::sqlx_macros::expand_query` which comes from the expansion of the macro `sqlx::query_scalar` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: set `DATABASE_URL` to use query macros online, or run `cargo sqlx prepare` to update the query cache
[INFO] [stdout]    --> src/api/im_message_api.rs:156:55
[INFO] [stdout]     |
[INFO] [stdout] 156 |                           if let Ok(db_subscriptions) = sqlx::query_scalar!(
[INFO] [stdout]     |  _______________________________________________________^
[INFO] [stdout] 157 | |                             r#"
[INFO] [stdout] 158 | |                                 SELECT subscription_id FROM subscriptions
[INFO] [stdout] 159 | |                                 WHERE user_id = $1
[INFO] [stdout] ...   |
[INFO] [stdout] 163 | |                             to_user.id
[INFO] [stdout] 164 | |                         )
[INFO] [stdout]     | |_________________________^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `$crate::sqlx_macros::expand_query` which comes from the expansion of the macro `sqlx::query_scalar` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: set `DATABASE_URL` to use query macros online, or run `cargo sqlx prepare` to update the query cache
[INFO] [stdout]    --> src/api/im_message_api.rs:156:55
[INFO] [stdout]     |
[INFO] [stdout] 156 |                           if let Ok(db_subscriptions) = sqlx::query_scalar!(
[INFO] [stdout]     |  _______________________________________________________^
[INFO] [stdout] 157 | |                             r#"
[INFO] [stdout] 158 | |                                 SELECT subscription_id FROM subscriptions
[INFO] [stdout] 159 | |                                 WHERE user_id = $1
[INFO] [stdout] ...   |
[INFO] [stdout] 163 | |                             to_user.id
[INFO] [stdout] 164 | |                         )
[INFO] [stdout]     | |_________________________^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `$crate::sqlx_macros::expand_query` which comes from the expansion of the macro `sqlx::query_scalar` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: set `DATABASE_URL` to use query macros online, or run `cargo sqlx prepare` to update the query cache
[INFO] [stdout]   --> src/api/subcription_api.rs:24:33
[INFO] [stdout]    |
[INFO] [stdout] 24 |       let user_db_id: i64 = match sqlx::query_scalar!(
[INFO] [stdout]    |  _________________________________^
[INFO] [stdout] 25 | |         "SELECT user_id FROM subscriptions WHERE subscription_id = $1",
[INFO] [stdout] 26 | |         subscription_id
[INFO] [stdout] 27 | |     )
[INFO] [stdout]    | |_____^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this error originates in the macro `$crate::sqlx_macros::expand_query` which comes from the expansion of the macro `sqlx::query_scalar` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: set `DATABASE_URL` to use query macros online, or run `cargo sqlx prepare` to update the query cache
[INFO] [stdout]   --> src/api/subcription_api.rs:24:33
[INFO] [stdout]    |
[INFO] [stdout] 24 |       let user_db_id: i64 = match sqlx::query_scalar!(
[INFO] [stdout]    |  _________________________________^
[INFO] [stdout] 25 | |         "SELECT user_id FROM subscriptions WHERE subscription_id = $1",
[INFO] [stdout] 26 | |         subscription_id
[INFO] [stdout] 27 | |     )
[INFO] [stdout]    | |_____^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this error originates in the macro `$crate::sqlx_macros::expand_query` which comes from the expansion of the macro `sqlx::query_scalar` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: set `DATABASE_URL` to use query macros online, or run `cargo sqlx prepare` to update the query cache
[INFO] [stdout]   --> src/service/friend_service.rs:17:5
[INFO] [stdout]    |
[INFO] [stdout] 17 | /     sqlx::query!(
[INFO] [stdout] 18 | |         r#"
[INFO] [stdout] 19 | |             INSERT INTO im_friendship(owner_id, to_id, remark, del_flag, black , sequence, add_source, version)
[INFO] [stdout] 20 | |             VALUES($1, $2, NULL, 1, 1, $3, 'api' , 1)
[INFO] [stdout] ...  |
[INFO] [stdout] 29 | |         timestamp
[INFO] [stdout] 30 | |     )
[INFO] [stdout]    | |_____^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this error originates in the macro `$crate::sqlx_macros::expand_query` which comes from the expansion of the macro `sqlx::query` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: set `DATABASE_URL` to use query macros online, or run `cargo sqlx prepare` to update the query cache
[INFO] [stdout]   --> src/service/friend_service.rs:34:5
[INFO] [stdout]    |
[INFO] [stdout] 34 | /     sqlx::query!(
[INFO] [stdout] 35 | |         r#"
[INFO] [stdout] 36 | |             INSERT INTO im_friendship(owner_id, to_id, remark, del_flag, black , sequence, add_source, version)
[INFO] [stdout] 37 | |             VALUES($1, $2, NULL, 1, 1, $3,'api', 1)
[INFO] [stdout] ...  |
[INFO] [stdout] 46 | |         timestamp
[INFO] [stdout] 47 | |     )
[INFO] [stdout]    | |_____^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this error originates in the macro `$crate::sqlx_macros::expand_query` which comes from the expansion of the macro `sqlx::query` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: set `DATABASE_URL` to use query macros online, or run `cargo sqlx prepare` to update the query cache
[INFO] [stdout]   --> src/service/friend_service.rs:58:5
[INFO] [stdout]    |
[INFO] [stdout] 58 | /     sqlx::query!(
[INFO] [stdout] 59 | |         r#"UPDATE im_friendship
[INFO] [stdout] 60 | |         SET del_flag = 0, update_time = $1, version = version + 1
[INFO] [stdout] 61 | |         WHERE((owner_id = $2 AND to_id = $3) OR (owner_id = $3 AND to_id = $2))
[INFO] [stdout] ...  |
[INFO] [stdout] 66 | |         friend_id
[INFO] [stdout] 67 | |     )
[INFO] [stdout]    | |_____^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this error originates in the macro `$crate::sqlx_macros::expand_query` which comes from the expansion of the macro `sqlx::query` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: set `DATABASE_URL` to use query macros online, or run `cargo sqlx prepare` to update the query cache
[INFO] [stdout]   --> src/service/friend_service.rs:17:5
[INFO] [stdout]    |
[INFO] [stdout] 17 | /     sqlx::query!(
[INFO] [stdout] 18 | |         r#"
[INFO] [stdout] 19 | |             INSERT INTO im_friendship(owner_id, to_id, remark, del_flag, black , sequence, add_source, version)
[INFO] [stdout] 20 | |             VALUES($1, $2, NULL, 1, 1, $3, 'api' , 1)
[INFO] [stdout] ...  |
[INFO] [stdout] 29 | |         timestamp
[INFO] [stdout] 30 | |     )
[INFO] [stdout]    | |_____^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this error originates in the macro `$crate::sqlx_macros::expand_query` which comes from the expansion of the macro `sqlx::query` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: set `DATABASE_URL` to use query macros online, or run `cargo sqlx prepare` to update the query cache
[INFO] [stdout]   --> src/service/friend_service.rs:77:19
[INFO] [stdout]    |
[INFO] [stdout] 77 |       let friends = sqlx::query_as!(SafeUser,
[INFO] [stdout]    |  ___________________^
[INFO] [stdout] 78 | |         r#"SELECT u.id, u.open_id, u.name, u.email, u.file_name, u.abstract as abstract_field, u.phone, u.status, u.gender
[INFO] [stdout] 79 | |         FROM im_friendship f
[INFO] [stdout] 80 | |         INNER JOIN users u ON f.to_id = u.open_id
[INFO] [stdout] ...  |
[INFO] [stdout] 87 | |         user_id
[INFO] [stdout] 88 | |     )
[INFO] [stdout]    | |_____^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this error originates in the macro `$crate::sqlx_macros::expand_query` which comes from the expansion of the macro `sqlx::query_as` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: set `DATABASE_URL` to use query macros online, or run `cargo sqlx prepare` to update the query cache
[INFO] [stdout]   --> src/service/friend_service.rs:34:5
[INFO] [stdout]    |
[INFO] [stdout] 34 | /     sqlx::query!(
[INFO] [stdout] 35 | |         r#"
[INFO] [stdout] 36 | |             INSERT INTO im_friendship(owner_id, to_id, remark, del_flag, black , sequence, add_source, version)
[INFO] [stdout] 37 | |             VALUES($1, $2, NULL, 1, 1, $3,'api', 1)
[INFO] [stdout] ...  |
[INFO] [stdout] 46 | |         timestamp
[INFO] [stdout] 47 | |     )
[INFO] [stdout]    | |_____^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this error originates in the macro `$crate::sqlx_macros::expand_query` which comes from the expansion of the macro `sqlx::query` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: set `DATABASE_URL` to use query macros online, or run `cargo sqlx prepare` to update the query cache
[INFO] [stdout]   --> src/service/friend_service.rs:58:5
[INFO] [stdout]    |
[INFO] [stdout] 58 | /     sqlx::query!(
[INFO] [stdout] 59 | |         r#"UPDATE im_friendship
[INFO] [stdout] 60 | |         SET del_flag = 0, update_time = $1, version = version + 1
[INFO] [stdout] 61 | |         WHERE((owner_id = $2 AND to_id = $3) OR (owner_id = $3 AND to_id = $2))
[INFO] [stdout] ...  |
[INFO] [stdout] 66 | |         friend_id
[INFO] [stdout] 67 | |     )
[INFO] [stdout]    | |_____^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this error originates in the macro `$crate::sqlx_macros::expand_query` which comes from the expansion of the macro `sqlx::query` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: set `DATABASE_URL` to use query macros online, or run `cargo sqlx prepare` to update the query cache
[INFO] [stdout]    --> src/service/friend_service.rs:98:18
[INFO] [stdout]     |
[INFO] [stdout]  98 |       let result = sqlx::query_scalar!(
[INFO] [stdout]     |  __________________^
[INFO] [stdout]  99 | |         r#"SELECT COUNT(*) as "count!: i64" FROM im_friendship
[INFO] [stdout] 100 | |         WHERE((owner_id = $1 AND to_id = $2) OR (owner_id = $2 AND to_id = $1))
[INFO] [stdout] 101 | |         AND (del_flag IS NULL OR del_flag = 1)
[INFO] [stdout] ...   |
[INFO] [stdout] 104 | |         friend_id,
[INFO] [stdout] 105 | |     )
[INFO] [stdout]     | |_____^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `$crate::sqlx_macros::expand_query` which comes from the expansion of the macro `sqlx::query_scalar` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: set `DATABASE_URL` to use query macros online, or run `cargo sqlx prepare` to update the query cache
[INFO] [stdout]   --> src/service/friend_service.rs:77:19
[INFO] [stdout]    |
[INFO] [stdout] 77 |       let friends = sqlx::query_as!(SafeUser,
[INFO] [stdout]    |  ___________________^
[INFO] [stdout] 78 | |         r#"SELECT u.id, u.open_id, u.name, u.email, u.file_name, u.abstract as abstract_field, u.phone, u.status, u.gender
[INFO] [stdout] 79 | |         FROM im_friendship f
[INFO] [stdout] 80 | |         INNER JOIN users u ON f.to_id = u.open_id
[INFO] [stdout] ...  |
[INFO] [stdout] 87 | |         user_id
[INFO] [stdout] 88 | |     )
[INFO] [stdout]    | |_____^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this error originates in the macro `$crate::sqlx_macros::expand_query` which comes from the expansion of the macro `sqlx::query_as` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: set `DATABASE_URL` to use query macros online, or run `cargo sqlx prepare` to update the query cache
[INFO] [stdout]    --> src/service/friend_service.rs:98:18
[INFO] [stdout]     |
[INFO] [stdout]  98 |       let result = sqlx::query_scalar!(
[INFO] [stdout]     |  __________________^
[INFO] [stdout]  99 | |         r#"SELECT COUNT(*) as "count!: i64" FROM im_friendship
[INFO] [stdout] 100 | |         WHERE((owner_id = $1 AND to_id = $2) OR (owner_id = $2 AND to_id = $1))
[INFO] [stdout] 101 | |         AND (del_flag IS NULL OR del_flag = 1)
[INFO] [stdout] ...   |
[INFO] [stdout] 104 | |         friend_id,
[INFO] [stdout] 105 | |     )
[INFO] [stdout]     | |_____^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `$crate::sqlx_macros::expand_query` which comes from the expansion of the macro `sqlx::query_scalar` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: set `DATABASE_URL` to use query macros online, or run `cargo sqlx prepare` to update the query cache
[INFO] [stdout]   --> src/service/im_friendship_service.rs:12:18
[INFO] [stdout]    |
[INFO] [stdout] 12 |       let result = sqlx::query_scalar!(
[INFO] [stdout]    |  __________________^
[INFO] [stdout] 13 | |         r#"
[INFO] [stdout] 14 | |             SELECT COUNT(*) "count!: i64" FROM im_friendship
[INFO] [stdout] 15 | |             WHERE ((owner_id = $1 AND to_id = $2) OR (owner_id = $2 AND to_id = $1))
[INFO] [stdout] ...  |
[INFO] [stdout] 20 | |         to_id
[INFO] [stdout] 21 | |     )
[INFO] [stdout]    | |_____^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this error originates in the macro `$crate::sqlx_macros::expand_query` which comes from the expansion of the macro `sqlx::query_scalar` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: set `DATABASE_URL` to use query macros online, or run `cargo sqlx prepare` to update the query cache
[INFO] [stdout]   --> src/service/im_friendship_service.rs:41:24
[INFO] [stdout]    |
[INFO] [stdout] 41 |           let user_row = sqlx::query!(
[INFO] [stdout]    |  ________________________^
[INFO] [stdout] 42 | |             r#"SELECT
[INFO] [stdout] 43 | |                 u1.open_id as owner_open_id, u1.name as owner_name, u1.phone as owner_phone,
[INFO] [stdout] 44 | |                 u2.open_id as to_open_id, u2.name as to_name, u2.phone as to_phone
[INFO] [stdout] ...  |
[INFO] [stdout] 52 | |             to_id
[INFO] [stdout] 53 | |         )
[INFO] [stdout]    | |_________^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this error originates in the macro `$crate::sqlx_macros::expand_query` which comes from the expansion of the macro `sqlx::query` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: set `DATABASE_URL` to use query macros online, or run `cargo sqlx prepare` to update the query cache
[INFO] [stdout]    --> src/service/im_friendship_service.rs:116:40
[INFO] [stdout]     |
[INFO] [stdout] 116 |                       let check_result = sqlx::query_scalar!(
[INFO] [stdout]     |  ________________________________________^
[INFO] [stdout] 117 | |                         r#"SELECT COUNT(*) "count!: i64" FROM im_friendship
[INFO] [stdout] 118 | |                          WHERE ((owner_id = $1 AND to_id = $2) OR (owner_id = $2 AND to_id = $1))
[INFO] [stdout] 119 | |                          AND (del_flag IS NULL OR del_flag = 1)
[INFO] [stdout] ...   |
[INFO] [stdout] 122 | |                         tid
[INFO] [stdout] 123 | |                     )
[INFO] [stdout]     | |_____________________^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `$crate::sqlx_macros::expand_query` which comes from the expansion of the macro `sqlx::query_scalar` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: set `DATABASE_URL` to use query macros online, or run `cargo sqlx prepare` to update the query cache
[INFO] [stdout]    --> src/service/im_friendship_service.rs:152:19
[INFO] [stdout]     |
[INFO] [stdout] 152 |       let friends = sqlx::query_as!(
[INFO] [stdout]     |  ___________________^
[INFO] [stdout] 153 | |         ImFriendship,
[INFO] [stdout] 154 | |         r#"
[INFO] [stdout] 155 | |             SELECT owner_id, to_id, remark, del_flag, black, create_time, update_time,
[INFO] [stdout] ...   |
[INFO] [stdout] 163 | |         owner_id
[INFO] [stdout] 164 | |     )
[INFO] [stdout]     | |_____^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `$crate::sqlx_macros::expand_query` which comes from the expansion of the macro `sqlx::query_as` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: set `DATABASE_URL` to use query macros online, or run `cargo sqlx prepare` to update the query cache
[INFO] [stdout]   --> src/service/im_friendship_service.rs:12:18
[INFO] [stdout]    |
[INFO] [stdout] 12 |       let result = sqlx::query_scalar!(
[INFO] [stdout]    |  __________________^
[INFO] [stdout] 13 | |         r#"
[INFO] [stdout] 14 | |             SELECT COUNT(*) "count!: i64" FROM im_friendship
[INFO] [stdout] 15 | |             WHERE ((owner_id = $1 AND to_id = $2) OR (owner_id = $2 AND to_id = $1))
[INFO] [stdout] ...  |
[INFO] [stdout] 20 | |         to_id
[INFO] [stdout] 21 | |     )
[INFO] [stdout]    | |_____^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this error originates in the macro `$crate::sqlx_macros::expand_query` which comes from the expansion of the macro `sqlx::query_scalar` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: set `DATABASE_URL` to use query macros online, or run `cargo sqlx prepare` to update the query cache
[INFO] [stdout]    --> src/service/im_friendship_service.rs:179:24
[INFO] [stdout]     |
[INFO] [stdout] 179 |       let user_by_name = sqlx::query_scalar!(
[INFO] [stdout]     |  ________________________^
[INFO] [stdout] 180 | |         r#"
[INFO] [stdout] 181 | |             SELECT open_id FROM users WHERE name = $1
[INFO] [stdout] 182 | |             AND (status IS NULL OR status = 1)
[INFO] [stdout] ...   |
[INFO] [stdout] 185 | |         owner_id
[INFO] [stdout] 186 | |     )
[INFO] [stdout]     | |_____^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `$crate::sqlx_macros::expand_query` which comes from the expansion of the macro `sqlx::query_scalar` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: set `DATABASE_URL` to use query macros online, or run `cargo sqlx prepare` to update the query cache
[INFO] [stdout]    --> src/service/im_friendship_service.rs:196:27
[INFO] [stdout]     |
[INFO] [stdout] 196 |               let friends = sqlx::query_as!(
[INFO] [stdout]     |  ___________________________^
[INFO] [stdout] 197 | |                 ImFriendship,
[INFO] [stdout] 198 | |                 r#"
[INFO] [stdout] 199 | |                     SELECT owner_id, to_id, remark, del_flag, black, create_time, update_time,
[INFO] [stdout] ...   |
[INFO] [stdout] 207 | |                 open_id
[INFO] [stdout] 208 | |             )
[INFO] [stdout]     | |_____________^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `$crate::sqlx_macros::expand_query` which comes from the expansion of the macro `sqlx::query_as` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: set `DATABASE_URL` to use query macros online, or run `cargo sqlx prepare` to update the query cache
[INFO] [stdout]    --> src/service/im_friendship_service.rs:228:27
[INFO] [stdout]     |
[INFO] [stdout] 228 |       let user_by_open_id = sqlx::query_scalar!(
[INFO] [stdout]     |  ___________________________^
[INFO] [stdout] 229 | |         r#"
[INFO] [stdout] 230 | |             SELECT name FROM users WHERE open_id = $1
[INFO] [stdout] 231 | |             AND (status IS NULL OR status = 1) LIMIT 1
[INFO] [stdout] 232 | |         "#,
[INFO] [stdout] 233 | |         owner_id
[INFO] [stdout] 234 | |     )
[INFO] [stdout]     | |_____^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `$crate::sqlx_macros::expand_query` which comes from the expansion of the macro `sqlx::query_scalar` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: set `DATABASE_URL` to use query macros online, or run `cargo sqlx prepare` to update the query cache
[INFO] [stdout]   --> src/service/im_friendship_service.rs:41:24
[INFO] [stdout]    |
[INFO] [stdout] 41 |           let user_row = sqlx::query!(
[INFO] [stdout]    |  ________________________^
[INFO] [stdout] 42 | |             r#"SELECT
[INFO] [stdout] 43 | |                 u1.open_id as owner_open_id, u1.name as owner_name, u1.phone as owner_phone,
[INFO] [stdout] 44 | |                 u2.open_id as to_open_id, u2.name as to_name, u2.phone as to_phone
[INFO] [stdout] ...  |
[INFO] [stdout] 52 | |             to_id
[INFO] [stdout] 53 | |         )
[INFO] [stdout]    | |_________^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this error originates in the macro `$crate::sqlx_macros::expand_query` which comes from the expansion of the macro `sqlx::query` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: set `DATABASE_URL` to use query macros online, or run `cargo sqlx prepare` to update the query cache
[INFO] [stdout]    --> src/service/im_friendship_service.rs:116:40
[INFO] [stdout]     |
[INFO] [stdout] 116 |                       let check_result = sqlx::query_scalar!(
[INFO] [stdout]     |  ________________________________________^
[INFO] [stdout] 117 | |                         r#"SELECT COUNT(*) "count!: i64" FROM im_friendship
[INFO] [stdout] 118 | |                          WHERE ((owner_id = $1 AND to_id = $2) OR (owner_id = $2 AND to_id = $1))
[INFO] [stdout] 119 | |                          AND (del_flag IS NULL OR del_flag = 1)
[INFO] [stdout] ...   |
[INFO] [stdout] 122 | |                         tid
[INFO] [stdout] 123 | |                     )
[INFO] [stdout]     | |_____________________^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `$crate::sqlx_macros::expand_query` which comes from the expansion of the macro `sqlx::query_scalar` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: set `DATABASE_URL` to use query macros online, or run `cargo sqlx prepare` to update the query cache
[INFO] [stdout]    --> src/service/im_friendship_service.rs:244:27
[INFO] [stdout]     |
[INFO] [stdout] 244 |               let friends = sqlx::query_as!(
[INFO] [stdout]     |  ___________________________^
[INFO] [stdout] 245 | |                 ImFriendship,
[INFO] [stdout] 246 | |                 r#"
[INFO] [stdout] 247 | |                     SELECT owner_id, to_id, remark, del_flag, black, create_time, update_time,
[INFO] [stdout] ...   |
[INFO] [stdout] 255 | |                 name
[INFO] [stdout] 256 | |             )
[INFO] [stdout]     | |_____________^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `$crate::sqlx_macros::expand_query` which comes from the expansion of the macro `sqlx::query_as` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: set `DATABASE_URL` to use query macros online, or run `cargo sqlx prepare` to update the query cache
[INFO] [stdout]    --> src/service/im_friendship_service.rs:304:5
[INFO] [stdout]     |
[INFO] [stdout] 304 | /     sqlx::query!(
[INFO] [stdout] 305 | |         r#"
[INFO] [stdout] 306 | |             INSERT INTO im_friendship
[INFO] [stdout] 307 | |             (owner_id, to_id, remark, del_flag, black, create_time, update_time, sequence, add_source, version)
[INFO] [stdout] ...   |
[INFO] [stdout] 321 | |          add_source,
[INFO] [stdout] 322 | |     )
[INFO] [stdout]     | |_____^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `$crate::sqlx_macros::expand_query` which comes from the expansion of the macro `sqlx::query` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: set `DATABASE_URL` to use query macros online, or run `cargo sqlx prepare` to update the query cache
[INFO] [stdout]    --> src/service/im_friendship_service.rs:152:19
[INFO] [stdout]     |
[INFO] [stdout] 152 |       let friends = sqlx::query_as!(
[INFO] [stdout]     |  ___________________^
[INFO] [stdout] 153 | |         ImFriendship,
[INFO] [stdout] 154 | |         r#"
[INFO] [stdout] 155 | |             SELECT owner_id, to_id, remark, del_flag, black, create_time, update_time,
[INFO] [stdout] ...   |
[INFO] [stdout] 163 | |         owner_id
[INFO] [stdout] 164 | |     )
[INFO] [stdout]     | |_____^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `$crate::sqlx_macros::expand_query` which comes from the expansion of the macro `sqlx::query_as` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: set `DATABASE_URL` to use query macros online, or run `cargo sqlx prepare` to update the query cache
[INFO] [stdout]    --> src/service/im_friendship_service.rs:326:5
[INFO] [stdout]     |
[INFO] [stdout] 326 | /     sqlx::query!(
[INFO] [stdout] 327 | |         r#"
[INFO] [stdout] 328 | |             INSERT INTO im_friendship
[INFO] [stdout] 329 | |             (owner_id, to_id, remark, del_flag, black, create_time, update_time, sequence, add_source, version)
[INFO] [stdout] ...   |
[INFO] [stdout] 343 | |         add_source,
[INFO] [stdout] 344 | |     )
[INFO] [stdout]     | |_____^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `$crate::sqlx_macros::expand_query` which comes from the expansion of the macro `sqlx::query` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: set `DATABASE_URL` to use query macros online, or run `cargo sqlx prepare` to update the query cache
[INFO] [stdout]    --> src/service/im_friendship_service.rs:357:26
[INFO] [stdout]     |
[INFO] [stdout] 357 |       let existing_count = sqlx::query_scalar!(
[INFO] [stdout]     |  __________________________^
[INFO] [stdout] 358 | |         r#"
[INFO] [stdout] 359 | |             SELECT COUNT(*) as "count!: i64" FROM im_friendship
[INFO] [stdout] 360 | |             WHERE ((owner_id = $1 AND to_id = $2) OR (owner_id = $2 AND to_id = $1))
[INFO] [stdout] ...   |
[INFO] [stdout] 364 | |         to_id
[INFO] [stdout] 365 | |     )
[INFO] [stdout]     | |_____^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `$crate::sqlx_macros::expand_query` which comes from the expansion of the macro `sqlx::query_scalar` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: set `DATABASE_URL` to use query macros online, or run `cargo sqlx prepare` to update the query cache
[INFO] [stdout]    --> src/service/im_friendship_service.rs:375:18
[INFO] [stdout]     |
[INFO] [stdout] 375 |       let result = sqlx::query!(
[INFO] [stdout]     |  __________________^
[INFO] [stdout] 376 | |         r#"
[INFO] [stdout] 377 | |             UPDATE im_friendship
[INFO] [stdout] 378 | |             SET del_flag = 0, update_time = $1, version = version + 1
[INFO] [stdout] ...   |
[INFO] [stdout] 384 | |         to_id
[INFO] [stdout] 385 | |     )
[INFO] [stdout]     | |_____^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `$crate::sqlx_macros::expand_query` which comes from the expansion of the macro `sqlx::query` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: set `DATABASE_URL` to use query macros online, or run `cargo sqlx prepare` to update the query cache
[INFO] [stdout]    --> src/service/im_friendship_service.rs:179:24
[INFO] [stdout]     |
[INFO] [stdout] 179 |       let user_by_name = sqlx::query_scalar!(
[INFO] [stdout]     |  ________________________^
[INFO] [stdout] 180 | |         r#"
[INFO] [stdout] 181 | |             SELECT open_id FROM users WHERE name = $1
[INFO] [stdout] 182 | |             AND (status IS NULL OR status = 1)
[INFO] [stdout] ...   |
[INFO] [stdout] 185 | |         owner_id
[INFO] [stdout] 186 | |     )
[INFO] [stdout]     | |_____^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `$crate::sqlx_macros::expand_query` which comes from the expansion of the macro `sqlx::query_scalar` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: set `DATABASE_URL` to use query macros online, or run `cargo sqlx prepare` to update the query cache
[INFO] [stdout]    --> src/service/im_friendship_service.rs:196:27
[INFO] [stdout]     |
[INFO] [stdout] 196 |               let friends = sqlx::query_as!(
[INFO] [stdout]     |  ___________________________^
[INFO] [stdout] 197 | |                 ImFriendship,
[INFO] [stdout] 198 | |                 r#"
[INFO] [stdout] 199 | |                     SELECT owner_id, to_id, remark, del_flag, black, create_time, update_time,
[INFO] [stdout] ...   |
[INFO] [stdout] 207 | |                 open_id
[INFO] [stdout] 208 | |             )
[INFO] [stdout]     | |_____________^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `$crate::sqlx_macros::expand_query` which comes from the expansion of the macro `sqlx::query_as` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: set `DATABASE_URL` to use query macros online, or run `cargo sqlx prepare` to update the query cache
[INFO] [stdout]    --> src/service/im_friendship_service.rs:414:5
[INFO] [stdout]     |
[INFO] [stdout] 414 | /     sqlx::query!(
[INFO] [stdout] 415 | |         r#"
[INFO] [stdout] 416 | |             UPDATE im_friendship
[INFO] [stdout] 417 | |             SET remark = $1, update_time = $2, version = version + 1
[INFO] [stdout] ...   |
[INFO] [stdout] 424 | |         to_id
[INFO] [stdout] 425 | |     )
[INFO] [stdout]     | |_____^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `$crate::sqlx_macros::expand_query` which comes from the expansion of the macro `sqlx::query` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: set `DATABASE_URL` to use query macros online, or run `cargo sqlx prepare` to update the query cache
[INFO] [stdout]    --> src/service/im_friendship_service.rs:437:25
[INFO] [stdout]     |
[INFO] [stdout] 437 |       let current_black = sqlx::query_scalar!(
[INFO] [stdout]     |  _________________________^
[INFO] [stdout] 438 | |         r#"
[INFO] [stdout] 439 | |             SELECT black FROM im_friendship WHERE owner_id = $1 AND to_id = $2
[INFO] [stdout] 440 | |         "#,
[INFO] [stdout] 441 | |         owner_id,
[INFO] [stdout] 442 | |         to_id
[INFO] [stdout] 443 | |     )
[INFO] [stdout]     | |_____^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `$crate::sqlx_macros::expand_query` which comes from the expansion of the macro `sqlx::query_scalar` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: set `DATABASE_URL` to use query macros online, or run `cargo sqlx prepare` to update the query cache
[INFO] [stdout]    --> src/service/im_friendship_service.rs:456:5
[INFO] [stdout]     |
[INFO] [stdout] 456 | /     sqlx::query!(
[INFO] [stdout] 457 | |         r#"
[INFO] [stdout] 458 | |             UPDATE im_friendship
[INFO] [stdout] 459 | |             SET black = $1, black_sequence = $2, update_time = $3, version = version + 1
[INFO] [stdout] ...   |
[INFO] [stdout] 470 | |         to_id
[INFO] [stdout] 471 | |     )
[INFO] [stdout]     | |_____^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `$crate::sqlx_macros::expand_query` which comes from the expansion of the macro `sqlx::query` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: set `DATABASE_URL` to use query macros online, or run `cargo sqlx prepare` to update the query cache
[INFO] [stdout]    --> src/service/im_friendship_service.rs:228:27
[INFO] [stdout]     |
[INFO] [stdout] 228 |       let user_by_open_id = sqlx::query_scalar!(
[INFO] [stdout]     |  ___________________________^
[INFO] [stdout] 229 | |         r#"
[INFO] [stdout] 230 | |             SELECT name FROM users WHERE open_id = $1
[INFO] [stdout] 231 | |             AND (status IS NULL OR status = 1) LIMIT 1
[INFO] [stdout] 232 | |         "#,
[INFO] [stdout] 233 | |         owner_id
[INFO] [stdout] 234 | |     )
[INFO] [stdout]     | |_____^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `$crate::sqlx_macros::expand_query` which comes from the expansion of the macro `sqlx::query_scalar` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: set `DATABASE_URL` to use query macros online, or run `cargo sqlx prepare` to update the query cache
[INFO] [stdout]    --> src/service/im_friendship_service.rs:506:5
[INFO] [stdout]     |
[INFO] [stdout] 506 | /     sqlx::query!(
[INFO] [stdout] 507 | |         r#"
[INFO] [stdout] 508 | |             DELETE FROM im_friendship_request
[INFO] [stdout] 509 | |             WHERE from_id = $1 AND to_id = $2 AND approve_status = 2
[INFO] [stdout] ...   |
[INFO] [stdout] 512 | |         request.to_id
[INFO] [stdout] 513 | |     )
[INFO] [stdout]     | |_____^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `$crate::sqlx_macros::expand_query` which comes from the expansion of the macro `sqlx::query` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: set `DATABASE_URL` to use query macros online, or run `cargo sqlx prepare` to update the query cache
[INFO] [stdout]    --> src/service/im_friendship_service.rs:244:27
[INFO] [stdout]     |
[INFO] [stdout] 244 |               let friends = sqlx::query_as!(
[INFO] [stdout]     |  ___________________________^
[INFO] [stdout] 245 | |                 ImFriendship,
[INFO] [stdout] 246 | |                 r#"
[INFO] [stdout] 247 | |                     SELECT owner_id, to_id, remark, del_flag, black, create_time, update_time,
[INFO] [stdout] ...   |
[INFO] [stdout] 255 | |                 name
[INFO] [stdout] 256 | |             )
[INFO] [stdout]     | |_____________^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `$crate::sqlx_macros::expand_query` which comes from the expansion of the macro `sqlx::query_as` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: set `DATABASE_URL` to use query macros online, or run `cargo sqlx prepare` to update the query cache
[INFO] [stdout]    --> src/service/im_friendship_service.rs:521:18
[INFO] [stdout]     |
[INFO] [stdout] 521 |       let result = sqlx::query!(
[INFO] [stdout]     |  __________________^
[INFO] [stdout] 522 | |         r#"
[INFO] [stdout] 523 | |             INSERT INTO im_friendship_request
[INFO] [stdout] 524 | |             (id, from_id, to_id, remark, read_status, add_source, message, approve_status,
[INFO] [stdout] ...   |
[INFO] [stdout] 540 | |         now,
[INFO] [stdout] 541 | |     )
[INFO] [stdout]     | |_____^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `$crate::sqlx_macros::expand_query` which comes from the expansion of the macro `sqlx::query` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: set `DATABASE_URL` to use query macros online, or run `cargo sqlx prepare` to update the query cache
[INFO] [stdout]    --> src/service/im_friendship_service.rs:304:5
[INFO] [stdout]     |
[INFO] [stdout] 304 | /     sqlx::query!(
[INFO] [stdout] 305 | |         r#"
[INFO] [stdout] 306 | |             INSERT INTO im_friendship
[INFO] [stdout] 307 | |             (owner_id, to_id, remark, del_flag, black, create_time, update_time, sequence, add_source, version)
[INFO] [stdout] ...   |
[INFO] [stdout] 321 | |          add_source,
[INFO] [stdout] 322 | |     )
[INFO] [stdout]     | |_____^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `$crate::sqlx_macros::expand_query` which comes from the expansion of the macro `sqlx::query` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: set `DATABASE_URL` to use query macros online, or run `cargo sqlx prepare` to update the query cache
[INFO] [stdout]    --> src/service/im_friendship_service.rs:326:5
[INFO] [stdout]     |
[INFO] [stdout] 326 | /     sqlx::query!(
[INFO] [stdout] 327 | |         r#"
[INFO] [stdout] 328 | |             INSERT INTO im_friendship
[INFO] [stdout] 329 | |             (owner_id, to_id, remark, del_flag, black, create_time, update_time, sequence, add_source, version)
[INFO] [stdout] ...   |
[INFO] [stdout] 343 | |         add_source,
[INFO] [stdout] 344 | |     )
[INFO] [stdout]     | |_____^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `$crate::sqlx_macros::expand_query` which comes from the expansion of the macro `sqlx::query` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: set `DATABASE_URL` to use query macros online, or run `cargo sqlx prepare` to update the query cache
[INFO] [stdout]    --> src/service/im_friendship_service.rs:357:26
[INFO] [stdout]     |
[INFO] [stdout] 357 |       let existing_count = sqlx::query_scalar!(
[INFO] [stdout]     |  __________________________^
[INFO] [stdout] 358 | |         r#"
[INFO] [stdout] 359 | |             SELECT COUNT(*) as "count!: i64" FROM im_friendship
[INFO] [stdout] 360 | |             WHERE ((owner_id = $1 AND to_id = $2) OR (owner_id = $2 AND to_id = $1))
[INFO] [stdout] ...   |
[INFO] [stdout] 364 | |         to_id
[INFO] [stdout] 365 | |     )
[INFO] [stdout]     | |_____^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `$crate::sqlx_macros::expand_query` which comes from the expansion of the macro `sqlx::query_scalar` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: set `DATABASE_URL` to use query macros online, or run `cargo sqlx prepare` to update the query cache
[INFO] [stdout]    --> src/service/im_friendship_service.rs:375:18
[INFO] [stdout]     |
[INFO] [stdout] 375 |       let result = sqlx::query!(
[INFO] [stdout]     |  __________________^
[INFO] [stdout] 376 | |         r#"
[INFO] [stdout] 377 | |             UPDATE im_friendship
[INFO] [stdout] 378 | |             SET del_flag = 0, update_time = $1, version = version + 1
[INFO] [stdout] ...   |
[INFO] [stdout] 384 | |         to_id
[INFO] [stdout] 385 | |     )
[INFO] [stdout]     | |_____^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `$crate::sqlx_macros::expand_query` which comes from the expansion of the macro `sqlx::query` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: set `DATABASE_URL` to use query macros online, or run `cargo sqlx prepare` to update the query cache
[INFO] [stdout]    --> src/service/im_friendship_service.rs:590:9
[INFO] [stdout]     |
[INFO] [stdout] 590 | /         sqlx::query_as!(
[INFO] [stdout] 591 | |             ImFriendshipRequest,
[INFO] [stdout] 592 | |             r#"
[INFO] [stdout] 593 | |                 SELECT id, from_id, to_id, remark, read_status, add_source, message,
[INFO] [stdout] ...   |
[INFO] [stdout] 602 | |             status
[INFO] [stdout] 603 | |         )
[INFO] [stdout]     | |_________^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `$crate::sqlx_macros::expand_query` which comes from the expansion of the macro `sqlx::query_as` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: set `DATABASE_URL` to use query macros online, or run `cargo sqlx prepare` to update the query cache
[INFO] [stdout]    --> src/service/im_friendship_service.rs:607:9
[INFO] [stdout]     |
[INFO] [stdout] 607 | /         sqlx::query_as!(
[INFO] [stdout] 608 | |             ImFriendshipRequest,
[INFO] [stdout] 609 | |             r#"
[INFO] [stdout] 610 | |                 SELECT id, from_id, to_id, remark, read_status, add_source, message,
[INFO] [stdout] ...   |
[INFO] [stdout] 617 | |             to_id
[INFO] [stdout] 618 | |         )
[INFO] [stdout]     | |_________^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `$crate::sqlx_macros::expand_query` which comes from the expansion of the macro `sqlx::query_as` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: set `DATABASE_URL` to use query macros online, or run `cargo sqlx prepare` to update the query cache
[INFO] [stdout]    --> src/service/im_friendship_service.rs:630:19
[INFO] [stdout]     |
[INFO] [stdout] 630 |       let request = sqlx::query_as!(
[INFO] [stdout]     |  ___________________^
[INFO] [stdout] 631 | |         ImFriendshipRequest,
[INFO] [stdout] 632 | |         r#"
[INFO] [stdout] 633 | |             UPDATE im_friendship_request
[INFO] [stdout] ...   |
[INFO] [stdout] 640 | |         request_id
[INFO] [stdout] 641 | |     )
[INFO] [stdout]     | |_____^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `$crate::sqlx_macros::expand_query` which comes from the expansion of the macro `sqlx::query_as` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: set `DATABASE_URL` to use query macros online, or run `cargo sqlx prepare` to update the query cache
[INFO] [stdout]   --> src/service/im_group_service.rs:16:18
[INFO] [stdout]    |
[INFO] [stdout] 16 |       let result = sqlx::query!(
[INFO] [stdout]    |  __________________^
[INFO] [stdout] 17 | |         r#"
[INFO] [stdout] 18 | |         INSERT INTO im_group
[INFO] [stdout] 19 | |          (group_id, owner_id, group_type, group_name, mute, apply_join_type, avatar,
[INFO] [stdout] ...  |
[INFO] [stdout] 37 | |         group.verifier
[INFO] [stdout] 38 | |     )
[INFO] [stdout]    | |_____^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this error originates in the macro `$crate::sqlx_macros::expand_query` which comes from the expansion of the macro `sqlx::query` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: set `DATABASE_URL` to use query macros online, or run `cargo sqlx prepare` to update the query cache
[INFO] [stdout]   --> src/service/im_group_service.rs:68:17
[INFO] [stdout]    |
[INFO] [stdout] 68 |       let group = sqlx::query_as!(
[INFO] [stdout]    |  _________________^
[INFO] [stdout] 69 | |         ImGroup,
[INFO] [stdout] 70 | |         r#"
[INFO] [stdout] 71 | |         SELECT group_id, owner_id, group_type, group_name, mute, apply_join_type, avatar,
[INFO] [stdout] ...  |
[INFO] [stdout] 78 | |          group_id
[INFO] [stdout] 79 | |     )
[INFO] [stdout]    | |_____^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this error originates in the macro `$crate::sqlx_macros::expand_query` which comes from the expansion of the macro `sqlx::query_as` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: set `DATABASE_URL` to use query macros online, or run `cargo sqlx prepare` to update the query cache
[INFO] [stdout]    --> src/service/im_friendship_service.rs:414:5
[INFO] [stdout]     |
[INFO] [stdout] 414 | /     sqlx::query!(
[INFO] [stdout] 415 | |         r#"
[INFO] [stdout] 416 | |             UPDATE im_friendship
[INFO] [stdout] 417 | |             SET remark = $1, update_time = $2, version = version + 1
[INFO] [stdout] ...   |
[INFO] [stdout] 424 | |         to_id
[INFO] [stdout] 425 | |     )
[INFO] [stdout]     | |_____^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `$crate::sqlx_macros::expand_query` which comes from the expansion of the macro `sqlx::query` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: set `DATABASE_URL` to use query macros online, or run `cargo sqlx prepare` to update the query cache
[INFO] [stdout]    --> src/service/im_friendship_service.rs:437:25
[INFO] [stdout]     |
[INFO] [stdout] 437 |       let current_black = sqlx::query_scalar!(
[INFO] [stdout]     |  _________________________^
[INFO] [stdout] 438 | |         r#"
[INFO] [stdout] 439 | |             SELECT black FROM im_friendship WHERE owner_id = $1 AND to_id = $2
[INFO] [stdout] 440 | |         "#,
[INFO] [stdout] 441 | |         owner_id,
[INFO] [stdout] 442 | |         to_id
[INFO] [stdout] 443 | |     )
[INFO] [stdout]     | |_____^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `$crate::sqlx_macros::expand_query` which comes from the expansion of the macro `sqlx::query_scalar` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: set `DATABASE_URL` to use query macros online, or run `cargo sqlx prepare` to update the query cache
[INFO] [stdout]    --> src/service/im_friendship_service.rs:456:5
[INFO] [stdout]     |
[INFO] [stdout] 456 | /     sqlx::query!(
[INFO] [stdout] 457 | |         r#"
[INFO] [stdout] 458 | |             UPDATE im_friendship
[INFO] [stdout] 459 | |             SET black = $1, black_sequence = $2, update_time = $3, version = version + 1
[INFO] [stdout] ...   |
[INFO] [stdout] 470 | |         to_id
[INFO] [stdout] 471 | |     )
[INFO] [stdout]     | |_____^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `$crate::sqlx_macros::expand_query` which comes from the expansion of the macro `sqlx::query` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: set `DATABASE_URL` to use query macros online, or run `cargo sqlx prepare` to update the query cache
[INFO] [stdout]    --> src/service/im_group_service.rs:108:18
[INFO] [stdout]     |
[INFO] [stdout] 108 |       let result = sqlx::query!(
[INFO] [stdout]     |  __________________^
[INFO] [stdout] 109 | |         r#"
[INFO] [stdout] 110 | |         INSERT INTO im_group_member
[INFO] [stdout] 111 | |         (group_member_id, group_id, member_id, role, mute, alias, join_time, del_flag,
[INFO] [stdout] ...   |
[INFO] [stdout] 129 | |         now,
[INFO] [stdout] 130 | |     )
[INFO] [stdout]     | |_____^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `$crate::sqlx_macros::expand_query` which comes from the expansion of the macro `sqlx::query` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: set `DATABASE_URL` to use query macros online, or run `cargo sqlx prepare` to update the query cache
[INFO] [stdout]    --> src/service/im_friendship_service.rs:506:5
[INFO] [stdout]     |
[INFO] [stdout] 506 | /     sqlx::query!(
[INFO] [stdout] 507 | |         r#"
[INFO] [stdout] 508 | |             DELETE FROM im_friendship_request
[INFO] [stdout] 509 | |             WHERE from_id = $1 AND to_id = $2 AND approve_status = 2
[INFO] [stdout] ...   |
[INFO] [stdout] 512 | |         request.to_id
[INFO] [stdout] 513 | |     )
[INFO] [stdout]     | |_____^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `$crate::sqlx_macros::expand_query` which comes from the expansion of the macro `sqlx::query` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: set `DATABASE_URL` to use query macros online, or run `cargo sqlx prepare` to update the query cache
[INFO] [stdout]    --> src/service/im_friendship_service.rs:521:18
[INFO] [stdout]     |
[INFO] [stdout] 521 |       let result = sqlx::query!(
[INFO] [stdout]     |  __________________^
[INFO] [stdout] 522 | |         r#"
[INFO] [stdout] 523 | |             INSERT INTO im_friendship_request
[INFO] [stdout] 524 | |             (id, from_id, to_id, remark, read_status, add_source, message, approve_status,
[INFO] [stdout] ...   |
[INFO] [stdout] 540 | |         now,
[INFO] [stdout] 541 | |     )
[INFO] [stdout]     | |_____^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `$crate::sqlx_macros::expand_query` which comes from the expansion of the macro `sqlx::query` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: set `DATABASE_URL` to use query macros online, or run `cargo sqlx prepare` to update the query cache
[INFO] [stdout]    --> src/service/im_group_service.rs:148:23
[INFO] [stdout]     |
[INFO] [stdout] 148 |       let all_members = sqlx::query_as!(
[INFO] [stdout]     |  _______________________^
[INFO] [stdout] 149 | |         ImGroupMember,
[INFO] [stdout] 150 | |         r#"
[INFO] [stdout] 151 | |         SELECT group_member_id, group_id, member_id, role, speak_date, mute, alias,
[INFO] [stdout] ...   |
[INFO] [stdout] 157 | |         group_id
[INFO] [stdout] 158 | |     )
[INFO] [stdout]     | |_____^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `$crate::sqlx_macros::expand_query` which comes from the expansion of the macro `sqlx::query_as` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: set `DATABASE_URL` to use query macros online, or run `cargo sqlx prepare` to update the query cache
[INFO] [stdout]    --> src/service/im_friendship_service.rs:590:9
[INFO] [stdout]     |
[INFO] [stdout] 590 | /         sqlx::query_as!(
[INFO] [stdout] 591 | |             ImFriendshipRequest,
[INFO] [stdout] 592 | |             r#"
[INFO] [stdout] 593 | |                 SELECT id, from_id, to_id, remark, read_status, add_source, message,
[INFO] [stdout] ...   |
[INFO] [stdout] 602 | |             status
[INFO] [stdout] 603 | |         )
[INFO] [stdout]     | |_________^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `$crate::sqlx_macros::expand_query` which comes from the expansion of the macro `sqlx::query_as` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: set `DATABASE_URL` to use query macros online, or run `cargo sqlx prepare` to update the query cache
[INFO] [stdout]    --> src/service/im_friendship_service.rs:607:9
[INFO] [stdout]     |
[INFO] [stdout] 607 | /         sqlx::query_as!(
[INFO] [stdout] 608 | |             ImFriendshipRequest,
[INFO] [stdout] 609 | |             r#"
[INFO] [stdout] 610 | |                 SELECT id, from_id, to_id, remark, read_status, add_source, message,
[INFO] [stdout] ...   |
[INFO] [stdout] 617 | |             to_id
[INFO] [stdout] 618 | |         )
[INFO] [stdout]     | |_________^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `$crate::sqlx_macros::expand_query` which comes from the expansion of the macro `sqlx::query_as` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: set `DATABASE_URL` to use query macros online, or run `cargo sqlx prepare` to update the query cache
[INFO] [stdout]    --> src/service/im_friendship_service.rs:630:19
[INFO] [stdout]     |
[INFO] [stdout] 630 |       let request = sqlx::query_as!(
[INFO] [stdout]     |  ___________________^
[INFO] [stdout] 631 | |         ImFriendshipRequest,
[INFO] [stdout] 632 | |         r#"
[INFO] [stdout] 633 | |             UPDATE im_friendship_request
[INFO] [stdout] ...   |
[INFO] [stdout] 640 | |         request_id
[INFO] [stdout] 641 | |     )
[INFO] [stdout]     | |_____^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `$crate::sqlx_macros::expand_query` which comes from the expansion of the macro `sqlx::query_as` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: set `DATABASE_URL` to use query macros online, or run `cargo sqlx prepare` to update the query cache
[INFO] [stdout]    --> src/service/im_group_service.rs:278:5
[INFO] [stdout]     |
[INFO] [stdout] 278 | /     sqlx::query!(
[INFO] [stdout] 279 | |         r#"
[INFO] [stdout] 280 | |         UPDATE im_group_member
[INFO] [stdout] 281 | |          SET del_flag = 0, leave_time = $1, update_time = $1, version = version + 1
[INFO] [stdout] ...   |
[INFO] [stdout] 286 | |         member_id
[INFO] [stdout] 287 | |     )
[INFO] [stdout]     | |_____^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `$crate::sqlx_macros::expand_query` which comes from the expansion of the macro `sqlx::query` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: set `DATABASE_URL` to use query macros online, or run `cargo sqlx prepare` to update the query cache
[INFO] [stdout]   --> src/service/im_group_service.rs:16:18
[INFO] [stdout]    |
[INFO] [stdout] 16 |       let result = sqlx::query!(
[INFO] [stdout]    |  __________________^
[INFO] [stdout] 17 | |         r#"
[INFO] [stdout] 18 | |         INSERT INTO im_group
[INFO] [stdout] 19 | |          (group_id, owner_id, group_type, group_name, mute, apply_join_type, avatar,
[INFO] [stdout] ...  |
[INFO] [stdout] 37 | |         group.verifier
[INFO] [stdout] 38 | |     )
[INFO] [stdout]    | |_____^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this error originates in the macro `$crate::sqlx_macros::expand_query` which comes from the expansion of the macro `sqlx::query` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: set `DATABASE_URL` to use query macros online, or run `cargo sqlx prepare` to update the query cache
[INFO] [stdout]   --> src/service/im_group_service.rs:68:17
[INFO] [stdout]    |
[INFO] [stdout] 68 |       let group = sqlx::query_as!(
[INFO] [stdout]    |  _________________^
[INFO] [stdout] 69 | |         ImGroup,
[INFO] [stdout] 70 | |         r#"
[INFO] [stdout] 71 | |         SELECT group_id, owner_id, group_type, group_name, mute, apply_join_type, avatar,
[INFO] [stdout] ...  |
[INFO] [stdout] 78 | |          group_id
[INFO] [stdout] 79 | |     )
[INFO] [stdout]    | |_____^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this error originates in the macro `$crate::sqlx_macros::expand_query` which comes from the expansion of the macro `sqlx::query_as` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: set `DATABASE_URL` to use query macros online, or run `cargo sqlx prepare` to update the query cache
[INFO] [stdout]    --> src/service/im_group_service.rs:338:5
[INFO] [stdout]     |
[INFO] [stdout] 338 | /     sqlx::query!(
[INFO] [stdout] 339 | |         r#"UPDATE im_group_member
[INFO] [stdout] 340 | |          SET role = $1, update_time = $2, version = version + 1
[INFO] [stdout] 341 | |          WHERE group_id = $3 AND member_id = $4 AND del_flag = 1"#,
[INFO] [stdout] ...   |
[INFO] [stdout] 345 | |         member_id
[INFO] [stdout] 346 | |     )
[INFO] [stdout]     | |_____^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `$crate::sqlx_macros::expand_query` which comes from the expansion of the macro `sqlx::query` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: set `DATABASE_URL` to use query macros online, or run `cargo sqlx prepare` to update the query cache
[INFO] [stdout]    --> src/service/im_group_service.rs:108:18
[INFO] [stdout]     |
[INFO] [stdout] 108 |       let result = sqlx::query!(
[INFO] [stdout]     |  __________________^
[INFO] [stdout] 109 | |         r#"
[INFO] [stdout] 110 | |         INSERT INTO im_group_member
[INFO] [stdout] 111 | |         (group_member_id, group_id, member_id, role, mute, alias, join_time, del_flag,
[INFO] [stdout] ...   |
[INFO] [stdout] 129 | |         now,
[INFO] [stdout] 130 | |     )
[INFO] [stdout]     | |_____^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `$crate::sqlx_macros::expand_query` which comes from the expansion of the macro `sqlx::query` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: set `DATABASE_URL` to use query macros online, or run `cargo sqlx prepare` to update the query cache
[INFO] [stdout]    --> src/service/im_group_service.rs:148:23
[INFO] [stdout]     |
[INFO] [stdout] 148 |       let all_members = sqlx::query_as!(
[INFO] [stdout]     |  _______________________^
[INFO] [stdout] 149 | |         ImGroupMember,
[INFO] [stdout] 150 | |         r#"
[INFO] [stdout] 151 | |         SELECT group_member_id, group_id, member_id, role, speak_date, mute, alias,
[INFO] [stdout] ...   |
[INFO] [stdout] 157 | |         group_id
[INFO] [stdout] 158 | |     )
[INFO] [stdout]     | |_____^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `$crate::sqlx_macros::expand_query` which comes from the expansion of the macro `sqlx::query_as` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: set `DATABASE_URL` to use query macros online, or run `cargo sqlx prepare` to update the query cache
[INFO] [stdout]    --> src/service/im_group_service.rs:378:5
[INFO] [stdout]     |
[INFO] [stdout] 378 | /     sqlx::query!(
[INFO] [stdout] 379 | |         r#"
[INFO] [stdout] 380 | |         DELETE FROM im_group_member WHERE group_id = $1
[INFO] [stdout] 381 | |         "#,
[INFO] [stdout] 382 | |         group_id,
[INFO] [stdout] 383 | |     )
[INFO] [stdout]     | |_____^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `$crate::sqlx_macros::expand_query` which comes from the expansion of the macro `sqlx::query` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: set `DATABASE_URL` to use query macros online, or run `cargo sqlx prepare` to update the query cache
[INFO] [stdout]    --> src/service/im_group_service.rs:388:5
[INFO] [stdout]     |
[INFO] [stdout] 388 | /     sqlx::query!(
[INFO] [stdout] 389 | |         r#"
[INFO] [stdout] 390 | |         DELETE FROM im_group WHERE group_id = $1
[INFO] [stdout] 391 | |         "#,
[INFO] [stdout] 392 | |         group_id,
[INFO] [stdout] 393 | |     )
[INFO] [stdout]     | |_____^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `$crate::sqlx_macros::expand_query` which comes from the expansion of the macro `sqlx::query` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: set `DATABASE_URL` to use query macros online, or run `cargo sqlx prepare` to update the query cache
[INFO] [stdout]    --> src/service/im_group_service.rs:406:17
[INFO] [stdout]     |
[INFO] [stdout] 406 |       let group = sqlx::query_as!(
[INFO] [stdout]     |  _________________^
[INFO] [stdout] 407 | |         ImGroup,
[INFO] [stdout] 408 | |         r#"
[INFO] [stdout] 409 | |         SELECT group_id, owner_id, group_type, group_name, mute, apply_join_type, avatar,
[INFO] [stdout] ...   |
[INFO] [stdout] 416 | |         group_id
[INFO] [stdout] 417 | |     )
[INFO] [stdout]     | |_____^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `$crate::sqlx_macros::expand_query` which comes from the expansion of the macro `sqlx::query_as` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: set `DATABASE_URL` to use query macros online, or run `cargo sqlx prepare` to update the query cache
[INFO] [stdout]    --> src/service/im_group_service.rs:461:5
[INFO] [stdout]     |
[INFO] [stdout] 461 | /     sqlx::query!(
[INFO] [stdout] 462 | |         r#"UPDATE im_group
[INFO] [stdout] 463 | |          SET del_flag = 0, update_time = $1, version = version + 1
[INFO] [stdout] 464 | |          WHERE group_id = $2"#,
[INFO] [stdout] 465 | |         now,
[INFO] [stdout] 466 | |         group_id
[INFO] [stdout] 467 | |     )
[INFO] [stdout]     | |_____^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `$crate::sqlx_macros::expand_query` which comes from the expansion of the macro `sqlx::query` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: set `DATABASE_URL` to use query macros online, or run `cargo sqlx prepare` to update the query cache
[INFO] [stdout]    --> src/service/im_group_service.rs:472:5
[INFO] [stdout]     |
[INFO] [stdout] 472 | /     sqlx::query!(
[INFO] [stdout] 473 | |         r#"UPDATE im_group_member
[INFO] [stdout] 474 | |          SET del_flag = 0, leave_time = $1, update_time = $2, version = version + 1
[INFO] [stdout] 475 | |          WHERE group_id = $3"#,
[INFO] [stdout] ...   |
[INFO] [stdout] 478 | |         group_id
[INFO] [stdout] 479 | |     )
[INFO] [stdout]     | |_____^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `$crate::sqlx_macros::expand_query` which comes from the expansion of the macro `sqlx::query` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: set `DATABASE_URL` to use query macros online, or run `cargo sqlx prepare` to update the query cache
[INFO] [stdout]    --> src/service/im_group_service.rs:278:5
[INFO] [stdout]     |
[INFO] [stdout] 278 | /     sqlx::query!(
[INFO] [stdout] 279 | |         r#"
[INFO] [stdout] 280 | |         UPDATE im_group_member
[INFO] [stdout] 281 | |          SET del_flag = 0, leave_time = $1, update_time = $1, version = version + 1
[INFO] [stdout] ...   |
[INFO] [stdout] 286 | |         member_id
[INFO] [stdout] 287 | |     )
[INFO] [stdout]     | |_____^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `$crate::sqlx_macros::expand_query` which comes from the expansion of the macro `sqlx::query` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: set `DATABASE_URL` to use query macros online, or run `cargo sqlx prepare` to update the query cache
[INFO] [stdout]    --> src/service/im_group_service.rs:514:5
[INFO] [stdout]     |
[INFO] [stdout] 514 | /     sqlx::query!(
[INFO] [stdout] 515 | |         r#"UPDATE im_group_member
[INFO] [stdout] 516 | |          SET alias = $1, update_time = $2, version = version + 1
[INFO] [stdout] 517 | |          WHERE group_id = $3 AND member_id = $4 AND del_flag = 1"#,
[INFO] [stdout] ...   |
[INFO] [stdout] 521 | |         member_id
[INFO] [stdout] 522 | |     )
[INFO] [stdout]     | |_____^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `$crate::sqlx_macros::expand_query` which comes from the expansion of the macro `sqlx::query` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: set `DATABASE_URL` to use query macros online, or run `cargo sqlx prepare` to update the query cache
[INFO] [stdout]    --> src/service/im_group_service.rs:338:5
[INFO] [stdout]     |
[INFO] [stdout] 338 | /     sqlx::query!(
[INFO] [stdout] 339 | |         r#"UPDATE im_group_member
[INFO] [stdout] 340 | |          SET role = $1, update_time = $2, version = version + 1
[INFO] [stdout] 341 | |          WHERE group_id = $3 AND member_id = $4 AND del_flag = 1"#,
[INFO] [stdout] ...   |
[INFO] [stdout] 345 | |         member_id
[INFO] [stdout] 346 | |     )
[INFO] [stdout]     | |_____^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `$crate::sqlx_macros::expand_query` which comes from the expansion of the macro `sqlx::query` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: set `DATABASE_URL` to use query macros online, or run `cargo sqlx prepare` to update the query cache
[INFO] [stdout]    --> src/service/im_group_service.rs:378:5
[INFO] [stdout]     |
[INFO] [stdout] 378 | /     sqlx::query!(
[INFO] [stdout] 379 | |         r#"
[INFO] [stdout] 380 | |         DELETE FROM im_group_member WHERE group_id = $1
[INFO] [stdout] 381 | |         "#,
[INFO] [stdout] 382 | |         group_id,
[INFO] [stdout] 383 | |     )
[INFO] [stdout]     | |_____^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `$crate::sqlx_macros::expand_query` which comes from the expansion of the macro `sqlx::query` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: set `DATABASE_URL` to use query macros online, or run `cargo sqlx prepare` to update the query cache
[INFO] [stdout]    --> src/service/im_group_service.rs:388:5
[INFO] [stdout]     |
[INFO] [stdout] 388 | /     sqlx::query!(
[INFO] [stdout] 389 | |         r#"
[INFO] [stdout] 390 | |         DELETE FROM im_group WHERE group_id = $1
[INFO] [stdout] 391 | |         "#,
[INFO] [stdout] 392 | |         group_id,
[INFO] [stdout] 393 | |     )
[INFO] [stdout]     | |_____^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `$crate::sqlx_macros::expand_query` which comes from the expansion of the macro `sqlx::query` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: set `DATABASE_URL` to use query macros online, or run `cargo sqlx prepare` to update the query cache
[INFO] [stdout]    --> src/service/im_group_service.rs:406:17
[INFO] [stdout]     |
[INFO] [stdout] 406 |       let group = sqlx::query_as!(
[INFO] [stdout]     |  _________________^
[INFO] [stdout] 407 | |         ImGroup,
[INFO] [stdout] 408 | |         r#"
[INFO] [stdout] 409 | |         SELECT group_id, owner_id, group_type, group_name, mute, apply_join_type, avatar,
[INFO] [stdout] ...   |
[INFO] [stdout] 416 | |         group_id
[INFO] [stdout] 417 | |     )
[INFO] [stdout]     | |_____^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `$crate::sqlx_macros::expand_query` which comes from the expansion of the macro `sqlx::query_as` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: set `DATABASE_URL` to use query macros online, or run `cargo sqlx prepare` to update the query cache
[INFO] [stdout]    --> src/service/im_group_service.rs:669:18
[INFO] [stdout]     |
[INFO] [stdout] 669 |       let groups = sqlx::query_as!(
[INFO] [stdout]     |  __________________^
[INFO] [stdout] 670 | |         ImGroup,
[INFO] [stdout] 671 | |         r#"SELECT
[INFO] [stdout] 672 | |             g.group_id,
[INFO] [stdout] ...   |
[INFO] [stdout] 716 | |         user_id
[INFO] [stdout] 717 | |     )
[INFO] [stdout]     | |_____^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `$crate::sqlx_macros::expand_query` which comes from the expansion of the macro `sqlx::query_as` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: set `DATABASE_URL` to use query macros online, or run `cargo sqlx prepare` to update the query cache
[INFO] [stdout]   --> src/service/im_message_service.rs:16:5
[INFO] [stdout]    |
[INFO] [stdout] 16 | /     sqlx::query!(
[INFO] [stdout] 17 | |         r#"
[INFO] [stdout] 18 | |         INSERT INTO im_single_message
[INFO] [stdout] 19 | |          (message_id, from_id, to_id, message_body, message_time, message_content_type,
[INFO] [stdout] ...  |
[INFO] [stdout] 41 | |         message.file_type
[INFO] [stdout] 42 | |     )
[INFO] [stdout]    | |_____^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this error originates in the macro `$crate::sqlx_macros::expand_query` which comes from the expansion of the macro `sqlx::query` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: set `DATABASE_URL` to use query macros online, or run `cargo sqlx prepare` to update the query cache
[INFO] [stdout]   --> src/service/im_message_service.rs:89:5
[INFO] [stdout]    |
[INFO] [stdout] 89 | /     sqlx::query!(
[INFO] [stdout] 90 | |         r#"
[INFO] [stdout] 91 | |             UPDATE im_single_message
[INFO] [stdout] 92 | |             SET read_status = 1, update_time = $1, version = version + 1
[INFO] [stdout] ...  |
[INFO] [stdout] 97 | |         to_id
[INFO] [stdout] 98 | |     )
[INFO] [stdout]    | |_____^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this error originates in the macro `$crate::sqlx_macros::expand_query` which comes from the expansion of the macro `sqlx::query` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: set `DATABASE_URL` to use query macros online, or run `cargo sqlx prepare` to update the query cache
[INFO] [stdout]    --> src/service/im_message_service.rs:109:5
[INFO] [stdout]     |
[INFO] [stdout] 109 | /     sqlx::query!(
[INFO] [stdout] 110 | |         r#"
[INFO] [stdout] 111 | |         INSERT INTO im_group_message
[INFO] [stdout] 112 | |          (message_id, group_id, from_id, message_body, message_time, message_content_type,
[INFO] [stdout] ...   |
[INFO] [stdout] 129 | |         message.reply_to
[INFO] [stdout] 130 | |     )
[INFO] [stdout]     | |_____^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `$crate::sqlx_macros::expand_query` which comes from the expansion of the macro `sqlx::query` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: set `DATABASE_URL` to use query macros online, or run `cargo sqlx prepare` to update the query cache
[INFO] [stdout]    --> src/service/im_group_service.rs:461:5
[INFO] [stdout]     |
[INFO] [stdout] 461 | /     sqlx::query!(
[INFO] [stdout] 462 | |         r#"UPDATE im_group
[INFO] [stdout] 463 | |          SET del_flag = 0, update_time = $1, version = version + 1
[INFO] [stdout] 464 | |          WHERE group_id = $2"#,
[INFO] [stdout] 465 | |         now,
[INFO] [stdout] 466 | |         group_id
[INFO] [stdout] 467 | |     )
[INFO] [stdout]     | |_____^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `$crate::sqlx_macros::expand_query` which comes from the expansion of the macro `sqlx::query` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: set `DATABASE_URL` to use query macros online, or run `cargo sqlx prepare` to update the query cache
[INFO] [stdout]    --> src/service/im_group_service.rs:472:5
[INFO] [stdout]     |
[INFO] [stdout] 472 | /     sqlx::query!(
[INFO] [stdout] 473 | |         r#"UPDATE im_group_member
[INFO] [stdout] 474 | |          SET del_flag = 0, leave_time = $1, update_time = $2, version = version + 1
[INFO] [stdout] 475 | |          WHERE group_id = $3"#,
[INFO] [stdout] ...   |
[INFO] [stdout] 478 | |         group_id
[INFO] [stdout] 479 | |     )
[INFO] [stdout]     | |_____^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `$crate::sqlx_macros::expand_query` which comes from the expansion of the macro `sqlx::query` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: set `DATABASE_URL` to use query macros online, or run `cargo sqlx prepare` to update the query cache
[INFO] [stdout]    --> src/service/im_group_service.rs:514:5
[INFO] [stdout]     |
[INFO] [stdout] 514 | /     sqlx::query!(
[INFO] [stdout] 515 | |         r#"UPDATE im_group_member
[INFO] [stdout] 516 | |          SET alias = $1, update_time = $2, version = version + 1
[INFO] [stdout] 517 | |          WHERE group_id = $3 AND member_id = $4 AND del_flag = 1"#,
[INFO] [stdout] ...   |
[INFO] [stdout] 521 | |         member_id
[INFO] [stdout] 522 | |     )
[INFO] [stdout]     | |_____^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `$crate::sqlx_macros::expand_query` which comes from the expansion of the macro `sqlx::query` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: set `DATABASE_URL` to use query macros online, or run `cargo sqlx prepare` to update the query cache
[INFO] [stdout]    --> src/service/im_user_service.rs:107:16
[INFO] [stdout]     |
[INFO] [stdout] 107 |       let user = sqlx::query_as!(
[INFO] [stdout]     |  ________________^
[INFO] [stdout] 108 | |         ImUser,
[INFO] [stdout] 109 | |         r#"SELECT open_id as user_id, name as user_name, password_hash as password,
[INFO] [stdout] 110 | |                 phone as mobile, create_time, update_time, version, del_flag
[INFO] [stdout] ...   |
[INFO] [stdout] 113 | |         user_id
[INFO] [stdout] 114 | |     )
[INFO] [stdout]     | |_____^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `$crate::sqlx_macros::expand_query` which comes from the expansion of the macro `sqlx::query_as` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: set `DATABASE_URL` to use query macros online, or run `cargo sqlx prepare` to update the query cache
[INFO] [stdout]    --> src/service/im_user_service.rs:136:16
[INFO] [stdout]     |
[INFO] [stdout] 136 |       let user = sqlx::query_as!(
[INFO] [stdout]     |  ________________^
[INFO] [stdout] 137 | |         ImUser,
[INFO] [stdout] 138 | |         r#"SELECT open_id as user_id, name as user_name, password_hash as password,
[INFO] [stdout] 139 | |                 phone as mobile, create_time, update_time, version, del_flag
[INFO] [stdout] ...   |
[INFO] [stdout] 142 | |         user_name
[INFO] [stdout] 143 | |     )
[INFO] [stdout]     | |_____^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `$crate::sqlx_macros::expand_query` which comes from the expansion of the macro `sqlx::query_as` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: set `DATABASE_URL` to use query macros online, or run `cargo sqlx prepare` to update the query cache
[INFO] [stdout]    --> src/service/im_user_service.rs:166:16
[INFO] [stdout]     |
[INFO] [stdout] 166 |       let user = sqlx::query_as!(
[INFO] [stdout]     |  ________________^
[INFO] [stdout] 167 | |         ImUser,
[INFO] [stdout] 168 | |         r#"SELECT open_id as user_id, name as user_name, password_hash as password,
[INFO] [stdout] 169 | |                 phone as mobile, create_time, update_time, version, del_flag
[INFO] [stdout] ...   |
[INFO] [stdout] 172 | |         mobile
[INFO] [stdout] 173 | |     )
[INFO] [stdout]     | |_____^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `$crate::sqlx_macros::expand_query` which comes from the expansion of the macro `sqlx::query_as` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: set `DATABASE_URL` to use query macros online, or run `cargo sqlx prepare` to update the query cache
[INFO] [stdout]    --> src/service/im_user_service.rs:212:20
[INFO] [stdout]     |
[INFO] [stdout] 212 |     let existing = sqlx::query!("SELECT id FROM users WHERE open_id = $1", user_id)
[INFO] [stdout]     |                    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `$crate::sqlx_macros::expand_query` which comes from the expansion of the macro `sqlx::query` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: set `DATABASE_URL` to use query macros online, or run `cargo sqlx prepare` to update the query cache
[INFO] [stdout]    --> src/service/im_user_service.rs:223:5
[INFO] [stdout]     |
[INFO] [stdout] 223 | /     sqlx::query!(
[INFO] [stdout] 224 | |         r#"INSERT INTO users (open_id, name, email, password_hash, phone, create_time, update_time, version, del_flag, status)
[INFO] [stdout] 225 | |          VALUES ($1, $2, $3, $4, $5, $6, $6, 1, 1, 1)"#,
[INFO] [stdout] 226 | |         user_id,
[INFO] [stdout] ...   |
[INFO] [stdout] 231 | |         now
[INFO] [stdout] 232 | |     )
[INFO] [stdout]     | |_____^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `$crate::sqlx_macros::expand_query` which comes from the expansion of the macro `sqlx::query` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: set `DATABASE_URL` to use query macros online, or run `cargo sqlx prepare` to update the query cache
[INFO] [stdout]    --> src/service/im_user_service.rs:285:5
[INFO] [stdout]     |
[INFO] [stdout] 285 | /     sqlx::query!(
[INFO] [stdout] 286 | |         r#"INSERT INTO im_user_data
[INFO] [stdout] 287 | |          (user_id, name, avatar, gender, birthday, location, self_signature,
[INFO] [stdout] 288 | |           friend_allow_type, forbidden_flag, disable_add_friend, silent_flag,
[INFO] [stdout] ...   |
[INFO] [stdout] 306 | |         now
[INFO] [stdout] 307 | |     )
[INFO] [stdout]     | |_____^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `$crate::sqlx_macros::expand_query` which comes from the expansion of the macro `sqlx::query` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: set `DATABASE_URL` to use query macros online, or run `cargo sqlx prepare` to update the query cache
[INFO] [stdout]    --> src/service/im_group_service.rs:669:18
[INFO] [stdout]     |
[INFO] [stdout] 669 |       let groups = sqlx::query_as!(
[INFO] [stdout]     |  __________________^
[INFO] [stdout] 670 | |         ImGroup,
[INFO] [stdout] 671 | |         r#"SELECT
[INFO] [stdout] 672 | |             g.group_id,
[INFO] [stdout] ...   |
[INFO] [stdout] 716 | |         user_id
[INFO] [stdout] 717 | |     )
[INFO] [stdout]     | |_____^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `$crate::sqlx_macros::expand_query` which comes from the expansion of the macro `sqlx::query_as` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: set `DATABASE_URL` to use query macros online, or run `cargo sqlx prepare` to update the query cache
[INFO] [stdout]   --> src/service/im_message_service.rs:16:5
[INFO] [stdout]    |
[INFO] [stdout] 16 | /     sqlx::query!(
[INFO] [stdout] 17 | |         r#"
[INFO] [stdout] 18 | |         INSERT INTO im_single_message
[INFO] [stdout] 19 | |          (message_id, from_id, to_id, message_body, message_time, message_content_type,
[INFO] [stdout] ...  |
[INFO] [stdout] 41 | |         message.file_type
[INFO] [stdout] 42 | |     )
[INFO] [stdout]    | |_____^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this error originates in the macro `$crate::sqlx_macros::expand_query` which comes from the expansion of the macro `sqlx::query` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: set `DATABASE_URL` to use query macros online, or run `cargo sqlx prepare` to update the query cache
[INFO] [stdout]   --> src/service/im_message_service.rs:89:5
[INFO] [stdout]    |
[INFO] [stdout] 89 | /     sqlx::query!(
[INFO] [stdout] 90 | |         r#"
[INFO] [stdout] 91 | |             UPDATE im_single_message
[INFO] [stdout] 92 | |             SET read_status = 1, update_time = $1, version = version + 1
[INFO] [stdout] ...  |
[INFO] [stdout] 97 | |         to_id
[INFO] [stdout] 98 | |     )
[INFO] [stdout]    | |_____^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this error originates in the macro `$crate::sqlx_macros::expand_query` which comes from the expansion of the macro `sqlx::query` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: set `DATABASE_URL` to use query macros online, or run `cargo sqlx prepare` to update the query cache
[INFO] [stdout]    --> src/service/im_message_service.rs:109:5
[INFO] [stdout]     |
[INFO] [stdout] 109 | /     sqlx::query!(
[INFO] [stdout] 110 | |         r#"
[INFO] [stdout] 111 | |         INSERT INTO im_group_message
[INFO] [stdout] 112 | |          (message_id, group_id, from_id, message_body, message_time, message_content_type,
[INFO] [stdout] ...   |
[INFO] [stdout] 129 | |         message.reply_to
[INFO] [stdout] 130 | |     )
[INFO] [stdout]     | |_____^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `$crate::sqlx_macros::expand_query` which comes from the expansion of the macro `sqlx::query` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: set `DATABASE_URL` to use query macros online, or run `cargo sqlx prepare` to update the query cache
[INFO] [stdout]    --> src/service/im_user_service.rs:336:21
[INFO] [stdout]     |
[INFO] [stdout] 336 |       let user_data = sqlx::query_as!(
[INFO] [stdout]     |  _____________________^
[INFO] [stdout] 337 | |         ImUserData,
[INFO] [stdout] 338 | |         "SELECT user_id, name, avatar, gender, birthday, location, self_signature,
[INFO] [stdout] 339 | |                 friend_allow_type, forbidden_flag, disable_add_friend, silent_flag,
[INFO] [stdout] ...   |
[INFO] [stdout] 343 | |         user_id
[INFO] [stdout] 344 | |     )
[INFO] [stdout]     | |_____^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `$crate::sqlx_macros::expand_query` which comes from the expansion of the macro `sqlx::query_as` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: set `DATABASE_URL` to use query macros online, or run `cargo sqlx prepare` to update the query cache
[INFO] [stdout]    --> src/service/im_user_service.rs:407:5
[INFO] [stdout]     |
[INFO] [stdout] 407 | /     sqlx::query!(
[INFO] [stdout] 408 | |         r#"INSERT INTO im_user_data
[INFO] [stdout] 409 | |                  (user_id, name, avatar, gender, birthday, location, self_signature,
[INFO] [stdout] 410 | |                   friend_allow_type, forbidden_flag, disable_add_friend, silent_flag,
[INFO] [stdout] ...   |
[INFO] [stdout] 443 | |         now
[INFO] [stdout] 444 | |     )
[INFO] [stdout]     | |_____^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `$crate::sqlx_macros::expand_query` which comes from the expansion of the macro `sqlx::query` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: set `DATABASE_URL` to use query macros online, or run `cargo sqlx prepare` to update the query cache
[INFO] [stdout]    --> src/service/user_service.rs:109:21
[INFO] [stdout]     |
[INFO] [stdout] 109 |       let result_id = sqlx::query_scalar!(
[INFO] [stdout]     |  _____________________^
[INFO] [stdout] 110 | |         r#"INSERT INTO users (open_id, name, email, password_hash, phone, status, gender)
[INFO] [stdout] 111 | |         VALUES ($1, $2, $3, $4, $5, 1, 3)
[INFO] [stdout] 112 | |         RETURNING id"#,
[INFO] [stdout] ...   |
[INFO] [stdout] 117 | |         phone
[INFO] [stdout] 118 | |     )
[INFO] [stdout]     | |_____^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `$crate::sqlx_macros::expand_query` which comes from the expansion of the macro `sqlx::query_scalar` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: set `DATABASE_URL` to use query macros online, or run `cargo sqlx prepare` to update the query cache
[INFO] [stdout]    --> src/service/im_user_service.rs:107:16
[INFO] [stdout]     |
[INFO] [stdout] 107 |       let user = sqlx::query_as!(
[INFO] [stdout]     |  ________________^
[INFO] [stdout] 108 | |         ImUser,
[INFO] [stdout] 109 | |         r#"SELECT open_id as user_id, name as user_name, password_hash as password,
[INFO] [stdout] 110 | |                 phone as mobile, create_time, update_time, version, del_flag
[INFO] [stdout] ...   |
[INFO] [stdout] 113 | |         user_id
[INFO] [stdout] 114 | |     )
[INFO] [stdout]     | |_____^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `$crate::sqlx_macros::expand_query` which comes from the expansion of the macro `sqlx::query_as` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: set `DATABASE_URL` to use query macros online, or run `cargo sqlx prepare` to update the query cache
[INFO] [stdout]    --> src/service/user_service.rs:137:17
[INFO] [stdout]     |
[INFO] [stdout] 137 |       let total = sqlx::query_scalar!(
[INFO] [stdout]     |  _________________^
[INFO] [stdout] 138 | |         r#"
[INFO] [stdout] 139 | |         SELECT COUNT(*) as "count!: i64" FROM users
[INFO] [stdout] 140 | |         WHERE name LIKE $1
[INFO] [stdout] 141 | |         "#,
[INFO] [stdout] 142 | |         like_pattern
[INFO] [stdout] 143 | |     )
[INFO] [stdout]     | |_____^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `$crate::sqlx_macros::expand_query` which comes from the expansion of the macro `sqlx::query_scalar` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: set `DATABASE_URL` to use query macros online, or run `cargo sqlx prepare` to update the query cache
[INFO] [stdout]    --> src/service/user_service.rs:147:17
[INFO] [stdout]     |
[INFO] [stdout] 147 |       let users = sqlx::query_as!(SafeUser, r#"SELECT id, open_id, name, email, file_name, abstract as abstract_field, phone, statu...
[INFO] [stdout]     |  _________________^
[INFO] [stdout] 148 | |         FROM users
[INFO] [stdout] 149 | |         WHERE name LIKE $1 AND (status IS NULL OR status = 1)
[INFO] [stdout] 150 | |         LIMIT $2 OFFSET $3"#, like_pattern, page_size, offset)
[INFO] [stdout]     | |______________________________________________________________^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `$crate::sqlx_macros::expand_query` which comes from the expansion of the macro `sqlx::query_as` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: set `DATABASE_URL` to use query macros online, or run `cargo sqlx prepare` to update the query cache
[INFO] [stdout]    --> src/service/im_user_service.rs:136:16
[INFO] [stdout]     |
[INFO] [stdout] 136 |       let user = sqlx::query_as!(
[INFO] [stdout]     |  ________________^
[INFO] [stdout] 137 | |         ImUser,
[INFO] [stdout] 138 | |         r#"SELECT open_id as user_id, name as user_name, password_hash as password,
[INFO] [stdout] 139 | |                 phone as mobile, create_time, update_time, version, del_flag
[INFO] [stdout] ...   |
[INFO] [stdout] 142 | |         user_name
[INFO] [stdout] 143 | |     )
[INFO] [stdout]     | |_____^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `$crate::sqlx_macros::expand_query` which comes from the expansion of the macro `sqlx::query_as` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: set `DATABASE_URL` to use query macros online, or run `cargo sqlx prepare` to update the query cache
[INFO] [stdout]    --> src/service/user_service.rs:169:16
[INFO] [stdout]     |
[INFO] [stdout] 169 |       let user = sqlx::query_as!(User, r#"SELECT id, open_id, name, email, password_hash, file_name, abstract as abstract_field, ph...
[INFO] [stdout]     |  ________________^
[INFO] [stdout] 170 | |         FROM users WHERE name = $1 AND (status IS NULL OR status = 1)"#, name)
[INFO] [stdout]     | |______________________________________________________________________________^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `$crate::sqlx_macros::expand_query` which comes from the expansion of the macro `sqlx::query_as` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: set `DATABASE_URL` to use query macros online, or run `cargo sqlx prepare` to update the query cache
[INFO] [stdout]    --> src/service/im_user_service.rs:166:16
[INFO] [stdout]     |
[INFO] [stdout] 166 |       let user = sqlx::query_as!(
[INFO] [stdout]     |  ________________^
[INFO] [stdout] 167 | |         ImUser,
[INFO] [stdout] 168 | |         r#"SELECT open_id as user_id, name as user_name, password_hash as password,
[INFO] [stdout] 169 | |                 phone as mobile, create_time, update_time, version, del_flag
[INFO] [stdout] ...   |
[INFO] [stdout] 172 | |         mobile
[INFO] [stdout] 173 | |     )
[INFO] [stdout]     | |_____^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `$crate::sqlx_macros::expand_query` which comes from the expansion of the macro `sqlx::query_as` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: set `DATABASE_URL` to use query macros online, or run `cargo sqlx prepare` to update the query cache
[INFO] [stdout]    --> src/service/user_service.rs:190:16
[INFO] [stdout]     |
[INFO] [stdout] 190 |       let user = sqlx::query_as!(User, r#"SELECT id, open_id, name, email, password_hash, file_name, abstract as abstract_field, ph...
[INFO] [stdout]     |  ________________^
[INFO] [stdout] 191 | |         FROM users WHERE email = $1 AND (status IS NULL OR status = 1)"#, email)
[INFO] [stdout]     | |________________________________________________________________________________^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `$crate::sqlx_macros::expand_query` which comes from the expansion of the macro `sqlx::query_as` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: set `DATABASE_URL` to use query macros online, or run `cargo sqlx prepare` to update the query cache
[INFO] [stdout]    --> src/service/im_user_service.rs:212:20
[INFO] [stdout]     |
[INFO] [stdout] 212 |     let existing = sqlx::query!("SELECT id FROM users WHERE open_id = $1", user_id)
[INFO] [stdout]     |                    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `$crate::sqlx_macros::expand_query` which comes from the expansion of the macro `sqlx::query` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: set `DATABASE_URL` to use query macros online, or run `cargo sqlx prepare` to update the query cache
[INFO] [stdout]    --> src/service/user_service.rs:211:16
[INFO] [stdout]     |
[INFO] [stdout] 211 |       let user = sqlx::query_as!(User, r#"SELECT id, open_id, name, email, password_hash, file_name, abstract as abstract_field, ph...
[INFO] [stdout]     |  ________________^
[INFO] [stdout] 212 | |         FROM users WHERE phone = $1 AND (status IS NULL OR status = 1)"#, phone)
[INFO] [stdout]     | |________________________________________________________________________________^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `$crate::sqlx_macros::expand_query` which comes from the expansion of the macro `sqlx::query_as` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: set `DATABASE_URL` to use query macros online, or run `cargo sqlx prepare` to update the query cache
[INFO] [stdout]    --> src/service/im_user_service.rs:223:5
[INFO] [stdout]     |
[INFO] [stdout] 223 | /     sqlx::query!(
[INFO] [stdout] 224 | |         r#"INSERT INTO users (open_id, name, email, password_hash, phone, create_time, update_time, version, del_flag, status)
[INFO] [stdout] 225 | |          VALUES ($1, $2, $3, $4, $5, $6, $6, 1, 1, 1)"#,
[INFO] [stdout] 226 | |         user_id,
[INFO] [stdout] ...   |
[INFO] [stdout] 231 | |         now
[INFO] [stdout] 232 | |     )
[INFO] [stdout]     | |_____^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `$crate::sqlx_macros::expand_query` which comes from the expansion of the macro `sqlx::query` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: set `DATABASE_URL` to use query macros online, or run `cargo sqlx prepare` to update the query cache
[INFO] [stdout]    --> src/service/user_service.rs:232:16
[INFO] [stdout]     |
[INFO] [stdout] 232 |       let user = sqlx::query_as!(User, r#"SELECT id, open_id, name, email, password_hash, file_name, abstract as abstract_field, ph...
[INFO] [stdout]     |  ________________^
[INFO] [stdout] 233 | |         FROM users WHERE open_id = $1 AND (status IS NULL OR status = 1)"#, open_id)
[INFO] [stdout]     | |____________________________________________________________________________________^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `$crate::sqlx_macros::expand_query` which comes from the expansion of the macro `sqlx::query_as` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: set `DATABASE_URL` to use query macros online, or run `cargo sqlx prepare` to update the query cache
[INFO] [stdout]    --> src/service/user_service.rs:253:18
[INFO] [stdout]     |
[INFO] [stdout] 253 |       let exists = sqlx::query_scalar!(
[INFO] [stdout]     |  __________________^
[INFO] [stdout] 254 | |         r#"
[INFO] [stdout] 255 | |             SELECT id FROM users WHERE id = $1
[INFO] [stdout] 256 | |             AND (status IS NULL OR status = 1)
[INFO] [stdout] 257 | |         "#,
[INFO] [stdout] 258 | |         id
[INFO] [stdout] 259 | |     )
[INFO] [stdout]     | |_____^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `$crate::sqlx_macros::expand_query` which comes from the expansion of the macro `sqlx::query_scalar` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: set `DATABASE_URL` to use query macros online, or run `cargo sqlx prepare` to update the query cache
[INFO] [stdout]    --> src/service/im_user_service.rs:285:5
[INFO] [stdout]     |
[INFO] [stdout] 285 | /     sqlx::query!(
[INFO] [stdout] 286 | |         r#"INSERT INTO im_user_data
[INFO] [stdout] 287 | |          (user_id, name, avatar, gender, birthday, location, self_signature,
[INFO] [stdout] 288 | |           friend_allow_type, forbidden_flag, disable_add_friend, silent_flag,
[INFO] [stdout] ...   |
[INFO] [stdout] 306 | |         now
[INFO] [stdout] 307 | |     )
[INFO] [stdout]     | |_____^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `$crate::sqlx_macros::expand_query` which comes from the expansion of the macro `sqlx::query` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: set `DATABASE_URL` to use query macros online, or run `cargo sqlx prepare` to update the query cache
[INFO] [stdout]    --> src/service/user_service.rs:273:16
[INFO] [stdout]     |
[INFO] [stdout] 273 |       let user = sqlx::query_as!(
[INFO] [stdout]     |  ________________^
[INFO] [stdout] 274 | |         User,
[INFO] [stdout] 275 | |         r#"
[INFO] [stdout] 276 | |             SELECT id, open_id, name, email, password_hash, file_name, abstract as abstract_field, phone, status, gender
[INFO] [stdout] ...   |
[INFO] [stdout] 279 | |          id
[INFO] [stdout] 280 | |     )
[INFO] [stdout]     | |_____^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `$crate::sqlx_macros::expand_query` which comes from the expansion of the macro `sqlx::query_as` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: set `DATABASE_URL` to use query macros online, or run `cargo sqlx prepare` to update the query cache
[INFO] [stdout]    --> src/service/im_user_service.rs:336:21
[INFO] [stdout]     |
[INFO] [stdout] 336 |       let user_data = sqlx::query_as!(
[INFO] [stdout]     |  _____________________^
[INFO] [stdout] 337 | |         ImUserData,
[INFO] [stdout] 338 | |         "SELECT user_id, name, avatar, gender, birthday, location, self_signature,
[INFO] [stdout] 339 | |                 friend_allow_type, forbidden_flag, disable_add_friend, silent_flag,
[INFO] [stdout] ...   |
[INFO] [stdout] 343 | |         user_id
[INFO] [stdout] 344 | |     )
[INFO] [stdout]     | |_____^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `$crate::sqlx_macros::expand_query` which comes from the expansion of the macro `sqlx::query_as` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: set `DATABASE_URL` to use query macros online, or run `cargo sqlx prepare` to update the query cache
[INFO] [stdout]    --> src/service/user_service.rs:327:9
[INFO] [stdout]     |
[INFO] [stdout] 327 | /         sqlx::query!(
[INFO] [stdout] 328 | |             r#"UPDATE users SET name = $1 WHERE open_id = $2"#,
[INFO] [stdout] 329 | |             n,
[INFO] [stdout] 330 | |             open_id
[INFO] [stdout] 331 | |         )
[INFO] [stdout]     | |_________^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `$crate::sqlx_macros::expand_query` which comes from the expansion of the macro `sqlx::query` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: set `DATABASE_URL` to use query macros online, or run `cargo sqlx prepare` to update the query cache
[INFO] [stdout]    --> src/service/user_service.rs:351:13
[INFO] [stdout]     |
[INFO] [stdout] 351 | /             sqlx::query!(
[INFO] [stdout] 352 | |                 r#"UPDATE users SET phone = NULL WHERE open_id = $1"#,
[INFO] [stdout] 353 | |                 open_id
[INFO] [stdout] 354 | |             )
[INFO] [stdout]     | |_____________^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `$crate::sqlx_macros::expand_query` which comes from the expansion of the macro `sqlx::query` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: set `DATABASE_URL` to use query macros online, or run `cargo sqlx prepare` to update the query cache
[INFO] [stdout]    --> src/service/user_service.rs:358:13
[INFO] [stdout]     |
[INFO] [stdout] 358 | /             sqlx::query!(
[INFO] [stdout] 359 | |                 r#"UPDATE users SET phone = $1 WHERE open_id = $2"#,
[INFO] [stdout] 360 | |                 p,
[INFO] [stdout] 361 | |                 open_id
[INFO] [stdout] 362 | |             )
[INFO] [stdout]     | |_____________^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `$crate::sqlx_macros::expand_query` which comes from the expansion of the macro `sqlx::query` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: set `DATABASE_URL` to use query macros online, or run `cargo sqlx prepare` to update the query cache
[INFO] [stdout]    --> src/service/user_service.rs:371:13
[INFO] [stdout]     |
[INFO] [stdout] 371 | /             sqlx::query!(
[INFO] [stdout] 372 | |                 r#"UPDATE users SET file_name = NULL WHERE open_id = $1"#,
[INFO] [stdout] 373 | |                 open_id
[INFO] [stdout] 374 | |             )
[INFO] [stdout]     | |_____________^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `$crate::sqlx_macros::expand_query` which comes from the expansion of the macro `sqlx::query` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: set `DATABASE_URL` to use query macros online, or run `cargo sqlx prepare` to update the query cache
[INFO] [stdout]    --> src/service/user_service.rs:378:13
[INFO] [stdout]     |
[INFO] [stdout] 378 | /             sqlx::query!(
[INFO] [stdout] 379 | |                 r#"UPDATE users SET file_name = $1 WHERE open_id = $2"#,
[INFO] [stdout] 380 | |                 f,
[INFO] [stdout] 381 | |                 open_id
[INFO] [stdout] 382 | |             )
[INFO] [stdout]     | |_____________^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `$crate::sqlx_macros::expand_query` which comes from the expansion of the macro `sqlx::query` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: set `DATABASE_URL` to use query macros online, or run `cargo sqlx prepare` to update the query cache
[INFO] [stdout]    --> src/service/user_service.rs:391:13
[INFO] [stdout]     |
[INFO] [stdout] 391 | /             sqlx::query!(
[INFO] [stdout] 392 | |                 r#"UPDATE users SET abstract = NULL WHERE open_id = $1"#,
[INFO] [stdout] 393 | |                 open_id
[INFO] [stdout] 394 | |             )
[INFO] [stdout]     | |_____________^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `$crate::sqlx_macros::expand_query` which comes from the expansion of the macro `sqlx::query` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: set `DATABASE_URL` to use query macros online, or run `cargo sqlx prepare` to update the query cache
[INFO] [stdout]    --> src/service/user_service.rs:398:13
[INFO] [stdout]     |
[INFO] [stdout] 398 | /             sqlx::query!(
[INFO] [stdout] 399 | |                 r#"UPDATE users SET abstract = $1 WHERE open_id = $2"#,
[INFO] [stdout] 400 | |                 a,
[INFO] [stdout] 401 | |                 open_id
[INFO] [stdout] 402 | |             )
[INFO] [stdout]     | |_____________^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `$crate::sqlx_macros::expand_query` which comes from the expansion of the macro `sqlx::query` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: set `DATABASE_URL` to use query macros online, or run `cargo sqlx prepare` to update the query cache
[INFO] [stdout]    --> src/service/im_user_service.rs:407:5
[INFO] [stdout]     |
[INFO] [stdout] 407 | /     sqlx::query!(
[INFO] [stdout] 408 | |         r#"INSERT INTO im_user_data
[INFO] [stdout] 409 | |                  (user_id, name, avatar, gender, birthday, location, self_signature,
[INFO] [stdout] 410 | |                   friend_allow_type, forbidden_flag, disable_add_friend, silent_flag,
[INFO] [stdout] ...   |
[INFO] [stdout] 443 | |         now
[INFO] [stdout] 444 | |     )
[INFO] [stdout]     | |_____^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `$crate::sqlx_macros::expand_query` which comes from the expansion of the macro `sqlx::query` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: set `DATABASE_URL` to use query macros online, or run `cargo sqlx prepare` to update the query cache
[INFO] [stdout]    --> src/service/user_service.rs:409:9
[INFO] [stdout]     |
[INFO] [stdout] 409 | /         sqlx::query!(
[INFO] [stdout] 410 | |             r#"UPDATE users SET gender = $1 WHERE open_id = $2"#,
[INFO] [stdout] 411 | |             g,
[INFO] [stdout] 412 | |             open_id
[INFO] [stdout] 413 | |         )
[INFO] [stdout]     | |_________^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `$crate::sqlx_macros::expand_query` which comes from the expansion of the macro `sqlx::query` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: set `DATABASE_URL` to use query macros online, or run `cargo sqlx prepare` to update the query cache
[INFO] [stdout]    --> src/service/user_service.rs:109:21
[INFO] [stdout]     |
[INFO] [stdout] 109 |       let result_id = sqlx::query_scalar!(
[INFO] [stdout]     |  _____________________^
[INFO] [stdout] 110 | |         r#"INSERT INTO users (open_id, name, email, password_hash, phone, status, gender)
[INFO] [stdout] 111 | |         VALUES ($1, $2, $3, $4, $5, 1, 3)
[INFO] [stdout] 112 | |         RETURNING id"#,
[INFO] [stdout] ...   |
[INFO] [stdout] 117 | |         phone
[INFO] [stdout] 118 | |     )
[INFO] [stdout]     | |_____^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `$crate::sqlx_macros::expand_query` which comes from the expansion of the macro `sqlx::query_scalar` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: set `DATABASE_URL` to use query macros online, or run `cargo sqlx prepare` to update the query cache
[INFO] [stdout]    --> src/service/user_service.rs:137:17
[INFO] [stdout]     |
[INFO] [stdout] 137 |       let total = sqlx::query_scalar!(
[INFO] [stdout]     |  _________________^
[INFO] [stdout] 138 | |         r#"
[INFO] [stdout] 139 | |         SELECT COUNT(*) as "count!: i64" FROM users
[INFO] [stdout] 140 | |         WHERE name LIKE $1
[INFO] [stdout] 141 | |         "#,
[INFO] [stdout] 142 | |         like_pattern
[INFO] [stdout] 143 | |     )
[INFO] [stdout]     | |_____^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `$crate::sqlx_macros::expand_query` which comes from the expansion of the macro `sqlx::query_scalar` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: set `DATABASE_URL` to use query macros online, or run `cargo sqlx prepare` to update the query cache
[INFO] [stdout]    --> src/service/user_service.rs:147:17
[INFO] [stdout]     |
[INFO] [stdout] 147 |       let users = sqlx::query_as!(SafeUser, r#"SELECT id, open_id, name, email, file_name, abstract as abstract_field, phone, statu...
[INFO] [stdout]     |  _________________^
[INFO] [stdout] 148 | |         FROM users
[INFO] [stdout] 149 | |         WHERE name LIKE $1 AND (status IS NULL OR status = 1)
[INFO] [stdout] 150 | |         LIMIT $2 OFFSET $3"#, like_pattern, page_size, offset)
[INFO] [stdout]     | |______________________________________________________________^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `$crate::sqlx_macros::expand_query` which comes from the expansion of the macro `sqlx::query_as` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: set `DATABASE_URL` to use query macros online, or run `cargo sqlx prepare` to update the query cache
[INFO] [stdout]    --> src/service/user_service.rs:169:16
[INFO] [stdout]     |
[INFO] [stdout] 169 |       let user = sqlx::query_as!(User, r#"SELECT id, open_id, name, email, password_hash, file_name, abstract as abstract_field, ph...
[INFO] [stdout]     |  ________________^
[INFO] [stdout] 170 | |         FROM users WHERE name = $1 AND (status IS NULL OR status = 1)"#, name)
[INFO] [stdout]     | |______________________________________________________________________________^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `$crate::sqlx_macros::expand_query` which comes from the expansion of the macro `sqlx::query_as` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: set `DATABASE_URL` to use query macros online, or run `cargo sqlx prepare` to update the query cache
[INFO] [stdout]    --> src/service/user_service.rs:190:16
[INFO] [stdout]     |
[INFO] [stdout] 190 |       let user = sqlx::query_as!(User, r#"SELECT id, open_id, name, email, password_hash, file_name, abstract as abstract_field, ph...
[INFO] [stdout]     |  ________________^
[INFO] [stdout] 191 | |         FROM users WHERE email = $1 AND (status IS NULL OR status = 1)"#, email)
[INFO] [stdout]     | |________________________________________________________________________________^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `$crate::sqlx_macros::expand_query` which comes from the expansion of the macro `sqlx::query_as` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: set `DATABASE_URL` to use query macros online, or run `cargo sqlx prepare` to update the query cache
[INFO] [stdout]    --> src/service/user_service.rs:211:16
[INFO] [stdout]     |
[INFO] [stdout] 211 |       let user = sqlx::query_as!(User, r#"SELECT id, open_id, name, email, password_hash, file_name, abstract as abstract_field, ph...
[INFO] [stdout]     |  ________________^
[INFO] [stdout] 212 | |         FROM users WHERE phone = $1 AND (status IS NULL OR status = 1)"#, phone)
[INFO] [stdout]     | |________________________________________________________________________________^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `$crate::sqlx_macros::expand_query` which comes from the expansion of the macro `sqlx::query_as` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: set `DATABASE_URL` to use query macros online, or run `cargo sqlx prepare` to update the query cache
[INFO] [stdout]    --> src/service/user_service.rs:232:16
[INFO] [stdout]     |
[INFO] [stdout] 232 |       let user = sqlx::query_as!(User, r#"SELECT id, open_id, name, email, password_hash, file_name, abstract as abstract_field, ph...
[INFO] [stdout]     |  ________________^
[INFO] [stdout] 233 | |         FROM users WHERE open_id = $1 AND (status IS NULL OR status = 1)"#, open_id)
[INFO] [stdout]     | |____________________________________________________________________________________^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `$crate::sqlx_macros::expand_query` which comes from the expansion of the macro `sqlx::query_as` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: set `DATABASE_URL` to use query macros online, or run `cargo sqlx prepare` to update the query cache
[INFO] [stdout]    --> src/service/user_service.rs:253:18
[INFO] [stdout]     |
[INFO] [stdout] 253 |       let exists = sqlx::query_scalar!(
[INFO] [stdout]     |  __________________^
[INFO] [stdout] 254 | |         r#"
[INFO] [stdout] 255 | |             SELECT id FROM users WHERE id = $1
[INFO] [stdout] 256 | |             AND (status IS NULL OR status = 1)
[INFO] [stdout] 257 | |         "#,
[INFO] [stdout] 258 | |         id
[INFO] [stdout] 259 | |     )
[INFO] [stdout]     | |_____^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `$crate::sqlx_macros::expand_query` which comes from the expansion of the macro `sqlx::query_scalar` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: set `DATABASE_URL` to use query macros online, or run `cargo sqlx prepare` to update the query cache
[INFO] [stdout]    --> src/service/user_service.rs:273:16
[INFO] [stdout]     |
[INFO] [stdout] 273 |       let user = sqlx::query_as!(
[INFO] [stdout]     |  ________________^
[INFO] [stdout] 274 | |         User,
[INFO] [stdout] 275 | |         r#"
[INFO] [stdout] 276 | |             SELECT id, open_id, name, email, password_hash, file_name, abstract as abstract_field, phone, status, gender
[INFO] [stdout] ...   |
[INFO] [stdout] 279 | |          id
[INFO] [stdout] 280 | |     )
[INFO] [stdout]     | |_____^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `$crate::sqlx_macros::expand_query` which comes from the expansion of the macro `sqlx::query_as` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: set `DATABASE_URL` to use query macros online, or run `cargo sqlx prepare` to update the query cache
[INFO] [stdout]    --> src/service/user_service.rs:327:9
[INFO] [stdout]     |
[INFO] [stdout] 327 | /         sqlx::query!(
[INFO] [stdout] 328 | |             r#"UPDATE users SET name = $1 WHERE open_id = $2"#,
[INFO] [stdout] 329 | |             n,
[INFO] [stdout] 330 | |             open_id
[INFO] [stdout] 331 | |         )
[INFO] [stdout]     | |_________^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `$crate::sqlx_macros::expand_query` which comes from the expansion of the macro `sqlx::query` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: set `DATABASE_URL` to use query macros online, or run `cargo sqlx prepare` to update the query cache
[INFO] [stdout]    --> src/service/user_service.rs:351:13
[INFO] [stdout]     |
[INFO] [stdout] 351 | /             sqlx::query!(
[INFO] [stdout] 352 | |                 r#"UPDATE users SET phone = NULL WHERE open_id = $1"#,
[INFO] [stdout] 353 | |                 open_id
[INFO] [stdout] 354 | |             )
[INFO] [stdout]     | |_____________^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `$crate::sqlx_macros::expand_query` which comes from the expansion of the macro `sqlx::query` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: set `DATABASE_URL` to use query macros online, or run `cargo sqlx prepare` to update the query cache
[INFO] [stdout]    --> src/service/user_service.rs:358:13
[INFO] [stdout]     |
[INFO] [stdout] 358 | /             sqlx::query!(
[INFO] [stdout] 359 | |                 r#"UPDATE users SET phone = $1 WHERE open_id = $2"#,
[INFO] [stdout] 360 | |                 p,
[INFO] [stdout] 361 | |                 open_id
[INFO] [stdout] 362 | |             )
[INFO] [stdout]     | |_____________^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `$crate::sqlx_macros::expand_query` which comes from the expansion of the macro `sqlx::query` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: set `DATABASE_URL` to use query macros online, or run `cargo sqlx prepare` to update the query cache
[INFO] [stdout]    --> src/service/user_service.rs:371:13
[INFO] [stdout]     |
[INFO] [stdout] 371 | /             sqlx::query!(
[INFO] [stdout] 372 | |                 r#"UPDATE users SET file_name = NULL WHERE open_id = $1"#,
[INFO] [stdout] 373 | |                 open_id
[INFO] [stdout] 374 | |             )
[INFO] [stdout]     | |_____________^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `$crate::sqlx_macros::expand_query` which comes from the expansion of the macro `sqlx::query` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: set `DATABASE_URL` to use query macros online, or run `cargo sqlx prepare` to update the query cache
[INFO] [stdout]    --> src/service/user_service.rs:378:13
[INFO] [stdout]     |
[INFO] [stdout] 378 | /             sqlx::query!(
[INFO] [stdout] 379 | |                 r#"UPDATE users SET file_name = $1 WHERE open_id = $2"#,
[INFO] [stdout] 380 | |                 f,
[INFO] [stdout] 381 | |                 open_id
[INFO] [stdout] 382 | |             )
[INFO] [stdout]     | |_____________^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `$crate::sqlx_macros::expand_query` which comes from the expansion of the macro `sqlx::query` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: set `DATABASE_URL` to use query macros online, or run `cargo sqlx prepare` to update the query cache
[INFO] [stdout]    --> src/service/user_service.rs:391:13
[INFO] [stdout]     |
[INFO] [stdout] 391 | /             sqlx::query!(
[INFO] [stdout] 392 | |                 r#"UPDATE users SET abstract = NULL WHERE open_id = $1"#,
[INFO] [stdout] 393 | |                 open_id
[INFO] [stdout] 394 | |             )
[INFO] [stdout]     | |_____________^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `$crate::sqlx_macros::expand_query` which comes from the expansion of the macro `sqlx::query` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: set `DATABASE_URL` to use query macros online, or run `cargo sqlx prepare` to update the query cache
[INFO] [stdout]    --> src/service/user_service.rs:398:13
[INFO] [stdout]     |
[INFO] [stdout] 398 | /             sqlx::query!(
[INFO] [stdout] 399 | |                 r#"UPDATE users SET abstract = $1 WHERE open_id = $2"#,
[INFO] [stdout] 400 | |                 a,
[INFO] [stdout] 401 | |                 open_id
[INFO] [stdout] 402 | |             )
[INFO] [stdout]     | |_____________^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `$crate::sqlx_macros::expand_query` which comes from the expansion of the macro `sqlx::query` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: set `DATABASE_URL` to use query macros online, or run `cargo sqlx prepare` to update the query cache
[INFO] [stdout]    --> src/service/user_service.rs:409:9
[INFO] [stdout]     |
[INFO] [stdout] 409 | /         sqlx::query!(
[INFO] [stdout] 410 | |             r#"UPDATE users SET gender = $1 WHERE open_id = $2"#,
[INFO] [stdout] 411 | |             g,
[INFO] [stdout] 412 | |             open_id
[INFO] [stdout] 413 | |         )
[INFO] [stdout]     | |_________^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `$crate::sqlx_macros::expand_query` which comes from the expansion of the macro `sqlx::query` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `SafeUser`
[INFO] [stdout]  --> src/service/user_service.rs:2:21
[INFO] [stdout]   |
[INFO] [stdout] 2 | use crate::models::{SafeUser, User};
[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: `SafeUser`
[INFO] [stdout]  --> src/service/user_service.rs:2:21
[INFO] [stdout]   |
[INFO] [stdout] 2 | use crate::models::{SafeUser, User};
[INFO] [stdout]   |                     ^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0282]: type annotations needed
[INFO] [stdout]    --> src/api/im_group_api.rs:538:54
[INFO] [stdout]     |
[INFO] [stdout] 538 | ...                   .add_subscription_id(sub_id.clone(), member_user.id);
[INFO] [stdout]     |                                            ^^^^^^ cannot infer type
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0282]: type annotations needed
[INFO] [stdout]    --> src/api/im_message_api.rs:170:58
[INFO] [stdout]     |
[INFO] [stdout] 170 | ...                   .add_subscription_id(sub_id.clone(), to_user.id);
[INFO] [stdout]     |                                            ^^^^^^ cannot infer type
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0282]: type annotations needed
[INFO] [stdout]    --> src/api/im_group_api.rs:538:54
[INFO] [stdout]     |
[INFO] [stdout] 538 | ...                   .add_subscription_id(sub_id.clone(), member_user.id);
[INFO] [stdout]     |                                            ^^^^^^ cannot infer type
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0282]: type annotations needed
[INFO] [stdout]   --> src/service/im_friendship_service.rs:12:18
[INFO] [stdout]    |
[INFO] [stdout] 12 |       let result = sqlx::query_scalar!(
[INFO] [stdout]    |  __________________^
[INFO] [stdout] 13 | |         r#"
[INFO] [stdout] 14 | |             SELECT COUNT(*) "count!: i64" FROM im_friendship
[INFO] [stdout] 15 | |             WHERE ((owner_id = $1 AND to_id = $2) OR (owner_id = $2 AND to_id = $1))
[INFO] [stdout] ...  |
[INFO] [stdout] 22 | |     .fetch_one(conn)
[INFO] [stdout] 23 | |     .await
[INFO] [stdout]    | |__________^ cannot infer type
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0282]: type annotations needed
[INFO] [stdout]   --> src/service/im_friendship_service.rs:41:24
[INFO] [stdout]    |
[INFO] [stdout] 41 |           let user_row = sqlx::query!(
[INFO] [stdout]    |  ________________________^
[INFO] [stdout] 42 | |             r#"SELECT
[INFO] [stdout] 43 | |                 u1.open_id as owner_open_id, u1.name as owner_name, u1.phone as owner_phone,
[INFO] [stdout] 44 | |                 u2.open_id as to_open_id, u2.name as to_name, u2.phone as to_phone
[INFO] [stdout] ...  |
[INFO] [stdout] 54 | |         .fetch_optional(conn)
[INFO] [stdout] 55 | |         .await
[INFO] [stdout]    | |______________^ cannot infer type
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0282]: type annotations needed
[INFO] [stdout]    --> src/service/im_friendship_service.rs:116:40
[INFO] [stdout]     |
[INFO] [stdout] 116 |                       let check_result = sqlx::query_scalar!(
[INFO] [stdout]     |  ________________________________________^
[INFO] [stdout] 117 | |                         r#"SELECT COUNT(*) "count!: i64" FROM im_friendship
[INFO] [stdout] 118 | |                          WHERE ((owner_id = $1 AND to_id = $2) OR (owner_id = $2 AND to_id = $1))
[INFO] [stdout] 119 | |                          AND (del_flag IS NULL OR del_flag = 1)
[INFO] [stdout] ...   |
[INFO] [stdout] 124 | |                     .fetch_optional(conn)
[INFO] [stdout] 125 | |                     .await
[INFO] [stdout]     | |__________________________^ cannot infer type
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0282]: type annotations needed
[INFO] [stdout]    --> src/service/im_friendship_service.rs:152:9
[INFO] [stdout]     |
[INFO] [stdout] 152 |     let friends = sqlx::query_as!(
[INFO] [stdout]     |         ^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 168 |     if !friends.is_empty() {
[INFO] [stdout]     |         ------- type must be known at this point
[INFO] [stdout]     |
[INFO] [stdout] help: consider giving `friends` an explicit type
[INFO] [stdout]     |
[INFO] [stdout] 152 |     let friends: /* Type */ = sqlx::query_as!(
[INFO] [stdout]     |                ++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0282]: type annotations needed
[INFO] [stdout]    --> src/service/im_friendship_service.rs:179:24
[INFO] [stdout]     |
[INFO] [stdout] 179 |       let user_by_name = sqlx::query_scalar!(
[INFO] [stdout]     |  ________________________^
[INFO] [stdout] 180 | |         r#"
[INFO] [stdout] 181 | |             SELECT open_id FROM users WHERE name = $1
[INFO] [stdout] 182 | |             AND (status IS NULL OR status = 1)
[INFO] [stdout] ...   |
[INFO] [stdout] 187 | |     .fetch_optional(conn)
[INFO] [stdout] 188 | |     .await
[INFO] [stdout]     | |__________^ cannot infer type
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0282]: type annotations needed
[INFO] [stdout]    --> src/api/im_message_api.rs:170:58
[INFO] [stdout]     |
[INFO] [stdout] 170 | ...                   .add_subscription_id(sub_id.clone(), to_user.id);
[INFO] [stdout]     |                                            ^^^^^^ cannot infer type
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0282]: type annotations needed
[INFO] [stdout]    --> src/service/im_friendship_service.rs:196:27
[INFO] [stdout]     |
[INFO] [stdout] 196 |               let friends = sqlx::query_as!(
[INFO] [stdout]     |  ___________________________^
[INFO] [stdout] 197 | |                 ImFriendship,
[INFO] [stdout] 198 | |                 r#"
[INFO] [stdout] 199 | |                     SELECT owner_id, to_id, remark, del_flag, black, create_time, update_time,
[INFO] [stdout] ...   |
[INFO] [stdout] 209 | |             .fetch_all(conn)
[INFO] [stdout] 210 | |             .await
[INFO] [stdout]     | |__________________^ cannot infer type
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0282]: type annotations needed
[INFO] [stdout]    --> src/service/im_friendship_service.rs:214:21
[INFO] [stdout]     |
[INFO] [stdout] 214 |                 if !friends.is_empty() {
[INFO] [stdout]     |                     ^^^^^^^ cannot infer type
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0282]: type annotations needed
[INFO] [stdout]    --> src/service/im_friendship_service.rs:228:27
[INFO] [stdout]     |
[INFO] [stdout] 228 |       let user_by_open_id = sqlx::query_scalar!(
[INFO] [stdout]     |  ___________________________^
[INFO] [stdout] 229 | |         r#"
[INFO] [stdout] 230 | |             SELECT name FROM users WHERE open_id = $1
[INFO] [stdout] 231 | |             AND (status IS NULL OR status = 1) LIMIT 1
[INFO] [stdout] ...   |
[INFO] [stdout] 235 | |     .fetch_optional(conn)
[INFO] [stdout] 236 | |     .await
[INFO] [stdout]     | |__________^ cannot infer type
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0282]: type annotations needed
[INFO] [stdout]    --> src/service/im_friendship_service.rs:241:33
[INFO] [stdout]     |
[INFO] [stdout] 241 |         if name != owner_id && !name.is_empty() {
[INFO] [stdout]     |                                 ^^^^ cannot infer type
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0282]: type annotations needed
[INFO] [stdout]    --> src/service/im_friendship_service.rs:244:27
[INFO] [stdout]     |
[INFO] [stdout] 244 |               let friends = sqlx::query_as!(
[INFO] [stdout]     |  ___________________________^
[INFO] [stdout] 245 | |                 ImFriendship,
[INFO] [stdout] 246 | |                 r#"
[INFO] [stdout] 247 | |                     SELECT owner_id, to_id, remark, del_flag, black, create_time, update_time,
[INFO] [stdout] ...   |
[INFO] [stdout] 257 | |             .fetch_all(conn)
[INFO] [stdout] 258 | |             .await
[INFO] [stdout]     | |__________________^ cannot infer type
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0282]: type annotations needed
[INFO] [stdout]    --> src/service/im_friendship_service.rs:262:21
[INFO] [stdout]     |
[INFO] [stdout] 262 |                 if !friends.is_empty() {
[INFO] [stdout]     |                     ^^^^^^^ cannot infer type
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0282]: type annotations needed
[INFO] [stdout]    --> src/service/im_friendship_service.rs:375:18
[INFO] [stdout]     |
[INFO] [stdout] 375 |       let result = sqlx::query!(
[INFO] [stdout]     |  __________________^
[INFO] [stdout] 376 | |         r#"
[INFO] [stdout] 377 | |             UPDATE im_friendship
[INFO] [stdout] 378 | |             SET del_flag = 0, update_time = $1, version = version + 1
[INFO] [stdout] ...   |
[INFO] [stdout] 386 | |     .execute(conn)
[INFO] [stdout] 387 | |     .await
[INFO] [stdout]     | |__________^ cannot infer type
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0282]: type annotations needed
[INFO] [stdout]    --> src/service/im_friendship_service.rs:437:25
[INFO] [stdout]     |
[INFO] [stdout] 437 |       let current_black = sqlx::query_scalar!(
[INFO] [stdout]     |  _________________________^
[INFO] [stdout] 438 | |         r#"
[INFO] [stdout] 439 | |             SELECT black FROM im_friendship WHERE owner_id = $1 AND to_id = $2
[INFO] [stdout] 440 | |         "#,
[INFO] [stdout] ...   |
[INFO] [stdout] 444 | |     .fetch_optional(conn)
[INFO] [stdout] 445 | |     .await?
[INFO] [stdout]     | |___________^ cannot infer type
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0282]: type annotations needed
[INFO] [stdout]    --> src/service/im_friendship_service.rs:506:5
[INFO] [stdout]     |
[INFO] [stdout] 506 | /     sqlx::query!(
[INFO] [stdout] 507 | |         r#"
[INFO] [stdout] 508 | |             DELETE FROM im_friendship_request
[INFO] [stdout] 509 | |             WHERE from_id = $1 AND to_id = $2 AND approve_status = 2
[INFO] [stdout] ...   |
[INFO] [stdout] 514 | |     .execute(conn)
[INFO] [stdout] 515 | |     .await
[INFO] [stdout]     | |__________^ cannot infer type
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0282]: type annotations needed
[INFO] [stdout]   --> src/service/im_friendship_service.rs:12:18
[INFO] [stdout]    |
[INFO] [stdout] 12 |       let result = sqlx::query_scalar!(
[INFO] [stdout]    |  __________________^
[INFO] [stdout] 13 | |         r#"
[INFO] [stdout] 14 | |             SELECT COUNT(*) "count!: i64" FROM im_friendship
[INFO] [stdout] 15 | |             WHERE ((owner_id = $1 AND to_id = $2) OR (owner_id = $2 AND to_id = $1))
[INFO] [stdout] ...  |
[INFO] [stdout] 22 | |     .fetch_one(conn)
[INFO] [stdout] 23 | |     .await
[INFO] [stdout]    | |__________^ cannot infer type
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0282]: type annotations needed
[INFO] [stdout]   --> src/service/im_friendship_service.rs:41:24
[INFO] [stdout]    |
[INFO] [stdout] 41 |           let user_row = sqlx::query!(
[INFO] [stdout]    |  ________________________^
[INFO] [stdout] 42 | |             r#"SELECT
[INFO] [stdout] 43 | |                 u1.open_id as owner_open_id, u1.name as owner_name, u1.phone as owner_phone,
[INFO] [stdout] 44 | |                 u2.open_id as to_open_id, u2.name as to_name, u2.phone as to_phone
[INFO] [stdout] ...  |
[INFO] [stdout] 54 | |         .fetch_optional(conn)
[INFO] [stdout] 55 | |         .await
[INFO] [stdout]    | |______________^ cannot infer type
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0282]: type annotations needed
[INFO] [stdout]    --> src/service/im_friendship_service.rs:116:40
[INFO] [stdout]     |
[INFO] [stdout] 116 |                       let check_result = sqlx::query_scalar!(
[INFO] [stdout]     |  ________________________________________^
[INFO] [stdout] 117 | |                         r#"SELECT COUNT(*) "count!: i64" FROM im_friendship
[INFO] [stdout] 118 | |                          WHERE ((owner_id = $1 AND to_id = $2) OR (owner_id = $2 AND to_id = $1))
[INFO] [stdout] 119 | |                          AND (del_flag IS NULL OR del_flag = 1)
[INFO] [stdout] ...   |
[INFO] [stdout] 124 | |                     .fetch_optional(conn)
[INFO] [stdout] 125 | |                     .await
[INFO] [stdout]     | |__________________________^ cannot infer type
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0282]: type annotations needed
[INFO] [stdout]    --> src/service/im_friendship_service.rs:152:9
[INFO] [stdout]     |
[INFO] [stdout] 152 |     let friends = sqlx::query_as!(
[INFO] [stdout]     |         ^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 168 |     if !friends.is_empty() {
[INFO] [stdout]     |         ------- type must be known at this point
[INFO] [stdout]     |
[INFO] [stdout] help: consider giving `friends` an explicit type
[INFO] [stdout]     |
[INFO] [stdout] 152 |     let friends: /* Type */ = sqlx::query_as!(
[INFO] [stdout]     |                ++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0282]: type annotations needed
[INFO] [stdout]    --> src/service/im_friendship_service.rs:179:24
[INFO] [stdout]     |
[INFO] [stdout] 179 |       let user_by_name = sqlx::query_scalar!(
[INFO] [stdout]     |  ________________________^
[INFO] [stdout] 180 | |         r#"
[INFO] [stdout] 181 | |             SELECT open_id FROM users WHERE name = $1
[INFO] [stdout] 182 | |             AND (status IS NULL OR status = 1)
[INFO] [stdout] ...   |
[INFO] [stdout] 187 | |     .fetch_optional(conn)
[INFO] [stdout] 188 | |     .await
[INFO] [stdout]     | |__________^ cannot infer type
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0282]: type annotations needed
[INFO] [stdout]    --> src/service/im_friendship_service.rs:196:27
[INFO] [stdout]     |
[INFO] [stdout] 196 |               let friends = sqlx::query_as!(
[INFO] [stdout]     |  ___________________________^
[INFO] [stdout] 197 | |                 ImFriendship,
[INFO] [stdout] 198 | |                 r#"
[INFO] [stdout] 199 | |                     SELECT owner_id, to_id, remark, del_flag, black, create_time, update_time,
[INFO] [stdout] ...   |
[INFO] [stdout] 209 | |             .fetch_all(conn)
[INFO] [stdout] 210 | |             .await
[INFO] [stdout]     | |__________________^ cannot infer type
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0282]: type annotations needed
[INFO] [stdout]    --> src/service/im_friendship_service.rs:214:21
[INFO] [stdout]     |
[INFO] [stdout] 214 |                 if !friends.is_empty() {
[INFO] [stdout]     |                     ^^^^^^^ cannot infer type
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0282]: type annotations needed
[INFO] [stdout]    --> src/service/im_friendship_service.rs:228:27
[INFO] [stdout]     |
[INFO] [stdout] 228 |       let user_by_open_id = sqlx::query_scalar!(
[INFO] [stdout]     |  ___________________________^
[INFO] [stdout] 229 | |         r#"
[INFO] [stdout] 230 | |             SELECT name FROM users WHERE open_id = $1
[INFO] [stdout] 231 | |             AND (status IS NULL OR status = 1) LIMIT 1
[INFO] [stdout] ...   |
[INFO] [stdout] 235 | |     .fetch_optional(conn)
[INFO] [stdout] 236 | |     .await
[INFO] [stdout]     | |__________^ cannot infer type
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0282]: type annotations needed
[INFO] [stdout]    --> src/service/im_friendship_service.rs:241:33
[INFO] [stdout]     |
[INFO] [stdout] 241 |         if name != owner_id && !name.is_empty() {
[INFO] [stdout]     |                                 ^^^^ cannot infer type
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0282]: type annotations needed
[INFO] [stdout]    --> src/service/im_friendship_service.rs:244:27
[INFO] [stdout]     |
[INFO] [stdout] 244 |               let friends = sqlx::query_as!(
[INFO] [stdout]     |  ___________________________^
[INFO] [stdout] 245 | |                 ImFriendship,
[INFO] [stdout] 246 | |                 r#"
[INFO] [stdout] 247 | |                     SELECT owner_id, to_id, remark, del_flag, black, create_time, update_time,
[INFO] [stdout] ...   |
[INFO] [stdout] 257 | |             .fetch_all(conn)
[INFO] [stdout] 258 | |             .await
[INFO] [stdout]     | |__________________^ cannot infer type
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0282]: type annotations needed
[INFO] [stdout]    --> src/service/im_friendship_service.rs:262:21
[INFO] [stdout]     |
[INFO] [stdout] 262 |                 if !friends.is_empty() {
[INFO] [stdout]     |                     ^^^^^^^ cannot infer type
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0282]: type annotations needed
[INFO] [stdout]    --> src/service/im_friendship_service.rs:375:18
[INFO] [stdout]     |
[INFO] [stdout] 375 |       let result = sqlx::query!(
[INFO] [stdout]     |  __________________^
[INFO] [stdout] 376 | |         r#"
[INFO] [stdout] 377 | |             UPDATE im_friendship
[INFO] [stdout] 378 | |             SET del_flag = 0, update_time = $1, version = version + 1
[INFO] [stdout] ...   |
[INFO] [stdout] 386 | |     .execute(conn)
[INFO] [stdout] 387 | |     .await
[INFO] [stdout]     | |__________^ cannot infer type
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0282]: type annotations needed
[INFO] [stdout]    --> src/service/im_friendship_service.rs:437:25
[INFO] [stdout]     |
[INFO] [stdout] 437 |       let current_black = sqlx::query_scalar!(
[INFO] [stdout]     |  _________________________^
[INFO] [stdout] 438 | |         r#"
[INFO] [stdout] 439 | |             SELECT black FROM im_friendship WHERE owner_id = $1 AND to_id = $2
[INFO] [stdout] 440 | |         "#,
[INFO] [stdout] ...   |
[INFO] [stdout] 444 | |     .fetch_optional(conn)
[INFO] [stdout] 445 | |     .await?
[INFO] [stdout]     | |___________^ cannot infer type
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0282]: type annotations needed
[INFO] [stdout]    --> src/service/im_friendship_service.rs:506:5
[INFO] [stdout]     |
[INFO] [stdout] 506 | /     sqlx::query!(
[INFO] [stdout] 507 | |         r#"
[INFO] [stdout] 508 | |             DELETE FROM im_friendship_request
[INFO] [stdout] 509 | |             WHERE from_id = $1 AND to_id = $2 AND approve_status = 2
[INFO] [stdout] ...   |
[INFO] [stdout] 514 | |     .execute(conn)
[INFO] [stdout] 515 | |     .await
[INFO] [stdout]     | |__________^ cannot infer type
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0282]: type annotations needed
[INFO] [stdout]    --> src/service/im_user_service.rs:212:9
[INFO] [stdout]     |
[INFO] [stdout] 212 |     let existing = sqlx::query!("SELECT id FROM users WHERE open_id = $1", user_id)
[INFO] [stdout]     |         ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 216 |     if existing.is_some() {
[INFO] [stdout]     |        -------- type must be known at this point
[INFO] [stdout]     |
[INFO] [stdout] help: consider giving `existing` an explicit type
[INFO] [stdout]     |
[INFO] [stdout] 212 |     let existing: /* Type */ = sqlx::query!("SELECT id FROM users WHERE open_id = $1", user_id)
[INFO] [stdout]     |                 ++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0282]: type annotations needed
[INFO] [stdout]    --> src/service/user_service.rs:109:21
[INFO] [stdout]     |
[INFO] [stdout] 109 |       let result_id = sqlx::query_scalar!(
[INFO] [stdout]     |  _____________________^
[INFO] [stdout] 110 | |         r#"INSERT INTO users (open_id, name, email, password_hash, phone, status, gender)
[INFO] [stdout] 111 | |         VALUES ($1, $2, $3, $4, $5, 1, 3)
[INFO] [stdout] 112 | |         RETURNING id"#,
[INFO] [stdout] ...   |
[INFO] [stdout] 119 | |     .fetch_one(conn)
[INFO] [stdout] 120 | |     .await
[INFO] [stdout]     | |__________^ cannot infer type
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0282]: type annotations needed
[INFO] [stdout]    --> src/service/user_service.rs:253:18
[INFO] [stdout]     |
[INFO] [stdout] 253 |       let exists = sqlx::query_scalar!(
[INFO] [stdout]     |  __________________^
[INFO] [stdout] 254 | |         r#"
[INFO] [stdout] 255 | |             SELECT id FROM users WHERE id = $1
[INFO] [stdout] 256 | |             AND (status IS NULL OR status = 1)
[INFO] [stdout] ...   |
[INFO] [stdout] 260 | |     .fetch_optional(conn)
[INFO] [stdout] 261 | |     .await
[INFO] [stdout]     | |__________^ cannot infer type
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0282]: type annotations needed
[INFO] [stdout]    --> src/service/user_service.rs:273:16
[INFO] [stdout]     |
[INFO] [stdout] 273 |       let user = sqlx::query_as!(
[INFO] [stdout]     |  ________________^
[INFO] [stdout] 274 | |         User,
[INFO] [stdout] 275 | |         r#"
[INFO] [stdout] 276 | |             SELECT id, open_id, name, email, password_hash, file_name, abstract as abstract_field, phone, status, gender
[INFO] [stdout] ...   |
[INFO] [stdout] 281 | |         .fetch_optional(conn)
[INFO] [stdout] 282 | |         .await
[INFO] [stdout]     | |______________^ cannot infer type
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0282]: type annotations needed
[INFO] [stdout]    --> src/service/im_user_service.rs:212:9
[INFO] [stdout]     |
[INFO] [stdout] 212 |     let existing = sqlx::query!("SELECT id FROM users WHERE open_id = $1", user_id)
[INFO] [stdout]     |         ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 216 |     if existing.is_some() {
[INFO] [stdout]     |        -------- type must be known at this point
[INFO] [stdout]     |
[INFO] [stdout] help: consider giving `existing` an explicit type
[INFO] [stdout]     |
[INFO] [stdout] 212 |     let existing: /* Type */ = sqlx::query!("SELECT id FROM users WHERE open_id = $1", user_id)
[INFO] [stdout]     |                 ++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0282]: type annotations needed
[INFO] [stdout]    --> src/service/user_service.rs:109:21
[INFO] [stdout]     |
[INFO] [stdout] 109 |       let result_id = sqlx::query_scalar!(
[INFO] [stdout]     |  _____________________^
[INFO] [stdout] 110 | |         r#"INSERT INTO users (open_id, name, email, password_hash, phone, status, gender)
[INFO] [stdout] 111 | |         VALUES ($1, $2, $3, $4, $5, 1, 3)
[INFO] [stdout] 112 | |         RETURNING id"#,
[INFO] [stdout] ...   |
[INFO] [stdout] 119 | |     .fetch_one(conn)
[INFO] [stdout] 120 | |     .await
[INFO] [stdout]     | |__________^ cannot infer type
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0282]: type annotations needed
[INFO] [stdout]    --> src/service/user_service.rs:253:18
[INFO] [stdout]     |
[INFO] [stdout] 253 |       let exists = sqlx::query_scalar!(
[INFO] [stdout]     |  __________________^
[INFO] [stdout] 254 | |         r#"
[INFO] [stdout] 255 | |             SELECT id FROM users WHERE id = $1
[INFO] [stdout] 256 | |             AND (status IS NULL OR status = 1)
[INFO] [stdout] ...   |
[INFO] [stdout] 260 | |     .fetch_optional(conn)
[INFO] [stdout] 261 | |     .await
[INFO] [stdout]     | |__________^ cannot infer type
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0282]: type annotations needed
[INFO] [stdout]    --> src/service/user_service.rs:273:16
[INFO] [stdout]     |
[INFO] [stdout] 273 |       let user = sqlx::query_as!(
[INFO] [stdout]     |  ________________^
[INFO] [stdout] 274 | |         User,
[INFO] [stdout] 275 | |         r#"
[INFO] [stdout] 276 | |             SELECT id, open_id, name, email, password_hash, file_name, abstract as abstract_field, phone, status, gender
[INFO] [stdout] ...   |
[INFO] [stdout] 281 | |         .fetch_optional(conn)
[INFO] [stdout] 282 | |         .await
[INFO] [stdout]     | |______________^ cannot infer type
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `remark_clone`
[INFO] [stdout]    --> src/api/im_friendship_api.rs:149:13
[INFO] [stdout]     |
[INFO] [stdout] 149 |         let remark_clone = req.remark.clone();
[INFO] [stdout]     |             ^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_remark_clone`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `add_source_clone`
[INFO] [stdout]    --> src/api/im_friendship_api.rs:150:13
[INFO] [stdout]     |
[INFO] [stdout] 150 |         let add_source_clone = req.add_source.clone();
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_add_source_clone`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `message_clone`
[INFO] [stdout]    --> src/api/im_friendship_api.rs:151:13
[INFO] [stdout]     |
[INFO] [stdout] 151 |         let message_clone = req.message.clone();
[INFO] [stdout]     |             ^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_message_clone`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `to_user`
[INFO] [stdout]    --> src/api/im_friendship_api.rs:186:27
[INFO] [stdout]     |
[INFO] [stdout] 186 |                 if let Ok(to_user) = to_user {
[INFO] [stdout]     |                           ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_to_user`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `remark_clone`
[INFO] [stdout]    --> src/api/im_friendship_api.rs:149:13
[INFO] [stdout]     |
[INFO] [stdout] 149 |         let remark_clone = req.remark.clone();
[INFO] [stdout]     |             ^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_remark_clone`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `add_source_clone`
[INFO] [stdout]    --> src/api/im_friendship_api.rs:150:13
[INFO] [stdout]     |
[INFO] [stdout] 150 |         let add_source_clone = req.add_source.clone();
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_add_source_clone`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `message_clone`
[INFO] [stdout]    --> src/api/im_friendship_api.rs:151:13
[INFO] [stdout]     |
[INFO] [stdout] 151 |         let message_clone = req.message.clone();
[INFO] [stdout]     |             ^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_message_clone`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `to_user`
[INFO] [stdout]    --> src/api/im_friendship_api.rs:186:27
[INFO] [stdout]     |
[INFO] [stdout] 186 |                 if let Ok(to_user) = to_user {
[INFO] [stdout]     |                           ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_to_user`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `from_user`
[INFO] [stdout]   --> src/api/im_group_api.rs:31:15
[INFO] [stdout]    |
[INFO] [stdout] 31 |     if let Ok(from_user) = depot.obtain::<User>() {
[INFO] [stdout]    |               ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_from_user`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `from_user`
[INFO] [stdout]   --> src/api/im_group_api.rs:31:15
[INFO] [stdout]    |
[INFO] [stdout] 31 |     if let Ok(from_user) = depot.obtain::<User>() {
[INFO] [stdout]    |               ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_from_user`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `params`
[INFO] [stdout]    --> src/api/im_message_api.rs:279:5
[INFO] [stdout]     |
[INFO] [stdout] 279 |     params: QueryParam<GroupMessageParams, true>,
[INFO] [stdout]     |     ^^^^^^ help: if this is intentional, prefix it with an underscore: `_params`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `user`
[INFO] [stdout]    --> src/api/im_message_api.rs:281:15
[INFO] [stdout]     |
[INFO] [stdout] 281 |     if let Ok(user) = depot.obtain::<User>() {
[INFO] [stdout]     |               ^^^^ help: if this is intentional, prefix it with an underscore: `_user`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `req`
[INFO] [stdout]    --> src/api/im_message_api.rs:282:13
[INFO] [stdout]     |
[INFO] [stdout] 282 |         let req = group_id.into_inner();
[INFO] [stdout]     |             ^^^ help: if this is intentional, prefix it with an underscore: `_req`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `params`
[INFO] [stdout]    --> src/api/im_message_api.rs:279:5
[INFO] [stdout]     |
[INFO] [stdout] 279 |     params: QueryParam<GroupMessageParams, true>,
[INFO] [stdout]     |     ^^^^^^ help: if this is intentional, prefix it with an underscore: `_params`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `user`
[INFO] [stdout]    --> src/api/im_message_api.rs:281:15
[INFO] [stdout]     |
[INFO] [stdout] 281 |     if let Ok(user) = depot.obtain::<User>() {
[INFO] [stdout]     |               ^^^^ help: if this is intentional, prefix it with an underscore: `_user`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `req`
[INFO] [stdout]    --> src/api/im_message_api.rs:282:13
[INFO] [stdout]     |
[INFO] [stdout] 282 |         let req = group_id.into_inner();
[INFO] [stdout]     |             ^^^ help: if this is intentional, prefix it with an underscore: `_req`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] For more information about this error, try `rustc --explain E0282`.
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `im-server` (bin "im-server") due to 89 previous errors; 9 warnings emitted
[INFO] [stderr] warning: build failed, waiting for other jobs to finish...
[INFO] [stdout] For more information about this error, try `rustc --explain E0282`.
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `im-server` (bin "im-server" test) due to 89 previous errors; 9 warnings emitted
[INFO] running `Command { std: "docker" "inspect" "67d3cf34869fab87bdb6e0a34efc1f21cb6d4b59dd361528822f28690ea91923", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "67d3cf34869fab87bdb6e0a34efc1f21cb6d4b59dd361528822f28690ea91923", kill_on_drop: false }`
[INFO] [stdout] 67d3cf34869fab87bdb6e0a34efc1f21cb6d4b59dd361528822f28690ea91923
