[INFO] cloning repository https://github.com/karstenes/mls_ds
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/karstenes/mls_ds" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fkarstenes%2Fmls_ds", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fkarstenes%2Fmls_ds'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] 17b43f57b1ed34b0f44f17c9d3d4611cd8512d23
[INFO] checking karstenes/mls_ds against try#95813608313bff49cfc1afc393a946a3c085b772 for pr-148946
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fkarstenes%2Fmls_ds" "/workspace/builds/worker-7-tc2/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-7-tc2/source'...
[INFO] [stderr] done.
[INFO] started tweaking git repo https://github.com/karstenes/mls_ds
[INFO] finished tweaking git repo https://github.com/karstenes/mls_ds
[INFO] tweaked toml for git repo https://github.com/karstenes/mls_ds written to /workspace/builds/worker-7-tc2/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/karstenes/mls_ds on toolchain 95813608313bff49cfc1afc393a946a3c085b772
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+95813608313bff49cfc1afc393a946a3c085b772" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate git repo https://github.com/karstenes/mls_ds 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" "+95813608313bff49cfc1afc393a946a3c085b772" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Blocking waiting for file lock on package cache
[INFO] [stderr]     Blocking waiting for file lock on package cache
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-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:4848fb76d95f26979359cc7e45710b1dbc8f3acb7aeedee7c460d7702230f228" "/opt/rustwide/cargo-home/bin/cargo" "+95813608313bff49cfc1afc393a946a3c085b772" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] cf9cfcdd5ad9972d3ecbf405978d347ef2d9ff0085ad5dd77cfda977229eeaef
[INFO] running `Command { std: "docker" "start" "-a" "cf9cfcdd5ad9972d3ecbf405978d347ef2d9ff0085ad5dd77cfda977229eeaef", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "cf9cfcdd5ad9972d3ecbf405978d347ef2d9ff0085ad5dd77cfda977229eeaef", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "cf9cfcdd5ad9972d3ecbf405978d347ef2d9ff0085ad5dd77cfda977229eeaef", kill_on_drop: false }`
[INFO] [stdout] cf9cfcdd5ad9972d3ecbf405978d347ef2d9ff0085ad5dd77cfda977229eeaef
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-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:4848fb76d95f26979359cc7e45710b1dbc8f3acb7aeedee7c460d7702230f228" "/opt/rustwide/cargo-home/bin/cargo" "+95813608313bff49cfc1afc393a946a3c085b772" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 0b03353cbbe87e3651b00916a8c3a4ca15292bb6a6900c2d6579322ebd60f86c
[INFO] running `Command { std: "docker" "start" "-a" "0b03353cbbe87e3651b00916a8c3a4ca15292bb6a6900c2d6579322ebd60f86c", kill_on_drop: false }`
[INFO] [stderr]    Compiling proc-macro2 v1.0.94
[INFO] [stderr]    Compiling libc v0.2.171
[INFO] [stderr]    Compiling typenum v1.18.0
[INFO] [stderr]     Checking const-oid v0.9.6
[INFO] [stderr]     Checking log v0.4.27
[INFO] [stderr]     Checking smallvec v1.14.0
[INFO] [stderr]    Compiling zerocopy v0.8.24
[INFO] [stderr]    Compiling generic-array v0.14.7
[INFO] [stderr]    Compiling getrandom v0.3.2
[INFO] [stderr]    Compiling slab v0.4.9
[INFO] [stderr]     Checking base64ct v1.7.3
[INFO] [stderr]    Compiling icu_locid_transform_data v1.5.1
[INFO] [stderr]     Checking litemap v0.7.5
[INFO] [stderr]    Compiling icu_properties_data v1.5.1
[INFO] [stderr]    Compiling semver v1.0.26
[INFO] [stderr]     Checking tracing-core v0.1.33
[INFO] [stderr]    Compiling icu_normalizer_data v1.5.1
[INFO] [stderr]     Checking base16ct v0.2.0
[INFO] [stderr]    Compiling unicode-xid v0.2.6
[INFO] [stderr]    Compiling time-core v0.1.4
[INFO] [stderr]     Checking deranged v0.4.1
[INFO] [stderr]    Compiling aho-corasick v1.1.3
[INFO] [stderr]    Compiling zstd-safe v7.2.4
[INFO] [stderr]    Compiling time-macros v0.2.22
[INFO] [stderr]    Compiling bytes v1.10.1
[INFO] [stderr]    Compiling once_cell v1.21.3
[INFO] [stderr]     Checking bitflags v2.9.0
[INFO] [stderr]     Checking pem-rfc7468 v0.7.0
[INFO] [stderr]     Checking tinyvec v1.9.0
[INFO] [stderr]    Compiling itoa v1.0.15
[INFO] [stderr]    Compiling pin-project-lite v0.2.16
[INFO] [stderr]     Checking indexmap v2.8.0
[INFO] [stderr]     Checking regex-automata v0.4.9
[INFO] [stderr]     Checking miniz_oxide v0.8.6
[INFO] [stderr]    Compiling quote v1.0.40
[INFO] [stderr]    Compiling rustc_version v0.4.1
[INFO] [stderr]     Checking brotli-decompressor v4.0.2
[INFO] [stderr]    Compiling syn v2.0.100
[INFO] [stderr]    Compiling jobserver v0.1.33
[INFO] [stderr]     Checking actix-utils v3.0.1
[INFO] [stderr]    Compiling curve25519-dalek v4.1.3
[INFO] [stderr]    Compiling http v0.2.12
[INFO] [stderr]    Compiling bytestring v1.4.0
[INFO] [stderr]     Checking actix-service v2.0.3
[INFO] [stderr]    Compiling cookie v0.16.2
[INFO] [stderr]     Checking unicode-properties v0.1.3
[INFO] [stderr]     Checking getrandom v0.2.15
[INFO] [stderr]     Checking parking_lot_core v0.9.10
[INFO] [stderr]     Checking rand_core v0.6.4
[INFO] [stderr]     Checking mio v1.0.3
[INFO] [stderr]     Checking signal-hook-registry v1.4.2
[INFO] [stderr]     Checking socket2 v0.5.9
[INFO] [stderr]    Compiling cc v1.2.17
[INFO] [stderr]     Checking parking_lot v0.12.3
[INFO] [stderr]     Checking ff v0.13.1
[INFO] [stderr]     Checking unicode-bidi v0.3.18
[INFO] [stderr]     Checking rand_core v0.9.3
[INFO] [stderr]     Checking flate2 v1.1.1
[INFO] [stderr]     Checking local-channel v0.1.5
[INFO] [stderr]     Checking group v0.13.0
[INFO] [stderr]    Compiling either v1.15.0
[INFO] [stderr]     Checking foldhash v0.1.5
[INFO] [stderr]    Compiling pq-sys v0.7.1
[INFO] [stderr]     Checking siphasher v1.0.1
[INFO] [stderr]     Checking time v0.3.41
[INFO] [stderr]    Compiling anyhow v1.0.97
[INFO] [stderr]     Checking unicode-normalization v0.1.24
[INFO] [stderr]     Checking brotli v7.0.0
[INFO] [stderr]     Checking fallible-iterator v0.2.0
[INFO] [stderr]     Checking tokio v1.44.1
[INFO] [stderr]     Checking base64 v0.20.0
[INFO] [stderr]     Checking phf_shared v0.11.3
[INFO] [stderr]     Checking hpke-rs-crypto v0.2.0
[INFO] [stderr]     Checking impl-more v0.1.9
[INFO] [stderr]     Checking rayon-core v1.12.1
[INFO] [stderr]     Checking uuid v1.16.0
[INFO] [stderr]     Checking phf v0.11.3
[INFO] [stderr]     Checking stringprep v0.1.5
[INFO] [stderr]     Checking futures-channel v0.3.31
[INFO] [stderr]     Checking whoami v1.6.0
[INFO] [stderr]     Checking scoped-futures v0.1.4
[INFO] [stderr]     Checking rayon v1.10.0
[INFO] [stderr]     Checking ppv-lite86 v0.2.21
[INFO] [stderr]    Compiling zstd-sys v2.0.15+zstd.1.5.7
[INFO] [stderr]     Checking rand_chacha v0.9.0
[INFO] [stderr]     Checking rand_chacha v0.3.1
[INFO] [stderr]     Checking rand v0.8.5
[INFO] [stderr]     Checking rand v0.9.0
[INFO] [stderr]     Checking regex v1.11.1
[INFO] [stderr]     Checking tokio-util v0.7.14
[INFO] [stderr]     Checking actix-rt v2.10.0
[INFO] [stderr]    Compiling synstructure v0.13.1
[INFO] [stderr]    Compiling darling_core v0.20.11
[INFO] [stderr]    Compiling diesel_table_macro_syntax v0.2.0
[INFO] [stderr]    Compiling zeroize_derive v1.4.2
[INFO] [stderr]    Compiling serde_derive v1.0.219
[INFO] [stderr]    Compiling zerovec-derive v0.10.3
[INFO] [stderr]    Compiling displaydoc v0.2.5
[INFO] [stderr]    Compiling tracing-attributes v0.1.28
[INFO] [stderr]    Compiling futures-macro v0.3.31
[INFO] [stderr]    Compiling icu_provider_macros v1.5.0
[INFO] [stderr]    Compiling tls_codec_derive v0.4.2
[INFO] [stderr]    Compiling curve25519-dalek-derive v0.1.1
[INFO] [stderr]    Compiling derive_more-impl v2.0.1
[INFO] [stderr]    Compiling thiserror-impl v1.0.69
[INFO] [stderr]    Compiling derive_more-impl v1.0.0
[INFO] [stderr]    Compiling zerofrom-derive v0.1.6
[INFO] [stderr]    Compiling yoke-derive v0.7.5
[INFO] [stderr]     Checking zeroize v1.8.1
[INFO] [stderr]    Compiling actix-macros v0.2.4
[INFO] [stderr]     Checking der v0.7.9
[INFO] [stderr]    Compiling async-trait v0.1.88
[INFO] [stderr]     Checking futures-util v0.3.31
[INFO] [stderr]     Checking zstd v0.13.3
[INFO] [stderr]     Checking tracing v0.1.41
[INFO] [stderr]     Checking crypto-common v0.1.6
[INFO] [stderr]     Checking block-buffer v0.10.4
[INFO] [stderr]     Checking inout v0.1.4
[INFO] [stderr]     Checking crypto-bigint v0.5.5
[INFO] [stderr]     Checking actix-codec v0.5.2
[INFO] [stderr]     Checking digest v0.10.7
[INFO] [stderr]     Checking cipher v0.4.4
[INFO] [stderr]     Checking universal-hash v0.5.1
[INFO] [stderr]     Checking aead v0.5.2
[INFO] [stderr]     Checking polyval v0.6.2
[INFO] [stderr]     Checking poly1305 v0.8.0
[INFO] [stderr]     Checking hmac v0.12.1
[INFO] [stderr]     Checking sha2 v0.10.8
[INFO] [stderr]     Checking signature v2.2.0
[INFO] [stderr]     Checking md-5 v0.10.6
[INFO] [stderr]     Checking zerofrom v0.1.6
[INFO] [stderr]     Checking ghash v0.5.1
[INFO] [stderr]     Checking hkdf v0.12.4
[INFO] [stderr]     Checking rfc6979 v0.4.0
[INFO] [stderr]     Checking ctr v0.9.2
[INFO] [stderr]     Checking aes v0.8.4
[INFO] [stderr]     Checking yoke v0.7.5
[INFO] [stderr]     Checking sha1 v0.10.6
[INFO] [stderr]     Checking chacha20 v0.9.1
[INFO] [stderr]     Checking thiserror v1.0.69
[INFO] [stderr]     Checking postgres-protocol v0.6.8
[INFO] [stderr]     Checking zerovec v0.10.4
[INFO] [stderr]     Checking aes-gcm v0.10.3
[INFO] [stderr]     Checking chacha20poly1305 v0.10.1
[INFO] [stderr]     Checking spki v0.7.3
[INFO] [stderr]     Checking postgres-types v0.2.9
[INFO] [stderr]     Checking pkcs8 v0.10.2
[INFO] [stderr]     Checking sec1 v0.7.3
[INFO] [stderr]     Checking derive_more v2.0.1
[INFO] [stderr]    Compiling darling_macro v0.20.11
[INFO] [stderr]     Checking derive_more v1.0.0
[INFO] [stderr]     Checking serde v1.0.219
[INFO] [stderr]     Checking tinystr v0.7.6
[INFO] [stderr]     Checking icu_collections v1.5.0
[INFO] [stderr]     Checking icu_locid v1.5.0
[INFO] [stderr]    Compiling darling v0.20.11
[INFO] [stderr]     Checking elliptic-curve v0.13.8
[INFO] [stderr]     Checking x25519-dalek v2.0.1
[INFO] [stderr]    Compiling dsl_auto_type v0.1.3
[INFO] [stderr]     Checking primeorder v0.13.6
[INFO] [stderr]     Checking ecdsa v0.16.9
[INFO] [stderr]     Checking p384 v0.13.1
[INFO] [stderr]    Compiling diesel_derives v2.2.4
[INFO] [stderr]     Checking p256 v0.13.2
[INFO] [stderr]     Checking icu_provider v1.5.0
[INFO] [stderr]     Checking h2 v0.3.26
[INFO] [stderr]     Checking actix-server v2.5.1
[INFO] [stderr]     Checking tokio-postgres v0.7.13
[INFO] [stderr]     Checking bb8 v0.8.6
[INFO] [stderr]     Checking bb8 v0.9.0
[INFO] [stderr]     Checking hpke-rs-rust-crypto v0.2.0
[INFO] [stderr]     Checking icu_locid_transform v1.5.0
[INFO] [stderr]     Checking icu_properties v1.5.1
[INFO] [stderr]    Compiling actix-router v0.5.3
[INFO] [stderr]     Checking serde_json v1.0.140
[INFO] [stderr]     Checking tls_codec v0.4.2
[INFO] [stderr]     Checking serde_urlencoded v0.7.1
[INFO] [stderr]     Checking ed25519 v2.2.3
[INFO] [stderr]    Compiling actix-web-codegen v4.3.0
[INFO] [stderr]     Checking ed25519-dalek v2.1.1
[INFO] [stderr]     Checking icu_normalizer v1.5.0
[INFO] [stderr]     Checking idna_adapter v1.2.0
[INFO] [stderr]     Checking openmls_traits v0.3.0
[INFO] [stderr]     Checking hpke-rs v0.2.0
[INFO] [stderr]     Checking idna v1.0.3
[INFO] [stderr]     Checking url v2.5.4
[INFO] [stderr]     Checking openmls_memory_storage v0.3.0
[INFO] [stderr]     Checking openmls v0.6.0
[INFO] [stderr]     Checking openmls_rust_crypto v0.3.0
[INFO] [stderr]     Checking actix-http v3.10.0
[INFO] [stderr]     Checking diesel v2.2.8
[INFO] [stderr]     Checking actix-web v4.10.2
[INFO] [stderr]     Checking actix-session v0.10.1
[INFO] [stderr]     Checking actix-identity v0.8.0
[INFO] [stderr]     Checking diesel-async v0.5.2
[INFO] [stderr]     Checking mls_ds v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unused import: `identity`
[INFO] [stdout]  --> src/main.rs:4:21
[INFO] [stdout]   |
[INFO] [stdout] 4 | use std::{convert::{identity, TryInto}, env};
[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: `OpenMlsRustCrypto`
[INFO] [stdout]  --> src/main.rs:8:27
[INFO] [stdout]   |
[INFO] [stdout] 8 | use openmls_rust_crypto::{OpenMlsRustCrypto};
[INFO] [stdout]   |                           ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `json`
[INFO] [stdout]   --> src/main.rs:10:24
[INFO] [stdout]    |
[INFO] [stdout] 10 | use serde_json::{self, json};
[INFO] [stdout]    |                        ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `*`
[INFO] [stdout]   --> src/main.rs:11:103
[INFO] [stdout]    |
[INFO] [stdout] 11 | use openmls::{credentials::CredentialWithKey, key_packages, framing::MlsMessageBodyIn::*, prelude::*, *};
[INFO] [stdout]    |                                                                                                       ^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `CookieBuilder`
[INFO] [stdout]   --> src/main.rs:12:32
[INFO] [stdout]    |
[INFO] [stdout] 12 | use actix_web::{self, cookie::{CookieBuilder, Key}, error::ErrorUnauthorized, web::{self, get, post, Json}, App, HttpResponse, HttpS...
[INFO] [stdout]    |                                ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Bytes`
[INFO] [stdout]   --> src/main.rs:13:12
[INFO] [stdout]    |
[INFO] [stdout] 13 | use uuid::{Bytes, Uuid};
[INFO] [stdout]    |            ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `methods::FilterDsl`, `self`, and `update`
[INFO] [stdout]   --> src/main.rs:15:66
[INFO] [stdout]    |
[INFO] [stdout] 15 | use diesel::{dsl::{exists, insert_into}, prelude::*, query_dsl::{self, methods::FilterDsl}, update, BelongingToDsl};
[INFO] [stdout]    |                                                                  ^^^^  ^^^^^^^^^^^^^^^^^^   ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `group_id` and `welcome_data`
[INFO] [stdout]   --> src/main.rs:18:53
[INFO] [stdout]    |
[INFO] [stdout] 18 | use schema::{clients::dsl::*, group_members::{self, group_id}, groups, key_packages::dsl::*, welcomes::{self, welcome_data}};
[INFO] [stdout]    |                                                     ^^^^^^^^                                                  ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `identity`
[INFO] [stdout]  --> src/main.rs:4:21
[INFO] [stdout]   |
[INFO] [stdout] 4 | use std::{convert::{identity, TryInto}, env};
[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: `OpenMlsRustCrypto`
[INFO] [stdout]  --> src/main.rs:8:27
[INFO] [stdout]   |
[INFO] [stdout] 8 | use openmls_rust_crypto::{OpenMlsRustCrypto};
[INFO] [stdout]   |                           ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `json`
[INFO] [stdout]   --> src/main.rs:10:24
[INFO] [stdout]    |
[INFO] [stdout] 10 | use serde_json::{self, json};
[INFO] [stdout]    |                        ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `*`
[INFO] [stdout]   --> src/main.rs:11:103
[INFO] [stdout]    |
[INFO] [stdout] 11 | use openmls::{credentials::CredentialWithKey, key_packages, framing::MlsMessageBodyIn::*, prelude::*, *};
[INFO] [stdout]    |                                                                                                       ^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `CookieBuilder`
[INFO] [stdout]   --> src/main.rs:12:32
[INFO] [stdout]    |
[INFO] [stdout] 12 | use actix_web::{self, cookie::{CookieBuilder, Key}, error::ErrorUnauthorized, web::{self, get, post, Json}, App, HttpResponse, HttpS...
[INFO] [stdout]    |                                ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Bytes`
[INFO] [stdout]   --> src/main.rs:13:12
[INFO] [stdout]    |
[INFO] [stdout] 13 | use uuid::{Bytes, Uuid};
[INFO] [stdout]    |            ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `methods::FilterDsl`, `self`, and `update`
[INFO] [stdout]   --> src/main.rs:15:66
[INFO] [stdout]    |
[INFO] [stdout] 15 | use diesel::{dsl::{exists, insert_into}, prelude::*, query_dsl::{self, methods::FilterDsl}, update, BelongingToDsl};
[INFO] [stdout]    |                                                                  ^^^^  ^^^^^^^^^^^^^^^^^^   ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `group_id` and `welcome_data`
[INFO] [stdout]   --> src/main.rs:18:53
[INFO] [stdout]    |
[INFO] [stdout] 18 | use schema::{clients::dsl::*, group_members::{self, group_id}, groups, key_packages::dsl::*, welcomes::{self, welcome_data}};
[INFO] [stdout]    |                                                     ^^^^^^^^                                                  ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0034]: multiple applicable items in scope
[INFO] [stdout]   --> src/main.rs:73:10
[INFO] [stdout]    |
[INFO] [stdout] 73 |         .first(&mut conn)
[INFO] [stdout]    |          ^^^^^ multiple `first` found
[INFO] [stdout]    |
[INFO] [stdout]    = note: candidate #1 is defined in an impl of the trait `diesel_async::RunQueryDsl` for the type `T`
[INFO] [stdout]    = note: candidate #2 is defined in an impl of the trait `diesel::RunQueryDsl` for the type `SelectStatement<F, S, D, W, O, LOf, G, H, LC>`
[INFO] [stdout] help: disambiguate the method for candidate #1
[INFO] [stdout]    |
[INFO] [stdout] 72 -     let user: Client = diesel::QueryDsl::filter(clients, client_identity.eq(requested_identity.as_bytes()))
[INFO] [stdout] 73 -         .first(&mut conn)
[INFO] [stdout] 72 +     let user: Client = diesel_async::RunQueryDsl::first(diesel::QueryDsl::filter(clients, client_identity.eq(requested_identity.as_bytes())), &mut conn)
[INFO] [stdout]    |
[INFO] [stdout] help: disambiguate the method for candidate #2
[INFO] [stdout]    |
[INFO] [stdout] 72 -     let user: Client = diesel::QueryDsl::filter(clients, client_identity.eq(requested_identity.as_bytes()))
[INFO] [stdout] 73 -         .first(&mut conn)
[INFO] [stdout] 72 +     let user: Client = diesel::RunQueryDsl::first(diesel::QueryDsl::filter(clients, client_identity.eq(requested_identity.as_bytes())), &mut conn)
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0282]: type annotations needed
[INFO] [stdout]   --> src/main.rs:72:24
[INFO] [stdout]    |
[INFO] [stdout] 72 |       let user: Client = diesel::QueryDsl::filter(clients, client_identity.eq(requested_identity.as_bytes()))
[INFO] [stdout]    |  ________________________^
[INFO] [stdout] 73 | |         .first(&mut conn)
[INFO] [stdout] 74 | |         .await
[INFO] [stdout]    | |______________^ cannot infer type
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0282]: type annotations needed
[INFO] [stdout]   --> src/main.rs:78:31
[INFO] [stdout]    |
[INFO] [stdout] 78 |       let package: KeyPackage = KeyPackage::belonging_to(&user)
[INFO] [stdout]    |  _______________________________^
[INFO] [stdout] 79 | |         .first(&mut conn)
[INFO] [stdout] 80 | |         .await
[INFO] [stdout]    | |______________^ cannot infer type
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0034]: multiple applicable items in scope
[INFO] [stdout]    --> src/main.rs:112:10
[INFO] [stdout]     |
[INFO] [stdout] 112 |         .execute(&mut conn)
[INFO] [stdout]     |          ^^^^^^^ multiple `execute` found
[INFO] [stdout]     |
[INFO] [stdout]     = note: candidate #1 is defined in an impl of the trait `diesel::RunQueryDsl` for the type `InsertStatement<T, U, Op, Ret>`
[INFO] [stdout]     = note: candidate #2 is defined in an impl of the trait `diesel_async::RunQueryDsl` for the type `T`
[INFO] [stdout] help: disambiguate the method for candidate #1
[INFO] [stdout]     |
[INFO] [stdout] 107 ~     diesel::RunQueryDsl::execute(insert_into(key_packages)
[INFO] [stdout] 108 +         .values(&new_package)
[INFO] [stdout] 109 +         .on_conflict(crate::schema::key_packages::key_package_id)
[INFO] [stdout] 110 +         .do_update()
[INFO] [stdout] 111 +         .set(&new_package), &mut conn)
[INFO] [stdout]     |
[INFO] [stdout] help: disambiguate the method for candidate #2
[INFO] [stdout]     |
[INFO] [stdout] 107 ~     diesel_async::RunQueryDsl::execute(insert_into(key_packages)
[INFO] [stdout] 108 +         .values(&new_package)
[INFO] [stdout] 109 +         .on_conflict(crate::schema::key_packages::key_package_id)
[INFO] [stdout] 110 +         .do_update()
[INFO] [stdout] 111 +         .set(&new_package), &mut conn)
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0282]: type annotations needed
[INFO] [stdout]    --> src/main.rs:107:5
[INFO] [stdout]     |
[INFO] [stdout] 107 | /     insert_into(key_packages)
[INFO] [stdout] 108 | |         .values(&new_package)
[INFO] [stdout] 109 | |         .on_conflict(crate::schema::key_packages::key_package_id)
[INFO] [stdout] 110 | |         .do_update()
[INFO] [stdout] 111 | |         .set(&new_package)
[INFO] [stdout] 112 | |         .execute(&mut conn)
[INFO] [stdout] 113 | |         .await.unwrap();
[INFO] [stdout]     | |______________^ cannot infer type
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0034]: multiple applicable items in scope
[INFO] [stdout]    --> src/main.rs:160:14
[INFO] [stdout]     |
[INFO] [stdout] 160 |             .execute(&mut conn)
[INFO] [stdout]     |              ^^^^^^^ multiple `execute` found
[INFO] [stdout]     |
[INFO] [stdout]     = note: candidate #1 is defined in an impl of the trait `diesel::RunQueryDsl` for the type `InsertStatement<T, U, Op, Ret>`
[INFO] [stdout]     = note: candidate #2 is defined in an impl of the trait `diesel_async::RunQueryDsl` for the type `T`
[INFO] [stdout] help: disambiguate the method for candidate #1
[INFO] [stdout]     |
[INFO] [stdout] 155 ~         diesel::RunQueryDsl::execute(insert_into(clients)
[INFO] [stdout] 156 +             .values(&new_client)
[INFO] [stdout] 157 +             .on_conflict(schema::clients::columns::client_id)
[INFO] [stdout] 158 +             .do_update()
[INFO] [stdout] 159 +             .set(&new_client), &mut conn)
[INFO] [stdout]     |
[INFO] [stdout] help: disambiguate the method for candidate #2
[INFO] [stdout]     |
[INFO] [stdout] 155 ~         diesel_async::RunQueryDsl::execute(insert_into(clients)
[INFO] [stdout] 156 +             .values(&new_client)
[INFO] [stdout] 157 +             .on_conflict(schema::clients::columns::client_id)
[INFO] [stdout] 158 +             .do_update()
[INFO] [stdout] 159 +             .set(&new_client), &mut conn)
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0282]: type annotations needed
[INFO] [stdout]    --> src/main.rs:155:9
[INFO] [stdout]     |
[INFO] [stdout] 155 | /         insert_into(clients)
[INFO] [stdout] 156 | |             .values(&new_client)
[INFO] [stdout] 157 | |             .on_conflict(schema::clients::columns::client_id)
[INFO] [stdout] 158 | |             .do_update()
[INFO] [stdout] 159 | |             .set(&new_client)
[INFO] [stdout] 160 | |             .execute(&mut conn)
[INFO] [stdout] 161 | |             .await
[INFO] [stdout]     | |__________________^ cannot infer type
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0034]: multiple applicable items in scope
[INFO] [stdout]    --> src/main.rs:205:10
[INFO] [stdout]     |
[INFO] [stdout] 205 |         .get_result(&mut conn)
[INFO] [stdout]     |          ^^^^^^^^^^ multiple `get_result` found
[INFO] [stdout]     |
[INFO] [stdout]     = note: candidate #1 is defined in an impl of the trait `diesel_async::RunQueryDsl` for the type `T`
[INFO] [stdout]     = note: candidate #2 is defined in an impl of the trait `diesel::RunQueryDsl` for the type `SelectStatement<F, S, D, W, O, LOf, G, H, LC>`
[INFO] [stdout] help: disambiguate the method for candidate #1
[INFO] [stdout]     |
[INFO] [stdout] 200 ~     let group_exists: bool = diesel_async::RunQueryDsl::get_result(diesel::select(
[INFO] [stdout] 201 +         exists(
[INFO] [stdout] 202 +             diesel::QueryDsl::filter(
[INFO] [stdout] 203 +                 groups::table, 
[INFO] [stdout] 204 +             groups::group_id.eq(&groupid)))), &mut conn)
[INFO] [stdout]     |
[INFO] [stdout] help: disambiguate the method for candidate #2
[INFO] [stdout]     |
[INFO] [stdout] 200 ~     let group_exists: bool = diesel::RunQueryDsl::get_result(diesel::select(
[INFO] [stdout] 201 +         exists(
[INFO] [stdout] 202 +             diesel::QueryDsl::filter(
[INFO] [stdout] 203 +                 groups::table, 
[INFO] [stdout] 204 +             groups::group_id.eq(&groupid)))), &mut conn)
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0282]: type annotations needed
[INFO] [stdout]    --> src/main.rs:200:30
[INFO] [stdout]     |
[INFO] [stdout] 200 |       let group_exists: bool = diesel::select(
[INFO] [stdout]     |  ______________________________^
[INFO] [stdout] 201 | |         exists(
[INFO] [stdout] 202 | |             diesel::QueryDsl::filter(
[INFO] [stdout] 203 | |                 groups::table, 
[INFO] [stdout] 204 | |             groups::group_id.eq(&groupid))))
[INFO] [stdout] 205 | |         .get_result(&mut conn)
[INFO] [stdout] 206 | |         .await
[INFO] [stdout]     | |______________^ cannot infer type
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0034]: multiple applicable items in scope
[INFO] [stdout]    --> src/main.rs:222:10
[INFO] [stdout]     |
[INFO] [stdout] 222 |         .execute(&mut conn)
[INFO] [stdout]     |          ^^^^^^^ multiple `execute` found
[INFO] [stdout]     |
[INFO] [stdout]     = note: candidate #1 is defined in an impl of the trait `diesel::RunQueryDsl` for the type `InsertStatement<T, U, Op, Ret>`
[INFO] [stdout]     = note: candidate #2 is defined in an impl of the trait `diesel_async::RunQueryDsl` for the type `T`
[INFO] [stdout] help: disambiguate the method for candidate #1
[INFO] [stdout]     |
[INFO] [stdout] 220 ~     diesel::RunQueryDsl::execute(insert_into(groups::table)
[INFO] [stdout] 221 +         .values(&new_group), &mut conn)
[INFO] [stdout]     |
[INFO] [stdout] help: disambiguate the method for candidate #2
[INFO] [stdout]     |
[INFO] [stdout] 220 ~     diesel_async::RunQueryDsl::execute(insert_into(groups::table)
[INFO] [stdout] 221 +         .values(&new_group), &mut conn)
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0282]: type annotations needed
[INFO] [stdout]    --> src/main.rs:220:5
[INFO] [stdout]     |
[INFO] [stdout] 220 | /     insert_into(groups::table)
[INFO] [stdout] 221 | |         .values(&new_group)
[INFO] [stdout] 222 | |         .execute(&mut conn)
[INFO] [stdout] 223 | |         .await
[INFO] [stdout]     | |______________^ cannot infer type
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0034]: multiple applicable items in scope
[INFO] [stdout]    --> src/main.rs:249:7
[INFO] [stdout]     |
[INFO] [stdout] 249 |     ).get_result(&mut conn)
[INFO] [stdout]     |       ^^^^^^^^^^ multiple `get_result` found
[INFO] [stdout]     |
[INFO] [stdout]     = note: candidate #1 is defined in an impl of the trait `diesel_async::RunQueryDsl` for the type `T`
[INFO] [stdout]     = note: candidate #2 is defined in an impl of the trait `diesel::RunQueryDsl` for the type `SelectStatement<F, S, D, W, O, LOf, G, H, LC>`
[INFO] [stdout] help: disambiguate the method for candidate #1
[INFO] [stdout]     |
[INFO] [stdout] 242 ~     let welcome_exists: bool = diesel_async::RunQueryDsl::get_result(diesel::select(
[INFO] [stdout] 243 +         exists(
[INFO] [stdout] 244 +             diesel::QueryDsl::filter(
[INFO] [stdout] 245 +                 welcomes::table,
[INFO] [stdout] 246 +                 schema::welcomes::group_id.eq(&message.group)
[INFO] [stdout] 247 +             )
[INFO] [stdout] 248 +         )
[INFO] [stdout] 249 +     ), &mut conn)
[INFO] [stdout]     |
[INFO] [stdout] help: disambiguate the method for candidate #2
[INFO] [stdout]     |
[INFO] [stdout] 242 ~     let welcome_exists: bool = diesel::RunQueryDsl::get_result(diesel::select(
[INFO] [stdout] 243 +         exists(
[INFO] [stdout] 244 +             diesel::QueryDsl::filter(
[INFO] [stdout] 245 +                 welcomes::table,
[INFO] [stdout] 246 +                 schema::welcomes::group_id.eq(&message.group)
[INFO] [stdout] 247 +             )
[INFO] [stdout] 248 +         )
[INFO] [stdout] 249 +     ), &mut conn)
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0282]: type annotations needed
[INFO] [stdout]    --> src/main.rs:242:32
[INFO] [stdout]     |
[INFO] [stdout] 242 |       let welcome_exists: bool = diesel::select(
[INFO] [stdout]     |  ________________________________^
[INFO] [stdout] 243 | |         exists(
[INFO] [stdout] 244 | |             diesel::QueryDsl::filter(
[INFO] [stdout] 245 | |                 welcomes::table,
[INFO] [stdout] ...   |
[INFO] [stdout] 249 | |     ).get_result(&mut conn)
[INFO] [stdout] 250 | |     .await
[INFO] [stdout]     | |__________^ cannot infer type
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0034]: multiple applicable items in scope
[INFO] [stdout]    --> src/main.rs:258:10
[INFO] [stdout]     |
[INFO] [stdout] 258 |         .first(&mut conn)
[INFO] [stdout]     |          ^^^^^ multiple `first` found
[INFO] [stdout]     |
[INFO] [stdout]     = note: candidate #1 is defined in an impl of the trait `diesel_async::RunQueryDsl` for the type `T`
[INFO] [stdout]     = note: candidate #2 is defined in an impl of the trait `diesel::RunQueryDsl` for the type `SelectStatement<F, S, D, W, O, LOf, G, H, LC>`
[INFO] [stdout] help: disambiguate the method for candidate #1
[INFO] [stdout]     |
[INFO] [stdout] 257 -     let new_member: Client = diesel::QueryDsl::filter(schema::clients::table, schema::clients::client_identity.eq(&message.recipient))
[INFO] [stdout] 258 -         .first(&mut conn)
[INFO] [stdout] 257 +     let new_member: Client = diesel_async::RunQueryDsl::first(diesel::QueryDsl::filter(schema::clients::table, schema::clients::client_identity.eq(&message.recipient)), &mut conn)
[INFO] [stdout]     |
[INFO] [stdout] help: disambiguate the method for candidate #2
[INFO] [stdout]     |
[INFO] [stdout] 257 -     let new_member: Client = diesel::QueryDsl::filter(schema::clients::table, schema::clients::client_identity.eq(&message.recipient))
[INFO] [stdout] 258 -         .first(&mut conn)
[INFO] [stdout] 257 +     let new_member: Client = diesel::RunQueryDsl::first(diesel::QueryDsl::filter(schema::clients::table, schema::clients::client_identity.eq(&message.recipient)), &mut conn)
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0282]: type annotations needed
[INFO] [stdout]    --> src/main.rs:257:30
[INFO] [stdout]     |
[INFO] [stdout] 257 |       let new_member: Client = diesel::QueryDsl::filter(schema::clients::table, schema::clients::client_identity.eq(&message.recipi...
[INFO] [stdout]     |  ______________________________^
[INFO] [stdout] 258 | |         .first(&mut conn)
[INFO] [stdout] 259 | |         .await
[INFO] [stdout]     | |______________^ cannot infer type
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0034]: multiple applicable items in scope
[INFO] [stdout]    --> src/main.rs:263:6
[INFO] [stdout]     |
[INFO] [stdout] 263 |     .first(&mut conn)
[INFO] [stdout]     |      ^^^^^ multiple `first` found
[INFO] [stdout]     |
[INFO] [stdout]     = note: candidate #1 is defined in an impl of the trait `diesel_async::RunQueryDsl` for the type `T`
[INFO] [stdout]     = note: candidate #2 is defined in an impl of the trait `diesel::RunQueryDsl` for the type `SelectStatement<F, S, D, W, O, LOf, G, H, LC>`
[INFO] [stdout] help: disambiguate the method for candidate #1
[INFO] [stdout]     |
[INFO] [stdout] 262 -     let group: Group = diesel::QueryDsl::filter(schema::groups::table, schema::groups::group_id.eq(&message.group))
[INFO] [stdout] 263 -     .first(&mut conn)
[INFO] [stdout] 262 +     let group: Group = diesel_async::RunQueryDsl::first(diesel::QueryDsl::filter(schema::groups::table, schema::groups::group_id.eq(&message.group)), &mut conn)
[INFO] [stdout]     |
[INFO] [stdout] help: disambiguate the method for candidate #2
[INFO] [stdout]     |
[INFO] [stdout] 262 -     let group: Group = diesel::QueryDsl::filter(schema::groups::table, schema::groups::group_id.eq(&message.group))
[INFO] [stdout] 263 -     .first(&mut conn)
[INFO] [stdout] 262 +     let group: Group = diesel::RunQueryDsl::first(diesel::QueryDsl::filter(schema::groups::table, schema::groups::group_id.eq(&message.group)), &mut conn)
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0282]: type annotations needed
[INFO] [stdout]    --> src/main.rs:262:24
[INFO] [stdout]     |
[INFO] [stdout] 262 |       let group: Group = diesel::QueryDsl::filter(schema::groups::table, schema::groups::group_id.eq(&message.group))
[INFO] [stdout]     |  ________________________^
[INFO] [stdout] 263 | |     .first(&mut conn)
[INFO] [stdout] 264 | |     .await
[INFO] [stdout]     | |__________^ cannot infer type
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0034]: multiple applicable items in scope
[INFO] [stdout]    --> src/main.rs:278:10
[INFO] [stdout]     |
[INFO] [stdout] 278 |         .execute(&mut conn)
[INFO] [stdout]     |          ^^^^^^^ multiple `execute` found
[INFO] [stdout]     |
[INFO] [stdout]     = note: candidate #1 is defined in an impl of the trait `diesel::RunQueryDsl` for the type `InsertStatement<T, U, Op, Ret>`
[INFO] [stdout]     = note: candidate #2 is defined in an impl of the trait `diesel_async::RunQueryDsl` for the type `T`
[INFO] [stdout] help: disambiguate the method for candidate #1
[INFO] [stdout]     |
[INFO] [stdout] 276 ~     diesel::RunQueryDsl::execute(insert_into(welcomes::table)
[INFO] [stdout] 277 +         .values(&new_welcome), &mut conn)
[INFO] [stdout]     |
[INFO] [stdout] help: disambiguate the method for candidate #2
[INFO] [stdout]     |
[INFO] [stdout] 276 ~     diesel_async::RunQueryDsl::execute(insert_into(welcomes::table)
[INFO] [stdout] 277 +         .values(&new_welcome), &mut conn)
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0282]: type annotations needed
[INFO] [stdout]    --> src/main.rs:276:5
[INFO] [stdout]     |
[INFO] [stdout] 276 | /     insert_into(welcomes::table)
[INFO] [stdout] 277 | |         .values(&new_welcome)
[INFO] [stdout] 278 | |         .execute(&mut conn)
[INFO] [stdout] 279 | |         .await
[INFO] [stdout]     | |______________^ cannot infer type
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0034]: multiple applicable items in scope
[INFO] [stdout]    --> src/main.rs:290:10
[INFO] [stdout]     |
[INFO] [stdout] 290 |         .execute(&mut conn)
[INFO] [stdout]     |          ^^^^^^^ multiple `execute` found
[INFO] [stdout]     |
[INFO] [stdout]     = note: candidate #1 is defined in an impl of the trait `diesel::RunQueryDsl` for the type `InsertStatement<T, U, Op, Ret>`
[INFO] [stdout]     = note: candidate #2 is defined in an impl of the trait `diesel_async::RunQueryDsl` for the type `T`
[INFO] [stdout] help: disambiguate the method for candidate #1
[INFO] [stdout]     |
[INFO] [stdout] 288 ~     diesel::RunQueryDsl::execute(insert_into(group_members::table)
[INFO] [stdout] 289 +         .values(&new_membership), &mut conn)
[INFO] [stdout]     |
[INFO] [stdout] help: disambiguate the method for candidate #2
[INFO] [stdout]     |
[INFO] [stdout] 288 ~     diesel_async::RunQueryDsl::execute(insert_into(group_members::table)
[INFO] [stdout] 289 +         .values(&new_membership), &mut conn)
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0034]: multiple applicable items in scope
[INFO] [stdout]   --> src/main.rs:73:10
[INFO] [stdout]    |
[INFO] [stdout] 73 |         .first(&mut conn)
[INFO] [stdout]    |          ^^^^^ multiple `first` found
[INFO] [stdout]    |
[INFO] [stdout]    = note: candidate #1 is defined in an impl of the trait `diesel_async::RunQueryDsl` for the type `T`
[INFO] [stdout]    = note: candidate #2 is defined in an impl of the trait `diesel::RunQueryDsl` for the type `SelectStatement<F, S, D, W, O, LOf, G, H, LC>`
[INFO] [stdout] help: disambiguate the method for candidate #1
[INFO] [stdout]    |
[INFO] [stdout] 72 -     let user: Client = diesel::QueryDsl::filter(clients, client_identity.eq(requested_identity.as_bytes()))
[INFO] [stdout] 73 -         .first(&mut conn)
[INFO] [stdout] 72 +     let user: Client = diesel_async::RunQueryDsl::first(diesel::QueryDsl::filter(clients, client_identity.eq(requested_identity.as_bytes())), &mut conn)
[INFO] [stdout]    |
[INFO] [stdout] help: disambiguate the method for candidate #2
[INFO] [stdout]    |
[INFO] [stdout] 72 -     let user: Client = diesel::QueryDsl::filter(clients, client_identity.eq(requested_identity.as_bytes()))
[INFO] [stdout] 73 -         .first(&mut conn)
[INFO] [stdout] 72 +     let user: Client = diesel::RunQueryDsl::first(diesel::QueryDsl::filter(clients, client_identity.eq(requested_identity.as_bytes())), &mut conn)
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0282]: type annotations needed
[INFO] [stdout]    --> src/main.rs:288:5
[INFO] [stdout]     |
[INFO] [stdout] 288 | /     insert_into(group_members::table)
[INFO] [stdout] 289 | |         .values(&new_membership)
[INFO] [stdout] 290 | |         .execute(&mut conn)
[INFO] [stdout] 291 | |         .await
[INFO] [stdout]     | |______________^ cannot infer type
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0282]: type annotations needed
[INFO] [stdout]   --> src/main.rs:72:24
[INFO] [stdout]    |
[INFO] [stdout] 72 |       let user: Client = diesel::QueryDsl::filter(clients, client_identity.eq(requested_identity.as_bytes()))
[INFO] [stdout]    |  ________________________^
[INFO] [stdout] 73 | |         .first(&mut conn)
[INFO] [stdout] 74 | |         .await
[INFO] [stdout]    | |______________^ cannot infer type
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0034]: multiple applicable items in scope
[INFO] [stdout]    --> src/main.rs:309:10
[INFO] [stdout]     |
[INFO] [stdout] 309 |         .first(&mut conn)
[INFO] [stdout]     |          ^^^^^ multiple `first` found
[INFO] [stdout]     |
[INFO] [stdout]     = note: candidate #1 is defined in an impl of the trait `diesel_async::RunQueryDsl` for the type `T`
[INFO] [stdout]     = note: candidate #2 is defined in an impl of the trait `diesel::RunQueryDsl` for the type `SelectStatement<F, S, D, W, O, LOf, G, H, LC>`
[INFO] [stdout] help: disambiguate the method for candidate #1
[INFO] [stdout]     |
[INFO] [stdout] 308 -     let client: Client = diesel::QueryDsl::filter(schema::clients::table, schema::clients::client_id.eq(user_uuid))
[INFO] [stdout] 309 -         .first(&mut conn)
[INFO] [stdout] 308 +     let client: Client = diesel_async::RunQueryDsl::first(diesel::QueryDsl::filter(schema::clients::table, schema::clients::client_id.eq(user_uuid)), &mut conn)
[INFO] [stdout]     |
[INFO] [stdout] help: disambiguate the method for candidate #2
[INFO] [stdout]     |
[INFO] [stdout] 308 -     let client: Client = diesel::QueryDsl::filter(schema::clients::table, schema::clients::client_id.eq(user_uuid))
[INFO] [stdout] 309 -         .first(&mut conn)
[INFO] [stdout] 308 +     let client: Client = diesel::RunQueryDsl::first(diesel::QueryDsl::filter(schema::clients::table, schema::clients::client_id.eq(user_uuid)), &mut conn)
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0282]: type annotations needed
[INFO] [stdout]    --> src/main.rs:308:26
[INFO] [stdout]     |
[INFO] [stdout] 308 |       let client: Client = diesel::QueryDsl::filter(schema::clients::table, schema::clients::client_id.eq(user_uuid))
[INFO] [stdout]     |  __________________________^
[INFO] [stdout] 309 | |         .first(&mut conn)
[INFO] [stdout] 310 | |         .await
[INFO] [stdout]     | |______________^ cannot infer type
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0282]: type annotations needed
[INFO] [stdout]   --> src/main.rs:78:31
[INFO] [stdout]    |
[INFO] [stdout] 78 |       let package: KeyPackage = KeyPackage::belonging_to(&user)
[INFO] [stdout]    |  _______________________________^
[INFO] [stdout] 79 | |         .first(&mut conn)
[INFO] [stdout] 80 | |         .await
[INFO] [stdout]    | |______________^ cannot infer type
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0282]: type annotations needed
[INFO] [stdout]    --> src/main.rs:313:47
[INFO] [stdout]     |
[INFO] [stdout] 313 |       let user_welcomes: Vec<models::Welcome> = crate::models::Welcome::belonging_to(&client)
[INFO] [stdout]     |  _______________________________________________^
[INFO] [stdout] 314 | |         .load(&mut conn)
[INFO] [stdout] 315 | |         .await
[INFO] [stdout]     | |______________^ cannot infer type
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0034]: multiple applicable items in scope
[INFO] [stdout]    --> src/main.rs:321:10
[INFO] [stdout]     |
[INFO] [stdout] 321 |         .execute(&mut conn).await.unwrap();
[INFO] [stdout]     |          ^^^^^^^ multiple `execute` found
[INFO] [stdout]     |
[INFO] [stdout]     = note: candidate #1 is defined in an impl of the trait `diesel::RunQueryDsl` for the type `DeleteStatement<T, U, Ret>`
[INFO] [stdout]     = note: candidate #2 is defined in an impl of the trait `diesel_async::RunQueryDsl` for the type `T`
[INFO] [stdout] help: disambiguate the method for candidate #1
[INFO] [stdout]     |
[INFO] [stdout] 320 -     diesel::delete(diesel::QueryDsl::filter(welcomes::table, welcomes::new_member.eq(&user_uuid)))
[INFO] [stdout] 321 -         .execute(&mut conn).await.unwrap();
[INFO] [stdout] 320 +     diesel::RunQueryDsl::execute(diesel::delete(diesel::QueryDsl::filter(welcomes::table, welcomes::new_member.eq(&user_uuid))), &mut conn).await.unwrap();
[INFO] [stdout]     |
[INFO] [stdout] help: disambiguate the method for candidate #2
[INFO] [stdout]     |
[INFO] [stdout] 320 -     diesel::delete(diesel::QueryDsl::filter(welcomes::table, welcomes::new_member.eq(&user_uuid)))
[INFO] [stdout] 321 -         .execute(&mut conn).await.unwrap();
[INFO] [stdout] 320 +     diesel_async::RunQueryDsl::execute(diesel::delete(diesel::QueryDsl::filter(welcomes::table, welcomes::new_member.eq(&user_uuid))), &mut conn).await.unwrap();
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0282]: type annotations needed
[INFO] [stdout]    --> src/main.rs:320:5
[INFO] [stdout]     |
[INFO] [stdout] 320 | /     diesel::delete(diesel::QueryDsl::filter(welcomes::table, welcomes::new_member.eq(&user_uuid)))
[INFO] [stdout] 321 | |         .execute(&mut conn).await.unwrap();
[INFO] [stdout]     | |_________________________________^ cannot infer type
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0034]: multiple applicable items in scope
[INFO] [stdout]    --> src/main.rs:356:7
[INFO] [stdout]     |
[INFO] [stdout] 356 |     ).get_result(&mut conn)
[INFO] [stdout]     |       ^^^^^^^^^^ multiple `get_result` found
[INFO] [stdout]     |
[INFO] [stdout]     = note: candidate #1 is defined in an impl of the trait `diesel_async::RunQueryDsl` for the type `T`
[INFO] [stdout]     = note: candidate #2 is defined in an impl of the trait `diesel::RunQueryDsl` for the type `SelectStatement<F, S, D, W, O, LOf, G, H, LC>`
[INFO] [stdout] help: disambiguate the method for candidate #1
[INFO] [stdout]     |
[INFO] [stdout] 349 ~     let in_group: bool = diesel_async::RunQueryDsl::get_result(diesel::select(
[INFO] [stdout] 350 +         exists(
[INFO] [stdout] 351 +             diesel::QueryDsl::filter(
[INFO] [stdout] 352 +                 group_members::table,
[INFO] [stdout] 353 +                 schema::group_members::group_id.eq(&group.to_vec()).and(schema::group_members::client_id.eq(&user_uuid))
[INFO] [stdout] 354 +             )
[INFO] [stdout] 355 +         )
[INFO] [stdout] 356 +     ), &mut conn)
[INFO] [stdout]     |
[INFO] [stdout] help: disambiguate the method for candidate #2
[INFO] [stdout]     |
[INFO] [stdout] 349 ~     let in_group: bool = diesel::RunQueryDsl::get_result(diesel::select(
[INFO] [stdout] 350 +         exists(
[INFO] [stdout] 351 +             diesel::QueryDsl::filter(
[INFO] [stdout] 352 +                 group_members::table,
[INFO] [stdout] 353 +                 schema::group_members::group_id.eq(&group.to_vec()).and(schema::group_members::client_id.eq(&user_uuid))
[INFO] [stdout] 354 +             )
[INFO] [stdout] 355 +         )
[INFO] [stdout] 356 +     ), &mut conn)
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0282]: type annotations needed
[INFO] [stdout]    --> src/main.rs:349:26
[INFO] [stdout]     |
[INFO] [stdout] 349 |       let in_group: bool = diesel::select(
[INFO] [stdout]     |  __________________________^
[INFO] [stdout] 350 | |         exists(
[INFO] [stdout] 351 | |             diesel::QueryDsl::filter(
[INFO] [stdout] 352 | |                 group_members::table,
[INFO] [stdout] ...   |
[INFO] [stdout] 356 | |     ).get_result(&mut conn)
[INFO] [stdout] 357 | |     .await
[INFO] [stdout]     | |__________^ cannot infer type
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0034]: multiple applicable items in scope
[INFO] [stdout]    --> src/main.rs:377:10
[INFO] [stdout]     |
[INFO] [stdout] 377 |         .execute(&mut conn)
[INFO] [stdout]     |          ^^^^^^^ multiple `execute` found
[INFO] [stdout]     |
[INFO] [stdout]     = note: candidate #1 is defined in an impl of the trait `diesel::RunQueryDsl` for the type `InsertStatement<T, U, Op, Ret>`
[INFO] [stdout]     = note: candidate #2 is defined in an impl of the trait `diesel_async::RunQueryDsl` for the type `T`
[INFO] [stdout] help: disambiguate the method for candidate #1
[INFO] [stdout]     |
[INFO] [stdout] 375 ~     diesel::RunQueryDsl::execute(insert_into(schema::messages::table)
[INFO] [stdout] 376 +         .values(&new_message), &mut conn)
[INFO] [stdout]     |
[INFO] [stdout] help: disambiguate the method for candidate #2
[INFO] [stdout]     |
[INFO] [stdout] 375 ~     diesel_async::RunQueryDsl::execute(insert_into(schema::messages::table)
[INFO] [stdout] 376 +         .values(&new_message), &mut conn)
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0282]: type annotations needed
[INFO] [stdout]    --> src/main.rs:375:5
[INFO] [stdout]     |
[INFO] [stdout] 375 | /     insert_into(schema::messages::table)
[INFO] [stdout] 376 | |         .values(&new_message)
[INFO] [stdout] 377 | |         .execute(&mut conn)
[INFO] [stdout] 378 | |         .await
[INFO] [stdout]     | |______________^ cannot infer type
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0034]: multiple applicable items in scope
[INFO] [stdout]    --> src/main.rs:112:10
[INFO] [stdout]     |
[INFO] [stdout] 112 |         .execute(&mut conn)
[INFO] [stdout]     |          ^^^^^^^ multiple `execute` found
[INFO] [stdout]     |
[INFO] [stdout]     = note: candidate #1 is defined in an impl of the trait `diesel::RunQueryDsl` for the type `InsertStatement<T, U, Op, Ret>`
[INFO] [stdout]     = note: candidate #2 is defined in an impl of the trait `diesel_async::RunQueryDsl` for the type `T`
[INFO] [stdout] help: disambiguate the method for candidate #1
[INFO] [stdout]     |
[INFO] [stdout] 107 ~     diesel::RunQueryDsl::execute(insert_into(key_packages)
[INFO] [stdout] 108 +         .values(&new_package)
[INFO] [stdout] 109 +         .on_conflict(crate::schema::key_packages::key_package_id)
[INFO] [stdout] 110 +         .do_update()
[INFO] [stdout] 111 +         .set(&new_package), &mut conn)
[INFO] [stdout]     |
[INFO] [stdout] help: disambiguate the method for candidate #2
[INFO] [stdout]     |
[INFO] [stdout] 107 ~     diesel_async::RunQueryDsl::execute(insert_into(key_packages)
[INFO] [stdout] 108 +         .values(&new_package)
[INFO] [stdout] 109 +         .on_conflict(crate::schema::key_packages::key_package_id)
[INFO] [stdout] 110 +         .do_update()
[INFO] [stdout] 111 +         .set(&new_package), &mut conn)
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0282]: type annotations needed
[INFO] [stdout]    --> src/main.rs:107:5
[INFO] [stdout]     |
[INFO] [stdout] 107 | /     insert_into(key_packages)
[INFO] [stdout] 108 | |         .values(&new_package)
[INFO] [stdout] 109 | |         .on_conflict(crate::schema::key_packages::key_package_id)
[INFO] [stdout] 110 | |         .do_update()
[INFO] [stdout] 111 | |         .set(&new_package)
[INFO] [stdout] 112 | |         .execute(&mut conn)
[INFO] [stdout] 113 | |         .await.unwrap();
[INFO] [stdout]     | |______________^ cannot infer type
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0034]: multiple applicable items in scope
[INFO] [stdout]    --> src/main.rs:402:7
[INFO] [stdout]     |
[INFO] [stdout] 402 |     ).get_result(&mut conn)
[INFO] [stdout]     |       ^^^^^^^^^^ multiple `get_result` found
[INFO] [stdout]     |
[INFO] [stdout]     = note: candidate #1 is defined in an impl of the trait `diesel_async::RunQueryDsl` for the type `T`
[INFO] [stdout]     = note: candidate #2 is defined in an impl of the trait `diesel::RunQueryDsl` for the type `SelectStatement<F, S, D, W, O, LOf, G, H, LC>`
[INFO] [stdout] help: disambiguate the method for candidate #1
[INFO] [stdout]     |
[INFO] [stdout] 395 ~     let in_group: bool = diesel_async::RunQueryDsl::get_result(diesel::select(
[INFO] [stdout] 396 +         exists(
[INFO] [stdout] 397 +             diesel::QueryDsl::filter(
[INFO] [stdout] 398 +                 group_members::table,
[INFO] [stdout] 399 +                 schema::group_members::group_id.eq(&group.group_id).and(schema::group_members::client_id.eq(&user_uuid))
[INFO] [stdout] 400 +             )
[INFO] [stdout] 401 +         )
[INFO] [stdout] 402 +     ), &mut conn)
[INFO] [stdout]     |
[INFO] [stdout] help: disambiguate the method for candidate #2
[INFO] [stdout]     |
[INFO] [stdout] 395 ~     let in_group: bool = diesel::RunQueryDsl::get_result(diesel::select(
[INFO] [stdout] 396 +         exists(
[INFO] [stdout] 397 +             diesel::QueryDsl::filter(
[INFO] [stdout] 398 +                 group_members::table,
[INFO] [stdout] 399 +                 schema::group_members::group_id.eq(&group.group_id).and(schema::group_members::client_id.eq(&user_uuid))
[INFO] [stdout] 400 +             )
[INFO] [stdout] 401 +         )
[INFO] [stdout] 402 +     ), &mut conn)
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0282]: type annotations needed
[INFO] [stdout]    --> src/main.rs:395:26
[INFO] [stdout]     |
[INFO] [stdout] 395 |       let in_group: bool = diesel::select(
[INFO] [stdout]     |  __________________________^
[INFO] [stdout] 396 | |         exists(
[INFO] [stdout] 397 | |             diesel::QueryDsl::filter(
[INFO] [stdout] 398 | |                 group_members::table,
[INFO] [stdout] ...   |
[INFO] [stdout] 402 | |     ).get_result(&mut conn)
[INFO] [stdout] 403 | |     .await
[INFO] [stdout]     | |__________^ cannot infer type
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0034]: multiple applicable items in scope
[INFO] [stdout]    --> src/main.rs:412:10
[INFO] [stdout]     |
[INFO] [stdout] 412 |         .load(&mut conn)
[INFO] [stdout]     |          ^^^^ multiple `load` found
[INFO] [stdout]     |
[INFO] [stdout]     = note: candidate #1 is defined in an impl of the trait `diesel_async::RunQueryDsl` for the type `T`
[INFO] [stdout]     = note: candidate #2 is defined in an impl of the trait `diesel::RunQueryDsl` for the type `SelectStatement<F, S, D, W, O, LOf, G, H, LC>`
[INFO] [stdout] help: disambiguate the method for candidate #1
[INFO] [stdout]     |
[INFO] [stdout] 411 -     let user_messages: Vec<crate::models::Message> = diesel::QueryDsl::filter(schema::messages::table, schema::messages::sender_client_id.eq(&user_uuid).and(schema::messages::group_id.eq(&group.group_id)))
[INFO] [stdout] 412 -         .load(&mut conn)
[INFO] [stdout] 411 +     let user_messages: Vec<crate::models::Message> = diesel_async::RunQueryDsl::load(diesel::QueryDsl::filter(schema::messages::table, schema::messages::sender_client_id.eq(&user_uuid).and(schema::messages::group_id.eq(&group.group_id))), &mut conn)
[INFO] [stdout]     |
[INFO] [stdout] help: disambiguate the method for candidate #2
[INFO] [stdout]     |
[INFO] [stdout] 411 -     let user_messages: Vec<crate::models::Message> = diesel::QueryDsl::filter(schema::messages::table, schema::messages::sender_client_id.eq(&user_uuid).and(schema::messages::group_id.eq(&group.group_id)))
[INFO] [stdout] 412 -         .load(&mut conn)
[INFO] [stdout] 411 +     let user_messages: Vec<crate::models::Message> = diesel::RunQueryDsl::load(diesel::QueryDsl::filter(schema::messages::table, schema::messages::sender_client_id.eq(&user_uuid).and(schema::messages::group_id.eq(&group.group_id))), &mut conn)
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0282]: type annotations needed
[INFO] [stdout]    --> src/main.rs:411:54
[INFO] [stdout]     |
[INFO] [stdout] 411 |       let user_messages: Vec<crate::models::Message> = diesel::QueryDsl::filter(schema::messages::table, schema::messages::sender_c...
[INFO] [stdout]     |  ______________________________________________________^
[INFO] [stdout] 412 | |         .load(&mut conn)
[INFO] [stdout] 413 | |         .await
[INFO] [stdout]     | |______________^ cannot infer type
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0034]: multiple applicable items in scope
[INFO] [stdout]    --> src/main.rs:160:14
[INFO] [stdout]     |
[INFO] [stdout] 160 |             .execute(&mut conn)
[INFO] [stdout]     |              ^^^^^^^ multiple `execute` found
[INFO] [stdout]     |
[INFO] [stdout]     = note: candidate #1 is defined in an impl of the trait `diesel::RunQueryDsl` for the type `InsertStatement<T, U, Op, Ret>`
[INFO] [stdout]     = note: candidate #2 is defined in an impl of the trait `diesel_async::RunQueryDsl` for the type `T`
[INFO] [stdout] help: disambiguate the method for candidate #1
[INFO] [stdout]     |
[INFO] [stdout] 155 ~         diesel::RunQueryDsl::execute(insert_into(clients)
[INFO] [stdout] 156 +             .values(&new_client)
[INFO] [stdout] 157 +             .on_conflict(schema::clients::columns::client_id)
[INFO] [stdout] 158 +             .do_update()
[INFO] [stdout] 159 +             .set(&new_client), &mut conn)
[INFO] [stdout]     |
[INFO] [stdout] help: disambiguate the method for candidate #2
[INFO] [stdout]     |
[INFO] [stdout] 155 ~         diesel_async::RunQueryDsl::execute(insert_into(clients)
[INFO] [stdout] 156 +             .values(&new_client)
[INFO] [stdout] 157 +             .on_conflict(schema::clients::columns::client_id)
[INFO] [stdout] 158 +             .do_update()
[INFO] [stdout] 159 +             .set(&new_client), &mut conn)
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0282]: type annotations needed
[INFO] [stdout]    --> src/main.rs:155:9
[INFO] [stdout]     |
[INFO] [stdout] 155 | /         insert_into(clients)
[INFO] [stdout] 156 | |             .values(&new_client)
[INFO] [stdout] 157 | |             .on_conflict(schema::clients::columns::client_id)
[INFO] [stdout] 158 | |             .do_update()
[INFO] [stdout] 159 | |             .set(&new_client)
[INFO] [stdout] 160 | |             .execute(&mut conn)
[INFO] [stdout] 161 | |             .await
[INFO] [stdout]     | |__________________^ cannot infer type
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0034]: multiple applicable items in scope
[INFO] [stdout]    --> src/main.rs:205:10
[INFO] [stdout]     |
[INFO] [stdout] 205 |         .get_result(&mut conn)
[INFO] [stdout]     |          ^^^^^^^^^^ multiple `get_result` found
[INFO] [stdout]     |
[INFO] [stdout]     = note: candidate #1 is defined in an impl of the trait `diesel_async::RunQueryDsl` for the type `T`
[INFO] [stdout]     = note: candidate #2 is defined in an impl of the trait `diesel::RunQueryDsl` for the type `SelectStatement<F, S, D, W, O, LOf, G, H, LC>`
[INFO] [stdout] help: disambiguate the method for candidate #1
[INFO] [stdout]     |
[INFO] [stdout] 200 ~     let group_exists: bool = diesel_async::RunQueryDsl::get_result(diesel::select(
[INFO] [stdout] 201 +         exists(
[INFO] [stdout] 202 +             diesel::QueryDsl::filter(
[INFO] [stdout] 203 +                 groups::table, 
[INFO] [stdout] 204 +             groups::group_id.eq(&groupid)))), &mut conn)
[INFO] [stdout]     |
[INFO] [stdout] help: disambiguate the method for candidate #2
[INFO] [stdout]     |
[INFO] [stdout] 200 ~     let group_exists: bool = diesel::RunQueryDsl::get_result(diesel::select(
[INFO] [stdout] 201 +         exists(
[INFO] [stdout] 202 +             diesel::QueryDsl::filter(
[INFO] [stdout] 203 +                 groups::table, 
[INFO] [stdout] 204 +             groups::group_id.eq(&groupid)))), &mut conn)
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0282]: type annotations needed
[INFO] [stdout]    --> src/main.rs:200:30
[INFO] [stdout]     |
[INFO] [stdout] 200 |       let group_exists: bool = diesel::select(
[INFO] [stdout]     |  ______________________________^
[INFO] [stdout] 201 | |         exists(
[INFO] [stdout] 202 | |             diesel::QueryDsl::filter(
[INFO] [stdout] 203 | |                 groups::table, 
[INFO] [stdout] 204 | |             groups::group_id.eq(&groupid))))
[INFO] [stdout] 205 | |         .get_result(&mut conn)
[INFO] [stdout] 206 | |         .await
[INFO] [stdout]     | |______________^ cannot infer type
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0034]: multiple applicable items in scope
[INFO] [stdout]    --> src/main.rs:222:10
[INFO] [stdout]     |
[INFO] [stdout] 222 |         .execute(&mut conn)
[INFO] [stdout]     |          ^^^^^^^ multiple `execute` found
[INFO] [stdout]     |
[INFO] [stdout]     = note: candidate #1 is defined in an impl of the trait `diesel::RunQueryDsl` for the type `InsertStatement<T, U, Op, Ret>`
[INFO] [stdout]     = note: candidate #2 is defined in an impl of the trait `diesel_async::RunQueryDsl` for the type `T`
[INFO] [stdout] help: disambiguate the method for candidate #1
[INFO] [stdout]     |
[INFO] [stdout] 220 ~     diesel::RunQueryDsl::execute(insert_into(groups::table)
[INFO] [stdout] 221 +         .values(&new_group), &mut conn)
[INFO] [stdout]     |
[INFO] [stdout] help: disambiguate the method for candidate #2
[INFO] [stdout]     |
[INFO] [stdout] 220 ~     diesel_async::RunQueryDsl::execute(insert_into(groups::table)
[INFO] [stdout] 221 +         .values(&new_group), &mut conn)
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0282]: type annotations needed
[INFO] [stdout]    --> src/main.rs:220:5
[INFO] [stdout]     |
[INFO] [stdout] 220 | /     insert_into(groups::table)
[INFO] [stdout] 221 | |         .values(&new_group)
[INFO] [stdout] 222 | |         .execute(&mut conn)
[INFO] [stdout] 223 | |         .await
[INFO] [stdout]     | |______________^ cannot infer type
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0034]: multiple applicable items in scope
[INFO] [stdout]    --> src/main.rs:249:7
[INFO] [stdout]     |
[INFO] [stdout] 249 |     ).get_result(&mut conn)
[INFO] [stdout]     |       ^^^^^^^^^^ multiple `get_result` found
[INFO] [stdout]     |
[INFO] [stdout]     = note: candidate #1 is defined in an impl of the trait `diesel_async::RunQueryDsl` for the type `T`
[INFO] [stdout]     = note: candidate #2 is defined in an impl of the trait `diesel::RunQueryDsl` for the type `SelectStatement<F, S, D, W, O, LOf, G, H, LC>`
[INFO] [stdout] help: disambiguate the method for candidate #1
[INFO] [stdout]     |
[INFO] [stdout] 242 ~     let welcome_exists: bool = diesel_async::RunQueryDsl::get_result(diesel::select(
[INFO] [stdout] 243 +         exists(
[INFO] [stdout] 244 +             diesel::QueryDsl::filter(
[INFO] [stdout] 245 +                 welcomes::table,
[INFO] [stdout] 246 +                 schema::welcomes::group_id.eq(&message.group)
[INFO] [stdout] 247 +             )
[INFO] [stdout] 248 +         )
[INFO] [stdout] 249 +     ), &mut conn)
[INFO] [stdout]     |
[INFO] [stdout] help: disambiguate the method for candidate #2
[INFO] [stdout]     |
[INFO] [stdout] 242 ~     let welcome_exists: bool = diesel::RunQueryDsl::get_result(diesel::select(
[INFO] [stdout] 243 +         exists(
[INFO] [stdout] 244 +             diesel::QueryDsl::filter(
[INFO] [stdout] 245 +                 welcomes::table,
[INFO] [stdout] 246 +                 schema::welcomes::group_id.eq(&message.group)
[INFO] [stdout] 247 +             )
[INFO] [stdout] 248 +         )
[INFO] [stdout] 249 +     ), &mut conn)
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0282]: type annotations needed
[INFO] [stdout]    --> src/main.rs:242:32
[INFO] [stdout]     |
[INFO] [stdout] 242 |       let welcome_exists: bool = diesel::select(
[INFO] [stdout]     |  ________________________________^
[INFO] [stdout] 243 | |         exists(
[INFO] [stdout] 244 | |             diesel::QueryDsl::filter(
[INFO] [stdout] 245 | |                 welcomes::table,
[INFO] [stdout] ...   |
[INFO] [stdout] 249 | |     ).get_result(&mut conn)
[INFO] [stdout] 250 | |     .await
[INFO] [stdout]     | |__________^ cannot infer type
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0034]: multiple applicable items in scope
[INFO] [stdout]    --> src/main.rs:258:10
[INFO] [stdout]     |
[INFO] [stdout] 258 |         .first(&mut conn)
[INFO] [stdout]     |          ^^^^^ multiple `first` found
[INFO] [stdout]     |
[INFO] [stdout]     = note: candidate #1 is defined in an impl of the trait `diesel_async::RunQueryDsl` for the type `T`
[INFO] [stdout]     = note: candidate #2 is defined in an impl of the trait `diesel::RunQueryDsl` for the type `SelectStatement<F, S, D, W, O, LOf, G, H, LC>`
[INFO] [stdout] help: disambiguate the method for candidate #1
[INFO] [stdout]     |
[INFO] [stdout] 257 -     let new_member: Client = diesel::QueryDsl::filter(schema::clients::table, schema::clients::client_identity.eq(&message.recipient))
[INFO] [stdout] 258 -         .first(&mut conn)
[INFO] [stdout] 257 +     let new_member: Client = diesel_async::RunQueryDsl::first(diesel::QueryDsl::filter(schema::clients::table, schema::clients::client_identity.eq(&message.recipient)), &mut conn)
[INFO] [stdout]     |
[INFO] [stdout] help: disambiguate the method for candidate #2
[INFO] [stdout]     |
[INFO] [stdout] 257 -     let new_member: Client = diesel::QueryDsl::filter(schema::clients::table, schema::clients::client_identity.eq(&message.recipient))
[INFO] [stdout] 258 -         .first(&mut conn)
[INFO] [stdout] 257 +     let new_member: Client = diesel::RunQueryDsl::first(diesel::QueryDsl::filter(schema::clients::table, schema::clients::client_identity.eq(&message.recipient)), &mut conn)
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0282]: type annotations needed
[INFO] [stdout]    --> src/main.rs:257:30
[INFO] [stdout]     |
[INFO] [stdout] 257 |       let new_member: Client = diesel::QueryDsl::filter(schema::clients::table, schema::clients::client_identity.eq(&message.recipi...
[INFO] [stdout]     |  ______________________________^
[INFO] [stdout] 258 | |         .first(&mut conn)
[INFO] [stdout] 259 | |         .await
[INFO] [stdout]     | |______________^ cannot infer type
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0034]: multiple applicable items in scope
[INFO] [stdout]    --> src/main.rs:263:6
[INFO] [stdout]     |
[INFO] [stdout] 263 |     .first(&mut conn)
[INFO] [stdout]     |      ^^^^^ multiple `first` found
[INFO] [stdout]     |
[INFO] [stdout]     = note: candidate #1 is defined in an impl of the trait `diesel_async::RunQueryDsl` for the type `T`
[INFO] [stdout]     = note: candidate #2 is defined in an impl of the trait `diesel::RunQueryDsl` for the type `SelectStatement<F, S, D, W, O, LOf, G, H, LC>`
[INFO] [stdout] help: disambiguate the method for candidate #1
[INFO] [stdout]     |
[INFO] [stdout] 262 -     let group: Group = diesel::QueryDsl::filter(schema::groups::table, schema::groups::group_id.eq(&message.group))
[INFO] [stdout] 263 -     .first(&mut conn)
[INFO] [stdout] 262 +     let group: Group = diesel_async::RunQueryDsl::first(diesel::QueryDsl::filter(schema::groups::table, schema::groups::group_id.eq(&message.group)), &mut conn)
[INFO] [stdout]     |
[INFO] [stdout] help: disambiguate the method for candidate #2
[INFO] [stdout]     |
[INFO] [stdout] 262 -     let group: Group = diesel::QueryDsl::filter(schema::groups::table, schema::groups::group_id.eq(&message.group))
[INFO] [stdout] 263 -     .first(&mut conn)
[INFO] [stdout] 262 +     let group: Group = diesel::RunQueryDsl::first(diesel::QueryDsl::filter(schema::groups::table, schema::groups::group_id.eq(&message.group)), &mut conn)
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0282]: type annotations needed
[INFO] [stdout]    --> src/main.rs:262:24
[INFO] [stdout]     |
[INFO] [stdout] 262 |       let group: Group = diesel::QueryDsl::filter(schema::groups::table, schema::groups::group_id.eq(&message.group))
[INFO] [stdout]     |  ________________________^
[INFO] [stdout] 263 | |     .first(&mut conn)
[INFO] [stdout] 264 | |     .await
[INFO] [stdout]     | |__________^ cannot infer type
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0034]: multiple applicable items in scope
[INFO] [stdout]    --> src/main.rs:278:10
[INFO] [stdout]     |
[INFO] [stdout] 278 |         .execute(&mut conn)
[INFO] [stdout]     |          ^^^^^^^ multiple `execute` found
[INFO] [stdout]     |
[INFO] [stdout]     = note: candidate #1 is defined in an impl of the trait `diesel::RunQueryDsl` for the type `InsertStatement<T, U, Op, Ret>`
[INFO] [stdout]     = note: candidate #2 is defined in an impl of the trait `diesel_async::RunQueryDsl` for the type `T`
[INFO] [stdout] help: disambiguate the method for candidate #1
[INFO] [stdout]     |
[INFO] [stdout] 276 ~     diesel::RunQueryDsl::execute(insert_into(welcomes::table)
[INFO] [stdout] 277 +         .values(&new_welcome), &mut conn)
[INFO] [stdout]     |
[INFO] [stdout] help: disambiguate the method for candidate #2
[INFO] [stdout]     |
[INFO] [stdout] 276 ~     diesel_async::RunQueryDsl::execute(insert_into(welcomes::table)
[INFO] [stdout] 277 +         .values(&new_welcome), &mut conn)
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0282]: type annotations needed
[INFO] [stdout]    --> src/main.rs:276:5
[INFO] [stdout]     |
[INFO] [stdout] 276 | /     insert_into(welcomes::table)
[INFO] [stdout] 277 | |         .values(&new_welcome)
[INFO] [stdout] 278 | |         .execute(&mut conn)
[INFO] [stdout] 279 | |         .await
[INFO] [stdout]     | |______________^ cannot infer type
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0034]: multiple applicable items in scope
[INFO] [stdout]    --> src/main.rs:290:10
[INFO] [stdout]     |
[INFO] [stdout] 290 |         .execute(&mut conn)
[INFO] [stdout]     |          ^^^^^^^ multiple `execute` found
[INFO] [stdout]     |
[INFO] [stdout]     = note: candidate #1 is defined in an impl of the trait `diesel::RunQueryDsl` for the type `InsertStatement<T, U, Op, Ret>`
[INFO] [stdout]     = note: candidate #2 is defined in an impl of the trait `diesel_async::RunQueryDsl` for the type `T`
[INFO] [stdout] help: disambiguate the method for candidate #1
[INFO] [stdout]     |
[INFO] [stdout] 288 ~     diesel::RunQueryDsl::execute(insert_into(group_members::table)
[INFO] [stdout] 289 +         .values(&new_membership), &mut conn)
[INFO] [stdout]     |
[INFO] [stdout] help: disambiguate the method for candidate #2
[INFO] [stdout]     |
[INFO] [stdout] 288 ~     diesel_async::RunQueryDsl::execute(insert_into(group_members::table)
[INFO] [stdout] 289 +         .values(&new_membership), &mut conn)
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0282]: type annotations needed
[INFO] [stdout]    --> src/main.rs:288:5
[INFO] [stdout]     |
[INFO] [stdout] 288 | /     insert_into(group_members::table)
[INFO] [stdout] 289 | |         .values(&new_membership)
[INFO] [stdout] 290 | |         .execute(&mut conn)
[INFO] [stdout] 291 | |         .await
[INFO] [stdout]     | |______________^ cannot infer type
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0034]: multiple applicable items in scope
[INFO] [stdout]    --> src/main.rs:309:10
[INFO] [stdout]     |
[INFO] [stdout] 309 |         .first(&mut conn)
[INFO] [stdout]     |          ^^^^^ multiple `first` found
[INFO] [stdout]     |
[INFO] [stdout]     = note: candidate #1 is defined in an impl of the trait `diesel_async::RunQueryDsl` for the type `T`
[INFO] [stdout]     = note: candidate #2 is defined in an impl of the trait `diesel::RunQueryDsl` for the type `SelectStatement<F, S, D, W, O, LOf, G, H, LC>`
[INFO] [stdout] help: disambiguate the method for candidate #1
[INFO] [stdout]     |
[INFO] [stdout] 308 -     let client: Client = diesel::QueryDsl::filter(schema::clients::table, schema::clients::client_id.eq(user_uuid))
[INFO] [stdout] 309 -         .first(&mut conn)
[INFO] [stdout] 308 +     let client: Client = diesel_async::RunQueryDsl::first(diesel::QueryDsl::filter(schema::clients::table, schema::clients::client_id.eq(user_uuid)), &mut conn)
[INFO] [stdout]     |
[INFO] [stdout] help: disambiguate the method for candidate #2
[INFO] [stdout]     |
[INFO] [stdout] 308 -     let client: Client = diesel::QueryDsl::filter(schema::clients::table, schema::clients::client_id.eq(user_uuid))
[INFO] [stdout] 309 -         .first(&mut conn)
[INFO] [stdout] 308 +     let client: Client = diesel::RunQueryDsl::first(diesel::QueryDsl::filter(schema::clients::table, schema::clients::client_id.eq(user_uuid)), &mut conn)
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0282]: type annotations needed
[INFO] [stdout]    --> src/main.rs:308:26
[INFO] [stdout]     |
[INFO] [stdout] 308 |       let client: Client = diesel::QueryDsl::filter(schema::clients::table, schema::clients::client_id.eq(user_uuid))
[INFO] [stdout]     |  __________________________^
[INFO] [stdout] 309 | |         .first(&mut conn)
[INFO] [stdout] 310 | |         .await
[INFO] [stdout]     | |______________^ cannot infer type
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0282]: type annotations needed
[INFO] [stdout]    --> src/main.rs:313:47
[INFO] [stdout]     |
[INFO] [stdout] 313 |       let user_welcomes: Vec<models::Welcome> = crate::models::Welcome::belonging_to(&client)
[INFO] [stdout]     |  _______________________________________________^
[INFO] [stdout] 314 | |         .load(&mut conn)
[INFO] [stdout] 315 | |         .await
[INFO] [stdout]     | |______________^ cannot infer type
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0034]: multiple applicable items in scope
[INFO] [stdout]    --> src/main.rs:321:10
[INFO] [stdout]     |
[INFO] [stdout] 321 |         .execute(&mut conn).await.unwrap();
[INFO] [stdout]     |          ^^^^^^^ multiple `execute` found
[INFO] [stdout]     |
[INFO] [stdout]     = note: candidate #1 is defined in an impl of the trait `diesel::RunQueryDsl` for the type `DeleteStatement<T, U, Ret>`
[INFO] [stdout]     = note: candidate #2 is defined in an impl of the trait `diesel_async::RunQueryDsl` for the type `T`
[INFO] [stdout] help: disambiguate the method for candidate #1
[INFO] [stdout]     |
[INFO] [stdout] 320 -     diesel::delete(diesel::QueryDsl::filter(welcomes::table, welcomes::new_member.eq(&user_uuid)))
[INFO] [stdout] 321 -         .execute(&mut conn).await.unwrap();
[INFO] [stdout] 320 +     diesel::RunQueryDsl::execute(diesel::delete(diesel::QueryDsl::filter(welcomes::table, welcomes::new_member.eq(&user_uuid))), &mut conn).await.unwrap();
[INFO] [stdout]     |
[INFO] [stdout] help: disambiguate the method for candidate #2
[INFO] [stdout]     |
[INFO] [stdout] 320 -     diesel::delete(diesel::QueryDsl::filter(welcomes::table, welcomes::new_member.eq(&user_uuid)))
[INFO] [stdout] 321 -         .execute(&mut conn).await.unwrap();
[INFO] [stdout] 320 +     diesel_async::RunQueryDsl::execute(diesel::delete(diesel::QueryDsl::filter(welcomes::table, welcomes::new_member.eq(&user_uuid))), &mut conn).await.unwrap();
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0282]: type annotations needed
[INFO] [stdout]    --> src/main.rs:320:5
[INFO] [stdout]     |
[INFO] [stdout] 320 | /     diesel::delete(diesel::QueryDsl::filter(welcomes::table, welcomes::new_member.eq(&user_uuid)))
[INFO] [stdout] 321 | |         .execute(&mut conn).await.unwrap();
[INFO] [stdout]     | |_________________________________^ cannot infer type
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0034]: multiple applicable items in scope
[INFO] [stdout]    --> src/main.rs:356:7
[INFO] [stdout]     |
[INFO] [stdout] 356 |     ).get_result(&mut conn)
[INFO] [stdout]     |       ^^^^^^^^^^ multiple `get_result` found
[INFO] [stdout]     |
[INFO] [stdout]     = note: candidate #1 is defined in an impl of the trait `diesel_async::RunQueryDsl` for the type `T`
[INFO] [stdout]     = note: candidate #2 is defined in an impl of the trait `diesel::RunQueryDsl` for the type `SelectStatement<F, S, D, W, O, LOf, G, H, LC>`
[INFO] [stdout] help: disambiguate the method for candidate #1
[INFO] [stdout]     |
[INFO] [stdout] 349 ~     let in_group: bool = diesel_async::RunQueryDsl::get_result(diesel::select(
[INFO] [stdout] 350 +         exists(
[INFO] [stdout] 351 +             diesel::QueryDsl::filter(
[INFO] [stdout] 352 +                 group_members::table,
[INFO] [stdout] 353 +                 schema::group_members::group_id.eq(&group.to_vec()).and(schema::group_members::client_id.eq(&user_uuid))
[INFO] [stdout] 354 +             )
[INFO] [stdout] 355 +         )
[INFO] [stdout] 356 +     ), &mut conn)
[INFO] [stdout]     |
[INFO] [stdout] help: disambiguate the method for candidate #2
[INFO] [stdout]     |
[INFO] [stdout] 349 ~     let in_group: bool = diesel::RunQueryDsl::get_result(diesel::select(
[INFO] [stdout] 350 +         exists(
[INFO] [stdout] 351 +             diesel::QueryDsl::filter(
[INFO] [stdout] 352 +                 group_members::table,
[INFO] [stdout] 353 +                 schema::group_members::group_id.eq(&group.to_vec()).and(schema::group_members::client_id.eq(&user_uuid))
[INFO] [stdout] 354 +             )
[INFO] [stdout] 355 +         )
[INFO] [stdout] 356 +     ), &mut conn)
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0282]: type annotations needed
[INFO] [stdout]    --> src/main.rs:349:26
[INFO] [stdout]     |
[INFO] [stdout] 349 |       let in_group: bool = diesel::select(
[INFO] [stdout]     |  __________________________^
[INFO] [stdout] 350 | |         exists(
[INFO] [stdout] 351 | |             diesel::QueryDsl::filter(
[INFO] [stdout] 352 | |                 group_members::table,
[INFO] [stdout] ...   |
[INFO] [stdout] 356 | |     ).get_result(&mut conn)
[INFO] [stdout] 357 | |     .await
[INFO] [stdout]     | |__________^ cannot infer type
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0034]: multiple applicable items in scope
[INFO] [stdout]    --> src/main.rs:377:10
[INFO] [stdout]     |
[INFO] [stdout] 377 |         .execute(&mut conn)
[INFO] [stdout]     |          ^^^^^^^ multiple `execute` found
[INFO] [stdout]     |
[INFO] [stdout]     = note: candidate #1 is defined in an impl of the trait `diesel::RunQueryDsl` for the type `InsertStatement<T, U, Op, Ret>`
[INFO] [stdout]     = note: candidate #2 is defined in an impl of the trait `diesel_async::RunQueryDsl` for the type `T`
[INFO] [stdout] help: disambiguate the method for candidate #1
[INFO] [stdout]     |
[INFO] [stdout] 375 ~     diesel::RunQueryDsl::execute(insert_into(schema::messages::table)
[INFO] [stdout] 376 +         .values(&new_message), &mut conn)
[INFO] [stdout]     |
[INFO] [stdout] help: disambiguate the method for candidate #2
[INFO] [stdout]     |
[INFO] [stdout] 375 ~     diesel_async::RunQueryDsl::execute(insert_into(schema::messages::table)
[INFO] [stdout] 376 +         .values(&new_message), &mut conn)
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0282]: type annotations needed
[INFO] [stdout]    --> src/main.rs:375:5
[INFO] [stdout]     |
[INFO] [stdout] 375 | /     insert_into(schema::messages::table)
[INFO] [stdout] 376 | |         .values(&new_message)
[INFO] [stdout] 377 | |         .execute(&mut conn)
[INFO] [stdout] 378 | |         .await
[INFO] [stdout]     | |______________^ cannot infer type
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0034]: multiple applicable items in scope
[INFO] [stdout]    --> src/main.rs:402:7
[INFO] [stdout]     |
[INFO] [stdout] 402 |     ).get_result(&mut conn)
[INFO] [stdout]     |       ^^^^^^^^^^ multiple `get_result` found
[INFO] [stdout]     |
[INFO] [stdout]     = note: candidate #1 is defined in an impl of the trait `diesel_async::RunQueryDsl` for the type `T`
[INFO] [stdout]     = note: candidate #2 is defined in an impl of the trait `diesel::RunQueryDsl` for the type `SelectStatement<F, S, D, W, O, LOf, G, H, LC>`
[INFO] [stdout] help: disambiguate the method for candidate #1
[INFO] [stdout]     |
[INFO] [stdout] 395 ~     let in_group: bool = diesel_async::RunQueryDsl::get_result(diesel::select(
[INFO] [stdout] 396 +         exists(
[INFO] [stdout] 397 +             diesel::QueryDsl::filter(
[INFO] [stdout] 398 +                 group_members::table,
[INFO] [stdout] 399 +                 schema::group_members::group_id.eq(&group.group_id).and(schema::group_members::client_id.eq(&user_uuid))
[INFO] [stdout] 400 +             )
[INFO] [stdout] 401 +         )
[INFO] [stdout] 402 +     ), &mut conn)
[INFO] [stdout]     |
[INFO] [stdout] help: disambiguate the method for candidate #2
[INFO] [stdout]     |
[INFO] [stdout] 395 ~     let in_group: bool = diesel::RunQueryDsl::get_result(diesel::select(
[INFO] [stdout] 396 +         exists(
[INFO] [stdout] 397 +             diesel::QueryDsl::filter(
[INFO] [stdout] 398 +                 group_members::table,
[INFO] [stdout] 399 +                 schema::group_members::group_id.eq(&group.group_id).and(schema::group_members::client_id.eq(&user_uuid))
[INFO] [stdout] 400 +             )
[INFO] [stdout] 401 +         )
[INFO] [stdout] 402 +     ), &mut conn)
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0282]: type annotations needed
[INFO] [stdout]    --> src/main.rs:395:26
[INFO] [stdout]     |
[INFO] [stdout] 395 |       let in_group: bool = diesel::select(
[INFO] [stdout]     |  __________________________^
[INFO] [stdout] 396 | |         exists(
[INFO] [stdout] 397 | |             diesel::QueryDsl::filter(
[INFO] [stdout] 398 | |                 group_members::table,
[INFO] [stdout] ...   |
[INFO] [stdout] 402 | |     ).get_result(&mut conn)
[INFO] [stdout] 403 | |     .await
[INFO] [stdout]     | |__________^ cannot infer type
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0034]: multiple applicable items in scope
[INFO] [stdout]    --> src/main.rs:412:10
[INFO] [stdout]     |
[INFO] [stdout] 412 |         .load(&mut conn)
[INFO] [stdout]     |          ^^^^ multiple `load` found
[INFO] [stdout]     |
[INFO] [stdout]     = note: candidate #1 is defined in an impl of the trait `diesel_async::RunQueryDsl` for the type `T`
[INFO] [stdout]     = note: candidate #2 is defined in an impl of the trait `diesel::RunQueryDsl` for the type `SelectStatement<F, S, D, W, O, LOf, G, H, LC>`
[INFO] [stdout] help: disambiguate the method for candidate #1
[INFO] [stdout]     |
[INFO] [stdout] 411 -     let user_messages: Vec<crate::models::Message> = diesel::QueryDsl::filter(schema::messages::table, schema::messages::sender_client_id.eq(&user_uuid).and(schema::messages::group_id.eq(&group.group_id)))
[INFO] [stdout] 412 -         .load(&mut conn)
[INFO] [stdout] 411 +     let user_messages: Vec<crate::models::Message> = diesel_async::RunQueryDsl::load(diesel::QueryDsl::filter(schema::messages::table, schema::messages::sender_client_id.eq(&user_uuid).and(schema::messages::group_id.eq(&group.group_id))), &mut conn)
[INFO] [stdout]     |
[INFO] [stdout] help: disambiguate the method for candidate #2
[INFO] [stdout]     |
[INFO] [stdout] 411 -     let user_messages: Vec<crate::models::Message> = diesel::QueryDsl::filter(schema::messages::table, schema::messages::sender_client_id.eq(&user_uuid).and(schema::messages::group_id.eq(&group.group_id)))
[INFO] [stdout] 412 -         .load(&mut conn)
[INFO] [stdout] 411 +     let user_messages: Vec<crate::models::Message> = diesel::RunQueryDsl::load(diesel::QueryDsl::filter(schema::messages::table, schema::messages::sender_client_id.eq(&user_uuid).and(schema::messages::group_id.eq(&group.group_id))), &mut conn)
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0282]: type annotations needed
[INFO] [stdout]    --> src/main.rs:411:54
[INFO] [stdout]     |
[INFO] [stdout] 411 |       let user_messages: Vec<crate::models::Message> = diesel::QueryDsl::filter(schema::messages::table, schema::messages::sender_c...
[INFO] [stdout]     |  ______________________________________________________^
[INFO] [stdout] 412 | |         .load(&mut conn)
[INFO] [stdout] 413 | |         .await
[INFO] [stdout]     | |______________^ cannot infer type
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] Some errors have detailed explanations: E0034, E0282.
[INFO] [stdout] 
[INFO] [stdout] For more information about an error, try `rustc --explain E0034`.
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `mls_ds` (bin "mls_ds") due to 34 previous errors; 8 warnings emitted
[INFO] [stderr] warning: build failed, waiting for other jobs to finish...
[INFO] [stdout] Some errors have detailed explanations: E0034, E0282.
[INFO] [stdout] 
[INFO] [stdout] For more information about an error, try `rustc --explain E0034`.
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `mls_ds` (bin "mls_ds" test) due to 34 previous errors; 8 warnings emitted
[INFO] running `Command { std: "docker" "inspect" "0b03353cbbe87e3651b00916a8c3a4ca15292bb6a6900c2d6579322ebd60f86c", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "0b03353cbbe87e3651b00916a8c3a4ca15292bb6a6900c2d6579322ebd60f86c", kill_on_drop: false }`
[INFO] [stdout] 0b03353cbbe87e3651b00916a8c3a4ca15292bb6a6900c2d6579322ebd60f86c
