[INFO] cloning repository https://github.com/NioKing/rust-shop [INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/NioKing/rust-shop" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FNioKing%2Frust-shop", kill_on_drop: false }` [INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FNioKing%2Frust-shop'... [INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }` [INFO] [stdout] f75e2beaa7c4aa4fbfbd0417e10a73ca8cc98986 [INFO] checking NioKing/rust-shop against try#95813608313bff49cfc1afc393a946a3c085b772 for pr-148946 [INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FNioKing%2Frust-shop" "/workspace/builds/worker-3-tc2/source", kill_on_drop: false }` [INFO] [stderr] Cloning into '/workspace/builds/worker-3-tc2/source'... [INFO] [stderr] done. [INFO] started tweaking git repo https://github.com/NioKing/rust-shop [INFO] finished tweaking git repo https://github.com/NioKing/rust-shop [INFO] tweaked toml for git repo https://github.com/NioKing/rust-shop written to /workspace/builds/worker-3-tc2/source/Cargo.toml [INFO] validating manifest of git repo https://github.com/NioKing/rust-shop 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/NioKing/rust-shop 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] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-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] 8bee9f512c9925499395524a446f0f3dc393aa48ab5f57de6c846b88e6d2d77f [INFO] running `Command { std: "docker" "start" "-a" "8bee9f512c9925499395524a446f0f3dc393aa48ab5f57de6c846b88e6d2d77f", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "8bee9f512c9925499395524a446f0f3dc393aa48ab5f57de6c846b88e6d2d77f", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "8bee9f512c9925499395524a446f0f3dc393aa48ab5f57de6c846b88e6d2d77f", kill_on_drop: false }` [INFO] [stdout] 8bee9f512c9925499395524a446f0f3dc393aa48ab5f57de6c846b88e6d2d77f [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-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] 001d1f0aac53134e4c4ff4d0c1040884d3eacbb282faf6f08f37e8ae50166302 [INFO] running `Command { std: "docker" "start" "-a" "001d1f0aac53134e4c4ff4d0c1040884d3eacbb282faf6f08f37e8ae50166302", kill_on_drop: false }` [INFO] [stderr] Compiling serde_core v1.0.226 [INFO] [stderr] Compiling libc v0.2.176 [INFO] [stderr] Compiling serde v1.0.226 [INFO] [stderr] Checking parking_lot_core v0.9.11 [INFO] [stderr] Checking signal-hook-registry v1.4.6 [INFO] [stderr] Compiling displaydoc v0.2.5 [INFO] [stderr] Compiling serde_json v1.0.145 [INFO] [stderr] Checking concurrent-queue v2.5.0 [INFO] [stderr] Checking digest v0.10.7 [INFO] [stderr] Compiling darling_core v0.20.11 [INFO] [stderr] Checking num-integer v0.1.46 [INFO] [stderr] Checking tracing v0.1.41 [INFO] [stderr] Compiling rustix v1.1.2 [INFO] [stderr] Checking cipher v0.4.4 [INFO] [stderr] Checking futures-lite v2.6.1 [INFO] [stderr] Checking linux-raw-sys v0.11.0 [INFO] [stderr] Checking futures-util v0.3.31 [INFO] [stderr] Checking parking_lot v0.12.4 [INFO] [stderr] Checking spin v0.9.8 [INFO] [stderr] Compiling async-io v2.6.0 [INFO] [stderr] Compiling time-core v0.1.6 [INFO] [stderr] Checking hmac v0.12.1 [INFO] [stderr] Checking tokio v1.47.1 [INFO] [stderr] Checking deranged v0.5.3 [INFO] [stderr] Checking executor-trait v2.1.2 [INFO] [stderr] Checking sha2 v0.10.9 [INFO] [stderr] Compiling der_derive v0.7.3 [INFO] [stderr] Compiling time-macros v0.2.24 [INFO] [stderr] Checking const-oid v0.9.6 [INFO] [stderr] Compiling aws-lc-rs v1.14.0 [INFO] [stderr] Checking num-bigint v0.4.6 [INFO] [stderr] Checking nom v7.1.3 [INFO] [stderr] Checking aho-corasick v1.1.3 [INFO] [stderr] Compiling asn1-rs-derive v0.6.0 [INFO] [stderr] Checking tinystr v0.8.1 [INFO] [stderr] Checking zerotrie v0.2.2 [INFO] [stderr] Checking icu_locale_core v2.0.0 [INFO] [stderr] Compiling jobserver v0.1.34 [INFO] [stderr] Checking icu_collections v2.0.0 [INFO] [stderr] Compiling asn1-rs-impl v0.2.0 [INFO] [stderr] Checking regex-automata v0.4.10 [INFO] [stderr] Compiling cc v1.2.38 [INFO] [stderr] Checking flume v0.11.1 [INFO] [stderr] Checking icu_provider v2.0.0 [INFO] [stderr] Checking event-listener v5.4.1 [INFO] [stderr] Checking der v0.7.10 [INFO] [stderr] Compiling rustls v0.23.32 [INFO] [stderr] Compiling regex-syntax v0.8.6 [INFO] [stderr] Compiling oid-registry v0.8.1 [INFO] [stderr] Checking icu_normalizer v2.0.0 [INFO] [stderr] Checking icu_properties v2.0.1 [INFO] [stderr] Checking time v0.3.44 [INFO] [stderr] Checking event-listener-strategy v0.5.4 [INFO] [stderr] Checking salsa20 v0.10.2 [INFO] [stderr] Checking pbkdf2 v0.12.2 [INFO] [stderr] Checking sha1 v0.10.6 [INFO] [stderr] Compiling bigdecimal v0.4.8 [INFO] [stderr] Compiling zstd-safe v7.2.4 [INFO] [stderr] Compiling pq-sys v0.7.2 [INFO] [stderr] Checking scrypt v0.11.0 [INFO] [stderr] Checking aes v0.8.4 [INFO] [stderr] Checking rusticata-macros v4.1.0 [INFO] [stderr] Checking cbc v0.1.2 [INFO] [stderr] Compiling diesel_table_macro_syntax v0.2.0 [INFO] [stderr] Compiling openssl-macros v0.1.1 [INFO] [stderr] Compiling cmake v0.1.54 [INFO] [stderr] Checking spki v0.7.3 [INFO] [stderr] Checking nom v8.0.0 [INFO] [stderr] Checking x509-cert v0.2.5 [INFO] [stderr] Checking chrono v0.4.42 [INFO] [stderr] Checking uuid v1.18.1 [INFO] [stderr] Checking pkcs5 v0.7.1 [INFO] [stderr] Compiling aws-lc-sys v0.31.0 [INFO] [stderr] Checking idna_adapter v1.2.1 [INFO] [stderr] Compiling openssl-sys v0.9.109 [INFO] [stderr] Compiling zstd-sys v2.0.16+zstd.1.5.7 [INFO] [stderr] Compiling darling_macro v0.20.11 [INFO] [stderr] Checking idna v1.1.0 [INFO] [stderr] Checking asn1-rs v0.7.1 [INFO] [stderr] Compiling psm v0.1.26 [INFO] [stderr] Checking url v2.5.7 [INFO] [stderr] Compiling darling v0.20.11 [INFO] [stderr] Checking brotli-decompressor v5.0.0 [INFO] [stderr] Compiling dsl_auto_type v0.1.3 [INFO] [stderr] Checking async-channel v2.5.0 [INFO] [stderr] Compiling phf v0.11.3 [INFO] [stderr] Compiling openssl v0.10.73 [INFO] [stderr] Compiling native-tls v0.2.14 [INFO] [stderr] Checking phf_shared v0.11.3 [INFO] [stderr] Checking rc2 v0.8.1 [INFO] [stderr] Checking des v0.8.1 [INFO] [stderr] Compiling multer v3.1.0 [INFO] [stderr] Checking encoding_rs v0.8.35 [INFO] [stderr] Checking der-parser v10.0.0 [INFO] [stderr] Compiling unicase v2.8.1 [INFO] [stderr] Compiling regex v1.11.2 [INFO] [stderr] Compiling diesel_derives v2.2.7 [INFO] [stderr] Checking cookie-factory v0.3.3 [INFO] [stderr] Checking cms v0.2.3 [INFO] [stderr] Checking tokio-util v0.7.16 [INFO] [stderr] Checking tower v0.5.2 [INFO] [stderr] Compiling winnow v0.7.13 [INFO] [stderr] Checking x509-parser v0.17.0 [INFO] [stderr] Compiling parse-zoneinfo v0.3.1 [INFO] [stderr] Compiling pest v2.8.2 [INFO] [stderr] Checking h2 v0.4.12 [INFO] [stderr] Checking brotli v8.0.2 [INFO] [stderr] Checking pkcs12 v0.1.0 [INFO] [stderr] Compiling mime_guess v2.0.5 [INFO] [stderr] Checking polling v3.11.0 [INFO] [stderr] Compiling toml_datetime v0.7.2 [INFO] [stderr] Compiling chrono-tz-build v0.3.0 [INFO] [stderr] Compiling serde_spanned v1.0.2 [INFO] [stderr] Checking blocking v1.6.2 [INFO] [stderr] Checking reactor-trait v3.1.1 [INFO] [stderr] Compiling derive_builder_core v0.20.2 [INFO] [stderr] Checking reactor-trait v2.8.0 [INFO] [stderr] Compiling stacker v0.1.21 [INFO] [stderr] Checking async-executor v1.13.3 [INFO] [stderr] Checking serde_urlencoded v0.7.1 [INFO] [stderr] Checking p12-keystore v0.2.0 [INFO] [stderr] Checking async-lock v3.4.1 [INFO] [stderr] Checking md-5 v0.10.6 [INFO] [stderr] Checking crossbeam-epoch v0.9.18 [INFO] [stderr] Checking bstr v1.12.0 [INFO] [stderr] Compiling toml_parser v1.0.3 [INFO] [stderr] Checking unic-common v0.9.0 [INFO] [stderr] Compiling toml_writer v1.0.3 [INFO] [stderr] Checking amq-protocol-types v8.3.1 [INFO] [stderr] Checking unic-char-range v0.9.0 [INFO] [stderr] Checking postgres-protocol v0.6.8 [INFO] [stderr] Checking unic-ucd-version v0.9.0 [INFO] [stderr] Checking async-global-executor v3.1.0 [INFO] [stderr] Checking unic-char-property v0.9.0 [INFO] [stderr] Checking crossbeam-deque v0.8.6 [INFO] [stderr] Compiling pest_meta v2.8.2 [INFO] [stderr] Compiling proc-macro-error2 v2.0.1 [INFO] [stderr] Compiling chrono-tz v0.9.0 [INFO] [stderr] Compiling toml v0.9.7 [INFO] [stderr] Checking axum-core v0.5.2 [INFO] [stderr] Checking globset v0.4.16 [INFO] [stderr] Checking ahash v0.8.12 [INFO] [stderr] Checking amq-protocol-uri v8.3.1 [INFO] [stderr] Compiling derive_builder_macro v0.20.2 [INFO] [stderr] Checking deadpool-runtime v0.1.4 [INFO] [stderr] Compiling ring v0.17.14 [INFO] [stderr] Checking serde_path_to_error v0.1.20 [INFO] [stderr] Checking phf_shared v0.12.1 [INFO] [stderr] Compiling strum_macros v0.27.2 [INFO] [stderr] Checking executor-trait v3.1.0 [INFO] [stderr] Compiling axum-macros v0.5.0 [INFO] [stderr] Compiling amq-protocol v8.3.1 [INFO] [stderr] Compiling chrono-tz v0.10.4 [INFO] [stderr] Compiling validator_derive v0.20.0 [INFO] [stderr] Checking hashbrown v0.14.5 [INFO] [stderr] Compiling pest_generator v2.8.2 [INFO] [stderr] Checking tokio-native-tls v0.3.1 [INFO] [stderr] Compiling migrations_internals v2.2.1 [INFO] [stderr] Checking phf v0.12.1 [INFO] [stderr] Checking derive_builder v0.20.2 [INFO] [stderr] Checking ignore v0.4.23 [INFO] [stderr] Checking postgres-types v0.2.9 [INFO] [stderr] Checking async-global-executor-trait v2.2.0 [INFO] [stderr] Checking unic-ucd-segment v0.9.0 [INFO] [stderr] Checking num_cpus v1.17.0 [INFO] [stderr] Checking socket2 v0.5.10 [INFO] [stderr] Checking deunicode v1.6.2 [INFO] [stderr] Checking http-range-header v0.4.2 [INFO] [stderr] Compiling tokio-cron-scheduler v0.15.1 [INFO] [stderr] Compiling lapin v3.7.0 [INFO] [stderr] Checking whoami v1.6.1 [INFO] [stderr] Checking unic-segment v0.9.0 [INFO] [stderr] Checking slug v0.1.6 [INFO] [stderr] Checking deadpool v0.12.3 [INFO] [stderr] Checking chumsky v0.9.3 [INFO] [stderr] Checking async-global-executor-trait v3.1.0 [INFO] [stderr] Checking headers v0.4.1 [INFO] [stderr] Checking globwalk v0.9.1 [INFO] [stderr] Checking tokio-postgres v0.7.13 [INFO] [stderr] Checking validator v0.20.0 [INFO] [stderr] Compiling pest_derive v2.8.2 [INFO] [stderr] Compiling migrations_macros v2.2.0 [INFO] [stderr] Checking deadpool-sync v0.1.4 [INFO] [stderr] Checking async-reactor-trait v3.1.1 [INFO] [stderr] Checking tokio-executor-trait v2.4.0 [INFO] [stderr] Checking bb8 v0.8.6 [INFO] [stderr] Checking hyper v1.7.0 [INFO] [stderr] Checking tokio-stream v0.1.17 [INFO] [stderr] Checking strum v0.27.2 [INFO] [stderr] Checking matchers v0.2.0 [INFO] [stderr] Checking simple_asn1 v0.6.3 [INFO] [stderr] Checking croner v3.0.1 [INFO] [stderr] Checking humansize v2.1.3 [INFO] [stderr] Checking diesel v2.2.12 [INFO] [stderr] Checking blowfish v0.9.1 [INFO] [stderr] Checking backon v1.5.2 [INFO] [stderr] Checking tracing-log v0.2.0 [INFO] [stderr] Compiling num-derive v0.4.2 [INFO] [stderr] Checking hostname v0.4.1 [INFO] [stderr] Checking email-encoding v0.4.1 [INFO] [stderr] Checking pem v3.0.5 [INFO] [stderr] Checking scoped-futures v0.1.4 [INFO] [stderr] Checking thread_local v1.1.9 [INFO] [stderr] Checking nu-ansi-term v0.50.1 [INFO] [stderr] Checking email_address v0.2.9 [INFO] [stderr] Checking quoted_printable v0.5.1 [INFO] [stderr] Compiling diesel-derive-enum v2.1.0 [INFO] [stderr] Checking bcrypt v0.17.1 [INFO] [stderr] Checking tokio-reactor-trait v4.1.1 [INFO] [stderr] Checking tokio-executor-trait v3.1.0 [INFO] [stderr] Checking tracing-subscriber v0.3.20 [INFO] [stderr] Checking listenfd v1.0.2 [INFO] [stderr] Checking hyper-util v0.1.17 [INFO] [stderr] Checking lettre v0.11.18 [INFO] [stderr] Checking jsonwebtoken v9.3.1 [INFO] [stderr] Checking zstd v0.13.3 [INFO] [stderr] Checking axum v0.8.4 [INFO] [stderr] Checking hyper-tls v0.6.0 [INFO] [stderr] Checking compression-codecs v0.4.30 [INFO] [stderr] Checking tera v1.20.0 [INFO] [stderr] Checking async-compression v0.4.30 [INFO] [stderr] Checking tower-http v0.6.6 [INFO] [stderr] Checking reqwest v0.12.23 [INFO] [stderr] Checking axum-validated-extractors v0.1.2 [INFO] [stderr] Checking axum-extra v0.10.1 [INFO] [stderr] Checking rustls-webpki v0.103.6 [INFO] [stderr] Checking futures-rustls v0.26.0 [INFO] [stderr] Checking rustls-connector v0.21.11 [INFO] [stderr] Checking tcp-stream v0.30.9 [INFO] [stderr] Checking amq-protocol-tcp v8.3.1 [INFO] [stderr] Checking deadpool-diesel v0.6.1 [INFO] [stderr] Checking diesel_migrations v2.2.0 [INFO] [stderr] Checking diesel-async v0.5.2 [INFO] [stderr] Checking diesel_full_text_search v2.2.0 [INFO] [stderr] Checking axum-shop v0.1.0 (/opt/rustwide/workdir) [INFO] [stdout] error[E0034]: multiple applicable items in scope [INFO] [stdout] --> src/auth/handlers.rs:66:22 [INFO] [stdout] | [INFO] [stdout] 66 | .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::RunQueryDsl` for the type `InsertStatement` [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] 63 ~ let user = diesel::RunQueryDsl::get_result(diesel::insert_into(users::table) [INFO] [stdout] 64 + .values(&user_data) [INFO] [stdout] 65 + .returning(SafeUser::as_returning()), &mut conn) [INFO] [stdout] | [INFO] [stdout] help: disambiguate the method for candidate #2 [INFO] [stdout] | [INFO] [stdout] 63 ~ let user = diesel_async::RunQueryDsl::get_result(diesel::insert_into(users::table) [INFO] [stdout] 64 + .values(&user_data) [INFO] [stdout] 65 + .returning(SafeUser::as_returning()), &mut conn) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0034]: multiple applicable items in scope [INFO] [stdout] --> src/auth/handlers.rs:97:22 [INFO] [stdout] | [INFO] [stdout] 97 | .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` [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] 95 ~ diesel::RunQueryDsl::execute(diesel::insert_into(carts::table) [INFO] [stdout] 96 + .values(&cart_data), &mut conn) [INFO] [stdout] | [INFO] [stdout] help: disambiguate the method for candidate #2 [INFO] [stdout] | [INFO] [stdout] 95 ~ diesel_async::RunQueryDsl::execute(diesel::insert_into(carts::table) [INFO] [stdout] 96 + .values(&cart_data), &mut conn) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0034]: multiple applicable items in scope [INFO] [stdout] --> src/auth/handlers.rs:102:22 [INFO] [stdout] | [INFO] [stdout] 102 | .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` [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] 100 ~ diesel::RunQueryDsl::execute(diesel::insert_into(user_subscriptions::table) [INFO] [stdout] 101 + .values(&subs_data), &mut conn) [INFO] [stdout] | [INFO] [stdout] help: disambiguate the method for candidate #2 [INFO] [stdout] | [INFO] [stdout] 100 ~ diesel_async::RunQueryDsl::execute(diesel::insert_into(user_subscriptions::table) [INFO] [stdout] 101 + .values(&subs_data), &mut conn) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0034]: multiple applicable items in scope [INFO] [stdout] --> src/auth/handlers.rs:107:22 [INFO] [stdout] | [INFO] [stdout] 107 | .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` [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] 105 ~ diesel::RunQueryDsl::execute(diesel::insert_into(profiles::table) [INFO] [stdout] 106 + .values(&profile_data), &mut conn) [INFO] [stdout] | [INFO] [stdout] help: disambiguate the method for candidate #2 [INFO] [stdout] | [INFO] [stdout] 105 ~ diesel_async::RunQueryDsl::execute(diesel::insert_into(profiles::table) [INFO] [stdout] 106 + .values(&profile_data), &mut conn) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0034]: multiple applicable items in scope [INFO] [stdout] --> src/auth/handlers.rs:141:10 [INFO] [stdout] | [INFO] [stdout] 141 | .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` [INFO] [stdout] help: disambiguate the method for candidate #1 [INFO] [stdout] | [INFO] [stdout] 138 ~ let res = diesel_async::RunQueryDsl::get_result(users::table [INFO] [stdout] 139 + .filter(users::id.eq(&id)) [INFO] [stdout] 140 + .select(SafeUser::as_select()), &mut conn) [INFO] [stdout] | [INFO] [stdout] help: disambiguate the method for candidate #2 [INFO] [stdout] | [INFO] [stdout] 138 ~ let res = diesel::RunQueryDsl::get_result(users::table [INFO] [stdout] 139 + .filter(users::id.eq(&id)) [INFO] [stdout] 140 + .select(SafeUser::as_select()), &mut conn) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0282]: type annotations needed [INFO] [stdout] --> src/auth/handlers.rs:138:15 [INFO] [stdout] | [INFO] [stdout] 138 | let res = users::table [INFO] [stdout] | _______________^ [INFO] [stdout] 139 | | .filter(users::id.eq(&id)) [INFO] [stdout] 140 | | .select(SafeUser::as_select()) [INFO] [stdout] 141 | | .get_result(&mut conn) [INFO] [stdout] 142 | | .await [INFO] [stdout] | |______________^ cannot infer type [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0034]: multiple applicable items in scope [INFO] [stdout] --> src/auth/handlers.rs:159:10 [INFO] [stdout] | [INFO] [stdout] 159 | .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` [INFO] [stdout] help: disambiguate the method for candidate #1 [INFO] [stdout] | [INFO] [stdout] 156 ~ let res = diesel_async::RunQueryDsl::get_result(users::table [INFO] [stdout] 157 + .filter(users::email.eq(&payload.email)) [INFO] [stdout] 158 + .select(SafeUser::as_select()), &mut conn) [INFO] [stdout] | [INFO] [stdout] help: disambiguate the method for candidate #2 [INFO] [stdout] | [INFO] [stdout] 156 ~ let res = diesel::RunQueryDsl::get_result(users::table [INFO] [stdout] 157 + .filter(users::email.eq(&payload.email)) [INFO] [stdout] 158 + .select(SafeUser::as_select()), &mut conn) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0282]: type annotations needed [INFO] [stdout] --> src/auth/handlers.rs:156:15 [INFO] [stdout] | [INFO] [stdout] 156 | let res = users::table [INFO] [stdout] | _______________^ [INFO] [stdout] 157 | | .filter(users::email.eq(&payload.email)) [INFO] [stdout] 158 | | .select(SafeUser::as_select()) [INFO] [stdout] 159 | | .get_result(&mut conn) [INFO] [stdout] 160 | | .await [INFO] [stdout] | |______________^ cannot infer type [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0034]: multiple applicable items in scope [INFO] [stdout] --> src/auth/handlers.rs:176:10 [INFO] [stdout] | [INFO] [stdout] 176 | .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 `DeleteStatement` [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] 175 - diesel::delete(carts::table.filter(carts::user_id.eq(&id))) [INFO] [stdout] 176 - .execute(&mut conn) [INFO] [stdout] 175 + diesel::RunQueryDsl::execute(diesel::delete(carts::table.filter(carts::user_id.eq(&id))), &mut conn) [INFO] [stdout] | [INFO] [stdout] help: disambiguate the method for candidate #2 [INFO] [stdout] | [INFO] [stdout] 175 - diesel::delete(carts::table.filter(carts::user_id.eq(&id))) [INFO] [stdout] 176 - .execute(&mut conn) [INFO] [stdout] 175 + diesel_async::RunQueryDsl::execute(diesel::delete(carts::table.filter(carts::user_id.eq(&id))), &mut conn) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0282]: type annotations needed [INFO] [stdout] --> src/auth/handlers.rs:175:5 [INFO] [stdout] | [INFO] [stdout] 175 | / diesel::delete(carts::table.filter(carts::user_id.eq(&id))) [INFO] [stdout] 176 | | .execute(&mut conn) [INFO] [stdout] 177 | | .await [INFO] [stdout] | |______________^ cannot infer type [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0034]: multiple applicable items in scope [INFO] [stdout] --> src/auth/handlers.rs:182:10 [INFO] [stdout] | [INFO] [stdout] 182 | .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::RunQueryDsl` for the type `DeleteStatement` [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] 180 ~ let res = diesel::RunQueryDsl::get_result(diesel::delete(users::table.find(&id)) [INFO] [stdout] 181 + .returning(SafeUser::as_returning()), &mut conn) [INFO] [stdout] | [INFO] [stdout] help: disambiguate the method for candidate #2 [INFO] [stdout] | [INFO] [stdout] 180 ~ let res = diesel_async::RunQueryDsl::get_result(diesel::delete(users::table.find(&id)) [INFO] [stdout] 181 + .returning(SafeUser::as_returning()), &mut conn) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0282]: type annotations needed [INFO] [stdout] --> src/auth/handlers.rs:180:15 [INFO] [stdout] | [INFO] [stdout] 180 | let res = diesel::delete(users::table.find(&id)) [INFO] [stdout] | _______________^ [INFO] [stdout] 181 | | .returning(SafeUser::as_returning()) [INFO] [stdout] 182 | | .get_result(&mut conn) [INFO] [stdout] 183 | | .await [INFO] [stdout] | |______________^ cannot infer type [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0034]: multiple applicable items in scope [INFO] [stdout] --> src/auth/handlers.rs:201:10 [INFO] [stdout] | [INFO] [stdout] 201 | .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` [INFO] [stdout] help: disambiguate the method for candidate #1 [INFO] [stdout] | [INFO] [stdout] 198 ~ let user = diesel_async::RunQueryDsl::get_result(users::table [INFO] [stdout] 199 + .find(id) [INFO] [stdout] 200 + .select(User::as_select()), &mut conn) [INFO] [stdout] | [INFO] [stdout] help: disambiguate the method for candidate #2 [INFO] [stdout] | [INFO] [stdout] 198 ~ let user = diesel::RunQueryDsl::get_result(users::table [INFO] [stdout] 199 + .find(id) [INFO] [stdout] 200 + .select(User::as_select()), &mut conn) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0282]: type annotations needed [INFO] [stdout] --> src/auth/handlers.rs:198:16 [INFO] [stdout] | [INFO] [stdout] 198 | let user = users::table [INFO] [stdout] | ________________^ [INFO] [stdout] 199 | | .find(id) [INFO] [stdout] 200 | | .select(User::as_select()) [INFO] [stdout] 201 | | .get_result(&mut conn) [INFO] [stdout] 202 | | .await [INFO] [stdout] | |______________^ cannot infer type [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0034]: multiple applicable items in scope [INFO] [stdout] --> src/auth/handlers.rs:239:10 [INFO] [stdout] | [INFO] [stdout] 239 | .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 `UpdateStatement` [INFO] [stdout] help: disambiguate the method for candidate #1 [INFO] [stdout] | [INFO] [stdout] 236 ~ let res = diesel_async::RunQueryDsl::get_result(diesel::update(users::table.find(&id)) [INFO] [stdout] 237 + .set(&updated_user) [INFO] [stdout] 238 + .returning(SafeUser::as_returning()), &mut conn) [INFO] [stdout] | [INFO] [stdout] help: disambiguate the method for candidate #2 [INFO] [stdout] | [INFO] [stdout] 236 ~ let res = diesel::RunQueryDsl::get_result(diesel::update(users::table.find(&id)) [INFO] [stdout] 237 + .set(&updated_user) [INFO] [stdout] 238 + .returning(SafeUser::as_returning()), &mut conn) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0282]: type annotations needed [INFO] [stdout] --> src/auth/handlers.rs:236:15 [INFO] [stdout] | [INFO] [stdout] 236 | let res = diesel::update(users::table.find(&id)) [INFO] [stdout] | _______________^ [INFO] [stdout] 237 | | .set(&updated_user) [INFO] [stdout] 238 | | .returning(SafeUser::as_returning()) [INFO] [stdout] 239 | | .get_result(&mut conn) [INFO] [stdout] 240 | | .await [INFO] [stdout] | |______________^ cannot infer type [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0034]: multiple applicable items in scope [INFO] [stdout] --> src/auth/handlers.rs:281:10 [INFO] [stdout] | [INFO] [stdout] 281 | .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` [INFO] [stdout] help: disambiguate the method for candidate #1 [INFO] [stdout] | [INFO] [stdout] 254 ~ let rows = diesel_async::RunQueryDsl::load(users::table [INFO] [stdout] 255 + // .inner_join(carts::table) [INFO] [stdout] 256 + // .inner_join(profiles::table) [INFO] [stdout] 257 + // .left_join(cart_products::table.on(carts::id.eq(cart_products::cart_id))) [INFO] [stdout] 258 + // .left_join(products::table.on(cart_products::product_id.eq(products::id))) [INFO] [stdout] 259 + // .select(( [INFO] [stdout] 260 + // SafeUser::as_select(), [INFO] [stdout] 261 + // Cart::as_select(), [INFO] [stdout] 262 + // Profile::as_select(), [INFO] [stdout] 263 + // sql::( [INFO] [stdout] 264 + // "COALESCE( [INFO] [stdout] 265 + // json_agg( [INFO] [stdout] 266 + // json_build_object( [INFO] [stdout] 267 + // 'id', products.id, [INFO] [stdout] 268 + // 'title', products.title, [INFO] [stdout] 269 + // 'price', products.price, [INFO] [stdout] 270 + // 'description', products.description, [INFO] [stdout] 271 + // 'image', products.image, [INFO] [stdout] 272 + // 'quantity', cart_products.quantity [INFO] [stdout] 273 + // ) [INFO] [stdout] 274 + // ) FILTER (WHERE products.id IS NOT NULL), [INFO] [stdout] 275 + // '[]' [INFO] [stdout] 276 + // )", [INFO] [stdout] 277 + // ), [INFO] [stdout] 278 + // )) [INFO] [stdout] 279 + // .load::<(SafeUser, Cart, Profile, serde_json::Value)>(&mut conn) [INFO] [stdout] 280 + .select(SafeUser::as_select()), &mut conn) [INFO] [stdout] | [INFO] [stdout] help: disambiguate the method for candidate #2 [INFO] [stdout] | [INFO] [stdout] 254 ~ let rows = diesel::RunQueryDsl::load(users::table [INFO] [stdout] 255 + // .inner_join(carts::table) [INFO] [stdout] 256 + // .inner_join(profiles::table) [INFO] [stdout] 257 + // .left_join(cart_products::table.on(carts::id.eq(cart_products::cart_id))) [INFO] [stdout] 258 + // .left_join(products::table.on(cart_products::product_id.eq(products::id))) [INFO] [stdout] 259 + // .select(( [INFO] [stdout] 260 + // SafeUser::as_select(), [INFO] [stdout] 261 + // Cart::as_select(), [INFO] [stdout] 262 + // Profile::as_select(), [INFO] [stdout] 263 + // sql::( [INFO] [stdout] 264 + // "COALESCE( [INFO] [stdout] 265 + // json_agg( [INFO] [stdout] 266 + // json_build_object( [INFO] [stdout] 267 + // 'id', products.id, [INFO] [stdout] 268 + // 'title', products.title, [INFO] [stdout] 269 + // 'price', products.price, [INFO] [stdout] 270 + // 'description', products.description, [INFO] [stdout] 271 + // 'image', products.image, [INFO] [stdout] 272 + // 'quantity', cart_products.quantity [INFO] [stdout] 273 + // ) [INFO] [stdout] 274 + // ) FILTER (WHERE products.id IS NOT NULL), [INFO] [stdout] 275 + // '[]' [INFO] [stdout] 276 + // )", [INFO] [stdout] 277 + // ), [INFO] [stdout] 278 + // )) [INFO] [stdout] 279 + // .load::<(SafeUser, Cart, Profile, serde_json::Value)>(&mut conn) [INFO] [stdout] 280 + .select(SafeUser::as_select()), &mut conn) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0282]: type annotations needed [INFO] [stdout] --> src/auth/handlers.rs:254:16 [INFO] [stdout] | [INFO] [stdout] 254 | let rows = users::table [INFO] [stdout] | ________________^ [INFO] [stdout] ... | [INFO] [stdout] 281 | | .load(&mut conn) [INFO] [stdout] 282 | | .await [INFO] [stdout] | |______________^ cannot infer type [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0034]: multiple applicable items in scope [INFO] [stdout] --> src/auth/handlers.rs:337:10 [INFO] [stdout] | [INFO] [stdout] 337 | .get_result::<(SafeUser, Cart, Profile)>(&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` [INFO] [stdout] help: disambiguate the method for candidate #1 [INFO] [stdout] | [INFO] [stdout] 328 ~ let (user, cart, profile) = diesel_async::RunQueryDsl::get_result(users::table [INFO] [stdout] 329 + .filter(users::id.eq(&user_id)) [INFO] [stdout] 330 + .inner_join(carts::table) [INFO] [stdout] 331 + .inner_join(profiles::table) [INFO] [stdout] 332 + .select(( [INFO] [stdout] 333 + SafeUser::as_select(), [INFO] [stdout] 334 + Cart::as_select(), [INFO] [stdout] 335 + Profile::as_select(), [INFO] [stdout] 336 + )), &mut conn) [INFO] [stdout] | [INFO] [stdout] help: disambiguate the method for candidate #2 [INFO] [stdout] | [INFO] [stdout] 328 ~ let (user, cart, profile) = diesel::RunQueryDsl::get_result(users::table [INFO] [stdout] 329 + .filter(users::id.eq(&user_id)) [INFO] [stdout] 330 + .inner_join(carts::table) [INFO] [stdout] 331 + .inner_join(profiles::table) [INFO] [stdout] 332 + .select(( [INFO] [stdout] 333 + SafeUser::as_select(), [INFO] [stdout] 334 + Cart::as_select(), [INFO] [stdout] 335 + Profile::as_select(), [INFO] [stdout] 336 + )), &mut conn) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0282]: type annotations needed [INFO] [stdout] --> src/auth/handlers.rs:328:33 [INFO] [stdout] | [INFO] [stdout] 328 | let (user, cart, profile) = users::table [INFO] [stdout] | _________________________________^ [INFO] [stdout] 329 | | .filter(users::id.eq(&user_id)) [INFO] [stdout] 330 | | .inner_join(carts::table) [INFO] [stdout] 331 | | .inner_join(profiles::table) [INFO] [stdout] ... | [INFO] [stdout] 337 | | .get_result::<(SafeUser, Cart, Profile)>(&mut conn) [INFO] [stdout] 338 | | .await [INFO] [stdout] | |______________^ cannot infer type [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0034]: multiple applicable items in scope [INFO] [stdout] --> src/auth/handlers.rs:66:22 [INFO] [stdout] | [INFO] [stdout] 66 | .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::RunQueryDsl` for the type `InsertStatement` [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] 63 ~ let user = diesel::RunQueryDsl::get_result(diesel::insert_into(users::table) [INFO] [stdout] 64 + .values(&user_data) [INFO] [stdout] 65 + .returning(SafeUser::as_returning()), &mut conn) [INFO] [stdout] | [INFO] [stdout] help: disambiguate the method for candidate #2 [INFO] [stdout] | [INFO] [stdout] 63 ~ let user = diesel_async::RunQueryDsl::get_result(diesel::insert_into(users::table) [INFO] [stdout] 64 + .values(&user_data) [INFO] [stdout] 65 + .returning(SafeUser::as_returning()), &mut conn) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0034]: multiple applicable items in scope [INFO] [stdout] --> src/auth/handlers.rs:97:22 [INFO] [stdout] | [INFO] [stdout] 97 | .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` [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] 95 ~ diesel::RunQueryDsl::execute(diesel::insert_into(carts::table) [INFO] [stdout] 96 + .values(&cart_data), &mut conn) [INFO] [stdout] | [INFO] [stdout] help: disambiguate the method for candidate #2 [INFO] [stdout] | [INFO] [stdout] 95 ~ diesel_async::RunQueryDsl::execute(diesel::insert_into(carts::table) [INFO] [stdout] 96 + .values(&cart_data), &mut conn) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0034]: multiple applicable items in scope [INFO] [stdout] --> src/auth/handlers.rs:102:22 [INFO] [stdout] | [INFO] [stdout] 102 | .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` [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] 100 ~ diesel::RunQueryDsl::execute(diesel::insert_into(user_subscriptions::table) [INFO] [stdout] 101 + .values(&subs_data), &mut conn) [INFO] [stdout] | [INFO] [stdout] help: disambiguate the method for candidate #2 [INFO] [stdout] | [INFO] [stdout] 100 ~ diesel_async::RunQueryDsl::execute(diesel::insert_into(user_subscriptions::table) [INFO] [stdout] 101 + .values(&subs_data), &mut conn) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0034]: multiple applicable items in scope [INFO] [stdout] --> src/auth/handlers.rs:107:22 [INFO] [stdout] | [INFO] [stdout] 107 | .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` [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] 105 ~ diesel::RunQueryDsl::execute(diesel::insert_into(profiles::table) [INFO] [stdout] 106 + .values(&profile_data), &mut conn) [INFO] [stdout] | [INFO] [stdout] help: disambiguate the method for candidate #2 [INFO] [stdout] | [INFO] [stdout] 105 ~ diesel_async::RunQueryDsl::execute(diesel::insert_into(profiles::table) [INFO] [stdout] 106 + .values(&profile_data), &mut conn) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0034]: multiple applicable items in scope [INFO] [stdout] --> src/auth/handlers.rs:141:10 [INFO] [stdout] | [INFO] [stdout] 141 | .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` [INFO] [stdout] help: disambiguate the method for candidate #1 [INFO] [stdout] | [INFO] [stdout] 138 ~ let res = diesel_async::RunQueryDsl::get_result(users::table [INFO] [stdout] 139 + .filter(users::id.eq(&id)) [INFO] [stdout] 140 + .select(SafeUser::as_select()), &mut conn) [INFO] [stdout] | [INFO] [stdout] help: disambiguate the method for candidate #2 [INFO] [stdout] | [INFO] [stdout] 138 ~ let res = diesel::RunQueryDsl::get_result(users::table [INFO] [stdout] 139 + .filter(users::id.eq(&id)) [INFO] [stdout] 140 + .select(SafeUser::as_select()), &mut conn) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0282]: type annotations needed [INFO] [stdout] --> src/auth/handlers.rs:138:15 [INFO] [stdout] | [INFO] [stdout] 138 | let res = users::table [INFO] [stdout] | _______________^ [INFO] [stdout] 139 | | .filter(users::id.eq(&id)) [INFO] [stdout] 140 | | .select(SafeUser::as_select()) [INFO] [stdout] 141 | | .get_result(&mut conn) [INFO] [stdout] 142 | | .await [INFO] [stdout] | |______________^ cannot infer type [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0034]: multiple applicable items in scope [INFO] [stdout] --> src/auth/handlers.rs:159:10 [INFO] [stdout] | [INFO] [stdout] 159 | .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` [INFO] [stdout] help: disambiguate the method for candidate #1 [INFO] [stdout] | [INFO] [stdout] 156 ~ let res = diesel_async::RunQueryDsl::get_result(users::table [INFO] [stdout] 157 + .filter(users::email.eq(&payload.email)) [INFO] [stdout] 158 + .select(SafeUser::as_select()), &mut conn) [INFO] [stdout] | [INFO] [stdout] help: disambiguate the method for candidate #2 [INFO] [stdout] | [INFO] [stdout] 156 ~ let res = diesel::RunQueryDsl::get_result(users::table [INFO] [stdout] 157 + .filter(users::email.eq(&payload.email)) [INFO] [stdout] 158 + .select(SafeUser::as_select()), &mut conn) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0282]: type annotations needed [INFO] [stdout] --> src/auth/handlers.rs:156:15 [INFO] [stdout] | [INFO] [stdout] 156 | let res = users::table [INFO] [stdout] | _______________^ [INFO] [stdout] 157 | | .filter(users::email.eq(&payload.email)) [INFO] [stdout] 158 | | .select(SafeUser::as_select()) [INFO] [stdout] 159 | | .get_result(&mut conn) [INFO] [stdout] 160 | | .await [INFO] [stdout] | |______________^ cannot infer type [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0034]: multiple applicable items in scope [INFO] [stdout] --> src/auth/handlers.rs:176:10 [INFO] [stdout] | [INFO] [stdout] 176 | .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 `DeleteStatement` [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] 175 - diesel::delete(carts::table.filter(carts::user_id.eq(&id))) [INFO] [stdout] 176 - .execute(&mut conn) [INFO] [stdout] 175 + diesel::RunQueryDsl::execute(diesel::delete(carts::table.filter(carts::user_id.eq(&id))), &mut conn) [INFO] [stdout] | [INFO] [stdout] help: disambiguate the method for candidate #2 [INFO] [stdout] | [INFO] [stdout] 175 - diesel::delete(carts::table.filter(carts::user_id.eq(&id))) [INFO] [stdout] 176 - .execute(&mut conn) [INFO] [stdout] 175 + diesel_async::RunQueryDsl::execute(diesel::delete(carts::table.filter(carts::user_id.eq(&id))), &mut conn) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0282]: type annotations needed [INFO] [stdout] --> src/auth/handlers.rs:175:5 [INFO] [stdout] | [INFO] [stdout] 175 | / diesel::delete(carts::table.filter(carts::user_id.eq(&id))) [INFO] [stdout] 176 | | .execute(&mut conn) [INFO] [stdout] 177 | | .await [INFO] [stdout] | |______________^ cannot infer type [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0034]: multiple applicable items in scope [INFO] [stdout] --> src/auth/handlers.rs:182:10 [INFO] [stdout] | [INFO] [stdout] 182 | .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::RunQueryDsl` for the type `DeleteStatement` [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] 180 ~ let res = diesel::RunQueryDsl::get_result(diesel::delete(users::table.find(&id)) [INFO] [stdout] 181 + .returning(SafeUser::as_returning()), &mut conn) [INFO] [stdout] | [INFO] [stdout] help: disambiguate the method for candidate #2 [INFO] [stdout] | [INFO] [stdout] 180 ~ let res = diesel_async::RunQueryDsl::get_result(diesel::delete(users::table.find(&id)) [INFO] [stdout] 181 + .returning(SafeUser::as_returning()), &mut conn) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0282]: type annotations needed [INFO] [stdout] --> src/auth/handlers.rs:180:15 [INFO] [stdout] | [INFO] [stdout] 180 | let res = diesel::delete(users::table.find(&id)) [INFO] [stdout] | _______________^ [INFO] [stdout] 181 | | .returning(SafeUser::as_returning()) [INFO] [stdout] 182 | | .get_result(&mut conn) [INFO] [stdout] 183 | | .await [INFO] [stdout] | |______________^ cannot infer type [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0034]: multiple applicable items in scope [INFO] [stdout] --> src/auth/handlers.rs:201:10 [INFO] [stdout] | [INFO] [stdout] 201 | .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` [INFO] [stdout] help: disambiguate the method for candidate #1 [INFO] [stdout] | [INFO] [stdout] 198 ~ let user = diesel_async::RunQueryDsl::get_result(users::table [INFO] [stdout] 199 + .find(id) [INFO] [stdout] 200 + .select(User::as_select()), &mut conn) [INFO] [stdout] | [INFO] [stdout] help: disambiguate the method for candidate #2 [INFO] [stdout] | [INFO] [stdout] 198 ~ let user = diesel::RunQueryDsl::get_result(users::table [INFO] [stdout] 199 + .find(id) [INFO] [stdout] 200 + .select(User::as_select()), &mut conn) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0282]: type annotations needed [INFO] [stdout] --> src/auth/handlers.rs:198:16 [INFO] [stdout] | [INFO] [stdout] 198 | let user = users::table [INFO] [stdout] | ________________^ [INFO] [stdout] 199 | | .find(id) [INFO] [stdout] 200 | | .select(User::as_select()) [INFO] [stdout] 201 | | .get_result(&mut conn) [INFO] [stdout] 202 | | .await [INFO] [stdout] | |______________^ cannot infer type [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0034]: multiple applicable items in scope [INFO] [stdout] --> src/auth/handlers.rs:239:10 [INFO] [stdout] | [INFO] [stdout] 239 | .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 `UpdateStatement` [INFO] [stdout] help: disambiguate the method for candidate #1 [INFO] [stdout] | [INFO] [stdout] 236 ~ let res = diesel_async::RunQueryDsl::get_result(diesel::update(users::table.find(&id)) [INFO] [stdout] 237 + .set(&updated_user) [INFO] [stdout] 238 + .returning(SafeUser::as_returning()), &mut conn) [INFO] [stdout] | [INFO] [stdout] help: disambiguate the method for candidate #2 [INFO] [stdout] | [INFO] [stdout] 236 ~ let res = diesel::RunQueryDsl::get_result(diesel::update(users::table.find(&id)) [INFO] [stdout] 237 + .set(&updated_user) [INFO] [stdout] 238 + .returning(SafeUser::as_returning()), &mut conn) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0282]: type annotations needed [INFO] [stdout] --> src/auth/handlers.rs:236:15 [INFO] [stdout] | [INFO] [stdout] 236 | let res = diesel::update(users::table.find(&id)) [INFO] [stdout] | _______________^ [INFO] [stdout] 237 | | .set(&updated_user) [INFO] [stdout] 238 | | .returning(SafeUser::as_returning()) [INFO] [stdout] 239 | | .get_result(&mut conn) [INFO] [stdout] 240 | | .await [INFO] [stdout] | |______________^ cannot infer type [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0034]: multiple applicable items in scope [INFO] [stdout] --> src/auth/handlers.rs:281:10 [INFO] [stdout] | [INFO] [stdout] 281 | .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` [INFO] [stdout] help: disambiguate the method for candidate #1 [INFO] [stdout] | [INFO] [stdout] 254 ~ let rows = diesel_async::RunQueryDsl::load(users::table [INFO] [stdout] 255 + // .inner_join(carts::table) [INFO] [stdout] 256 + // .inner_join(profiles::table) [INFO] [stdout] 257 + // .left_join(cart_products::table.on(carts::id.eq(cart_products::cart_id))) [INFO] [stdout] 258 + // .left_join(products::table.on(cart_products::product_id.eq(products::id))) [INFO] [stdout] 259 + // .select(( [INFO] [stdout] 260 + // SafeUser::as_select(), [INFO] [stdout] 261 + // Cart::as_select(), [INFO] [stdout] 262 + // Profile::as_select(), [INFO] [stdout] 263 + // sql::( [INFO] [stdout] 264 + // "COALESCE( [INFO] [stdout] 265 + // json_agg( [INFO] [stdout] 266 + // json_build_object( [INFO] [stdout] 267 + // 'id', products.id, [INFO] [stdout] 268 + // 'title', products.title, [INFO] [stdout] 269 + // 'price', products.price, [INFO] [stdout] 270 + // 'description', products.description, [INFO] [stdout] 271 + // 'image', products.image, [INFO] [stdout] 272 + // 'quantity', cart_products.quantity [INFO] [stdout] 273 + // ) [INFO] [stdout] 274 + // ) FILTER (WHERE products.id IS NOT NULL), [INFO] [stdout] 275 + // '[]' [INFO] [stdout] 276 + // )", [INFO] [stdout] 277 + // ), [INFO] [stdout] 278 + // )) [INFO] [stdout] 279 + // .load::<(SafeUser, Cart, Profile, serde_json::Value)>(&mut conn) [INFO] [stdout] 280 + .select(SafeUser::as_select()), &mut conn) [INFO] [stdout] | [INFO] [stdout] help: disambiguate the method for candidate #2 [INFO] [stdout] | [INFO] [stdout] 254 ~ let rows = diesel::RunQueryDsl::load(users::table [INFO] [stdout] 255 + // .inner_join(carts::table) [INFO] [stdout] 256 + // .inner_join(profiles::table) [INFO] [stdout] 257 + // .left_join(cart_products::table.on(carts::id.eq(cart_products::cart_id))) [INFO] [stdout] 258 + // .left_join(products::table.on(cart_products::product_id.eq(products::id))) [INFO] [stdout] 259 + // .select(( [INFO] [stdout] 260 + // SafeUser::as_select(), [INFO] [stdout] 261 + // Cart::as_select(), [INFO] [stdout] 262 + // Profile::as_select(), [INFO] [stdout] 263 + // sql::( [INFO] [stdout] 264 + // "COALESCE( [INFO] [stdout] 265 + // json_agg( [INFO] [stdout] 266 + // json_build_object( [INFO] [stdout] 267 + // 'id', products.id, [INFO] [stdout] 268 + // 'title', products.title, [INFO] [stdout] 269 + // 'price', products.price, [INFO] [stdout] 270 + // 'description', products.description, [INFO] [stdout] 271 + // 'image', products.image, [INFO] [stdout] 272 + // 'quantity', cart_products.quantity [INFO] [stdout] 273 + // ) [INFO] [stdout] 274 + // ) FILTER (WHERE products.id IS NOT NULL), [INFO] [stdout] 275 + // '[]' [INFO] [stdout] 276 + // )", [INFO] [stdout] 277 + // ), [INFO] [stdout] 278 + // )) [INFO] [stdout] 279 + // .load::<(SafeUser, Cart, Profile, serde_json::Value)>(&mut conn) [INFO] [stdout] 280 + .select(SafeUser::as_select()), &mut conn) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0282]: type annotations needed [INFO] [stdout] --> src/auth/handlers.rs:254:16 [INFO] [stdout] | [INFO] [stdout] 254 | let rows = users::table [INFO] [stdout] | ________________^ [INFO] [stdout] ... | [INFO] [stdout] 281 | | .load(&mut conn) [INFO] [stdout] 282 | | .await [INFO] [stdout] | |______________^ cannot infer type [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0282]: type annotations needed [INFO] [stdout] --> src/auth/handlers.rs:341:25 [INFO] [stdout] | [INFO] [stdout] 341 | let products_json = cart_products::table [INFO] [stdout] | _________________________^ [INFO] [stdout] 342 | | .inner_join(products::table.on(cart_products::product_id.eq(products::id))) [INFO] [stdout] 343 | | .filter(cart_products::cart_id.eq(&cart.id)) [INFO] [stdout] 344 | | .select(sql::( [INFO] [stdout] ... | [INFO] [stdout] 354 | | .load::(&mut conn) [INFO] [stdout] 355 | | .await [INFO] [stdout] | |______________^ cannot infer type [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0034]: multiple applicable items in scope [INFO] [stdout] --> src/auth/handlers.rs:362:10 [INFO] [stdout] | [INFO] [stdout] 362 | .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` [INFO] [stdout] help: disambiguate the method for candidate #1 [INFO] [stdout] | [INFO] [stdout] 358 ~ let address = diesel_async::RunQueryDsl::load(addresses::table [INFO] [stdout] 359 + .filter(addresses::user_id.eq(&user_id)) [INFO] [stdout] 360 + .select(Address::as_select()) [INFO] [stdout] 361 + .order_by(addresses::is_default.desc()), &mut conn) [INFO] [stdout] | [INFO] [stdout] help: disambiguate the method for candidate #2 [INFO] [stdout] | [INFO] [stdout] 358 ~ let address = diesel::RunQueryDsl::load(addresses::table [INFO] [stdout] 359 + .filter(addresses::user_id.eq(&user_id)) [INFO] [stdout] 360 + .select(Address::as_select()) [INFO] [stdout] 361 + .order_by(addresses::is_default.desc()), &mut conn) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0282]: type annotations needed [INFO] [stdout] --> src/auth/handlers.rs:358:19 [INFO] [stdout] | [INFO] [stdout] 358 | let address = addresses::table [INFO] [stdout] | ___________________^ [INFO] [stdout] 359 | | .filter(addresses::user_id.eq(&user_id)) [INFO] [stdout] 360 | | .select(Address::as_select()) [INFO] [stdout] 361 | | .order_by(addresses::is_default.desc()) [INFO] [stdout] 362 | | .load(&mut conn) [INFO] [stdout] 363 | | .await [INFO] [stdout] | |______________^ cannot infer type [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0034]: multiple applicable items in scope [INFO] [stdout] --> src/auth/handlers.rs:393:10 [INFO] [stdout] | [INFO] [stdout] 393 | .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` [INFO] [stdout] help: disambiguate the method for candidate #1 [INFO] [stdout] | [INFO] [stdout] 391 ~ let user = diesel_async::RunQueryDsl::first(users::table [INFO] [stdout] 392 + .filter(users::email.eq(payload.email)), &mut conn) [INFO] [stdout] | [INFO] [stdout] help: disambiguate the method for candidate #2 [INFO] [stdout] | [INFO] [stdout] 391 ~ let user = diesel::RunQueryDsl::first(users::table [INFO] [stdout] 392 + .filter(users::email.eq(payload.email)), &mut conn) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0282]: type annotations needed [INFO] [stdout] --> src/auth/handlers.rs:391:16 [INFO] [stdout] | [INFO] [stdout] 391 | let user = users::table [INFO] [stdout] | ________________^ [INFO] [stdout] 392 | | .filter(users::email.eq(payload.email)) [INFO] [stdout] 393 | | .first::(&mut conn) [INFO] [stdout] 394 | | .await [INFO] [stdout] | |______________^ cannot infer type [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0034]: multiple applicable items in scope [INFO] [stdout] --> src/auth/handlers.rs:337:10 [INFO] [stdout] | [INFO] [stdout] 337 | .get_result::<(SafeUser, Cart, Profile)>(&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` [INFO] [stdout] help: disambiguate the method for candidate #1 [INFO] [stdout] | [INFO] [stdout] 328 ~ let (user, cart, profile) = diesel_async::RunQueryDsl::get_result(users::table [INFO] [stdout] 329 + .filter(users::id.eq(&user_id)) [INFO] [stdout] 330 + .inner_join(carts::table) [INFO] [stdout] 331 + .inner_join(profiles::table) [INFO] [stdout] 332 + .select(( [INFO] [stdout] 333 + SafeUser::as_select(), [INFO] [stdout] 334 + Cart::as_select(), [INFO] [stdout] 335 + Profile::as_select(), [INFO] [stdout] 336 + )), &mut conn) [INFO] [stdout] | [INFO] [stdout] help: disambiguate the method for candidate #2 [INFO] [stdout] | [INFO] [stdout] 328 ~ let (user, cart, profile) = diesel::RunQueryDsl::get_result(users::table [INFO] [stdout] 329 + .filter(users::id.eq(&user_id)) [INFO] [stdout] 330 + .inner_join(carts::table) [INFO] [stdout] 331 + .inner_join(profiles::table) [INFO] [stdout] 332 + .select(( [INFO] [stdout] 333 + SafeUser::as_select(), [INFO] [stdout] 334 + Cart::as_select(), [INFO] [stdout] 335 + Profile::as_select(), [INFO] [stdout] 336 + )), &mut conn) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0282]: type annotations needed [INFO] [stdout] --> src/auth/handlers.rs:328:33 [INFO] [stdout] | [INFO] [stdout] 328 | let (user, cart, profile) = users::table [INFO] [stdout] | _________________________________^ [INFO] [stdout] 329 | | .filter(users::id.eq(&user_id)) [INFO] [stdout] 330 | | .inner_join(carts::table) [INFO] [stdout] 331 | | .inner_join(profiles::table) [INFO] [stdout] ... | [INFO] [stdout] 337 | | .get_result::<(SafeUser, Cart, Profile)>(&mut conn) [INFO] [stdout] 338 | | .await [INFO] [stdout] | |______________^ cannot infer type [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0282]: type annotations needed [INFO] [stdout] --> src/auth/handlers.rs:412:5 [INFO] [stdout] | [INFO] [stdout] 412 | / diesel::update(users::table.filter(users::id.eq(user.id))) [INFO] [stdout] 413 | | .set(users::hashed_rt.eq(&refresh_token_hash)) [INFO] [stdout] 414 | | .execute(&mut conn) [INFO] [stdout] 415 | | .await [INFO] [stdout] | |______________^ cannot infer type [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0034]: multiple applicable items in scope [INFO] [stdout] --> src/auth/handlers.rs:444:10 [INFO] [stdout] | [INFO] [stdout] 444 | .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` [INFO] [stdout] help: disambiguate the method for candidate #1 [INFO] [stdout] | [INFO] [stdout] 441 ~ let user = diesel_async::RunQueryDsl::get_result(users::table [INFO] [stdout] 442 + .find(&id) [INFO] [stdout] 443 + .select(User::as_select()), &mut conn) [INFO] [stdout] | [INFO] [stdout] help: disambiguate the method for candidate #2 [INFO] [stdout] | [INFO] [stdout] 441 ~ let user = diesel::RunQueryDsl::get_result(users::table [INFO] [stdout] 442 + .find(&id) [INFO] [stdout] 443 + .select(User::as_select()), &mut conn) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0282]: type annotations needed [INFO] [stdout] --> src/auth/handlers.rs:441:16 [INFO] [stdout] | [INFO] [stdout] 441 | let user = users::table [INFO] [stdout] | ________________^ [INFO] [stdout] 442 | | .find(&id) [INFO] [stdout] 443 | | .select(User::as_select()) [INFO] [stdout] 444 | | .get_result(&mut conn) [INFO] [stdout] 445 | | .await [INFO] [stdout] | |______________^ cannot infer type [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0282]: type annotations needed [INFO] [stdout] --> src/auth/handlers.rs:449:41 [INFO] [stdout] | [INFO] [stdout] 449 | validate_hash(token.to_owned(), hash.to_owned()).await?; [INFO] [stdout] | ^^^^ cannot infer type [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0282]: type annotations needed [INFO] [stdout] --> src/auth/handlers.rs:468:5 [INFO] [stdout] | [INFO] [stdout] 468 | / diesel::update(users::table.filter(users::id.eq(user.id))) [INFO] [stdout] 469 | | .set(users::hashed_rt.eq(&refresh_token_hash)) [INFO] [stdout] 470 | | .execute(&mut conn) [INFO] [stdout] 471 | | .await [INFO] [stdout] | |______________^ cannot infer type [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0282]: type annotations needed [INFO] [stdout] --> src/auth/handlers.rs:341:25 [INFO] [stdout] | [INFO] [stdout] 341 | let products_json = cart_products::table [INFO] [stdout] | _________________________^ [INFO] [stdout] 342 | | .inner_join(products::table.on(cart_products::product_id.eq(products::id))) [INFO] [stdout] 343 | | .filter(cart_products::cart_id.eq(&cart.id)) [INFO] [stdout] 344 | | .select(sql::( [INFO] [stdout] ... | [INFO] [stdout] 354 | | .load::(&mut conn) [INFO] [stdout] 355 | | .await [INFO] [stdout] | |______________^ cannot infer type [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0034]: multiple applicable items in scope [INFO] [stdout] --> src/auth/handlers.rs:362:10 [INFO] [stdout] | [INFO] [stdout] 362 | .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` [INFO] [stdout] help: disambiguate the method for candidate #1 [INFO] [stdout] | [INFO] [stdout] 358 ~ let address = diesel_async::RunQueryDsl::load(addresses::table [INFO] [stdout] 359 + .filter(addresses::user_id.eq(&user_id)) [INFO] [stdout] 360 + .select(Address::as_select()) [INFO] [stdout] 361 + .order_by(addresses::is_default.desc()), &mut conn) [INFO] [stdout] | [INFO] [stdout] help: disambiguate the method for candidate #2 [INFO] [stdout] | [INFO] [stdout] 358 ~ let address = diesel::RunQueryDsl::load(addresses::table [INFO] [stdout] 359 + .filter(addresses::user_id.eq(&user_id)) [INFO] [stdout] 360 + .select(Address::as_select()) [INFO] [stdout] 361 + .order_by(addresses::is_default.desc()), &mut conn) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0282]: type annotations needed [INFO] [stdout] --> src/auth/handlers.rs:358:19 [INFO] [stdout] | [INFO] [stdout] 358 | let address = addresses::table [INFO] [stdout] | ___________________^ [INFO] [stdout] 359 | | .filter(addresses::user_id.eq(&user_id)) [INFO] [stdout] 360 | | .select(Address::as_select()) [INFO] [stdout] 361 | | .order_by(addresses::is_default.desc()) [INFO] [stdout] 362 | | .load(&mut conn) [INFO] [stdout] 363 | | .await [INFO] [stdout] | |______________^ cannot infer type [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0034]: multiple applicable items in scope [INFO] [stdout] --> src/auth/handlers.rs:393:10 [INFO] [stdout] | [INFO] [stdout] 393 | .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` [INFO] [stdout] help: disambiguate the method for candidate #1 [INFO] [stdout] | [INFO] [stdout] 391 ~ let user = diesel_async::RunQueryDsl::first(users::table [INFO] [stdout] 392 + .filter(users::email.eq(payload.email)), &mut conn) [INFO] [stdout] | [INFO] [stdout] help: disambiguate the method for candidate #2 [INFO] [stdout] | [INFO] [stdout] 391 ~ let user = diesel::RunQueryDsl::first(users::table [INFO] [stdout] 392 + .filter(users::email.eq(payload.email)), &mut conn) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0282]: type annotations needed [INFO] [stdout] --> src/auth/handlers.rs:391:16 [INFO] [stdout] | [INFO] [stdout] 391 | let user = users::table [INFO] [stdout] | ________________^ [INFO] [stdout] 392 | | .filter(users::email.eq(payload.email)) [INFO] [stdout] 393 | | .first::(&mut conn) [INFO] [stdout] 394 | | .await [INFO] [stdout] | |______________^ cannot infer type [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0034]: multiple applicable items in scope [INFO] [stdout] --> src/auth/handlers.rs:605:10 [INFO] [stdout] | [INFO] [stdout] 605 | .execute(&mut conn) [INFO] [stdout] | ^^^^^^^ multiple `execute` 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 `UpdateStatement` [INFO] [stdout] help: disambiguate the method for candidate #1 [INFO] [stdout] | [INFO] [stdout] 603 ~ diesel_async::RunQueryDsl::execute(diesel::update(users::table.filter(users::id.eq(id).and(users::hashed_rt.is_not_null()))) [INFO] [stdout] 604 + .set(users::hashed_rt.eq(None::)), &mut conn) [INFO] [stdout] | [INFO] [stdout] help: disambiguate the method for candidate #2 [INFO] [stdout] | [INFO] [stdout] 603 ~ diesel::RunQueryDsl::execute(diesel::update(users::table.filter(users::id.eq(id).and(users::hashed_rt.is_not_null()))) [INFO] [stdout] 604 + .set(users::hashed_rt.eq(None::)), &mut conn) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0282]: type annotations needed [INFO] [stdout] --> src/auth/handlers.rs:603:5 [INFO] [stdout] | [INFO] [stdout] 603 | / diesel::update(users::table.filter(users::id.eq(id).and(users::hashed_rt.is_not_null()))) [INFO] [stdout] 604 | | .set(users::hashed_rt.eq(None::)) [INFO] [stdout] 605 | | .execute(&mut conn) [INFO] [stdout] 606 | | .await [INFO] [stdout] | |______________^ cannot infer type [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0282]: type annotations needed [INFO] [stdout] --> src/auth/handlers.rs:412:5 [INFO] [stdout] | [INFO] [stdout] 412 | / diesel::update(users::table.filter(users::id.eq(user.id))) [INFO] [stdout] 413 | | .set(users::hashed_rt.eq(&refresh_token_hash)) [INFO] [stdout] 414 | | .execute(&mut conn) [INFO] [stdout] 415 | | .await [INFO] [stdout] | |______________^ cannot infer type [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0034]: multiple applicable items in scope [INFO] [stdout] --> src/auth/handlers.rs:444:10 [INFO] [stdout] | [INFO] [stdout] 444 | .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` [INFO] [stdout] help: disambiguate the method for candidate #1 [INFO] [stdout] | [INFO] [stdout] 441 ~ let user = diesel_async::RunQueryDsl::get_result(users::table [INFO] [stdout] 442 + .find(&id) [INFO] [stdout] 443 + .select(User::as_select()), &mut conn) [INFO] [stdout] | [INFO] [stdout] help: disambiguate the method for candidate #2 [INFO] [stdout] | [INFO] [stdout] 441 ~ let user = diesel::RunQueryDsl::get_result(users::table [INFO] [stdout] 442 + .find(&id) [INFO] [stdout] 443 + .select(User::as_select()), &mut conn) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0282]: type annotations needed [INFO] [stdout] --> src/auth/handlers.rs:441:16 [INFO] [stdout] | [INFO] [stdout] 441 | let user = users::table [INFO] [stdout] | ________________^ [INFO] [stdout] 442 | | .find(&id) [INFO] [stdout] 443 | | .select(User::as_select()) [INFO] [stdout] 444 | | .get_result(&mut conn) [INFO] [stdout] 445 | | .await [INFO] [stdout] | |______________^ cannot infer type [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0282]: type annotations needed [INFO] [stdout] --> src/auth/handlers.rs:449:41 [INFO] [stdout] | [INFO] [stdout] 449 | validate_hash(token.to_owned(), hash.to_owned()).await?; [INFO] [stdout] | ^^^^ cannot infer type [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0034]: multiple applicable items in scope [INFO] [stdout] --> src/cart/handlers.rs:45:10 [INFO] [stdout] | [INFO] [stdout] 45 | .load::<(Cart, serde_json::Value)>(&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` [INFO] [stdout] help: disambiguate the method for candidate #1 [INFO] [stdout] | [INFO] [stdout] 23 ~ let rows = diesel_async::RunQueryDsl::load(carts::table [INFO] [stdout] 24 + .left_join(cart_products::table.on(carts::id.eq(cart_products::cart_id))) [INFO] [stdout] 25 + .left_join(products::table.on(cart_products::product_id.eq(products::id))) [INFO] [stdout] 26 + .select(( [INFO] [stdout] 27 + Cart::as_select(), [INFO] [stdout] 28 + sql::( [INFO] [stdout] 29 + "COALESCE( [INFO] [stdout] 30 + json_agg( [INFO] [stdout] 31 + json_build_object( [INFO] [stdout] 32 + 'id', products.id, [INFO] [stdout] 33 + 'title', products.title, [INFO] [stdout] 34 + 'price', products.price, [INFO] [stdout] 35 + 'description', products.description, [INFO] [stdout] 36 + 'image', products.image, [INFO] [stdout] 37 + 'quantity', cart_products.quantity [INFO] [stdout] 38 + ) [INFO] [stdout] 39 + ) FILTER (WHERE products.id IS NOT NULL), [INFO] [stdout] 40 + '[]' [INFO] [stdout] 41 + )", [INFO] [stdout] 42 + ), [INFO] [stdout] 43 + )) [INFO] [stdout] 44 + .group_by(carts::id), &mut conn) [INFO] [stdout] | [INFO] [stdout] help: disambiguate the method for candidate #2 [INFO] [stdout] | [INFO] [stdout] 23 ~ let rows = diesel::RunQueryDsl::load(carts::table [INFO] [stdout] 24 + .left_join(cart_products::table.on(carts::id.eq(cart_products::cart_id))) [INFO] [stdout] 25 + .left_join(products::table.on(cart_products::product_id.eq(products::id))) [INFO] [stdout] 26 + .select(( [INFO] [stdout] 27 + Cart::as_select(), [INFO] [stdout] 28 + sql::( [INFO] [stdout] 29 + "COALESCE( [INFO] [stdout] 30 + json_agg( [INFO] [stdout] 31 + json_build_object( [INFO] [stdout] 32 + 'id', products.id, [INFO] [stdout] 33 + 'title', products.title, [INFO] [stdout] 34 + 'price', products.price, [INFO] [stdout] 35 + 'description', products.description, [INFO] [stdout] 36 + 'image', products.image, [INFO] [stdout] 37 + 'quantity', cart_products.quantity [INFO] [stdout] 38 + ) [INFO] [stdout] 39 + ) FILTER (WHERE products.id IS NOT NULL), [INFO] [stdout] 40 + '[]' [INFO] [stdout] 41 + )", [INFO] [stdout] 42 + ), [INFO] [stdout] 43 + )) [INFO] [stdout] 44 + .group_by(carts::id), &mut conn) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0282]: type annotations needed [INFO] [stdout] --> src/cart/handlers.rs:23:16 [INFO] [stdout] | [INFO] [stdout] 23 | let rows = carts::table [INFO] [stdout] | ________________^ [INFO] [stdout] 24 | | .left_join(cart_products::table.on(carts::id.eq(cart_products::cart_id))) [INFO] [stdout] 25 | | .left_join(products::table.on(cart_products::product_id.eq(products::id))) [INFO] [stdout] 26 | | .select(( [INFO] [stdout] ... | [INFO] [stdout] 45 | | .load::<(Cart, serde_json::Value)>(&mut conn) [INFO] [stdout] 46 | | .await [INFO] [stdout] | |______________^ cannot infer type [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0034]: multiple applicable items in scope [INFO] [stdout] --> src/cart/handlers.rs:77:22 [INFO] [stdout] | [INFO] [stdout] 77 | .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` [INFO] [stdout] help: disambiguate the method for candidate #1 [INFO] [stdout] | [INFO] [stdout] 74 ~ let cart = diesel_async::RunQueryDsl::get_result(carts::table [INFO] [stdout] 75 + .filter(carts::user_id.eq(&user_id)) [INFO] [stdout] 76 + .select(Cart::as_select()), &mut conn) [INFO] [stdout] | [INFO] [stdout] help: disambiguate the method for candidate #2 [INFO] [stdout] | [INFO] [stdout] 74 ~ let cart = diesel::RunQueryDsl::get_result(carts::table [INFO] [stdout] 75 + .filter(carts::user_id.eq(&user_id)) [INFO] [stdout] 76 + .select(Cart::as_select()), &mut conn) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0282]: type annotations needed [INFO] [stdout] --> src/auth/handlers.rs:468:5 [INFO] [stdout] | [INFO] [stdout] 468 | / diesel::update(users::table.filter(users::id.eq(user.id))) [INFO] [stdout] 469 | | .set(users::hashed_rt.eq(&refresh_token_hash)) [INFO] [stdout] 470 | | .execute(&mut conn) [INFO] [stdout] 471 | | .await [INFO] [stdout] | |______________^ cannot infer type [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0034]: multiple applicable items in scope [INFO] [stdout] --> src/auth/handlers.rs:605:10 [INFO] [stdout] | [INFO] [stdout] 605 | .execute(&mut conn) [INFO] [stdout] | ^^^^^^^ multiple `execute` 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 `UpdateStatement` [INFO] [stdout] help: disambiguate the method for candidate #1 [INFO] [stdout] | [INFO] [stdout] 603 ~ diesel_async::RunQueryDsl::execute(diesel::update(users::table.filter(users::id.eq(id).and(users::hashed_rt.is_not_null()))) [INFO] [stdout] 604 + .set(users::hashed_rt.eq(None::)), &mut conn) [INFO] [stdout] | [INFO] [stdout] help: disambiguate the method for candidate #2 [INFO] [stdout] | [INFO] [stdout] 603 ~ diesel::RunQueryDsl::execute(diesel::update(users::table.filter(users::id.eq(id).and(users::hashed_rt.is_not_null()))) [INFO] [stdout] 604 + .set(users::hashed_rt.eq(None::)), &mut conn) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0282]: type annotations needed [INFO] [stdout] --> src/auth/handlers.rs:603:5 [INFO] [stdout] | [INFO] [stdout] 603 | / diesel::update(users::table.filter(users::id.eq(id).and(users::hashed_rt.is_not_null()))) [INFO] [stdout] 604 | | .set(users::hashed_rt.eq(None::)) [INFO] [stdout] 605 | | .execute(&mut conn) [INFO] [stdout] 606 | | .await [INFO] [stdout] | |______________^ cannot infer type [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0282]: type annotations needed [INFO] [stdout] --> src/cart/handlers.rs:82:21 [INFO] [stdout] | [INFO] [stdout] 82 | let prods = cart_products::table [INFO] [stdout] | ^^^^^ [INFO] [stdout] ... [INFO] [stdout] 92 | for prod in prods.iter() { [INFO] [stdout] | ----- type must be known at this point [INFO] [stdout] | [INFO] [stdout] help: consider giving `prods` an explicit type [INFO] [stdout] | [INFO] [stdout] 82 | let prods: /* Type */ = cart_products::table [INFO] [stdout] | ++++++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0034]: multiple applicable items in scope [INFO] [stdout] --> src/cart/handlers.rs:106:30 [INFO] [stdout] | [INFO] [stdout] 106 | ... .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` [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] 104 ~ diesel::RunQueryDsl::execute(diesel::insert_into(cart_products::table) [INFO] [stdout] 105 + .values(&product), &mut conn) [INFO] [stdout] | [INFO] [stdout] help: disambiguate the method for candidate #2 [INFO] [stdout] | [INFO] [stdout] 104 ~ diesel_async::RunQueryDsl::execute(diesel::insert_into(cart_products::table) [INFO] [stdout] 105 + .values(&product), &mut conn) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0034]: multiple applicable items in scope [INFO] [stdout] --> src/cart/handlers.rs:45:10 [INFO] [stdout] | [INFO] [stdout] 45 | .load::<(Cart, serde_json::Value)>(&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` [INFO] [stdout] help: disambiguate the method for candidate #1 [INFO] [stdout] | [INFO] [stdout] 23 ~ let rows = diesel_async::RunQueryDsl::load(carts::table [INFO] [stdout] 24 + .left_join(cart_products::table.on(carts::id.eq(cart_products::cart_id))) [INFO] [stdout] 25 + .left_join(products::table.on(cart_products::product_id.eq(products::id))) [INFO] [stdout] 26 + .select(( [INFO] [stdout] 27 + Cart::as_select(), [INFO] [stdout] 28 + sql::( [INFO] [stdout] 29 + "COALESCE( [INFO] [stdout] 30 + json_agg( [INFO] [stdout] 31 + json_build_object( [INFO] [stdout] 32 + 'id', products.id, [INFO] [stdout] 33 + 'title', products.title, [INFO] [stdout] 34 + 'price', products.price, [INFO] [stdout] 35 + 'description', products.description, [INFO] [stdout] 36 + 'image', products.image, [INFO] [stdout] 37 + 'quantity', cart_products.quantity [INFO] [stdout] 38 + ) [INFO] [stdout] 39 + ) FILTER (WHERE products.id IS NOT NULL), [INFO] [stdout] 40 + '[]' [INFO] [stdout] 41 + )", [INFO] [stdout] 42 + ), [INFO] [stdout] 43 + )) [INFO] [stdout] 44 + .group_by(carts::id), &mut conn) [INFO] [stdout] | [INFO] [stdout] help: disambiguate the method for candidate #2 [INFO] [stdout] | [INFO] [stdout] 23 ~ let rows = diesel::RunQueryDsl::load(carts::table [INFO] [stdout] 24 + .left_join(cart_products::table.on(carts::id.eq(cart_products::cart_id))) [INFO] [stdout] 25 + .left_join(products::table.on(cart_products::product_id.eq(products::id))) [INFO] [stdout] 26 + .select(( [INFO] [stdout] 27 + Cart::as_select(), [INFO] [stdout] 28 + sql::( [INFO] [stdout] 29 + "COALESCE( [INFO] [stdout] 30 + json_agg( [INFO] [stdout] 31 + json_build_object( [INFO] [stdout] 32 + 'id', products.id, [INFO] [stdout] 33 + 'title', products.title, [INFO] [stdout] 34 + 'price', products.price, [INFO] [stdout] 35 + 'description', products.description, [INFO] [stdout] 36 + 'image', products.image, [INFO] [stdout] 37 + 'quantity', cart_products.quantity [INFO] [stdout] 38 + ) [INFO] [stdout] 39 + ) FILTER (WHERE products.id IS NOT NULL), [INFO] [stdout] 40 + '[]' [INFO] [stdout] 41 + )", [INFO] [stdout] 42 + ), [INFO] [stdout] 43 + )) [INFO] [stdout] 44 + .group_by(carts::id), &mut conn) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0282]: type annotations needed [INFO] [stdout] --> src/cart/handlers.rs:23:16 [INFO] [stdout] | [INFO] [stdout] 23 | let rows = carts::table [INFO] [stdout] | ________________^ [INFO] [stdout] 24 | | .left_join(cart_products::table.on(carts::id.eq(cart_products::cart_id))) [INFO] [stdout] 25 | | .left_join(products::table.on(cart_products::product_id.eq(products::id))) [INFO] [stdout] 26 | | .select(( [INFO] [stdout] ... | [INFO] [stdout] 45 | | .load::<(Cart, serde_json::Value)>(&mut conn) [INFO] [stdout] 46 | | .await [INFO] [stdout] | |______________^ cannot infer type [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0034]: multiple applicable items in scope [INFO] [stdout] --> src/cart/handlers.rs:77:22 [INFO] [stdout] | [INFO] [stdout] 77 | .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` [INFO] [stdout] help: disambiguate the method for candidate #1 [INFO] [stdout] | [INFO] [stdout] 74 ~ let cart = diesel_async::RunQueryDsl::get_result(carts::table [INFO] [stdout] 75 + .filter(carts::user_id.eq(&user_id)) [INFO] [stdout] 76 + .select(Cart::as_select()), &mut conn) [INFO] [stdout] | [INFO] [stdout] help: disambiguate the method for candidate #2 [INFO] [stdout] | [INFO] [stdout] 74 ~ let cart = diesel::RunQueryDsl::get_result(carts::table [INFO] [stdout] 75 + .filter(carts::user_id.eq(&user_id)) [INFO] [stdout] 76 + .select(Cart::as_select()), &mut conn) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0034]: multiple applicable items in scope [INFO] [stdout] --> src/cart/handlers.rs:168:22 [INFO] [stdout] | [INFO] [stdout] 168 | .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` [INFO] [stdout] help: disambiguate the method for candidate #1 [INFO] [stdout] | [INFO] [stdout] 165 ~ let cart = diesel_async::RunQueryDsl::get_result(carts::table [INFO] [stdout] 166 + .filter(carts::user_id.eq(&user_id)) [INFO] [stdout] 167 + .select(Cart::as_select()), &mut conn) [INFO] [stdout] | [INFO] [stdout] help: disambiguate the method for candidate #2 [INFO] [stdout] | [INFO] [stdout] 165 ~ let cart = diesel::RunQueryDsl::get_result(carts::table [INFO] [stdout] 166 + .filter(carts::user_id.eq(&user_id)) [INFO] [stdout] 167 + .select(Cart::as_select()), &mut conn) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0282]: type annotations needed [INFO] [stdout] --> src/cart/handlers.rs:82:21 [INFO] [stdout] | [INFO] [stdout] 82 | let prods = cart_products::table [INFO] [stdout] | ^^^^^ [INFO] [stdout] ... [INFO] [stdout] 92 | for prod in prods.iter() { [INFO] [stdout] | ----- type must be known at this point [INFO] [stdout] | [INFO] [stdout] help: consider giving `prods` an explicit type [INFO] [stdout] | [INFO] [stdout] 82 | let prods: /* Type */ = cart_products::table [INFO] [stdout] | ++++++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0034]: multiple applicable items in scope [INFO] [stdout] --> src/cart/handlers.rs:106:30 [INFO] [stdout] | [INFO] [stdout] 106 | ... .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` [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] 104 ~ diesel::RunQueryDsl::execute(diesel::insert_into(cart_products::table) [INFO] [stdout] 105 + .values(&product), &mut conn) [INFO] [stdout] | [INFO] [stdout] help: disambiguate the method for candidate #2 [INFO] [stdout] | [INFO] [stdout] 104 ~ diesel_async::RunQueryDsl::execute(diesel::insert_into(cart_products::table) [INFO] [stdout] 105 + .values(&product), &mut conn) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0282]: type annotations needed [INFO] [stdout] --> src/cart/handlers.rs:173:21 [INFO] [stdout] | [INFO] [stdout] 173 | let prods = cart_products::table [INFO] [stdout] | ^^^^^ [INFO] [stdout] ... [INFO] [stdout] 183 | for prod in prods.iter() { [INFO] [stdout] | ----- type must be known at this point [INFO] [stdout] | [INFO] [stdout] help: consider giving `prods` an explicit type [INFO] [stdout] | [INFO] [stdout] 173 | let prods: /* Type */ = cart_products::table [INFO] [stdout] | ++++++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0034]: multiple applicable items in scope [INFO] [stdout] --> src/cart/handlers.rs:168:22 [INFO] [stdout] | [INFO] [stdout] 168 | .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` [INFO] [stdout] help: disambiguate the method for candidate #1 [INFO] [stdout] | [INFO] [stdout] 165 ~ let cart = diesel_async::RunQueryDsl::get_result(carts::table [INFO] [stdout] 166 + .filter(carts::user_id.eq(&user_id)) [INFO] [stdout] 167 + .select(Cart::as_select()), &mut conn) [INFO] [stdout] | [INFO] [stdout] help: disambiguate the method for candidate #2 [INFO] [stdout] | [INFO] [stdout] 165 ~ let cart = diesel::RunQueryDsl::get_result(carts::table [INFO] [stdout] 166 + .filter(carts::user_id.eq(&user_id)) [INFO] [stdout] 167 + .select(Cart::as_select()), &mut conn) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0282]: type annotations needed [INFO] [stdout] --> src/cart/handlers.rs:173:21 [INFO] [stdout] | [INFO] [stdout] 173 | let prods = cart_products::table [INFO] [stdout] | ^^^^^ [INFO] [stdout] ... [INFO] [stdout] 183 | for prod in prods.iter() { [INFO] [stdout] | ----- type must be known at this point [INFO] [stdout] | [INFO] [stdout] help: consider giving `prods` an explicit type [INFO] [stdout] | [INFO] [stdout] 173 | let prods: /* Type */ = cart_products::table [INFO] [stdout] | ++++++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0034]: multiple applicable items in scope [INFO] [stdout] --> src/cart/handlers.rs:270:10 [INFO] [stdout] | [INFO] [stdout] 270 | .get_result::<(Cart, serde_json::Value)>(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` [INFO] [stdout] help: disambiguate the method for candidate #1 [INFO] [stdout] | [INFO] [stdout] 246 ~ let (cart, products) = diesel_async::RunQueryDsl::get_result(carts::table [INFO] [stdout] 247 + .find(cart_id) [INFO] [stdout] 248 + .left_join(cart_products::table.on(carts::id.eq(cart_products::cart_id))) [INFO] [stdout] 249 + .left_join(products::table.on(cart_products::product_id.eq(products::id))) [INFO] [stdout] 250 + .select(( [INFO] [stdout] 251 + Cart::as_select(), [INFO] [stdout] 252 + sql::( [INFO] [stdout] 253 + "COALESCE( [INFO] [stdout] 254 + json_agg( [INFO] [stdout] 255 + json_build_object( [INFO] [stdout] 256 + 'id', products.id, [INFO] [stdout] 257 + 'title', products.title, [INFO] [stdout] 258 + 'price', products.price, [INFO] [stdout] 259 + 'description', products.description, [INFO] [stdout] 260 + 'image', products.image, [INFO] [stdout] 261 + 'quantity', cart_products.quantity [INFO] [stdout] 262 + ) [INFO] [stdout] 263 + ORDER BY products.id [INFO] [stdout] 264 + ) FILTER (WHERE products.id IS NOT NULL), [INFO] [stdout] 265 + '[]' [INFO] [stdout] 266 + )", [INFO] [stdout] 267 + ), [INFO] [stdout] 268 + )) [INFO] [stdout] 269 + .group_by(carts::id), conn) [INFO] [stdout] | [INFO] [stdout] help: disambiguate the method for candidate #2 [INFO] [stdout] | [INFO] [stdout] 246 ~ let (cart, products) = diesel::RunQueryDsl::get_result(carts::table [INFO] [stdout] 247 + .find(cart_id) [INFO] [stdout] 248 + .left_join(cart_products::table.on(carts::id.eq(cart_products::cart_id))) [INFO] [stdout] 249 + .left_join(products::table.on(cart_products::product_id.eq(products::id))) [INFO] [stdout] 250 + .select(( [INFO] [stdout] 251 + Cart::as_select(), [INFO] [stdout] 252 + sql::( [INFO] [stdout] 253 + "COALESCE( [INFO] [stdout] 254 + json_agg( [INFO] [stdout] 255 + json_build_object( [INFO] [stdout] 256 + 'id', products.id, [INFO] [stdout] 257 + 'title', products.title, [INFO] [stdout] 258 + 'price', products.price, [INFO] [stdout] 259 + 'description', products.description, [INFO] [stdout] 260 + 'image', products.image, [INFO] [stdout] 261 + 'quantity', cart_products.quantity [INFO] [stdout] 262 + ) [INFO] [stdout] 263 + ORDER BY products.id [INFO] [stdout] 264 + ) FILTER (WHERE products.id IS NOT NULL), [INFO] [stdout] 265 + '[]' [INFO] [stdout] 266 + )", [INFO] [stdout] 267 + ), [INFO] [stdout] 268 + )) [INFO] [stdout] 269 + .group_by(carts::id), conn) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0034]: multiple applicable items in scope [INFO] [stdout] --> src/category/handlers.rs:22:10 [INFO] [stdout] | [INFO] [stdout] 22 | .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::RunQueryDsl` for the type `InsertStatement` [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] 19 ~ let res = diesel::RunQueryDsl::get_result(diesel::insert_into(categories::table) [INFO] [stdout] 20 + .values(&payload) [INFO] [stdout] 21 + .returning(Category::as_returning()), &mut conn) [INFO] [stdout] | [INFO] [stdout] help: disambiguate the method for candidate #2 [INFO] [stdout] | [INFO] [stdout] 19 ~ let res = diesel_async::RunQueryDsl::get_result(diesel::insert_into(categories::table) [INFO] [stdout] 20 + .values(&payload) [INFO] [stdout] 21 + .returning(Category::as_returning()), &mut conn) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0282]: type annotations needed [INFO] [stdout] --> src/category/handlers.rs:19:15 [INFO] [stdout] | [INFO] [stdout] 19 | let res = diesel::insert_into(categories::table) [INFO] [stdout] | _______________^ [INFO] [stdout] 20 | | .values(&payload) [INFO] [stdout] 21 | | .returning(Category::as_returning()) [INFO] [stdout] 22 | | .get_result(&mut conn) [INFO] [stdout] 23 | | .await [INFO] [stdout] | |______________^ cannot infer type [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0034]: multiple applicable items in scope [INFO] [stdout] --> src/category/handlers.rs:36:10 [INFO] [stdout] | [INFO] [stdout] 36 | .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` [INFO] [stdout] help: disambiguate the method for candidate #1 [INFO] [stdout] | [INFO] [stdout] 34 ~ let res = diesel_async::RunQueryDsl::load(categories::table [INFO] [stdout] 35 + .select(Category::as_select()), &mut conn) [INFO] [stdout] | [INFO] [stdout] help: disambiguate the method for candidate #2 [INFO] [stdout] | [INFO] [stdout] 34 ~ let res = diesel::RunQueryDsl::load(categories::table [INFO] [stdout] 35 + .select(Category::as_select()), &mut conn) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0282]: type annotations needed [INFO] [stdout] --> src/category/handlers.rs:34:15 [INFO] [stdout] | [INFO] [stdout] 34 | let res = categories::table [INFO] [stdout] | _______________^ [INFO] [stdout] 35 | | .select(Category::as_select()) [INFO] [stdout] 36 | | .load(&mut conn) [INFO] [stdout] 37 | | .await [INFO] [stdout] | |______________^ cannot infer type [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0034]: multiple applicable items in scope [INFO] [stdout] --> src/category/handlers.rs:56:10 [INFO] [stdout] | [INFO] [stdout] 56 | .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 `UpdateStatement` [INFO] [stdout] help: disambiguate the method for candidate #1 [INFO] [stdout] | [INFO] [stdout] 53 ~ let res = diesel_async::RunQueryDsl::get_result(diesel::update(categories::table.find(id)) [INFO] [stdout] 54 + .set(categories::title.eq(payload.title)) [INFO] [stdout] 55 + .returning(Category::as_returning()), &mut conn) [INFO] [stdout] | [INFO] [stdout] help: disambiguate the method for candidate #2 [INFO] [stdout] | [INFO] [stdout] 53 ~ let res = diesel::RunQueryDsl::get_result(diesel::update(categories::table.find(id)) [INFO] [stdout] 54 + .set(categories::title.eq(payload.title)) [INFO] [stdout] 55 + .returning(Category::as_returning()), &mut conn) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0282]: type annotations needed [INFO] [stdout] --> src/category/handlers.rs:53:15 [INFO] [stdout] | [INFO] [stdout] 53 | let res = diesel::update(categories::table.find(id)) [INFO] [stdout] | _______________^ [INFO] [stdout] 54 | | .set(categories::title.eq(payload.title)) [INFO] [stdout] 55 | | .returning(Category::as_returning()) [INFO] [stdout] 56 | | .get_result(&mut conn) [INFO] [stdout] 57 | | .await [INFO] [stdout] | |______________^ cannot infer type [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0034]: multiple applicable items in scope [INFO] [stdout] --> src/category/handlers.rs:72:10 [INFO] [stdout] | [INFO] [stdout] 72 | .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` [INFO] [stdout] help: disambiguate the method for candidate #1 [INFO] [stdout] | [INFO] [stdout] 69 ~ let res = diesel_async::RunQueryDsl::get_result(categories::table [INFO] [stdout] 70 + .find(id) [INFO] [stdout] 71 + .select(Category::as_select()), &mut conn) [INFO] [stdout] | [INFO] [stdout] help: disambiguate the method for candidate #2 [INFO] [stdout] | [INFO] [stdout] 69 ~ let res = diesel::RunQueryDsl::get_result(categories::table [INFO] [stdout] 70 + .find(id) [INFO] [stdout] 71 + .select(Category::as_select()), &mut conn) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0282]: type annotations needed [INFO] [stdout] --> src/category/handlers.rs:69:15 [INFO] [stdout] | [INFO] [stdout] 69 | let res = categories::table [INFO] [stdout] | _______________^ [INFO] [stdout] 70 | | .find(id) [INFO] [stdout] 71 | | .select(Category::as_select()) [INFO] [stdout] 72 | | .get_result(&mut conn) [INFO] [stdout] 73 | | .await [INFO] [stdout] | |______________^ cannot infer type [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0034]: multiple applicable items in scope [INFO] [stdout] --> src/discount/handlers.rs:33:10 [INFO] [stdout] | [INFO] [stdout] 33 | .load::<(Discount, serde_json::Value)>(&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` [INFO] [stdout] help: disambiguate the method for candidate #1 [INFO] [stdout] | [INFO] [stdout] 23 ~ let rows = diesel_async::RunQueryDsl::load(discounts::table [INFO] [stdout] 24 + .left_join(discount_products::table.on(discounts::id.eq(discount_products::discount_id))) [INFO] [stdout] 25 + .left_join(products::table.on(discount_products::product_id.eq(products::id))) [INFO] [stdout] 26 + .select(( [INFO] [stdout] 27 + Discount::as_select(), [INFO] [stdout] 28 + sql::( [INFO] [stdout] 29 + "COALESCE(json_agg(products.* ORDER BY products.id), '[]')", [INFO] [stdout] 30 + ), [INFO] [stdout] 31 + )) [INFO] [stdout] 32 + .group_by(discounts::id), &mut conn) [INFO] [stdout] | [INFO] [stdout] help: disambiguate the method for candidate #2 [INFO] [stdout] | [INFO] [stdout] 23 ~ let rows = diesel::RunQueryDsl::load(discounts::table [INFO] [stdout] 24 + .left_join(discount_products::table.on(discounts::id.eq(discount_products::discount_id))) [INFO] [stdout] 25 + .left_join(products::table.on(discount_products::product_id.eq(products::id))) [INFO] [stdout] 26 + .select(( [INFO] [stdout] 27 + Discount::as_select(), [INFO] [stdout] 28 + sql::( [INFO] [stdout] 29 + "COALESCE(json_agg(products.* ORDER BY products.id), '[]')", [INFO] [stdout] 30 + ), [INFO] [stdout] 31 + )) [INFO] [stdout] 32 + .group_by(discounts::id), &mut conn) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0282]: type annotations needed [INFO] [stdout] --> src/discount/handlers.rs:23:16 [INFO] [stdout] | [INFO] [stdout] 23 | let rows = discounts::table [INFO] [stdout] | ________________^ [INFO] [stdout] 24 | | .left_join(discount_products::table.on(discounts::id.eq(discount_products::discount_id))) [INFO] [stdout] 25 | | .left_join(products::table.on(discount_products::product_id.eq(products::id))) [INFO] [stdout] 26 | | .select(( [INFO] [stdout] ... | [INFO] [stdout] 33 | | .load::<(Discount, serde_json::Value)>(&mut conn) [INFO] [stdout] 34 | | .await [INFO] [stdout] | |______________^ cannot infer type [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0034]: multiple applicable items in scope [INFO] [stdout] --> src/discount/handlers.rs:76:10 [INFO] [stdout] | [INFO] [stdout] 76 | .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::RunQueryDsl` for the type `InsertStatement` [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] 73 ~ let res = diesel::RunQueryDsl::get_result(diesel::insert_into(discounts::table) [INFO] [stdout] 74 + .values(&payload) [INFO] [stdout] 75 + .returning(Discount::as_returning()), &mut conn) [INFO] [stdout] | [INFO] [stdout] help: disambiguate the method for candidate #2 [INFO] [stdout] | [INFO] [stdout] 73 ~ let res = diesel_async::RunQueryDsl::get_result(diesel::insert_into(discounts::table) [INFO] [stdout] 74 + .values(&payload) [INFO] [stdout] 75 + .returning(Discount::as_returning()), &mut conn) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0282]: type annotations needed [INFO] [stdout] --> src/discount/handlers.rs:73:15 [INFO] [stdout] | [INFO] [stdout] 73 | let res = diesel::insert_into(discounts::table) [INFO] [stdout] | _______________^ [INFO] [stdout] 74 | | .values(&payload) [INFO] [stdout] 75 | | .returning(Discount::as_returning()) [INFO] [stdout] 76 | | .get_result(&mut conn) [INFO] [stdout] 77 | | .await [INFO] [stdout] | |______________^ cannot infer type [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0034]: multiple applicable items in scope [INFO] [stdout] --> src/discount/handlers.rs:122:22 [INFO] [stdout] | [INFO] [stdout] 122 | .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` [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] 120 ~ diesel::RunQueryDsl::execute(diesel::insert_into(discount_products::table) [INFO] [stdout] 121 + .values(&prods), &mut conn) [INFO] [stdout] | [INFO] [stdout] help: disambiguate the method for candidate #2 [INFO] [stdout] | [INFO] [stdout] 120 ~ diesel_async::RunQueryDsl::execute(diesel::insert_into(discount_products::table) [INFO] [stdout] 121 + .values(&prods), &mut conn) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0034]: multiple applicable items in scope [INFO] [stdout] --> src/discount/handlers.rs:139:22 [INFO] [stdout] | [INFO] [stdout] 139 | .get_result::<(Discount, serde_json::Value)>(&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` [INFO] [stdout] help: disambiguate the method for candidate #1 [INFO] [stdout] | [INFO] [stdout] 125 ~ let (discount, products_json) = diesel_async::RunQueryDsl::get_result(discounts::table [INFO] [stdout] 126 + .find(&id) [INFO] [stdout] 127 + .left_join( [INFO] [stdout] 128 + discount_products::table [INFO] [stdout] 129 + .on(discounts::id.eq(discount_products::discount_id)), [INFO] [stdout] 130 + ) [INFO] [stdout] 131 + .left_join(products::table.on(discount_products::product_id.eq(products::id))) [INFO] [stdout] 132 + .select(( [INFO] [stdout] 133 + Discount::as_select(), [INFO] [stdout] 134 + sql::( [INFO] [stdout] 135 + "COALESCE(json_agg(products.* ORDER BY products.id), '[]')", [INFO] [stdout] 136 + ), [INFO] [stdout] 137 + )) [INFO] [stdout] 138 + .group_by(discounts::id), &mut conn) [INFO] [stdout] | [INFO] [stdout] help: disambiguate the method for candidate #2 [INFO] [stdout] | [INFO] [stdout] 125 ~ let (discount, products_json) = diesel::RunQueryDsl::get_result(discounts::table [INFO] [stdout] 126 + .find(&id) [INFO] [stdout] 127 + .left_join( [INFO] [stdout] 128 + discount_products::table [INFO] [stdout] 129 + .on(discounts::id.eq(discount_products::discount_id)), [INFO] [stdout] 130 + ) [INFO] [stdout] 131 + .left_join(products::table.on(discount_products::product_id.eq(products::id))) [INFO] [stdout] 132 + .select(( [INFO] [stdout] 133 + Discount::as_select(), [INFO] [stdout] 134 + sql::( [INFO] [stdout] 135 + "COALESCE(json_agg(products.* ORDER BY products.id), '[]')", [INFO] [stdout] 136 + ), [INFO] [stdout] 137 + )) [INFO] [stdout] 138 + .group_by(discounts::id), &mut conn) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0034]: multiple applicable items in scope [INFO] [stdout] --> src/discount/handlers.rs:179:6 [INFO] [stdout] | [INFO] [stdout] 179 | .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 `DeleteStatement` [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] 174 ~ let deleted_count = diesel::RunQueryDsl::execute(diesel::delete( [INFO] [stdout] 175 + discount_products::table [INFO] [stdout] 176 + .filter(discount_products::discount_id.eq(&id)) [INFO] [stdout] 177 + .filter(discount_products::product_id.eq_any(&ids)), [INFO] [stdout] 178 + ), &mut conn) [INFO] [stdout] | [INFO] [stdout] help: disambiguate the method for candidate #2 [INFO] [stdout] | [INFO] [stdout] 174 ~ let deleted_count = diesel_async::RunQueryDsl::execute(diesel::delete( [INFO] [stdout] 175 + discount_products::table [INFO] [stdout] 176 + .filter(discount_products::discount_id.eq(&id)) [INFO] [stdout] 177 + .filter(discount_products::product_id.eq_any(&ids)), [INFO] [stdout] 178 + ), &mut conn) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0282]: type annotations needed [INFO] [stdout] --> src/discount/handlers.rs:174:25 [INFO] [stdout] | [INFO] [stdout] 174 | let deleted_count = diesel::delete( [INFO] [stdout] | _________________________^ [INFO] [stdout] 175 | | discount_products::table [INFO] [stdout] 176 | | .filter(discount_products::discount_id.eq(&id)) [INFO] [stdout] 177 | | .filter(discount_products::product_id.eq_any(&ids)), [INFO] [stdout] 178 | | ) [INFO] [stdout] 179 | | .execute(&mut conn) [INFO] [stdout] 180 | | .await [INFO] [stdout] | |__________^ cannot infer type [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0034]: multiple applicable items in scope [INFO] [stdout] --> src/discount/handlers.rs:207:10 [INFO] [stdout] | [INFO] [stdout] 207 | .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 `UpdateStatement` [INFO] [stdout] help: disambiguate the method for candidate #1 [INFO] [stdout] | [INFO] [stdout] 204 ~ diesel_async::RunQueryDsl::get_result(diesel::update(discounts::table.find(&id)) [INFO] [stdout] 205 + .set(&payload) [INFO] [stdout] 206 + .returning(Discount::as_returning()), &mut conn) [INFO] [stdout] | [INFO] [stdout] help: disambiguate the method for candidate #2 [INFO] [stdout] | [INFO] [stdout] 204 ~ diesel::RunQueryDsl::get_result(diesel::update(discounts::table.find(&id)) [INFO] [stdout] 205 + .set(&payload) [INFO] [stdout] 206 + .returning(Discount::as_returning()), &mut conn) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0282]: type annotations needed [INFO] [stdout] --> src/discount/handlers.rs:204:5 [INFO] [stdout] | [INFO] [stdout] 204 | / diesel::update(discounts::table.find(&id)) [INFO] [stdout] 205 | | .set(&payload) [INFO] [stdout] 206 | | .returning(Discount::as_returning()) [INFO] [stdout] 207 | | .get_result(&mut conn) [INFO] [stdout] 208 | | .await [INFO] [stdout] | |______________^ cannot infer type [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0034]: multiple applicable items in scope [INFO] [stdout] --> src/cart/handlers.rs:270:10 [INFO] [stdout] | [INFO] [stdout] 270 | .get_result::<(Cart, serde_json::Value)>(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` [INFO] [stdout] help: disambiguate the method for candidate #1 [INFO] [stdout] | [INFO] [stdout] 246 ~ let (cart, products) = diesel_async::RunQueryDsl::get_result(carts::table [INFO] [stdout] 247 + .find(cart_id) [INFO] [stdout] 248 + .left_join(cart_products::table.on(carts::id.eq(cart_products::cart_id))) [INFO] [stdout] 249 + .left_join(products::table.on(cart_products::product_id.eq(products::id))) [INFO] [stdout] 250 + .select(( [INFO] [stdout] 251 + Cart::as_select(), [INFO] [stdout] 252 + sql::( [INFO] [stdout] 253 + "COALESCE( [INFO] [stdout] 254 + json_agg( [INFO] [stdout] 255 + json_build_object( [INFO] [stdout] 256 + 'id', products.id, [INFO] [stdout] 257 + 'title', products.title, [INFO] [stdout] 258 + 'price', products.price, [INFO] [stdout] 259 + 'description', products.description, [INFO] [stdout] 260 + 'image', products.image, [INFO] [stdout] 261 + 'quantity', cart_products.quantity [INFO] [stdout] 262 + ) [INFO] [stdout] 263 + ORDER BY products.id [INFO] [stdout] 264 + ) FILTER (WHERE products.id IS NOT NULL), [INFO] [stdout] 265 + '[]' [INFO] [stdout] 266 + )", [INFO] [stdout] 267 + ), [INFO] [stdout] 268 + )) [INFO] [stdout] 269 + .group_by(carts::id), conn) [INFO] [stdout] | [INFO] [stdout] help: disambiguate the method for candidate #2 [INFO] [stdout] | [INFO] [stdout] 246 ~ let (cart, products) = diesel::RunQueryDsl::get_result(carts::table [INFO] [stdout] 247 + .find(cart_id) [INFO] [stdout] 248 + .left_join(cart_products::table.on(carts::id.eq(cart_products::cart_id))) [INFO] [stdout] 249 + .left_join(products::table.on(cart_products::product_id.eq(products::id))) [INFO] [stdout] 250 + .select(( [INFO] [stdout] 251 + Cart::as_select(), [INFO] [stdout] 252 + sql::( [INFO] [stdout] 253 + "COALESCE( [INFO] [stdout] 254 + json_agg( [INFO] [stdout] 255 + json_build_object( [INFO] [stdout] 256 + 'id', products.id, [INFO] [stdout] 257 + 'title', products.title, [INFO] [stdout] 258 + 'price', products.price, [INFO] [stdout] 259 + 'description', products.description, [INFO] [stdout] 260 + 'image', products.image, [INFO] [stdout] 261 + 'quantity', cart_products.quantity [INFO] [stdout] 262 + ) [INFO] [stdout] 263 + ORDER BY products.id [INFO] [stdout] 264 + ) FILTER (WHERE products.id IS NOT NULL), [INFO] [stdout] 265 + '[]' [INFO] [stdout] 266 + )", [INFO] [stdout] 267 + ), [INFO] [stdout] 268 + )) [INFO] [stdout] 269 + .group_by(carts::id), conn) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0034]: multiple applicable items in scope [INFO] [stdout] --> src/category/handlers.rs:22:10 [INFO] [stdout] | [INFO] [stdout] 22 | .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::RunQueryDsl` for the type `InsertStatement` [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] 19 ~ let res = diesel::RunQueryDsl::get_result(diesel::insert_into(categories::table) [INFO] [stdout] 20 + .values(&payload) [INFO] [stdout] 21 + .returning(Category::as_returning()), &mut conn) [INFO] [stdout] | [INFO] [stdout] help: disambiguate the method for candidate #2 [INFO] [stdout] | [INFO] [stdout] 19 ~ let res = diesel_async::RunQueryDsl::get_result(diesel::insert_into(categories::table) [INFO] [stdout] 20 + .values(&payload) [INFO] [stdout] 21 + .returning(Category::as_returning()), &mut conn) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0282]: type annotations needed [INFO] [stdout] --> src/category/handlers.rs:19:15 [INFO] [stdout] | [INFO] [stdout] 19 | let res = diesel::insert_into(categories::table) [INFO] [stdout] | _______________^ [INFO] [stdout] 20 | | .values(&payload) [INFO] [stdout] 21 | | .returning(Category::as_returning()) [INFO] [stdout] 22 | | .get_result(&mut conn) [INFO] [stdout] 23 | | .await [INFO] [stdout] | |______________^ cannot infer type [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0034]: multiple applicable items in scope [INFO] [stdout] --> src/category/handlers.rs:36:10 [INFO] [stdout] | [INFO] [stdout] 36 | .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` [INFO] [stdout] help: disambiguate the method for candidate #1 [INFO] [stdout] | [INFO] [stdout] 34 ~ let res = diesel_async::RunQueryDsl::load(categories::table [INFO] [stdout] 35 + .select(Category::as_select()), &mut conn) [INFO] [stdout] | [INFO] [stdout] help: disambiguate the method for candidate #2 [INFO] [stdout] | [INFO] [stdout] 34 ~ let res = diesel::RunQueryDsl::load(categories::table [INFO] [stdout] 35 + .select(Category::as_select()), &mut conn) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0282]: type annotations needed [INFO] [stdout] --> src/category/handlers.rs:34:15 [INFO] [stdout] | [INFO] [stdout] 34 | let res = categories::table [INFO] [stdout] | _______________^ [INFO] [stdout] 35 | | .select(Category::as_select()) [INFO] [stdout] 36 | | .load(&mut conn) [INFO] [stdout] 37 | | .await [INFO] [stdout] | |______________^ cannot infer type [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0034]: multiple applicable items in scope [INFO] [stdout] --> src/discount/handlers.rs:233:10 [INFO] [stdout] | [INFO] [stdout] 233 | .get_result::<(Discount, serde_json::Value)>(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` [INFO] [stdout] help: disambiguate the method for candidate #1 [INFO] [stdout] | [INFO] [stdout] 222 ~ let (discount, products_json) = diesel_async::RunQueryDsl::get_result(discounts::table [INFO] [stdout] 223 + .find(discount_id) [INFO] [stdout] 224 + .left_join(discount_products::table.on(discounts::id.eq(discount_products::discount_id))) [INFO] [stdout] 225 + .left_join(products::table.on(discount_products::product_id.eq(products::id))) [INFO] [stdout] 226 + .select(( [INFO] [stdout] 227 + Discount::as_select(), [INFO] [stdout] 228 + sql::( [INFO] [stdout] 229 + "COALESCE(json_agg(products.* ORDER BY products.id), '[]')", [INFO] [stdout] 230 + ), [INFO] [stdout] 231 + )) [INFO] [stdout] 232 + .group_by(discounts::id), conn) [INFO] [stdout] | [INFO] [stdout] help: disambiguate the method for candidate #2 [INFO] [stdout] | [INFO] [stdout] 222 ~ let (discount, products_json) = diesel::RunQueryDsl::get_result(discounts::table [INFO] [stdout] 223 + .find(discount_id) [INFO] [stdout] 224 + .left_join(discount_products::table.on(discounts::id.eq(discount_products::discount_id))) [INFO] [stdout] 225 + .left_join(products::table.on(discount_products::product_id.eq(products::id))) [INFO] [stdout] 226 + .select(( [INFO] [stdout] 227 + Discount::as_select(), [INFO] [stdout] 228 + sql::( [INFO] [stdout] 229 + "COALESCE(json_agg(products.* ORDER BY products.id), '[]')", [INFO] [stdout] 230 + ), [INFO] [stdout] 231 + )) [INFO] [stdout] 232 + .group_by(discounts::id), conn) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0282]: type annotations needed [INFO] [stdout] --> src/discount/handlers.rs:222:37 [INFO] [stdout] | [INFO] [stdout] 222 | let (discount, products_json) = discounts::table [INFO] [stdout] | _____________________________________^ [INFO] [stdout] 223 | | .find(discount_id) [INFO] [stdout] 224 | | .left_join(discount_products::table.on(discounts::id.eq(discount_products::discount_id))) [INFO] [stdout] 225 | | .left_join(products::table.on(discount_products::product_id.eq(products::id))) [INFO] [stdout] ... | [INFO] [stdout] 233 | | .get_result::<(Discount, serde_json::Value)>(conn) [INFO] [stdout] 234 | | .await [INFO] [stdout] | |______________^ cannot infer type [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0034]: multiple applicable items in scope [INFO] [stdout] --> src/category/handlers.rs:56:10 [INFO] [stdout] | [INFO] [stdout] 56 | .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 `UpdateStatement` [INFO] [stdout] help: disambiguate the method for candidate #1 [INFO] [stdout] | [INFO] [stdout] 53 ~ let res = diesel_async::RunQueryDsl::get_result(diesel::update(categories::table.find(id)) [INFO] [stdout] 54 + .set(categories::title.eq(payload.title)) [INFO] [stdout] 55 + .returning(Category::as_returning()), &mut conn) [INFO] [stdout] | [INFO] [stdout] help: disambiguate the method for candidate #2 [INFO] [stdout] | [INFO] [stdout] 53 ~ let res = diesel::RunQueryDsl::get_result(diesel::update(categories::table.find(id)) [INFO] [stdout] 54 + .set(categories::title.eq(payload.title)) [INFO] [stdout] 55 + .returning(Category::as_returning()), &mut conn) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0282]: type annotations needed [INFO] [stdout] --> src/category/handlers.rs:53:15 [INFO] [stdout] | [INFO] [stdout] 53 | let res = diesel::update(categories::table.find(id)) [INFO] [stdout] | _______________^ [INFO] [stdout] 54 | | .set(categories::title.eq(payload.title)) [INFO] [stdout] 55 | | .returning(Category::as_returning()) [INFO] [stdout] 56 | | .get_result(&mut conn) [INFO] [stdout] 57 | | .await [INFO] [stdout] | |______________^ cannot infer type [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0034]: multiple applicable items in scope [INFO] [stdout] --> src/discount/handlers.rs:255:10 [INFO] [stdout] | [INFO] [stdout] 255 | .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::RunQueryDsl` for the type `DeleteStatement` [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] 253 ~ let res = diesel::RunQueryDsl::get_result(diesel::delete(discounts::table.filter(discounts::id.eq(&id))) [INFO] [stdout] 254 + .returning(Discount::as_returning()), &mut conn) [INFO] [stdout] | [INFO] [stdout] help: disambiguate the method for candidate #2 [INFO] [stdout] | [INFO] [stdout] 253 ~ let res = diesel_async::RunQueryDsl::get_result(diesel::delete(discounts::table.filter(discounts::id.eq(&id))) [INFO] [stdout] 254 + .returning(Discount::as_returning()), &mut conn) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0282]: type annotations needed [INFO] [stdout] --> src/discount/handlers.rs:253:15 [INFO] [stdout] | [INFO] [stdout] 253 | let res = diesel::delete(discounts::table.filter(discounts::id.eq(&id))) [INFO] [stdout] | _______________^ [INFO] [stdout] 254 | | .returning(Discount::as_returning()) [INFO] [stdout] 255 | | .get_result(&mut conn) [INFO] [stdout] 256 | | .await [INFO] [stdout] | |______________^ cannot infer type [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0034]: multiple applicable items in scope [INFO] [stdout] --> src/category/handlers.rs:72:10 [INFO] [stdout] | [INFO] [stdout] 72 | .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` [INFO] [stdout] help: disambiguate the method for candidate #1 [INFO] [stdout] | [INFO] [stdout] 69 ~ let res = diesel_async::RunQueryDsl::get_result(categories::table [INFO] [stdout] 70 + .find(id) [INFO] [stdout] 71 + .select(Category::as_select()), &mut conn) [INFO] [stdout] | [INFO] [stdout] help: disambiguate the method for candidate #2 [INFO] [stdout] | [INFO] [stdout] 69 ~ let res = diesel::RunQueryDsl::get_result(categories::table [INFO] [stdout] 70 + .find(id) [INFO] [stdout] 71 + .select(Category::as_select()), &mut conn) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0282]: type annotations needed [INFO] [stdout] --> src/category/handlers.rs:69:15 [INFO] [stdout] | [INFO] [stdout] 69 | let res = categories::table [INFO] [stdout] | _______________^ [INFO] [stdout] 70 | | .find(id) [INFO] [stdout] 71 | | .select(Category::as_select()) [INFO] [stdout] 72 | | .get_result(&mut conn) [INFO] [stdout] 73 | | .await [INFO] [stdout] | |______________^ cannot infer type [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0034]: multiple applicable items in scope [INFO] [stdout] --> src/health/handlers.rs:32:10 [INFO] [stdout] | [INFO] [stdout] 32 | .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` [INFO] [stdout] help: disambiguate the method for candidate #1 [INFO] [stdout] | [INFO] [stdout] 30 ~ let health_check = diesel_async::RunQueryDsl::first(products::table [INFO] [stdout] 31 + .select(diesel::dsl::sql::("1")), &mut conn) [INFO] [stdout] | [INFO] [stdout] help: disambiguate the method for candidate #2 [INFO] [stdout] | [INFO] [stdout] 30 ~ let health_check = diesel::RunQueryDsl::first(products::table [INFO] [stdout] 31 + .select(diesel::dsl::sql::("1")), &mut conn) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0282]: type annotations needed [INFO] [stdout] --> src/health/handlers.rs:30:24 [INFO] [stdout] | [INFO] [stdout] 30 | let health_check = products::table [INFO] [stdout] | ________________________^ [INFO] [stdout] 31 | | .select(diesel::dsl::sql::("1")) [INFO] [stdout] 32 | | .first::(&mut conn) [INFO] [stdout] 33 | | .await [INFO] [stdout] | |______________^ cannot infer type [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0034]: multiple applicable items in scope [INFO] [stdout] --> src/notification/handlers.rs:38:18 [INFO] [stdout] | [INFO] [stdout] 38 | .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` [INFO] [stdout] help: disambiguate the method for candidate #1 [INFO] [stdout] | [INFO] [stdout] 30 ~ let users: Vec = diesel_async::RunQueryDsl::load(users::table [INFO] [stdout] 31 + .inner_join(user_subscriptions::table.on(user_subscriptions::user_id.eq(users::id))) [INFO] [stdout] 32 + .filter( [INFO] [stdout] 33 + user_subscriptions::channel [INFO] [stdout] 34 + .eq("email") [INFO] [stdout] 35 + .and(user_subscriptions::discount_notifications.eq(true)), [INFO] [stdout] 36 + ) [INFO] [stdout] 37 + .select(users::email), &mut conn) [INFO] [stdout] | [INFO] [stdout] help: disambiguate the method for candidate #2 [INFO] [stdout] | [INFO] [stdout] 30 ~ let users: Vec = diesel::RunQueryDsl::load(users::table [INFO] [stdout] 31 + .inner_join(user_subscriptions::table.on(user_subscriptions::user_id.eq(users::id))) [INFO] [stdout] 32 + .filter( [INFO] [stdout] 33 + user_subscriptions::channel [INFO] [stdout] 34 + .eq("email") [INFO] [stdout] 35 + .and(user_subscriptions::discount_notifications.eq(true)), [INFO] [stdout] 36 + ) [INFO] [stdout] 37 + .select(users::email), &mut conn) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0282]: type annotations needed [INFO] [stdout] --> src/notification/handlers.rs:30:38 [INFO] [stdout] | [INFO] [stdout] 30 | let users: Vec = users::table [INFO] [stdout] | ______________________________________^ [INFO] [stdout] 31 | | .inner_join(user_subscriptions::table.on(user_subscriptions::user_id.eq(users::id))) [INFO] [stdout] 32 | | .filter( [INFO] [stdout] 33 | | user_subscriptions::channel [INFO] [stdout] ... | [INFO] [stdout] 38 | | .load(&mut conn) [INFO] [stdout] 39 | | .await [INFO] [stdout] | |______________________^ cannot infer type [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0034]: multiple applicable items in scope [INFO] [stdout] --> src/discount/handlers.rs:33:10 [INFO] [stdout] | [INFO] [stdout] 33 | .load::<(Discount, serde_json::Value)>(&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` [INFO] [stdout] help: disambiguate the method for candidate #1 [INFO] [stdout] | [INFO] [stdout] 23 ~ let rows = diesel_async::RunQueryDsl::load(discounts::table [INFO] [stdout] 24 + .left_join(discount_products::table.on(discounts::id.eq(discount_products::discount_id))) [INFO] [stdout] 25 + .left_join(products::table.on(discount_products::product_id.eq(products::id))) [INFO] [stdout] 26 + .select(( [INFO] [stdout] 27 + Discount::as_select(), [INFO] [stdout] 28 + sql::( [INFO] [stdout] 29 + "COALESCE(json_agg(products.* ORDER BY products.id), '[]')", [INFO] [stdout] 30 + ), [INFO] [stdout] 31 + )) [INFO] [stdout] 32 + .group_by(discounts::id), &mut conn) [INFO] [stdout] | [INFO] [stdout] help: disambiguate the method for candidate #2 [INFO] [stdout] | [INFO] [stdout] 23 ~ let rows = diesel::RunQueryDsl::load(discounts::table [INFO] [stdout] 24 + .left_join(discount_products::table.on(discounts::id.eq(discount_products::discount_id))) [INFO] [stdout] 25 + .left_join(products::table.on(discount_products::product_id.eq(products::id))) [INFO] [stdout] 26 + .select(( [INFO] [stdout] 27 + Discount::as_select(), [INFO] [stdout] 28 + sql::( [INFO] [stdout] 29 + "COALESCE(json_agg(products.* ORDER BY products.id), '[]')", [INFO] [stdout] 30 + ), [INFO] [stdout] 31 + )) [INFO] [stdout] 32 + .group_by(discounts::id), &mut conn) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0282]: type annotations needed [INFO] [stdout] --> src/discount/handlers.rs:23:16 [INFO] [stdout] | [INFO] [stdout] 23 | let rows = discounts::table [INFO] [stdout] | ________________^ [INFO] [stdout] 24 | | .left_join(discount_products::table.on(discounts::id.eq(discount_products::discount_id))) [INFO] [stdout] 25 | | .left_join(products::table.on(discount_products::product_id.eq(products::id))) [INFO] [stdout] 26 | | .select(( [INFO] [stdout] ... | [INFO] [stdout] 33 | | .load::<(Discount, serde_json::Value)>(&mut conn) [INFO] [stdout] 34 | | .await [INFO] [stdout] | |______________^ cannot infer type [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0034]: multiple applicable items in scope [INFO] [stdout] --> src/discount/handlers.rs:76:10 [INFO] [stdout] | [INFO] [stdout] 76 | .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::RunQueryDsl` for the type `InsertStatement` [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] 73 ~ let res = diesel::RunQueryDsl::get_result(diesel::insert_into(discounts::table) [INFO] [stdout] 74 + .values(&payload) [INFO] [stdout] 75 + .returning(Discount::as_returning()), &mut conn) [INFO] [stdout] | [INFO] [stdout] help: disambiguate the method for candidate #2 [INFO] [stdout] | [INFO] [stdout] 73 ~ let res = diesel_async::RunQueryDsl::get_result(diesel::insert_into(discounts::table) [INFO] [stdout] 74 + .values(&payload) [INFO] [stdout] 75 + .returning(Discount::as_returning()), &mut conn) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0282]: type annotations needed [INFO] [stdout] --> src/discount/handlers.rs:73:15 [INFO] [stdout] | [INFO] [stdout] 73 | let res = diesel::insert_into(discounts::table) [INFO] [stdout] | _______________^ [INFO] [stdout] 74 | | .values(&payload) [INFO] [stdout] 75 | | .returning(Discount::as_returning()) [INFO] [stdout] 76 | | .get_result(&mut conn) [INFO] [stdout] 77 | | .await [INFO] [stdout] | |______________^ cannot infer type [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0034]: multiple applicable items in scope [INFO] [stdout] --> src/discount/handlers.rs:122:22 [INFO] [stdout] | [INFO] [stdout] 122 | .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` [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] 120 ~ diesel::RunQueryDsl::execute(diesel::insert_into(discount_products::table) [INFO] [stdout] 121 + .values(&prods), &mut conn) [INFO] [stdout] | [INFO] [stdout] help: disambiguate the method for candidate #2 [INFO] [stdout] | [INFO] [stdout] 120 ~ diesel_async::RunQueryDsl::execute(diesel::insert_into(discount_products::table) [INFO] [stdout] 121 + .values(&prods), &mut conn) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0034]: multiple applicable items in scope [INFO] [stdout] --> src/product/handlers.rs:36:10 [INFO] [stdout] | [INFO] [stdout] 36 | .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::RunQueryDsl` for the type `InsertStatement` [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] 33 ~ let res = diesel::RunQueryDsl::get_result(diesel::insert_into(products::table) [INFO] [stdout] 34 + .values(&payload) [INFO] [stdout] 35 + .returning(Product::as_returning()), &mut conn) [INFO] [stdout] | [INFO] [stdout] help: disambiguate the method for candidate #2 [INFO] [stdout] | [INFO] [stdout] 33 ~ let res = diesel_async::RunQueryDsl::get_result(diesel::insert_into(products::table) [INFO] [stdout] 34 + .values(&payload) [INFO] [stdout] 35 + .returning(Product::as_returning()), &mut conn) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0282]: type annotations needed [INFO] [stdout] --> src/product/handlers.rs:33:15 [INFO] [stdout] | [INFO] [stdout] 33 | let res = diesel::insert_into(products::table) [INFO] [stdout] | _______________^ [INFO] [stdout] 34 | | .values(&payload) [INFO] [stdout] 35 | | .returning(Product::as_returning()) [INFO] [stdout] 36 | | .get_result(&mut conn) [INFO] [stdout] 37 | | .await [INFO] [stdout] | |______________^ cannot infer type [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0034]: multiple applicable items in scope [INFO] [stdout] --> src/product/handlers.rs:54:10 [INFO] [stdout] | [INFO] [stdout] 54 | .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::RunQueryDsl` for the type `InsertStatement` [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] 51 ~ let product = diesel::RunQueryDsl::get_result(diesel::insert_into(products::table) [INFO] [stdout] 52 + .values(&payload.product) [INFO] [stdout] 53 + .returning(Product::as_returning()), &mut conn) [INFO] [stdout] | [INFO] [stdout] help: disambiguate the method for candidate #2 [INFO] [stdout] | [INFO] [stdout] 51 ~ let product = diesel_async::RunQueryDsl::get_result(diesel::insert_into(products::table) [INFO] [stdout] 52 + .values(&payload.product) [INFO] [stdout] 53 + .returning(Product::as_returning()), &mut conn) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0282]: type annotations needed [INFO] [stdout] --> src/product/handlers.rs:51:19 [INFO] [stdout] | [INFO] [stdout] 51 | let product = diesel::insert_into(products::table) [INFO] [stdout] | ___________________^ [INFO] [stdout] 52 | | .values(&payload.product) [INFO] [stdout] 53 | | .returning(Product::as_returning()) [INFO] [stdout] 54 | | .get_result(&mut conn) [INFO] [stdout] 55 | | .await [INFO] [stdout] | |______________^ cannot infer type [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0034]: multiple applicable items in scope [INFO] [stdout] --> src/product/handlers.rs:69:10 [INFO] [stdout] | [INFO] [stdout] 69 | .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` [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] 67 ~ diesel::RunQueryDsl::execute(diesel::insert_into(product_categories::table) [INFO] [stdout] 68 + .values(&categories), &mut conn) [INFO] [stdout] | [INFO] [stdout] help: disambiguate the method for candidate #2 [INFO] [stdout] | [INFO] [stdout] 67 ~ diesel_async::RunQueryDsl::execute(diesel::insert_into(product_categories::table) [INFO] [stdout] 68 + .values(&categories), &mut conn) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0282]: type annotations needed [INFO] [stdout] --> src/product/handlers.rs:67:5 [INFO] [stdout] | [INFO] [stdout] 67 | / diesel::insert_into(product_categories::table) [INFO] [stdout] 68 | | .values(&categories) [INFO] [stdout] 69 | | .execute(&mut conn) [INFO] [stdout] 70 | | .await [INFO] [stdout] | |______________^ cannot infer type [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0034]: multiple applicable items in scope [INFO] [stdout] --> src/discount/handlers.rs:139:22 [INFO] [stdout] | [INFO] [stdout] 139 | .get_result::<(Discount, serde_json::Value)>(&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` [INFO] [stdout] help: disambiguate the method for candidate #1 [INFO] [stdout] | [INFO] [stdout] 125 ~ let (discount, products_json) = diesel_async::RunQueryDsl::get_result(discounts::table [INFO] [stdout] 126 + .find(&id) [INFO] [stdout] 127 + .left_join( [INFO] [stdout] 128 + discount_products::table [INFO] [stdout] 129 + .on(discounts::id.eq(discount_products::discount_id)), [INFO] [stdout] 130 + ) [INFO] [stdout] 131 + .left_join(products::table.on(discount_products::product_id.eq(products::id))) [INFO] [stdout] 132 + .select(( [INFO] [stdout] 133 + Discount::as_select(), [INFO] [stdout] 134 + sql::( [INFO] [stdout] 135 + "COALESCE(json_agg(products.* ORDER BY products.id), '[]')", [INFO] [stdout] 136 + ), [INFO] [stdout] 137 + )) [INFO] [stdout] 138 + .group_by(discounts::id), &mut conn) [INFO] [stdout] | [INFO] [stdout] help: disambiguate the method for candidate #2 [INFO] [stdout] | [INFO] [stdout] 125 ~ let (discount, products_json) = diesel::RunQueryDsl::get_result(discounts::table [INFO] [stdout] 126 + .find(&id) [INFO] [stdout] 127 + .left_join( [INFO] [stdout] 128 + discount_products::table [INFO] [stdout] 129 + .on(discounts::id.eq(discount_products::discount_id)), [INFO] [stdout] 130 + ) [INFO] [stdout] 131 + .left_join(products::table.on(discount_products::product_id.eq(products::id))) [INFO] [stdout] 132 + .select(( [INFO] [stdout] 133 + Discount::as_select(), [INFO] [stdout] 134 + sql::( [INFO] [stdout] 135 + "COALESCE(json_agg(products.* ORDER BY products.id), '[]')", [INFO] [stdout] 136 + ), [INFO] [stdout] 137 + )) [INFO] [stdout] 138 + .group_by(discounts::id), &mut conn) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0034]: multiple applicable items in scope [INFO] [stdout] --> src/discount/handlers.rs:179:6 [INFO] [stdout] | [INFO] [stdout] 179 | .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 `DeleteStatement` [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] 174 ~ let deleted_count = diesel::RunQueryDsl::execute(diesel::delete( [INFO] [stdout] 175 + discount_products::table [INFO] [stdout] 176 + .filter(discount_products::discount_id.eq(&id)) [INFO] [stdout] 177 + .filter(discount_products::product_id.eq_any(&ids)), [INFO] [stdout] 178 + ), &mut conn) [INFO] [stdout] | [INFO] [stdout] help: disambiguate the method for candidate #2 [INFO] [stdout] | [INFO] [stdout] 174 ~ let deleted_count = diesel_async::RunQueryDsl::execute(diesel::delete( [INFO] [stdout] 175 + discount_products::table [INFO] [stdout] 176 + .filter(discount_products::discount_id.eq(&id)) [INFO] [stdout] 177 + .filter(discount_products::product_id.eq_any(&ids)), [INFO] [stdout] 178 + ), &mut conn) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0282]: type annotations needed [INFO] [stdout] --> src/discount/handlers.rs:174:25 [INFO] [stdout] | [INFO] [stdout] 174 | let deleted_count = diesel::delete( [INFO] [stdout] | _________________________^ [INFO] [stdout] 175 | | discount_products::table [INFO] [stdout] 176 | | .filter(discount_products::discount_id.eq(&id)) [INFO] [stdout] 177 | | .filter(discount_products::product_id.eq_any(&ids)), [INFO] [stdout] 178 | | ) [INFO] [stdout] 179 | | .execute(&mut conn) [INFO] [stdout] 180 | | .await [INFO] [stdout] | |__________^ cannot infer type [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0034]: multiple applicable items in scope [INFO] [stdout] --> src/discount/handlers.rs:207:10 [INFO] [stdout] | [INFO] [stdout] 207 | .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 `UpdateStatement` [INFO] [stdout] help: disambiguate the method for candidate #1 [INFO] [stdout] | [INFO] [stdout] 204 ~ diesel_async::RunQueryDsl::get_result(diesel::update(discounts::table.find(&id)) [INFO] [stdout] 205 + .set(&payload) [INFO] [stdout] 206 + .returning(Discount::as_returning()), &mut conn) [INFO] [stdout] | [INFO] [stdout] help: disambiguate the method for candidate #2 [INFO] [stdout] | [INFO] [stdout] 204 ~ diesel::RunQueryDsl::get_result(diesel::update(discounts::table.find(&id)) [INFO] [stdout] 205 + .set(&payload) [INFO] [stdout] 206 + .returning(Discount::as_returning()), &mut conn) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0282]: type annotations needed [INFO] [stdout] --> src/discount/handlers.rs:204:5 [INFO] [stdout] | [INFO] [stdout] 204 | / diesel::update(discounts::table.find(&id)) [INFO] [stdout] 205 | | .set(&payload) [INFO] [stdout] 206 | | .returning(Discount::as_returning()) [INFO] [stdout] 207 | | .get_result(&mut conn) [INFO] [stdout] 208 | | .await [INFO] [stdout] | |______________^ cannot infer type [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0034]: multiple applicable items in scope [INFO] [stdout] --> src/discount/handlers.rs:233:10 [INFO] [stdout] | [INFO] [stdout] 233 | .get_result::<(Discount, serde_json::Value)>(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` [INFO] [stdout] help: disambiguate the method for candidate #1 [INFO] [stdout] | [INFO] [stdout] 222 ~ let (discount, products_json) = diesel_async::RunQueryDsl::get_result(discounts::table [INFO] [stdout] 223 + .find(discount_id) [INFO] [stdout] 224 + .left_join(discount_products::table.on(discounts::id.eq(discount_products::discount_id))) [INFO] [stdout] 225 + .left_join(products::table.on(discount_products::product_id.eq(products::id))) [INFO] [stdout] 226 + .select(( [INFO] [stdout] 227 + Discount::as_select(), [INFO] [stdout] 228 + sql::( [INFO] [stdout] 229 + "COALESCE(json_agg(products.* ORDER BY products.id), '[]')", [INFO] [stdout] 230 + ), [INFO] [stdout] 231 + )) [INFO] [stdout] 232 + .group_by(discounts::id), conn) [INFO] [stdout] | [INFO] [stdout] help: disambiguate the method for candidate #2 [INFO] [stdout] | [INFO] [stdout] 222 ~ let (discount, products_json) = diesel::RunQueryDsl::get_result(discounts::table [INFO] [stdout] 223 + .find(discount_id) [INFO] [stdout] 224 + .left_join(discount_products::table.on(discounts::id.eq(discount_products::discount_id))) [INFO] [stdout] 225 + .left_join(products::table.on(discount_products::product_id.eq(products::id))) [INFO] [stdout] 226 + .select(( [INFO] [stdout] 227 + Discount::as_select(), [INFO] [stdout] 228 + sql::( [INFO] [stdout] 229 + "COALESCE(json_agg(products.* ORDER BY products.id), '[]')", [INFO] [stdout] 230 + ), [INFO] [stdout] 231 + )) [INFO] [stdout] 232 + .group_by(discounts::id), conn) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0282]: type annotations needed [INFO] [stdout] --> src/discount/handlers.rs:222:37 [INFO] [stdout] | [INFO] [stdout] 222 | let (discount, products_json) = discounts::table [INFO] [stdout] | _____________________________________^ [INFO] [stdout] 223 | | .find(discount_id) [INFO] [stdout] 224 | | .left_join(discount_products::table.on(discounts::id.eq(discount_products::discount_id))) [INFO] [stdout] 225 | | .left_join(products::table.on(discount_products::product_id.eq(products::id))) [INFO] [stdout] ... | [INFO] [stdout] 233 | | .get_result::<(Discount, serde_json::Value)>(conn) [INFO] [stdout] 234 | | .await [INFO] [stdout] | |______________^ cannot infer type [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0034]: multiple applicable items in scope [INFO] [stdout] --> src/discount/handlers.rs:255:10 [INFO] [stdout] | [INFO] [stdout] 255 | .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::RunQueryDsl` for the type `DeleteStatement` [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] 253 ~ let res = diesel::RunQueryDsl::get_result(diesel::delete(discounts::table.filter(discounts::id.eq(&id))) [INFO] [stdout] 254 + .returning(Discount::as_returning()), &mut conn) [INFO] [stdout] | [INFO] [stdout] help: disambiguate the method for candidate #2 [INFO] [stdout] | [INFO] [stdout] 253 ~ let res = diesel_async::RunQueryDsl::get_result(diesel::delete(discounts::table.filter(discounts::id.eq(&id))) [INFO] [stdout] 254 + .returning(Discount::as_returning()), &mut conn) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0282]: type annotations needed [INFO] [stdout] --> src/discount/handlers.rs:253:15 [INFO] [stdout] | [INFO] [stdout] 253 | let res = diesel::delete(discounts::table.filter(discounts::id.eq(&id))) [INFO] [stdout] | _______________^ [INFO] [stdout] 254 | | .returning(Discount::as_returning()) [INFO] [stdout] 255 | | .get_result(&mut conn) [INFO] [stdout] 256 | | .await [INFO] [stdout] | |______________^ cannot infer type [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0034]: multiple applicable items in scope [INFO] [stdout] --> src/health/handlers.rs:32:10 [INFO] [stdout] | [INFO] [stdout] 32 | .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` [INFO] [stdout] help: disambiguate the method for candidate #1 [INFO] [stdout] | [INFO] [stdout] 30 ~ let health_check = diesel_async::RunQueryDsl::first(products::table [INFO] [stdout] 31 + .select(diesel::dsl::sql::("1")), &mut conn) [INFO] [stdout] | [INFO] [stdout] help: disambiguate the method for candidate #2 [INFO] [stdout] | [INFO] [stdout] 30 ~ let health_check = diesel::RunQueryDsl::first(products::table [INFO] [stdout] 31 + .select(diesel::dsl::sql::("1")), &mut conn) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0282]: type annotations needed [INFO] [stdout] --> src/health/handlers.rs:30:24 [INFO] [stdout] | [INFO] [stdout] 30 | let health_check = products::table [INFO] [stdout] | ________________________^ [INFO] [stdout] 31 | | .select(diesel::dsl::sql::("1")) [INFO] [stdout] 32 | | .first::(&mut conn) [INFO] [stdout] 33 | | .await [INFO] [stdout] | |______________^ cannot infer type [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0034]: multiple applicable items in scope [INFO] [stdout] --> src/product/handlers.rs:141:10 [INFO] [stdout] | [INFO] [stdout] 141 | .first::(&mut conn) [INFO] [stdout] | ^^^^^ multiple `first` found [INFO] [stdout] | [INFO] [stdout] = note: candidate #1 is defined in an impl of the trait `diesel::RunQueryDsl` for the type `BoxedSelectStatement<'_, ST, QS, DB, GB>` [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] 139 ~ let total = diesel::RunQueryDsl::first(count_query [INFO] [stdout] 140 + .select(diesel::dsl::count_distinct(products::id)), &mut conn) [INFO] [stdout] | [INFO] [stdout] help: disambiguate the method for candidate #2 [INFO] [stdout] | [INFO] [stdout] 139 ~ let total = diesel_async::RunQueryDsl::first(count_query [INFO] [stdout] 140 + .select(diesel::dsl::count_distinct(products::id)), &mut conn) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0282]: type annotations needed [INFO] [stdout] --> src/product/handlers.rs:139:17 [INFO] [stdout] | [INFO] [stdout] 139 | let total = count_query [INFO] [stdout] | _________________^ [INFO] [stdout] 140 | | .select(diesel::dsl::count_distinct(products::id)) [INFO] [stdout] 141 | | .first::(&mut conn) [INFO] [stdout] 142 | | .await [INFO] [stdout] | |______________^ cannot infer type [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0034]: multiple applicable items in scope [INFO] [stdout] --> src/product/handlers.rs:170:10 [INFO] [stdout] | [INFO] [stdout] 170 | .load::<(Product, serde_json::Value)>(&mut conn) [INFO] [stdout] | ^^^^ multiple `load` found [INFO] [stdout] | [INFO] [stdout] = note: candidate #1 is defined in an impl of the trait `diesel::RunQueryDsl` for the type `BoxedSelectStatement<'_, ST, QS, DB, GB>` [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] 169 - let rows = query [INFO] [stdout] 170 - .load::<(Product, serde_json::Value)>(&mut conn) [INFO] [stdout] 169 + let rows = diesel::RunQueryDsl::load(query, &mut conn) [INFO] [stdout] | [INFO] [stdout] help: disambiguate the method for candidate #2 [INFO] [stdout] | [INFO] [stdout] 169 - let rows = query [INFO] [stdout] 170 - .load::<(Product, serde_json::Value)>(&mut conn) [INFO] [stdout] 169 + let rows = diesel_async::RunQueryDsl::load(query, &mut conn) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0282]: type annotations needed [INFO] [stdout] --> src/product/handlers.rs:169:16 [INFO] [stdout] | [INFO] [stdout] 169 | let rows = query [INFO] [stdout] | ________________^ [INFO] [stdout] 170 | | .load::<(Product, serde_json::Value)>(&mut conn) [INFO] [stdout] 171 | | .await [INFO] [stdout] | |______________^ cannot infer type [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0034]: multiple applicable items in scope [INFO] [stdout] --> src/notification/handlers.rs:38:18 [INFO] [stdout] | [INFO] [stdout] 38 | .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` [INFO] [stdout] help: disambiguate the method for candidate #1 [INFO] [stdout] | [INFO] [stdout] 30 ~ let users: Vec = diesel_async::RunQueryDsl::load(users::table [INFO] [stdout] 31 + .inner_join(user_subscriptions::table.on(user_subscriptions::user_id.eq(users::id))) [INFO] [stdout] 32 + .filter( [INFO] [stdout] 33 + user_subscriptions::channel [INFO] [stdout] 34 + .eq("email") [INFO] [stdout] 35 + .and(user_subscriptions::discount_notifications.eq(true)), [INFO] [stdout] 36 + ) [INFO] [stdout] 37 + .select(users::email), &mut conn) [INFO] [stdout] | [INFO] [stdout] help: disambiguate the method for candidate #2 [INFO] [stdout] | [INFO] [stdout] 30 ~ let users: Vec = diesel::RunQueryDsl::load(users::table [INFO] [stdout] 31 + .inner_join(user_subscriptions::table.on(user_subscriptions::user_id.eq(users::id))) [INFO] [stdout] 32 + .filter( [INFO] [stdout] 33 + user_subscriptions::channel [INFO] [stdout] 34 + .eq("email") [INFO] [stdout] 35 + .and(user_subscriptions::discount_notifications.eq(true)), [INFO] [stdout] 36 + ) [INFO] [stdout] 37 + .select(users::email), &mut conn) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0282]: type annotations needed [INFO] [stdout] --> src/notification/handlers.rs:30:38 [INFO] [stdout] | [INFO] [stdout] 30 | let users: Vec = users::table [INFO] [stdout] | ______________________________________^ [INFO] [stdout] 31 | | .inner_join(user_subscriptions::table.on(user_subscriptions::user_id.eq(users::id))) [INFO] [stdout] 32 | | .filter( [INFO] [stdout] 33 | | user_subscriptions::channel [INFO] [stdout] ... | [INFO] [stdout] 38 | | .load(&mut conn) [INFO] [stdout] 39 | | .await [INFO] [stdout] | |______________________^ cannot infer type [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0034]: multiple applicable items in scope [INFO] [stdout] --> src/product/handlers.rs:36:10 [INFO] [stdout] | [INFO] [stdout] 36 | .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::RunQueryDsl` for the type `InsertStatement` [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] 33 ~ let res = diesel::RunQueryDsl::get_result(diesel::insert_into(products::table) [INFO] [stdout] 34 + .values(&payload) [INFO] [stdout] 35 + .returning(Product::as_returning()), &mut conn) [INFO] [stdout] | [INFO] [stdout] help: disambiguate the method for candidate #2 [INFO] [stdout] | [INFO] [stdout] 33 ~ let res = diesel_async::RunQueryDsl::get_result(diesel::insert_into(products::table) [INFO] [stdout] 34 + .values(&payload) [INFO] [stdout] 35 + .returning(Product::as_returning()), &mut conn) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0282]: type annotations needed [INFO] [stdout] --> src/product/handlers.rs:33:15 [INFO] [stdout] | [INFO] [stdout] 33 | let res = diesel::insert_into(products::table) [INFO] [stdout] | _______________^ [INFO] [stdout] 34 | | .values(&payload) [INFO] [stdout] 35 | | .returning(Product::as_returning()) [INFO] [stdout] 36 | | .get_result(&mut conn) [INFO] [stdout] 37 | | .await [INFO] [stdout] | |______________^ cannot infer type [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0034]: multiple applicable items in scope [INFO] [stdout] --> src/product/handlers.rs:54:10 [INFO] [stdout] | [INFO] [stdout] 54 | .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::RunQueryDsl` for the type `InsertStatement` [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] 51 ~ let product = diesel::RunQueryDsl::get_result(diesel::insert_into(products::table) [INFO] [stdout] 52 + .values(&payload.product) [INFO] [stdout] 53 + .returning(Product::as_returning()), &mut conn) [INFO] [stdout] | [INFO] [stdout] help: disambiguate the method for candidate #2 [INFO] [stdout] | [INFO] [stdout] 51 ~ let product = diesel_async::RunQueryDsl::get_result(diesel::insert_into(products::table) [INFO] [stdout] 52 + .values(&payload.product) [INFO] [stdout] 53 + .returning(Product::as_returning()), &mut conn) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0282]: type annotations needed [INFO] [stdout] --> src/product/handlers.rs:51:19 [INFO] [stdout] | [INFO] [stdout] 51 | let product = diesel::insert_into(products::table) [INFO] [stdout] | ___________________^ [INFO] [stdout] 52 | | .values(&payload.product) [INFO] [stdout] 53 | | .returning(Product::as_returning()) [INFO] [stdout] 54 | | .get_result(&mut conn) [INFO] [stdout] 55 | | .await [INFO] [stdout] | |______________^ cannot infer type [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0034]: multiple applicable items in scope [INFO] [stdout] --> src/product/handlers.rs:69:10 [INFO] [stdout] | [INFO] [stdout] 69 | .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` [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] 67 ~ diesel::RunQueryDsl::execute(diesel::insert_into(product_categories::table) [INFO] [stdout] 68 + .values(&categories), &mut conn) [INFO] [stdout] | [INFO] [stdout] help: disambiguate the method for candidate #2 [INFO] [stdout] | [INFO] [stdout] 67 ~ diesel_async::RunQueryDsl::execute(diesel::insert_into(product_categories::table) [INFO] [stdout] 68 + .values(&categories), &mut conn) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0282]: type annotations needed [INFO] [stdout] --> src/product/handlers.rs:67:5 [INFO] [stdout] | [INFO] [stdout] 67 | / diesel::insert_into(product_categories::table) [INFO] [stdout] 68 | | .values(&categories) [INFO] [stdout] 69 | | .execute(&mut conn) [INFO] [stdout] 70 | | .await [INFO] [stdout] | |______________^ cannot infer type [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0034]: multiple applicable items in scope [INFO] [stdout] --> src/product/handlers.rs:215:10 [INFO] [stdout] | [INFO] [stdout] 215 | .get_result::<(Product, serde_json::Value)>(&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` [INFO] [stdout] help: disambiguate the method for candidate #1 [INFO] [stdout] | [INFO] [stdout] 204 ~ let (product, categories_json) = diesel_async::RunQueryDsl::get_result(products::table [INFO] [stdout] 205 + .find(id) [INFO] [stdout] 206 + .left_join(product_categories::table.on(products::id.eq(product_categories::product_id))) [INFO] [stdout] 207 + .left_join(categories::table.on(product_categories::category_id.eq(categories::id))) [INFO] [stdout] 208 + .select(( [INFO] [stdout] 209 + Product::as_select(), [INFO] [stdout] 210 + sql::( [INFO] [stdout] 211 + "COALESCE(json_agg(categories.*) FILTER (WHERE categories.id IS NOT NULL), '[]')", [INFO] [stdout] 212 + ), [INFO] [stdout] 213 + )) [INFO] [stdout] 214 + .group_by(products::id), &mut conn) [INFO] [stdout] | [INFO] [stdout] help: disambiguate the method for candidate #2 [INFO] [stdout] | [INFO] [stdout] 204 ~ let (product, categories_json) = diesel::RunQueryDsl::get_result(products::table [INFO] [stdout] 205 + .find(id) [INFO] [stdout] 206 + .left_join(product_categories::table.on(products::id.eq(product_categories::product_id))) [INFO] [stdout] 207 + .left_join(categories::table.on(product_categories::category_id.eq(categories::id))) [INFO] [stdout] 208 + .select(( [INFO] [stdout] 209 + Product::as_select(), [INFO] [stdout] 210 + sql::( [INFO] [stdout] 211 + "COALESCE(json_agg(categories.*) FILTER (WHERE categories.id IS NOT NULL), '[]')", [INFO] [stdout] 212 + ), [INFO] [stdout] 213 + )) [INFO] [stdout] 214 + .group_by(products::id), &mut conn) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0282]: type annotations needed [INFO] [stdout] --> src/product/handlers.rs:204:38 [INFO] [stdout] | [INFO] [stdout] 204 | let (product, categories_json) = products::table [INFO] [stdout] | ______________________________________^ [INFO] [stdout] 205 | | .find(id) [INFO] [stdout] 206 | | .left_join(product_categories::table.on(products::id.eq(product_categories::product_id))) [INFO] [stdout] 207 | | .left_join(categories::table.on(product_categories::category_id.eq(categories::id))) [INFO] [stdout] ... | [INFO] [stdout] 215 | | .get_result::<(Product, serde_json::Value)>(&mut conn) [INFO] [stdout] 216 | | .await [INFO] [stdout] | |______________^ cannot infer type [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0034]: multiple applicable items in scope [INFO] [stdout] --> src/product/handlers.rs:237:10 [INFO] [stdout] | [INFO] [stdout] 237 | .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::RunQueryDsl` for the type `DeleteStatement` [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] 235 ~ let res = diesel::RunQueryDsl::get_result(diesel::delete(products::table.find(id)) [INFO] [stdout] 236 + .returning(Product::as_returning()), &mut conn) [INFO] [stdout] | [INFO] [stdout] help: disambiguate the method for candidate #2 [INFO] [stdout] | [INFO] [stdout] 235 ~ let res = diesel_async::RunQueryDsl::get_result(diesel::delete(products::table.find(id)) [INFO] [stdout] 236 + .returning(Product::as_returning()), &mut conn) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0282]: type annotations needed [INFO] [stdout] --> src/product/handlers.rs:235:15 [INFO] [stdout] | [INFO] [stdout] 235 | let res = diesel::delete(products::table.find(id)) [INFO] [stdout] | _______________^ [INFO] [stdout] 236 | | .returning(Product::as_returning()) [INFO] [stdout] 237 | | .get_result(&mut conn) [INFO] [stdout] 238 | | .await [INFO] [stdout] | |______________^ cannot infer type [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0034]: multiple applicable items in scope [INFO] [stdout] --> src/product/handlers.rs:256:10 [INFO] [stdout] | [INFO] [stdout] 256 | .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 `UpdateStatement` [INFO] [stdout] help: disambiguate the method for candidate #1 [INFO] [stdout] | [INFO] [stdout] 253 ~ let res = diesel_async::RunQueryDsl::get_result(diesel::update(products::table.find(id)) [INFO] [stdout] 254 + .set(&payload) [INFO] [stdout] 255 + .returning(Product::as_returning()), &mut conn) [INFO] [stdout] | [INFO] [stdout] help: disambiguate the method for candidate #2 [INFO] [stdout] | [INFO] [stdout] 253 ~ let res = diesel::RunQueryDsl::get_result(diesel::update(products::table.find(id)) [INFO] [stdout] 254 + .set(&payload) [INFO] [stdout] 255 + .returning(Product::as_returning()), &mut conn) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0282]: type annotations needed [INFO] [stdout] --> src/product/handlers.rs:253:15 [INFO] [stdout] | [INFO] [stdout] 253 | let res = diesel::update(products::table.find(id)) [INFO] [stdout] | _______________^ [INFO] [stdout] 254 | | .set(&payload) [INFO] [stdout] 255 | | .returning(Product::as_returning()) [INFO] [stdout] 256 | | .get_result(&mut conn) [INFO] [stdout] 257 | | .await [INFO] [stdout] | |______________^ cannot infer type [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0034]: multiple applicable items in scope [INFO] [stdout] --> src/product/handlers.rs:275:10 [INFO] [stdout] | [INFO] [stdout] 275 | .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` [INFO] [stdout] help: disambiguate the method for candidate #1 [INFO] [stdout] | [INFO] [stdout] 272 ~ let product = diesel_async::RunQueryDsl::get_result(products::table [INFO] [stdout] 273 + .find(id) [INFO] [stdout] 274 + .select(Product::as_select()), &mut conn) [INFO] [stdout] | [INFO] [stdout] help: disambiguate the method for candidate #2 [INFO] [stdout] | [INFO] [stdout] 272 ~ let product = diesel::RunQueryDsl::get_result(products::table [INFO] [stdout] 273 + .find(id) [INFO] [stdout] 274 + .select(Product::as_select()), &mut conn) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0282]: type annotations needed [INFO] [stdout] --> src/product/handlers.rs:272:19 [INFO] [stdout] | [INFO] [stdout] 272 | let product = products::table [INFO] [stdout] | ___________________^ [INFO] [stdout] 273 | | .find(id) [INFO] [stdout] 274 | | .select(Product::as_select()) [INFO] [stdout] 275 | | .get_result(&mut conn) [INFO] [stdout] 276 | | .await [INFO] [stdout] | |______________^ cannot infer type [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0034]: multiple applicable items in scope [INFO] [stdout] --> src/product/handlers.rs:337:14 [INFO] [stdout] | [INFO] [stdout] 337 | .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 `UpdateStatement` [INFO] [stdout] help: disambiguate the method for candidate #1 [INFO] [stdout] | [INFO] [stdout] 334 ~ diesel_async::RunQueryDsl::get_result(diesel::update(products::table.find(id)) [INFO] [stdout] 335 + .set(products::image.eq(image)) [INFO] [stdout] 336 + .returning(Product::as_returning()), &mut conn) [INFO] [stdout] | [INFO] [stdout] help: disambiguate the method for candidate #2 [INFO] [stdout] | [INFO] [stdout] 334 ~ diesel::RunQueryDsl::get_result(diesel::update(products::table.find(id)) [INFO] [stdout] 335 + .set(products::image.eq(image)) [INFO] [stdout] 336 + .returning(Product::as_returning()), &mut conn) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0282]: type annotations needed [INFO] [stdout] --> src/product/handlers.rs:334:9 [INFO] [stdout] | [INFO] [stdout] 334 | / diesel::update(products::table.find(id)) [INFO] [stdout] 335 | | .set(products::image.eq(image)) [INFO] [stdout] 336 | | .returning(Product::as_returning()) [INFO] [stdout] 337 | | .get_result(&mut conn) [INFO] [stdout] 338 | | .await [INFO] [stdout] | |__________________^ cannot infer type [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0034]: multiple applicable items in scope [INFO] [stdout] --> src/product/handlers.rs:141:10 [INFO] [stdout] | [INFO] [stdout] 141 | .first::(&mut conn) [INFO] [stdout] | ^^^^^ multiple `first` found [INFO] [stdout] | [INFO] [stdout] = note: candidate #1 is defined in an impl of the trait `diesel::RunQueryDsl` for the type `BoxedSelectStatement<'_, ST, QS, DB, GB>` [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] 139 ~ let total = diesel::RunQueryDsl::first(count_query [INFO] [stdout] 140 + .select(diesel::dsl::count_distinct(products::id)), &mut conn) [INFO] [stdout] | [INFO] [stdout] help: disambiguate the method for candidate #2 [INFO] [stdout] | [INFO] [stdout] 139 ~ let total = diesel_async::RunQueryDsl::first(count_query [INFO] [stdout] 140 + .select(diesel::dsl::count_distinct(products::id)), &mut conn) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0282]: type annotations needed [INFO] [stdout] --> src/product/handlers.rs:139:17 [INFO] [stdout] | [INFO] [stdout] 139 | let total = count_query [INFO] [stdout] | _________________^ [INFO] [stdout] 140 | | .select(diesel::dsl::count_distinct(products::id)) [INFO] [stdout] 141 | | .first::(&mut conn) [INFO] [stdout] 142 | | .await [INFO] [stdout] | |______________^ cannot infer type [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0034]: multiple applicable items in scope [INFO] [stdout] --> src/product/handlers.rs:170:10 [INFO] [stdout] | [INFO] [stdout] 170 | .load::<(Product, serde_json::Value)>(&mut conn) [INFO] [stdout] | ^^^^ multiple `load` found [INFO] [stdout] | [INFO] [stdout] = note: candidate #1 is defined in an impl of the trait `diesel::RunQueryDsl` for the type `BoxedSelectStatement<'_, ST, QS, DB, GB>` [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] 169 - let rows = query [INFO] [stdout] 170 - .load::<(Product, serde_json::Value)>(&mut conn) [INFO] [stdout] 169 + let rows = diesel::RunQueryDsl::load(query, &mut conn) [INFO] [stdout] | [INFO] [stdout] help: disambiguate the method for candidate #2 [INFO] [stdout] | [INFO] [stdout] 169 - let rows = query [INFO] [stdout] 170 - .load::<(Product, serde_json::Value)>(&mut conn) [INFO] [stdout] 169 + let rows = diesel_async::RunQueryDsl::load(query, &mut conn) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0282]: type annotations needed [INFO] [stdout] --> src/product/handlers.rs:169:16 [INFO] [stdout] | [INFO] [stdout] 169 | let rows = query [INFO] [stdout] | ________________^ [INFO] [stdout] 170 | | .load::<(Product, serde_json::Value)>(&mut conn) [INFO] [stdout] 171 | | .await [INFO] [stdout] | |______________^ cannot infer type [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0034]: multiple applicable items in scope [INFO] [stdout] --> src/user/handlers.rs:28:10 [INFO] [stdout] | [INFO] [stdout] 28 | .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` [INFO] [stdout] help: disambiguate the method for candidate #1 [INFO] [stdout] | [INFO] [stdout] 25 ~ let res = diesel_async::RunQueryDsl::get_result(profiles::table [INFO] [stdout] 26 + .filter(profiles::user_id.eq(&id)) [INFO] [stdout] 27 + .select(Profile::as_select()), &mut conn) [INFO] [stdout] | [INFO] [stdout] help: disambiguate the method for candidate #2 [INFO] [stdout] | [INFO] [stdout] 25 ~ let res = diesel::RunQueryDsl::get_result(profiles::table [INFO] [stdout] 26 + .filter(profiles::user_id.eq(&id)) [INFO] [stdout] 27 + .select(Profile::as_select()), &mut conn) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0282]: type annotations needed [INFO] [stdout] --> src/user/handlers.rs:25:15 [INFO] [stdout] | [INFO] [stdout] 25 | let res = profiles::table [INFO] [stdout] | _______________^ [INFO] [stdout] 26 | | .filter(profiles::user_id.eq(&id)) [INFO] [stdout] 27 | | .select(Profile::as_select()) [INFO] [stdout] 28 | | .get_result(&mut conn) [INFO] [stdout] 29 | | .await [INFO] [stdout] | |______________^ cannot infer type [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0034]: multiple applicable items in scope [INFO] [stdout] --> src/user/handlers.rs:48:10 [INFO] [stdout] | [INFO] [stdout] 48 | .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` [INFO] [stdout] help: disambiguate the method for candidate #1 [INFO] [stdout] | [INFO] [stdout] 45 ~ let res = diesel_async::RunQueryDsl::get_result(profiles::table [INFO] [stdout] 46 + .filter(profiles::user_id.eq(&user_id)) [INFO] [stdout] 47 + .select(Profile::as_select()), &mut conn) [INFO] [stdout] | [INFO] [stdout] help: disambiguate the method for candidate #2 [INFO] [stdout] | [INFO] [stdout] 45 ~ let res = diesel::RunQueryDsl::get_result(profiles::table [INFO] [stdout] 46 + .filter(profiles::user_id.eq(&user_id)) [INFO] [stdout] 47 + .select(Profile::as_select()), &mut conn) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0282]: type annotations needed [INFO] [stdout] --> src/user/handlers.rs:45:15 [INFO] [stdout] | [INFO] [stdout] 45 | let res = profiles::table [INFO] [stdout] | _______________^ [INFO] [stdout] 46 | | .filter(profiles::user_id.eq(&user_id)) [INFO] [stdout] 47 | | .select(Profile::as_select()) [INFO] [stdout] 48 | | .get_result(&mut conn) [INFO] [stdout] 49 | | .await [INFO] [stdout] | |______________^ cannot infer type [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0034]: multiple applicable items in scope [INFO] [stdout] --> src/user/handlers.rs:67:10 [INFO] [stdout] | [INFO] [stdout] 67 | .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 `UpdateStatement` [INFO] [stdout] help: disambiguate the method for candidate #1 [INFO] [stdout] | [INFO] [stdout] 64 ~ let res = diesel_async::RunQueryDsl::get_result(diesel::update(profiles::table.find(&id)) [INFO] [stdout] 65 + .set(&payload) [INFO] [stdout] 66 + .returning(Profile::as_returning()), &mut conn) [INFO] [stdout] | [INFO] [stdout] help: disambiguate the method for candidate #2 [INFO] [stdout] | [INFO] [stdout] 64 ~ let res = diesel::RunQueryDsl::get_result(diesel::update(profiles::table.find(&id)) [INFO] [stdout] 65 + .set(&payload) [INFO] [stdout] 66 + .returning(Profile::as_returning()), &mut conn) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0282]: type annotations needed [INFO] [stdout] --> src/user/handlers.rs:64:15 [INFO] [stdout] | [INFO] [stdout] 64 | let res = diesel::update(profiles::table.find(&id)) [INFO] [stdout] | _______________^ [INFO] [stdout] 65 | | .set(&payload) [INFO] [stdout] 66 | | .returning(Profile::as_returning()) [INFO] [stdout] 67 | | .get_result(&mut conn) [INFO] [stdout] 68 | | .await [INFO] [stdout] | |______________^ cannot infer type [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0034]: multiple applicable items in scope [INFO] [stdout] --> src/user/handlers.rs:89:10 [INFO] [stdout] | [INFO] [stdout] 89 | .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 `UpdateStatement` [INFO] [stdout] help: disambiguate the method for candidate #1 [INFO] [stdout] | [INFO] [stdout] 86 ~ let res = diesel_async::RunQueryDsl::get_result(diesel::update(profiles::table.filter(profiles::user_id.eq(&user_id))) [INFO] [stdout] 87 + .set(&payload) [INFO] [stdout] 88 + .returning(Profile::as_returning()), &mut conn) [INFO] [stdout] | [INFO] [stdout] help: disambiguate the method for candidate #2 [INFO] [stdout] | [INFO] [stdout] 86 ~ let res = diesel::RunQueryDsl::get_result(diesel::update(profiles::table.filter(profiles::user_id.eq(&user_id))) [INFO] [stdout] 87 + .set(&payload) [INFO] [stdout] 88 + .returning(Profile::as_returning()), &mut conn) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0282]: type annotations needed [INFO] [stdout] --> src/user/handlers.rs:86:15 [INFO] [stdout] | [INFO] [stdout] 86 | let res = diesel::update(profiles::table.filter(profiles::user_id.eq(&user_id))) [INFO] [stdout] | _______________^ [INFO] [stdout] 87 | | .set(&payload) [INFO] [stdout] 88 | | .returning(Profile::as_returning()) [INFO] [stdout] 89 | | .get_result(&mut conn) [INFO] [stdout] 90 | | .await [INFO] [stdout] | |______________^ cannot infer type [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0034]: multiple applicable items in scope [INFO] [stdout] --> src/product/handlers.rs:215:10 [INFO] [stdout] | [INFO] [stdout] 215 | .get_result::<(Product, serde_json::Value)>(&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` [INFO] [stdout] help: disambiguate the method for candidate #1 [INFO] [stdout] | [INFO] [stdout] 204 ~ let (product, categories_json) = diesel_async::RunQueryDsl::get_result(products::table [INFO] [stdout] 205 + .find(id) [INFO] [stdout] 206 + .left_join(product_categories::table.on(products::id.eq(product_categories::product_id))) [INFO] [stdout] 207 + .left_join(categories::table.on(product_categories::category_id.eq(categories::id))) [INFO] [stdout] 208 + .select(( [INFO] [stdout] 209 + Product::as_select(), [INFO] [stdout] 210 + sql::( [INFO] [stdout] 211 + "COALESCE(json_agg(categories.*) FILTER (WHERE categories.id IS NOT NULL), '[]')", [INFO] [stdout] 212 + ), [INFO] [stdout] 213 + )) [INFO] [stdout] 214 + .group_by(products::id), &mut conn) [INFO] [stdout] | [INFO] [stdout] help: disambiguate the method for candidate #2 [INFO] [stdout] | [INFO] [stdout] 204 ~ let (product, categories_json) = diesel::RunQueryDsl::get_result(products::table [INFO] [stdout] 205 + .find(id) [INFO] [stdout] 206 + .left_join(product_categories::table.on(products::id.eq(product_categories::product_id))) [INFO] [stdout] 207 + .left_join(categories::table.on(product_categories::category_id.eq(categories::id))) [INFO] [stdout] 208 + .select(( [INFO] [stdout] 209 + Product::as_select(), [INFO] [stdout] 210 + sql::( [INFO] [stdout] 211 + "COALESCE(json_agg(categories.*) FILTER (WHERE categories.id IS NOT NULL), '[]')", [INFO] [stdout] 212 + ), [INFO] [stdout] 213 + )) [INFO] [stdout] 214 + .group_by(products::id), &mut conn) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0282]: type annotations needed [INFO] [stdout] --> src/product/handlers.rs:204:38 [INFO] [stdout] | [INFO] [stdout] 204 | let (product, categories_json) = products::table [INFO] [stdout] | ______________________________________^ [INFO] [stdout] 205 | | .find(id) [INFO] [stdout] 206 | | .left_join(product_categories::table.on(products::id.eq(product_categories::product_id))) [INFO] [stdout] 207 | | .left_join(categories::table.on(product_categories::category_id.eq(categories::id))) [INFO] [stdout] ... | [INFO] [stdout] 215 | | .get_result::<(Product, serde_json::Value)>(&mut conn) [INFO] [stdout] 216 | | .await [INFO] [stdout] | |______________^ cannot infer type [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0034]: multiple applicable items in scope [INFO] [stdout] --> src/user/handlers.rs:114:10 [INFO] [stdout] | [INFO] [stdout] 114 | .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` [INFO] [stdout] help: disambiguate the method for candidate #1 [INFO] [stdout] | [INFO] [stdout] 107 ~ let current_default: i64 = diesel_async::RunQueryDsl::get_result(addresses::table [INFO] [stdout] 108 + .filter( [INFO] [stdout] 109 + addresses::user_id [INFO] [stdout] 110 + .eq(&user_id) [INFO] [stdout] 111 + .and(addresses::is_default.eq(true)), [INFO] [stdout] 112 + ) [INFO] [stdout] 113 + .select(diesel::dsl::count_star()), &mut conn) [INFO] [stdout] | [INFO] [stdout] help: disambiguate the method for candidate #2 [INFO] [stdout] | [INFO] [stdout] 107 ~ let current_default: i64 = diesel::RunQueryDsl::get_result(addresses::table [INFO] [stdout] 108 + .filter( [INFO] [stdout] 109 + addresses::user_id [INFO] [stdout] 110 + .eq(&user_id) [INFO] [stdout] 111 + .and(addresses::is_default.eq(true)), [INFO] [stdout] 112 + ) [INFO] [stdout] 113 + .select(diesel::dsl::count_star()), &mut conn) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0282]: type annotations needed [INFO] [stdout] --> src/user/handlers.rs:107:32 [INFO] [stdout] | [INFO] [stdout] 107 | let current_default: i64 = addresses::table [INFO] [stdout] | ________________________________^ [INFO] [stdout] 108 | | .filter( [INFO] [stdout] 109 | | addresses::user_id [INFO] [stdout] 110 | | .eq(&user_id) [INFO] [stdout] ... | [INFO] [stdout] 114 | | .get_result(&mut conn) [INFO] [stdout] 115 | | .await [INFO] [stdout] | |______________^ cannot infer type [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0034]: multiple applicable items in scope [INFO] [stdout] --> src/product/handlers.rs:237:10 [INFO] [stdout] | [INFO] [stdout] 237 | .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::RunQueryDsl` for the type `DeleteStatement` [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] 235 ~ let res = diesel::RunQueryDsl::get_result(diesel::delete(products::table.find(id)) [INFO] [stdout] 236 + .returning(Product::as_returning()), &mut conn) [INFO] [stdout] | [INFO] [stdout] help: disambiguate the method for candidate #2 [INFO] [stdout] | [INFO] [stdout] 235 ~ let res = diesel_async::RunQueryDsl::get_result(diesel::delete(products::table.find(id)) [INFO] [stdout] 236 + .returning(Product::as_returning()), &mut conn) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0282]: type annotations needed [INFO] [stdout] --> src/product/handlers.rs:235:15 [INFO] [stdout] | [INFO] [stdout] 235 | let res = diesel::delete(products::table.find(id)) [INFO] [stdout] | _______________^ [INFO] [stdout] 236 | | .returning(Product::as_returning()) [INFO] [stdout] 237 | | .get_result(&mut conn) [INFO] [stdout] 238 | | .await [INFO] [stdout] | |______________^ cannot infer type [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0034]: multiple applicable items in scope [INFO] [stdout] --> src/user/handlers.rs:162:10 [INFO] [stdout] | [INFO] [stdout] 162 | .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` [INFO] [stdout] help: disambiguate the method for candidate #1 [INFO] [stdout] | [INFO] [stdout] 159 ~ let res = diesel_async::RunQueryDsl::load(addresses::table [INFO] [stdout] 160 + .filter(addresses::user_id.eq(&id)) [INFO] [stdout] 161 + .select(Address::as_select()), &mut conn) [INFO] [stdout] | [INFO] [stdout] help: disambiguate the method for candidate #2 [INFO] [stdout] | [INFO] [stdout] 159 ~ let res = diesel::RunQueryDsl::load(addresses::table [INFO] [stdout] 160 + .filter(addresses::user_id.eq(&id)) [INFO] [stdout] 161 + .select(Address::as_select()), &mut conn) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0282]: type annotations needed [INFO] [stdout] --> src/user/handlers.rs:159:15 [INFO] [stdout] | [INFO] [stdout] 159 | let res = addresses::table [INFO] [stdout] | _______________^ [INFO] [stdout] 160 | | .filter(addresses::user_id.eq(&id)) [INFO] [stdout] 161 | | .select(Address::as_select()) [INFO] [stdout] 162 | | .load(&mut conn) [INFO] [stdout] 163 | | .await [INFO] [stdout] | |______________^ cannot infer type [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0034]: multiple applicable items in scope [INFO] [stdout] --> src/product/handlers.rs:256:10 [INFO] [stdout] | [INFO] [stdout] 256 | .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 `UpdateStatement` [INFO] [stdout] help: disambiguate the method for candidate #1 [INFO] [stdout] | [INFO] [stdout] 253 ~ let res = diesel_async::RunQueryDsl::get_result(diesel::update(products::table.find(id)) [INFO] [stdout] 254 + .set(&payload) [INFO] [stdout] 255 + .returning(Product::as_returning()), &mut conn) [INFO] [stdout] | [INFO] [stdout] help: disambiguate the method for candidate #2 [INFO] [stdout] | [INFO] [stdout] 253 ~ let res = diesel::RunQueryDsl::get_result(diesel::update(products::table.find(id)) [INFO] [stdout] 254 + .set(&payload) [INFO] [stdout] 255 + .returning(Product::as_returning()), &mut conn) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0282]: type annotations needed [INFO] [stdout] --> src/product/handlers.rs:253:15 [INFO] [stdout] | [INFO] [stdout] 253 | let res = diesel::update(products::table.find(id)) [INFO] [stdout] | _______________^ [INFO] [stdout] 254 | | .set(&payload) [INFO] [stdout] 255 | | .returning(Product::as_returning()) [INFO] [stdout] 256 | | .get_result(&mut conn) [INFO] [stdout] 257 | | .await [INFO] [stdout] | |______________^ cannot infer type [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0034]: multiple applicable items in scope [INFO] [stdout] --> src/product/handlers.rs:275:10 [INFO] [stdout] | [INFO] [stdout] 275 | .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` [INFO] [stdout] help: disambiguate the method for candidate #1 [INFO] [stdout] | [INFO] [stdout] 272 ~ let product = diesel_async::RunQueryDsl::get_result(products::table [INFO] [stdout] 273 + .find(id) [INFO] [stdout] 274 + .select(Product::as_select()), &mut conn) [INFO] [stdout] | [INFO] [stdout] help: disambiguate the method for candidate #2 [INFO] [stdout] | [INFO] [stdout] 272 ~ let product = diesel::RunQueryDsl::get_result(products::table [INFO] [stdout] 273 + .find(id) [INFO] [stdout] 274 + .select(Product::as_select()), &mut conn) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0282]: type annotations needed [INFO] [stdout] --> src/product/handlers.rs:272:19 [INFO] [stdout] | [INFO] [stdout] 272 | let product = products::table [INFO] [stdout] | ___________________^ [INFO] [stdout] 273 | | .find(id) [INFO] [stdout] 274 | | .select(Product::as_select()) [INFO] [stdout] 275 | | .get_result(&mut conn) [INFO] [stdout] 276 | | .await [INFO] [stdout] | |______________^ cannot infer type [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0034]: multiple applicable items in scope [INFO] [stdout] --> src/user/handlers.rs:181:10 [INFO] [stdout] | [INFO] [stdout] 181 | .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 `UpdateStatement` [INFO] [stdout] help: disambiguate the method for candidate #1 [INFO] [stdout] | [INFO] [stdout] 178 ~ let res = diesel_async::RunQueryDsl::get_result(diesel::update(addresses::table.find(&id)) [INFO] [stdout] 179 + .set(&payload) [INFO] [stdout] 180 + .returning(Address::as_returning()), &mut conn) [INFO] [stdout] | [INFO] [stdout] help: disambiguate the method for candidate #2 [INFO] [stdout] | [INFO] [stdout] 178 ~ let res = diesel::RunQueryDsl::get_result(diesel::update(addresses::table.find(&id)) [INFO] [stdout] 179 + .set(&payload) [INFO] [stdout] 180 + .returning(Address::as_returning()), &mut conn) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0282]: type annotations needed [INFO] [stdout] --> src/user/handlers.rs:178:15 [INFO] [stdout] | [INFO] [stdout] 178 | let res = diesel::update(addresses::table.find(&id)) [INFO] [stdout] | _______________^ [INFO] [stdout] 179 | | .set(&payload) [INFO] [stdout] 180 | | .returning(Address::as_returning()) [INFO] [stdout] 181 | | .get_result(&mut conn) [INFO] [stdout] 182 | | .await [INFO] [stdout] | |______________^ cannot infer type [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0034]: multiple applicable items in scope [INFO] [stdout] --> src/user/handlers.rs:209:18 [INFO] [stdout] | [INFO] [stdout] 209 | .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` [INFO] [stdout] help: disambiguate the method for candidate #1 [INFO] [stdout] | [INFO] [stdout] 202 ~ let cur_default: i64 = diesel_async::RunQueryDsl::get_result(addresses::table [INFO] [stdout] 203 + .filter( [INFO] [stdout] 204 + addresses::user_id [INFO] [stdout] 205 + .eq(&user_id) [INFO] [stdout] 206 + .and(addresses::is_default.eq(true)), [INFO] [stdout] 207 + ) [INFO] [stdout] 208 + .select(diesel::dsl::count_star()), &mut conn) [INFO] [stdout] | [INFO] [stdout] help: disambiguate the method for candidate #2 [INFO] [stdout] | [INFO] [stdout] 202 ~ let cur_default: i64 = diesel::RunQueryDsl::get_result(addresses::table [INFO] [stdout] 203 + .filter( [INFO] [stdout] 204 + addresses::user_id [INFO] [stdout] 205 + .eq(&user_id) [INFO] [stdout] 206 + .and(addresses::is_default.eq(true)), [INFO] [stdout] 207 + ) [INFO] [stdout] 208 + .select(diesel::dsl::count_star()), &mut conn) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0282]: type annotations needed [INFO] [stdout] --> src/user/handlers.rs:202:36 [INFO] [stdout] | [INFO] [stdout] 202 | let cur_default: i64 = addresses::table [INFO] [stdout] | ____________________________________^ [INFO] [stdout] 203 | | .filter( [INFO] [stdout] 204 | | addresses::user_id [INFO] [stdout] 205 | | .eq(&user_id) [INFO] [stdout] ... | [INFO] [stdout] 209 | | .get_result(&mut conn) [INFO] [stdout] 210 | | .await [INFO] [stdout] | |______________________^ cannot infer type [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0034]: multiple applicable items in scope [INFO] [stdout] --> src/product/handlers.rs:337:14 [INFO] [stdout] | [INFO] [stdout] 337 | .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 `UpdateStatement` [INFO] [stdout] help: disambiguate the method for candidate #1 [INFO] [stdout] | [INFO] [stdout] 334 ~ diesel_async::RunQueryDsl::get_result(diesel::update(products::table.find(id)) [INFO] [stdout] 335 + .set(products::image.eq(image)) [INFO] [stdout] 336 + .returning(Product::as_returning()), &mut conn) [INFO] [stdout] | [INFO] [stdout] help: disambiguate the method for candidate #2 [INFO] [stdout] | [INFO] [stdout] 334 ~ diesel::RunQueryDsl::get_result(diesel::update(products::table.find(id)) [INFO] [stdout] 335 + .set(products::image.eq(image)) [INFO] [stdout] 336 + .returning(Product::as_returning()), &mut conn) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0282]: type annotations needed [INFO] [stdout] --> src/product/handlers.rs:334:9 [INFO] [stdout] | [INFO] [stdout] 334 | / diesel::update(products::table.find(id)) [INFO] [stdout] 335 | | .set(products::image.eq(image)) [INFO] [stdout] 336 | | .returning(Product::as_returning()) [INFO] [stdout] 337 | | .get_result(&mut conn) [INFO] [stdout] 338 | | .await [INFO] [stdout] | |__________________^ cannot infer type [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0034]: multiple applicable items in scope [INFO] [stdout] --> src/user/handlers.rs:247:14 [INFO] [stdout] | [INFO] [stdout] 247 | .execute(&mut conn) [INFO] [stdout] | ^^^^^^^ multiple `execute` 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 `UpdateStatement` [INFO] [stdout] help: disambiguate the method for candidate #1 [INFO] [stdout] | [INFO] [stdout] 238 ~ diesel_async::RunQueryDsl::execute(diesel::update(addresses::table.find(&id)) [INFO] [stdout] 239 + .set(( [INFO] [stdout] 240 + addresses::address_line.eq(&geo.display_name), [INFO] [stdout] 241 + addresses::city.eq(&geo.address.city), [INFO] [stdout] 242 + addresses::country.eq(&geo.address.country), [INFO] [stdout] 243 + addresses::postal_code.eq(&geo.address.postcode), [INFO] [stdout] 244 + addresses::latitude.eq(&lat), [INFO] [stdout] 245 + addresses::longitude.eq(&lon), [INFO] [stdout] 246 + )), &mut conn) [INFO] [stdout] | [INFO] [stdout] help: disambiguate the method for candidate #2 [INFO] [stdout] | [INFO] [stdout] 238 ~ diesel::RunQueryDsl::execute(diesel::update(addresses::table.find(&id)) [INFO] [stdout] 239 + .set(( [INFO] [stdout] 240 + addresses::address_line.eq(&geo.display_name), [INFO] [stdout] 241 + addresses::city.eq(&geo.address.city), [INFO] [stdout] 242 + addresses::country.eq(&geo.address.country), [INFO] [stdout] 243 + addresses::postal_code.eq(&geo.address.postcode), [INFO] [stdout] 244 + addresses::latitude.eq(&lat), [INFO] [stdout] 245 + addresses::longitude.eq(&lon), [INFO] [stdout] 246 + )), &mut conn) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0282]: type annotations needed [INFO] [stdout] --> src/user/handlers.rs:238:9 [INFO] [stdout] | [INFO] [stdout] 238 | / diesel::update(addresses::table.find(&id)) [INFO] [stdout] 239 | | .set(( [INFO] [stdout] 240 | | addresses::address_line.eq(&geo.display_name), [INFO] [stdout] 241 | | addresses::city.eq(&geo.address.city), [INFO] [stdout] ... | [INFO] [stdout] 247 | | .execute(&mut conn) [INFO] [stdout] 248 | | .await [INFO] [stdout] | |__________________^ cannot infer type [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0034]: multiple applicable items in scope [INFO] [stdout] --> src/user/handlers.rs:262:6 [INFO] [stdout] | [INFO] [stdout] 262 | .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 `UpdateStatement` [INFO] [stdout] help: disambiguate the method for candidate #1 [INFO] [stdout] | [INFO] [stdout] 257 ~ let res = diesel_async::RunQueryDsl::get_result(diesel::update( [INFO] [stdout] 258 + addresses::table.filter(addresses::user_id.eq(&user_id).and(addresses::id.eq(&id))), [INFO] [stdout] 259 + ) [INFO] [stdout] 260 + .set(&address_update) [INFO] [stdout] 261 + .returning(Address::as_returning()), &mut conn) [INFO] [stdout] | [INFO] [stdout] help: disambiguate the method for candidate #2 [INFO] [stdout] | [INFO] [stdout] 257 ~ let res = diesel::RunQueryDsl::get_result(diesel::update( [INFO] [stdout] 258 + addresses::table.filter(addresses::user_id.eq(&user_id).and(addresses::id.eq(&id))), [INFO] [stdout] 259 + ) [INFO] [stdout] 260 + .set(&address_update) [INFO] [stdout] 261 + .returning(Address::as_returning()), &mut conn) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0282]: type annotations needed [INFO] [stdout] --> src/user/handlers.rs:257:15 [INFO] [stdout] | [INFO] [stdout] 257 | let res = diesel::update( [INFO] [stdout] | _______________^ [INFO] [stdout] 258 | | addresses::table.filter(addresses::user_id.eq(&user_id).and(addresses::id.eq(&id))), [INFO] [stdout] 259 | | ) [INFO] [stdout] 260 | | .set(&address_update) [INFO] [stdout] 261 | | .returning(Address::as_returning()) [INFO] [stdout] 262 | | .get_result(&mut conn) [INFO] [stdout] 263 | | .await [INFO] [stdout] | |__________^ cannot infer type [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0034]: multiple applicable items in scope [INFO] [stdout] --> src/user/handlers.rs:284:6 [INFO] [stdout] | [INFO] [stdout] 284 | .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::RunQueryDsl` for the type `DeleteStatement` [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] 280 ~ let res = diesel::RunQueryDsl::get_result(diesel::delete( [INFO] [stdout] 281 + addresses::table.filter(addresses::user_id.eq(&user_id).and(addresses::id.eq(&id))), [INFO] [stdout] 282 + ) [INFO] [stdout] 283 + .returning(Address::as_returning()), &mut conn) [INFO] [stdout] | [INFO] [stdout] help: disambiguate the method for candidate #2 [INFO] [stdout] | [INFO] [stdout] 280 ~ let res = diesel_async::RunQueryDsl::get_result(diesel::delete( [INFO] [stdout] 281 + addresses::table.filter(addresses::user_id.eq(&user_id).and(addresses::id.eq(&id))), [INFO] [stdout] 282 + ) [INFO] [stdout] 283 + .returning(Address::as_returning()), &mut conn) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0282]: type annotations needed [INFO] [stdout] --> src/user/handlers.rs:280:15 [INFO] [stdout] | [INFO] [stdout] 280 | let res = diesel::delete( [INFO] [stdout] | _______________^ [INFO] [stdout] 281 | | addresses::table.filter(addresses::user_id.eq(&user_id).and(addresses::id.eq(&id))), [INFO] [stdout] 282 | | ) [INFO] [stdout] 283 | | .returning(Address::as_returning()) [INFO] [stdout] 284 | | .get_result(&mut conn) [INFO] [stdout] 285 | | .await [INFO] [stdout] | |__________^ cannot infer type [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0034]: multiple applicable items in scope [INFO] [stdout] --> src/user/handlers.rs:305:10 [INFO] [stdout] | [INFO] [stdout] 305 | .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` [INFO] [stdout] help: disambiguate the method for candidate #1 [INFO] [stdout] | [INFO] [stdout] 301 ~ let res = diesel_async::RunQueryDsl::load(addresses::table [INFO] [stdout] 302 + .filter(addresses::user_id.eq(&user_id)) [INFO] [stdout] 303 + .select(Address::as_select()) [INFO] [stdout] 304 + .order_by(addresses::is_default.desc()), &mut conn) [INFO] [stdout] | [INFO] [stdout] help: disambiguate the method for candidate #2 [INFO] [stdout] | [INFO] [stdout] 301 ~ let res = diesel::RunQueryDsl::load(addresses::table [INFO] [stdout] 302 + .filter(addresses::user_id.eq(&user_id)) [INFO] [stdout] 303 + .select(Address::as_select()) [INFO] [stdout] 304 + .order_by(addresses::is_default.desc()), &mut conn) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0282]: type annotations needed [INFO] [stdout] --> src/user/handlers.rs:301:15 [INFO] [stdout] | [INFO] [stdout] 301 | let res = addresses::table [INFO] [stdout] | _______________^ [INFO] [stdout] 302 | | .filter(addresses::user_id.eq(&user_id)) [INFO] [stdout] 303 | | .select(Address::as_select()) [INFO] [stdout] 304 | | .order_by(addresses::is_default.desc()) [INFO] [stdout] 305 | | .load(&mut conn) [INFO] [stdout] 306 | | .await [INFO] [stdout] | |______________^ cannot infer type [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0034]: multiple applicable items in scope [INFO] [stdout] --> src/user/handlers.rs:329:10 [INFO] [stdout] | [INFO] [stdout] 329 | .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` [INFO] [stdout] help: disambiguate the method for candidate #1 [INFO] [stdout] | [INFO] [stdout] 322 ~ let res = diesel_async::RunQueryDsl::get_result(addresses::table [INFO] [stdout] 323 + .filter( [INFO] [stdout] 324 + addresses::user_id [INFO] [stdout] 325 + .eq(&user_id) [INFO] [stdout] 326 + .and(addresses::is_default.eq(true)), [INFO] [stdout] 327 + ) [INFO] [stdout] 328 + .select(Address::as_select()), &mut conn) [INFO] [stdout] | [INFO] [stdout] help: disambiguate the method for candidate #2 [INFO] [stdout] | [INFO] [stdout] 322 ~ let res = diesel::RunQueryDsl::get_result(addresses::table [INFO] [stdout] 323 + .filter( [INFO] [stdout] 324 + addresses::user_id [INFO] [stdout] 325 + .eq(&user_id) [INFO] [stdout] 326 + .and(addresses::is_default.eq(true)), [INFO] [stdout] 327 + ) [INFO] [stdout] 328 + .select(Address::as_select()), &mut conn) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0282]: type annotations needed [INFO] [stdout] --> src/user/handlers.rs:322:15 [INFO] [stdout] | [INFO] [stdout] 322 | let res = addresses::table [INFO] [stdout] | _______________^ [INFO] [stdout] 323 | | .filter( [INFO] [stdout] 324 | | addresses::user_id [INFO] [stdout] 325 | | .eq(&user_id) [INFO] [stdout] ... | [INFO] [stdout] 329 | | .get_result(&mut conn) [INFO] [stdout] 330 | | .await [INFO] [stdout] | |______________^ cannot infer type [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0034]: multiple applicable items in scope [INFO] [stdout] --> src/user/handlers.rs:358:18 [INFO] [stdout] | [INFO] [stdout] 358 | .execute(&mut conn) [INFO] [stdout] | ^^^^^^^ multiple `execute` 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 `UpdateStatement` [INFO] [stdout] help: disambiguate the method for candidate #1 [INFO] [stdout] | [INFO] [stdout] 350 ~ let addresses = diesel_async::RunQueryDsl::execute(diesel::update( [INFO] [stdout] 351 + addresses::table.filter( [INFO] [stdout] 352 + addresses::user_id [INFO] [stdout] 353 + .eq(&user_id) [INFO] [stdout] 354 + .and(addresses::is_default.eq(true)), [INFO] [stdout] 355 + ), [INFO] [stdout] 356 + ) [INFO] [stdout] 357 + .set(addresses::is_default.eq(false)), &mut conn) [INFO] [stdout] | [INFO] [stdout] help: disambiguate the method for candidate #2 [INFO] [stdout] | [INFO] [stdout] 350 ~ let addresses = diesel::RunQueryDsl::execute(diesel::update( [INFO] [stdout] 351 + addresses::table.filter( [INFO] [stdout] 352 + addresses::user_id [INFO] [stdout] 353 + .eq(&user_id) [INFO] [stdout] 354 + .and(addresses::is_default.eq(true)), [INFO] [stdout] 355 + ), [INFO] [stdout] 356 + ) [INFO] [stdout] 357 + .set(addresses::is_default.eq(false)), &mut conn) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0034]: multiple applicable items in scope [INFO] [stdout] --> src/user/handlers.rs:367:18 [INFO] [stdout] | [INFO] [stdout] 367 | .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 `UpdateStatement` [INFO] [stdout] help: disambiguate the method for candidate #1 [INFO] [stdout] | [INFO] [stdout] 361 ~ let res = diesel_async::RunQueryDsl::get_result(diesel::update( [INFO] [stdout] 362 + addresses::table [INFO] [stdout] 363 + .filter(addresses::id.eq(&id).and(addresses::user_id.eq(&user_id))), [INFO] [stdout] 364 + ) [INFO] [stdout] 365 + .set(addresses::is_default.eq(true)) [INFO] [stdout] 366 + .returning(Address::as_returning()), &mut conn) [INFO] [stdout] | [INFO] [stdout] help: disambiguate the method for candidate #2 [INFO] [stdout] | [INFO] [stdout] 361 ~ let res = diesel::RunQueryDsl::get_result(diesel::update( [INFO] [stdout] 362 + addresses::table [INFO] [stdout] 363 + .filter(addresses::id.eq(&id).and(addresses::user_id.eq(&user_id))), [INFO] [stdout] 364 + ) [INFO] [stdout] 365 + .set(addresses::is_default.eq(true)) [INFO] [stdout] 366 + .returning(Address::as_returning()), &mut conn) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0034]: multiple applicable items in scope [INFO] [stdout] --> src/user/handlers.rs:28:10 [INFO] [stdout] | [INFO] [stdout] 28 | .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` [INFO] [stdout] help: disambiguate the method for candidate #1 [INFO] [stdout] | [INFO] [stdout] 25 ~ let res = diesel_async::RunQueryDsl::get_result(profiles::table [INFO] [stdout] 26 + .filter(profiles::user_id.eq(&id)) [INFO] [stdout] 27 + .select(Profile::as_select()), &mut conn) [INFO] [stdout] | [INFO] [stdout] help: disambiguate the method for candidate #2 [INFO] [stdout] | [INFO] [stdout] 25 ~ let res = diesel::RunQueryDsl::get_result(profiles::table [INFO] [stdout] 26 + .filter(profiles::user_id.eq(&id)) [INFO] [stdout] 27 + .select(Profile::as_select()), &mut conn) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0282]: type annotations needed [INFO] [stdout] --> src/user/handlers.rs:25:15 [INFO] [stdout] | [INFO] [stdout] 25 | let res = profiles::table [INFO] [stdout] | _______________^ [INFO] [stdout] 26 | | .filter(profiles::user_id.eq(&id)) [INFO] [stdout] 27 | | .select(Profile::as_select()) [INFO] [stdout] 28 | | .get_result(&mut conn) [INFO] [stdout] 29 | | .await [INFO] [stdout] | |______________^ cannot infer type [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0034]: multiple applicable items in scope [INFO] [stdout] --> src/user/handlers.rs:48:10 [INFO] [stdout] | [INFO] [stdout] 48 | .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` [INFO] [stdout] help: disambiguate the method for candidate #1 [INFO] [stdout] | [INFO] [stdout] 45 ~ let res = diesel_async::RunQueryDsl::get_result(profiles::table [INFO] [stdout] 46 + .filter(profiles::user_id.eq(&user_id)) [INFO] [stdout] 47 + .select(Profile::as_select()), &mut conn) [INFO] [stdout] | [INFO] [stdout] help: disambiguate the method for candidate #2 [INFO] [stdout] | [INFO] [stdout] 45 ~ let res = diesel::RunQueryDsl::get_result(profiles::table [INFO] [stdout] 46 + .filter(profiles::user_id.eq(&user_id)) [INFO] [stdout] 47 + .select(Profile::as_select()), &mut conn) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0282]: type annotations needed [INFO] [stdout] --> src/user/handlers.rs:45:15 [INFO] [stdout] | [INFO] [stdout] 45 | let res = profiles::table [INFO] [stdout] | _______________^ [INFO] [stdout] 46 | | .filter(profiles::user_id.eq(&user_id)) [INFO] [stdout] 47 | | .select(Profile::as_select()) [INFO] [stdout] 48 | | .get_result(&mut conn) [INFO] [stdout] 49 | | .await [INFO] [stdout] | |______________^ cannot infer type [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0034]: multiple applicable items in scope [INFO] [stdout] --> src/user/handlers.rs:426:10 [INFO] [stdout] | [INFO] [stdout] 426 | .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` [INFO] [stdout] help: disambiguate the method for candidate #1 [INFO] [stdout] | [INFO] [stdout] 423 ~ let res = diesel_async::RunQueryDsl::load(user_subscriptions::table [INFO] [stdout] 424 + .filter(user_subscriptions::user_id.eq(&user_id)) [INFO] [stdout] 425 + .select(UserSubscription::as_select()), &mut conn) [INFO] [stdout] | [INFO] [stdout] help: disambiguate the method for candidate #2 [INFO] [stdout] | [INFO] [stdout] 423 ~ let res = diesel::RunQueryDsl::load(user_subscriptions::table [INFO] [stdout] 424 + .filter(user_subscriptions::user_id.eq(&user_id)) [INFO] [stdout] 425 + .select(UserSubscription::as_select()), &mut conn) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0282]: type annotations needed [INFO] [stdout] --> src/user/handlers.rs:423:15 [INFO] [stdout] | [INFO] [stdout] 423 | let res = user_subscriptions::table [INFO] [stdout] | _______________^ [INFO] [stdout] 424 | | .filter(user_subscriptions::user_id.eq(&user_id)) [INFO] [stdout] 425 | | .select(UserSubscription::as_select()) [INFO] [stdout] 426 | | .load(&mut conn) [INFO] [stdout] 427 | | .await [INFO] [stdout] | |______________^ cannot infer type [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0034]: multiple applicable items in scope [INFO] [stdout] --> src/user/handlers.rs:67:10 [INFO] [stdout] | [INFO] [stdout] 67 | .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 `UpdateStatement` [INFO] [stdout] help: disambiguate the method for candidate #1 [INFO] [stdout] | [INFO] [stdout] 64 ~ let res = diesel_async::RunQueryDsl::get_result(diesel::update(profiles::table.find(&id)) [INFO] [stdout] 65 + .set(&payload) [INFO] [stdout] 66 + .returning(Profile::as_returning()), &mut conn) [INFO] [stdout] | [INFO] [stdout] help: disambiguate the method for candidate #2 [INFO] [stdout] | [INFO] [stdout] 64 ~ let res = diesel::RunQueryDsl::get_result(diesel::update(profiles::table.find(&id)) [INFO] [stdout] 65 + .set(&payload) [INFO] [stdout] 66 + .returning(Profile::as_returning()), &mut conn) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0282]: type annotations needed [INFO] [stdout] --> src/user/handlers.rs:64:15 [INFO] [stdout] | [INFO] [stdout] 64 | let res = diesel::update(profiles::table.find(&id)) [INFO] [stdout] | _______________^ [INFO] [stdout] 65 | | .set(&payload) [INFO] [stdout] 66 | | .returning(Profile::as_returning()) [INFO] [stdout] 67 | | .get_result(&mut conn) [INFO] [stdout] 68 | | .await [INFO] [stdout] | |______________^ cannot infer type [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0034]: multiple applicable items in scope [INFO] [stdout] --> src/user/handlers.rs:89:10 [INFO] [stdout] | [INFO] [stdout] 89 | .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 `UpdateStatement` [INFO] [stdout] help: disambiguate the method for candidate #1 [INFO] [stdout] | [INFO] [stdout] 86 ~ let res = diesel_async::RunQueryDsl::get_result(diesel::update(profiles::table.filter(profiles::user_id.eq(&user_id))) [INFO] [stdout] 87 + .set(&payload) [INFO] [stdout] 88 + .returning(Profile::as_returning()), &mut conn) [INFO] [stdout] | [INFO] [stdout] help: disambiguate the method for candidate #2 [INFO] [stdout] | [INFO] [stdout] 86 ~ let res = diesel::RunQueryDsl::get_result(diesel::update(profiles::table.filter(profiles::user_id.eq(&user_id))) [INFO] [stdout] 87 + .set(&payload) [INFO] [stdout] 88 + .returning(Profile::as_returning()), &mut conn) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0034]: multiple applicable items in scope [INFO] [stdout] --> src/user/handlers.rs:454:6 [INFO] [stdout] | [INFO] [stdout] 454 | .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 `UpdateStatement` [INFO] [stdout] help: disambiguate the method for candidate #1 [INFO] [stdout] | [INFO] [stdout] 445 ~ let res = diesel_async::RunQueryDsl::get_result(diesel::update( [INFO] [stdout] 446 + user_subscriptions::table.filter( [INFO] [stdout] 447 + user_subscriptions::channel [INFO] [stdout] 448 + .eq(&channel) [INFO] [stdout] 449 + .and(user_subscriptions::user_id.eq(&user_id)), [INFO] [stdout] 450 + ), [INFO] [stdout] 451 + ) [INFO] [stdout] 452 + .set(&payload) [INFO] [stdout] 453 + .returning(UserSubscription::as_returning()), &mut conn) [INFO] [stdout] | [INFO] [stdout] help: disambiguate the method for candidate #2 [INFO] [stdout] | [INFO] [stdout] 445 ~ let res = diesel::RunQueryDsl::get_result(diesel::update( [INFO] [stdout] 446 + user_subscriptions::table.filter( [INFO] [stdout] 447 + user_subscriptions::channel [INFO] [stdout] 448 + .eq(&channel) [INFO] [stdout] 449 + .and(user_subscriptions::user_id.eq(&user_id)), [INFO] [stdout] 450 + ), [INFO] [stdout] 451 + ) [INFO] [stdout] 452 + .set(&payload) [INFO] [stdout] 453 + .returning(UserSubscription::as_returning()), &mut conn) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0282]: type annotations needed [INFO] [stdout] --> src/user/handlers.rs:86:15 [INFO] [stdout] | [INFO] [stdout] 86 | let res = diesel::update(profiles::table.filter(profiles::user_id.eq(&user_id))) [INFO] [stdout] | _______________^ [INFO] [stdout] 87 | | .set(&payload) [INFO] [stdout] 88 | | .returning(Profile::as_returning()) [INFO] [stdout] 89 | | .get_result(&mut conn) [INFO] [stdout] 90 | | .await [INFO] [stdout] | |______________^ cannot infer type [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0282]: type annotations needed [INFO] [stdout] --> src/user/handlers.rs:445:15 [INFO] [stdout] | [INFO] [stdout] 445 | let res = diesel::update( [INFO] [stdout] | _______________^ [INFO] [stdout] 446 | | user_subscriptions::table.filter( [INFO] [stdout] 447 | | user_subscriptions::channel [INFO] [stdout] 448 | | .eq(&channel) [INFO] [stdout] ... | [INFO] [stdout] 454 | | .get_result(&mut conn) [INFO] [stdout] 455 | | .await [INFO] [stdout] | |__________^ cannot infer type [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0034]: multiple applicable items in scope [INFO] [stdout] --> src/user/handlers.rs:114:10 [INFO] [stdout] | [INFO] [stdout] 114 | .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` [INFO] [stdout] help: disambiguate the method for candidate #1 [INFO] [stdout] | [INFO] [stdout] 107 ~ let current_default: i64 = diesel_async::RunQueryDsl::get_result(addresses::table [INFO] [stdout] 108 + .filter( [INFO] [stdout] 109 + addresses::user_id [INFO] [stdout] 110 + .eq(&user_id) [INFO] [stdout] 111 + .and(addresses::is_default.eq(true)), [INFO] [stdout] 112 + ) [INFO] [stdout] 113 + .select(diesel::dsl::count_star()), &mut conn) [INFO] [stdout] | [INFO] [stdout] help: disambiguate the method for candidate #2 [INFO] [stdout] | [INFO] [stdout] 107 ~ let current_default: i64 = diesel::RunQueryDsl::get_result(addresses::table [INFO] [stdout] 108 + .filter( [INFO] [stdout] 109 + addresses::user_id [INFO] [stdout] 110 + .eq(&user_id) [INFO] [stdout] 111 + .and(addresses::is_default.eq(true)), [INFO] [stdout] 112 + ) [INFO] [stdout] 113 + .select(diesel::dsl::count_star()), &mut conn) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0282]: type annotations needed [INFO] [stdout] --> src/user/handlers.rs:107:32 [INFO] [stdout] | [INFO] [stdout] 107 | let current_default: i64 = addresses::table [INFO] [stdout] | ________________________________^ [INFO] [stdout] 108 | | .filter( [INFO] [stdout] 109 | | addresses::user_id [INFO] [stdout] 110 | | .eq(&user_id) [INFO] [stdout] ... | [INFO] [stdout] 114 | | .get_result(&mut conn) [INFO] [stdout] 115 | | .await [INFO] [stdout] | |______________^ cannot infer type [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0034]: multiple applicable items in scope [INFO] [stdout] --> src/user/handlers.rs:483:10 [INFO] [stdout] | [INFO] [stdout] 483 | .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::RunQueryDsl` for the type `InsertStatement` [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] 480 ~ let res = diesel::RunQueryDsl::get_result(diesel::insert_into(user_subscriptions::table) [INFO] [stdout] 481 + .values(&new_subscription) [INFO] [stdout] 482 + .returning(UserSubscription::as_returning()), &mut conn) [INFO] [stdout] | [INFO] [stdout] help: disambiguate the method for candidate #2 [INFO] [stdout] | [INFO] [stdout] 480 ~ let res = diesel_async::RunQueryDsl::get_result(diesel::insert_into(user_subscriptions::table) [INFO] [stdout] 481 + .values(&new_subscription) [INFO] [stdout] 482 + .returning(UserSubscription::as_returning()), &mut conn) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0282]: type annotations needed [INFO] [stdout] --> src/user/handlers.rs:480:15 [INFO] [stdout] | [INFO] [stdout] 480 | let res = diesel::insert_into(user_subscriptions::table) [INFO] [stdout] | _______________^ [INFO] [stdout] 481 | | .values(&new_subscription) [INFO] [stdout] 482 | | .returning(UserSubscription::as_returning()) [INFO] [stdout] 483 | | .get_result(&mut conn) [INFO] [stdout] 484 | | .await [INFO] [stdout] | |______________^ cannot infer type [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0034]: multiple applicable items in scope [INFO] [stdout] --> src/user/handlers.rs:162:10 [INFO] [stdout] | [INFO] [stdout] 162 | .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` [INFO] [stdout] help: disambiguate the method for candidate #1 [INFO] [stdout] | [INFO] [stdout] 159 ~ let res = diesel_async::RunQueryDsl::load(addresses::table [INFO] [stdout] 160 + .filter(addresses::user_id.eq(&id)) [INFO] [stdout] 161 + .select(Address::as_select()), &mut conn) [INFO] [stdout] | [INFO] [stdout] help: disambiguate the method for candidate #2 [INFO] [stdout] | [INFO] [stdout] 159 ~ let res = diesel::RunQueryDsl::load(addresses::table [INFO] [stdout] 160 + .filter(addresses::user_id.eq(&id)) [INFO] [stdout] 161 + .select(Address::as_select()), &mut conn) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0282]: type annotations needed [INFO] [stdout] --> src/user/handlers.rs:159:15 [INFO] [stdout] | [INFO] [stdout] 159 | let res = addresses::table [INFO] [stdout] | _______________^ [INFO] [stdout] 160 | | .filter(addresses::user_id.eq(&id)) [INFO] [stdout] 161 | | .select(Address::as_select()) [INFO] [stdout] 162 | | .load(&mut conn) [INFO] [stdout] 163 | | .await [INFO] [stdout] | |______________^ cannot infer type [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0034]: multiple applicable items in scope [INFO] [stdout] --> src/user/handlers.rs:510:6 [INFO] [stdout] | [INFO] [stdout] 510 | .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::RunQueryDsl` for the type `DeleteStatement` [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] 502 ~ let res = diesel::RunQueryDsl::get_result(diesel::delete( [INFO] [stdout] 503 + user_subscriptions::table.filter( [INFO] [stdout] 504 + user_subscriptions::channel [INFO] [stdout] 505 + .eq(&channel) [INFO] [stdout] 506 + .and(user_subscriptions::user_id.eq(&user_id)), [INFO] [stdout] 507 + ), [INFO] [stdout] 508 + ) [INFO] [stdout] 509 + .returning(UserSubscription::as_returning()), &mut conn) [INFO] [stdout] | [INFO] [stdout] help: disambiguate the method for candidate #2 [INFO] [stdout] | [INFO] [stdout] 502 ~ let res = diesel_async::RunQueryDsl::get_result(diesel::delete( [INFO] [stdout] 503 + user_subscriptions::table.filter( [INFO] [stdout] 504 + user_subscriptions::channel [INFO] [stdout] 505 + .eq(&channel) [INFO] [stdout] 506 + .and(user_subscriptions::user_id.eq(&user_id)), [INFO] [stdout] 507 + ), [INFO] [stdout] 508 + ) [INFO] [stdout] 509 + .returning(UserSubscription::as_returning()), &mut conn) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0282]: type annotations needed [INFO] [stdout] --> src/user/handlers.rs:502:15 [INFO] [stdout] | [INFO] [stdout] 502 | let res = diesel::delete( [INFO] [stdout] | _______________^ [INFO] [stdout] 503 | | user_subscriptions::table.filter( [INFO] [stdout] 504 | | user_subscriptions::channel [INFO] [stdout] 505 | | .eq(&channel) [INFO] [stdout] ... | [INFO] [stdout] 510 | | .get_result(&mut conn) [INFO] [stdout] 511 | | .await [INFO] [stdout] | |__________^ cannot infer type [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0034]: multiple applicable items in scope [INFO] [stdout] --> src/user/handlers.rs:181:10 [INFO] [stdout] | [INFO] [stdout] 181 | .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 `UpdateStatement` [INFO] [stdout] help: disambiguate the method for candidate #1 [INFO] [stdout] | [INFO] [stdout] 178 ~ let res = diesel_async::RunQueryDsl::get_result(diesel::update(addresses::table.find(&id)) [INFO] [stdout] 179 + .set(&payload) [INFO] [stdout] 180 + .returning(Address::as_returning()), &mut conn) [INFO] [stdout] | [INFO] [stdout] help: disambiguate the method for candidate #2 [INFO] [stdout] | [INFO] [stdout] 178 ~ let res = diesel::RunQueryDsl::get_result(diesel::update(addresses::table.find(&id)) [INFO] [stdout] 179 + .set(&payload) [INFO] [stdout] 180 + .returning(Address::as_returning()), &mut conn) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0034]: multiple applicable items in scope [INFO] [stdout] --> src/user/handlers.rs:535:10 [INFO] [stdout] | [INFO] [stdout] 535 | .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` [INFO] [stdout] help: disambiguate the method for candidate #1 [INFO] [stdout] | [INFO] [stdout] 528 ~ let res = diesel_async::RunQueryDsl::get_result(user_subscriptions::table [INFO] [stdout] 529 + .filter( [INFO] [stdout] 530 + user_subscriptions::user_id [INFO] [stdout] 531 + .eq(&user_id) [INFO] [stdout] 532 + .and(user_subscriptions::channel.eq(&channel)), [INFO] [stdout] 533 + ) [INFO] [stdout] 534 + .select(UserSubscription::as_select()), &mut conn) [INFO] [stdout] | [INFO] [stdout] help: disambiguate the method for candidate #2 [INFO] [stdout] | [INFO] [stdout] 528 ~ let res = diesel::RunQueryDsl::get_result(user_subscriptions::table [INFO] [stdout] 529 + .filter( [INFO] [stdout] 530 + user_subscriptions::user_id [INFO] [stdout] 531 + .eq(&user_id) [INFO] [stdout] 532 + .and(user_subscriptions::channel.eq(&channel)), [INFO] [stdout] 533 + ) [INFO] [stdout] 534 + .select(UserSubscription::as_select()), &mut conn) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0282]: type annotations needed [INFO] [stdout] --> src/user/handlers.rs:528:15 [INFO] [stdout] | [INFO] [stdout] 528 | let res = user_subscriptions::table [INFO] [stdout] | _______________^ [INFO] [stdout] 529 | | .filter( [INFO] [stdout] 530 | | user_subscriptions::user_id [INFO] [stdout] 531 | | .eq(&user_id) [INFO] [stdout] ... | [INFO] [stdout] 535 | | .get_result(&mut conn) [INFO] [stdout] 536 | | .await [INFO] [stdout] | |______________^ cannot infer type [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0282]: type annotations needed [INFO] [stdout] --> src/user/handlers.rs:178:15 [INFO] [stdout] | [INFO] [stdout] 178 | let res = diesel::update(addresses::table.find(&id)) [INFO] [stdout] | _______________^ [INFO] [stdout] 179 | | .set(&payload) [INFO] [stdout] 180 | | .returning(Address::as_returning()) [INFO] [stdout] 181 | | .get_result(&mut conn) [INFO] [stdout] 182 | | .await [INFO] [stdout] | |______________^ cannot infer type [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0034]: multiple applicable items in scope [INFO] [stdout] --> src/user/handlers.rs:209:18 [INFO] [stdout] | [INFO] [stdout] 209 | .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` [INFO] [stdout] help: disambiguate the method for candidate #1 [INFO] [stdout] | [INFO] [stdout] 202 ~ let cur_default: i64 = diesel_async::RunQueryDsl::get_result(addresses::table [INFO] [stdout] 203 + .filter( [INFO] [stdout] 204 + addresses::user_id [INFO] [stdout] 205 + .eq(&user_id) [INFO] [stdout] 206 + .and(addresses::is_default.eq(true)), [INFO] [stdout] 207 + ) [INFO] [stdout] 208 + .select(diesel::dsl::count_star()), &mut conn) [INFO] [stdout] | [INFO] [stdout] help: disambiguate the method for candidate #2 [INFO] [stdout] | [INFO] [stdout] 202 ~ let cur_default: i64 = diesel::RunQueryDsl::get_result(addresses::table [INFO] [stdout] 203 + .filter( [INFO] [stdout] 204 + addresses::user_id [INFO] [stdout] 205 + .eq(&user_id) [INFO] [stdout] 206 + .and(addresses::is_default.eq(true)), [INFO] [stdout] 207 + ) [INFO] [stdout] 208 + .select(diesel::dsl::count_star()), &mut conn) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0282]: type annotations needed [INFO] [stdout] --> src/user/handlers.rs:202:36 [INFO] [stdout] | [INFO] [stdout] 202 | let cur_default: i64 = addresses::table [INFO] [stdout] | ____________________________________^ [INFO] [stdout] 203 | | .filter( [INFO] [stdout] 204 | | addresses::user_id [INFO] [stdout] 205 | | .eq(&user_id) [INFO] [stdout] ... | [INFO] [stdout] 209 | | .get_result(&mut conn) [INFO] [stdout] 210 | | .await [INFO] [stdout] | |______________________^ cannot infer type [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0034]: multiple applicable items in scope [INFO] [stdout] --> src/user/handlers.rs:247:14 [INFO] [stdout] | [INFO] [stdout] 247 | .execute(&mut conn) [INFO] [stdout] | ^^^^^^^ multiple `execute` 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 `UpdateStatement` [INFO] [stdout] help: disambiguate the method for candidate #1 [INFO] [stdout] | [INFO] [stdout] 238 ~ diesel_async::RunQueryDsl::execute(diesel::update(addresses::table.find(&id)) [INFO] [stdout] 239 + .set(( [INFO] [stdout] 240 + addresses::address_line.eq(&geo.display_name), [INFO] [stdout] 241 + addresses::city.eq(&geo.address.city), [INFO] [stdout] 242 + addresses::country.eq(&geo.address.country), [INFO] [stdout] 243 + addresses::postal_code.eq(&geo.address.postcode), [INFO] [stdout] 244 + addresses::latitude.eq(&lat), [INFO] [stdout] 245 + addresses::longitude.eq(&lon), [INFO] [stdout] 246 + )), &mut conn) [INFO] [stdout] | [INFO] [stdout] help: disambiguate the method for candidate #2 [INFO] [stdout] | [INFO] [stdout] 238 ~ diesel::RunQueryDsl::execute(diesel::update(addresses::table.find(&id)) [INFO] [stdout] 239 + .set(( [INFO] [stdout] 240 + addresses::address_line.eq(&geo.display_name), [INFO] [stdout] 241 + addresses::city.eq(&geo.address.city), [INFO] [stdout] 242 + addresses::country.eq(&geo.address.country), [INFO] [stdout] 243 + addresses::postal_code.eq(&geo.address.postcode), [INFO] [stdout] 244 + addresses::latitude.eq(&lat), [INFO] [stdout] 245 + addresses::longitude.eq(&lon), [INFO] [stdout] 246 + )), &mut conn) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0282]: type annotations needed [INFO] [stdout] --> src/user/handlers.rs:238:9 [INFO] [stdout] | [INFO] [stdout] 238 | / diesel::update(addresses::table.find(&id)) [INFO] [stdout] 239 | | .set(( [INFO] [stdout] 240 | | addresses::address_line.eq(&geo.display_name), [INFO] [stdout] 241 | | addresses::city.eq(&geo.address.city), [INFO] [stdout] ... | [INFO] [stdout] 247 | | .execute(&mut conn) [INFO] [stdout] 248 | | .await [INFO] [stdout] | |__________________^ cannot infer type [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0034]: multiple applicable items in scope [INFO] [stdout] --> src/user/handlers.rs:262:6 [INFO] [stdout] | [INFO] [stdout] 262 | .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 `UpdateStatement` [INFO] [stdout] help: disambiguate the method for candidate #1 [INFO] [stdout] | [INFO] [stdout] 257 ~ let res = diesel_async::RunQueryDsl::get_result(diesel::update( [INFO] [stdout] 258 + addresses::table.filter(addresses::user_id.eq(&user_id).and(addresses::id.eq(&id))), [INFO] [stdout] 259 + ) [INFO] [stdout] 260 + .set(&address_update) [INFO] [stdout] 261 + .returning(Address::as_returning()), &mut conn) [INFO] [stdout] | [INFO] [stdout] help: disambiguate the method for candidate #2 [INFO] [stdout] | [INFO] [stdout] 257 ~ let res = diesel::RunQueryDsl::get_result(diesel::update( [INFO] [stdout] 258 + addresses::table.filter(addresses::user_id.eq(&user_id).and(addresses::id.eq(&id))), [INFO] [stdout] 259 + ) [INFO] [stdout] 260 + .set(&address_update) [INFO] [stdout] 261 + .returning(Address::as_returning()), &mut conn) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0282]: type annotations needed [INFO] [stdout] --> src/user/handlers.rs:257:15 [INFO] [stdout] | [INFO] [stdout] 257 | let res = diesel::update( [INFO] [stdout] | _______________^ [INFO] [stdout] 258 | | addresses::table.filter(addresses::user_id.eq(&user_id).and(addresses::id.eq(&id))), [INFO] [stdout] 259 | | ) [INFO] [stdout] 260 | | .set(&address_update) [INFO] [stdout] 261 | | .returning(Address::as_returning()) [INFO] [stdout] 262 | | .get_result(&mut conn) [INFO] [stdout] 263 | | .await [INFO] [stdout] | |__________^ cannot infer type [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0034]: multiple applicable items in scope [INFO] [stdout] --> src/user/handlers.rs:284:6 [INFO] [stdout] | [INFO] [stdout] 284 | .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::RunQueryDsl` for the type `DeleteStatement` [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] 280 ~ let res = diesel::RunQueryDsl::get_result(diesel::delete( [INFO] [stdout] 281 + addresses::table.filter(addresses::user_id.eq(&user_id).and(addresses::id.eq(&id))), [INFO] [stdout] 282 + ) [INFO] [stdout] 283 + .returning(Address::as_returning()), &mut conn) [INFO] [stdout] | [INFO] [stdout] help: disambiguate the method for candidate #2 [INFO] [stdout] | [INFO] [stdout] 280 ~ let res = diesel_async::RunQueryDsl::get_result(diesel::delete( [INFO] [stdout] 281 + addresses::table.filter(addresses::user_id.eq(&user_id).and(addresses::id.eq(&id))), [INFO] [stdout] 282 + ) [INFO] [stdout] 283 + .returning(Address::as_returning()), &mut conn) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0282]: type annotations needed [INFO] [stdout] --> src/user/handlers.rs:280:15 [INFO] [stdout] | [INFO] [stdout] 280 | let res = diesel::delete( [INFO] [stdout] | _______________^ [INFO] [stdout] 281 | | addresses::table.filter(addresses::user_id.eq(&user_id).and(addresses::id.eq(&id))), [INFO] [stdout] 282 | | ) [INFO] [stdout] 283 | | .returning(Address::as_returning()) [INFO] [stdout] 284 | | .get_result(&mut conn) [INFO] [stdout] 285 | | .await [INFO] [stdout] | |__________^ cannot infer type [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0034]: multiple applicable items in scope [INFO] [stdout] --> src/user/handlers.rs:305:10 [INFO] [stdout] | [INFO] [stdout] 305 | .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` [INFO] [stdout] help: disambiguate the method for candidate #1 [INFO] [stdout] | [INFO] [stdout] 301 ~ let res = diesel_async::RunQueryDsl::load(addresses::table [INFO] [stdout] 302 + .filter(addresses::user_id.eq(&user_id)) [INFO] [stdout] 303 + .select(Address::as_select()) [INFO] [stdout] 304 + .order_by(addresses::is_default.desc()), &mut conn) [INFO] [stdout] | [INFO] [stdout] help: disambiguate the method for candidate #2 [INFO] [stdout] | [INFO] [stdout] 301 ~ let res = diesel::RunQueryDsl::load(addresses::table [INFO] [stdout] 302 + .filter(addresses::user_id.eq(&user_id)) [INFO] [stdout] 303 + .select(Address::as_select()) [INFO] [stdout] 304 + .order_by(addresses::is_default.desc()), &mut conn) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0282]: type annotations needed [INFO] [stdout] --> src/user/handlers.rs:301:15 [INFO] [stdout] | [INFO] [stdout] 301 | let res = addresses::table [INFO] [stdout] | _______________^ [INFO] [stdout] 302 | | .filter(addresses::user_id.eq(&user_id)) [INFO] [stdout] 303 | | .select(Address::as_select()) [INFO] [stdout] 304 | | .order_by(addresses::is_default.desc()) [INFO] [stdout] 305 | | .load(&mut conn) [INFO] [stdout] 306 | | .await [INFO] [stdout] | |______________^ cannot infer type [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0034]: multiple applicable items in scope [INFO] [stdout] --> src/user/handlers.rs:329:10 [INFO] [stdout] | [INFO] [stdout] 329 | .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` [INFO] [stdout] help: disambiguate the method for candidate #1 [INFO] [stdout] | [INFO] [stdout] 322 ~ let res = diesel_async::RunQueryDsl::get_result(addresses::table [INFO] [stdout] 323 + .filter( [INFO] [stdout] 324 + addresses::user_id [INFO] [stdout] 325 + .eq(&user_id) [INFO] [stdout] 326 + .and(addresses::is_default.eq(true)), [INFO] [stdout] 327 + ) [INFO] [stdout] 328 + .select(Address::as_select()), &mut conn) [INFO] [stdout] | [INFO] [stdout] help: disambiguate the method for candidate #2 [INFO] [stdout] | [INFO] [stdout] 322 ~ let res = diesel::RunQueryDsl::get_result(addresses::table [INFO] [stdout] 323 + .filter( [INFO] [stdout] 324 + addresses::user_id [INFO] [stdout] 325 + .eq(&user_id) [INFO] [stdout] 326 + .and(addresses::is_default.eq(true)), [INFO] [stdout] 327 + ) [INFO] [stdout] 328 + .select(Address::as_select()), &mut conn) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0282]: type annotations needed [INFO] [stdout] --> src/user/handlers.rs:322:15 [INFO] [stdout] | [INFO] [stdout] 322 | let res = addresses::table [INFO] [stdout] | _______________^ [INFO] [stdout] 323 | | .filter( [INFO] [stdout] 324 | | addresses::user_id [INFO] [stdout] 325 | | .eq(&user_id) [INFO] [stdout] ... | [INFO] [stdout] 329 | | .get_result(&mut conn) [INFO] [stdout] 330 | | .await [INFO] [stdout] | |______________^ cannot infer type [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0034]: multiple applicable items in scope [INFO] [stdout] --> src/user/handlers.rs:358:18 [INFO] [stdout] | [INFO] [stdout] 358 | .execute(&mut conn) [INFO] [stdout] | ^^^^^^^ multiple `execute` 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 `UpdateStatement` [INFO] [stdout] help: disambiguate the method for candidate #1 [INFO] [stdout] | [INFO] [stdout] 350 ~ let addresses = diesel_async::RunQueryDsl::execute(diesel::update( [INFO] [stdout] 351 + addresses::table.filter( [INFO] [stdout] 352 + addresses::user_id [INFO] [stdout] 353 + .eq(&user_id) [INFO] [stdout] 354 + .and(addresses::is_default.eq(true)), [INFO] [stdout] 355 + ), [INFO] [stdout] 356 + ) [INFO] [stdout] 357 + .set(addresses::is_default.eq(false)), &mut conn) [INFO] [stdout] | [INFO] [stdout] help: disambiguate the method for candidate #2 [INFO] [stdout] | [INFO] [stdout] 350 ~ let addresses = diesel::RunQueryDsl::execute(diesel::update( [INFO] [stdout] 351 + addresses::table.filter( [INFO] [stdout] 352 + addresses::user_id [INFO] [stdout] 353 + .eq(&user_id) [INFO] [stdout] 354 + .and(addresses::is_default.eq(true)), [INFO] [stdout] 355 + ), [INFO] [stdout] 356 + ) [INFO] [stdout] 357 + .set(addresses::is_default.eq(false)), &mut conn) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0034]: multiple applicable items in scope [INFO] [stdout] --> src/user/handlers.rs:367:18 [INFO] [stdout] | [INFO] [stdout] 367 | .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 `UpdateStatement` [INFO] [stdout] help: disambiguate the method for candidate #1 [INFO] [stdout] | [INFO] [stdout] 361 ~ let res = diesel_async::RunQueryDsl::get_result(diesel::update( [INFO] [stdout] 362 + addresses::table [INFO] [stdout] 363 + .filter(addresses::id.eq(&id).and(addresses::user_id.eq(&user_id))), [INFO] [stdout] 364 + ) [INFO] [stdout] 365 + .set(addresses::is_default.eq(true)) [INFO] [stdout] 366 + .returning(Address::as_returning()), &mut conn) [INFO] [stdout] | [INFO] [stdout] help: disambiguate the method for candidate #2 [INFO] [stdout] | [INFO] [stdout] 361 ~ let res = diesel::RunQueryDsl::get_result(diesel::update( [INFO] [stdout] 362 + addresses::table [INFO] [stdout] 363 + .filter(addresses::id.eq(&id).and(addresses::user_id.eq(&user_id))), [INFO] [stdout] 364 + ) [INFO] [stdout] 365 + .set(addresses::is_default.eq(true)) [INFO] [stdout] 366 + .returning(Address::as_returning()), &mut conn) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0034]: multiple applicable items in scope [INFO] [stdout] --> src/user/handlers.rs:426:10 [INFO] [stdout] | [INFO] [stdout] 426 | .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` [INFO] [stdout] help: disambiguate the method for candidate #1 [INFO] [stdout] | [INFO] [stdout] 423 ~ let res = diesel_async::RunQueryDsl::load(user_subscriptions::table [INFO] [stdout] 424 + .filter(user_subscriptions::user_id.eq(&user_id)) [INFO] [stdout] 425 + .select(UserSubscription::as_select()), &mut conn) [INFO] [stdout] | [INFO] [stdout] help: disambiguate the method for candidate #2 [INFO] [stdout] | [INFO] [stdout] 423 ~ let res = diesel::RunQueryDsl::load(user_subscriptions::table [INFO] [stdout] 424 + .filter(user_subscriptions::user_id.eq(&user_id)) [INFO] [stdout] 425 + .select(UserSubscription::as_select()), &mut conn) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0282]: type annotations needed [INFO] [stdout] --> src/user/handlers.rs:423:15 [INFO] [stdout] | [INFO] [stdout] 423 | let res = user_subscriptions::table [INFO] [stdout] | _______________^ [INFO] [stdout] 424 | | .filter(user_subscriptions::user_id.eq(&user_id)) [INFO] [stdout] 425 | | .select(UserSubscription::as_select()) [INFO] [stdout] 426 | | .load(&mut conn) [INFO] [stdout] 427 | | .await [INFO] [stdout] | |______________^ cannot infer type [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0034]: multiple applicable items in scope [INFO] [stdout] --> src/user/handlers.rs:454:6 [INFO] [stdout] | [INFO] [stdout] 454 | .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 `UpdateStatement` [INFO] [stdout] help: disambiguate the method for candidate #1 [INFO] [stdout] | [INFO] [stdout] 445 ~ let res = diesel_async::RunQueryDsl::get_result(diesel::update( [INFO] [stdout] 446 + user_subscriptions::table.filter( [INFO] [stdout] 447 + user_subscriptions::channel [INFO] [stdout] 448 + .eq(&channel) [INFO] [stdout] 449 + .and(user_subscriptions::user_id.eq(&user_id)), [INFO] [stdout] 450 + ), [INFO] [stdout] 451 + ) [INFO] [stdout] 452 + .set(&payload) [INFO] [stdout] 453 + .returning(UserSubscription::as_returning()), &mut conn) [INFO] [stdout] | [INFO] [stdout] help: disambiguate the method for candidate #2 [INFO] [stdout] | [INFO] [stdout] 445 ~ let res = diesel::RunQueryDsl::get_result(diesel::update( [INFO] [stdout] 446 + user_subscriptions::table.filter( [INFO] [stdout] 447 + user_subscriptions::channel [INFO] [stdout] 448 + .eq(&channel) [INFO] [stdout] 449 + .and(user_subscriptions::user_id.eq(&user_id)), [INFO] [stdout] 450 + ), [INFO] [stdout] 451 + ) [INFO] [stdout] 452 + .set(&payload) [INFO] [stdout] 453 + .returning(UserSubscription::as_returning()), &mut conn) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0282]: type annotations needed [INFO] [stdout] --> src/user/handlers.rs:445:15 [INFO] [stdout] | [INFO] [stdout] 445 | let res = diesel::update( [INFO] [stdout] | _______________^ [INFO] [stdout] 446 | | user_subscriptions::table.filter( [INFO] [stdout] 447 | | user_subscriptions::channel [INFO] [stdout] 448 | | .eq(&channel) [INFO] [stdout] ... | [INFO] [stdout] 454 | | .get_result(&mut conn) [INFO] [stdout] 455 | | .await [INFO] [stdout] | |__________^ cannot infer type [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0034]: multiple applicable items in scope [INFO] [stdout] --> src/user/handlers.rs:483:10 [INFO] [stdout] | [INFO] [stdout] 483 | .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::RunQueryDsl` for the type `InsertStatement` [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] 480 ~ let res = diesel::RunQueryDsl::get_result(diesel::insert_into(user_subscriptions::table) [INFO] [stdout] 481 + .values(&new_subscription) [INFO] [stdout] 482 + .returning(UserSubscription::as_returning()), &mut conn) [INFO] [stdout] | [INFO] [stdout] help: disambiguate the method for candidate #2 [INFO] [stdout] | [INFO] [stdout] 480 ~ let res = diesel_async::RunQueryDsl::get_result(diesel::insert_into(user_subscriptions::table) [INFO] [stdout] 481 + .values(&new_subscription) [INFO] [stdout] 482 + .returning(UserSubscription::as_returning()), &mut conn) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0282]: type annotations needed [INFO] [stdout] --> src/user/handlers.rs:480:15 [INFO] [stdout] | [INFO] [stdout] 480 | let res = diesel::insert_into(user_subscriptions::table) [INFO] [stdout] | _______________^ [INFO] [stdout] 481 | | .values(&new_subscription) [INFO] [stdout] 482 | | .returning(UserSubscription::as_returning()) [INFO] [stdout] 483 | | .get_result(&mut conn) [INFO] [stdout] 484 | | .await [INFO] [stdout] | |______________^ cannot infer type [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0034]: multiple applicable items in scope [INFO] [stdout] --> src/user/handlers.rs:510:6 [INFO] [stdout] | [INFO] [stdout] 510 | .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::RunQueryDsl` for the type `DeleteStatement` [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] 502 ~ let res = diesel::RunQueryDsl::get_result(diesel::delete( [INFO] [stdout] 503 + user_subscriptions::table.filter( [INFO] [stdout] 504 + user_subscriptions::channel [INFO] [stdout] 505 + .eq(&channel) [INFO] [stdout] 506 + .and(user_subscriptions::user_id.eq(&user_id)), [INFO] [stdout] 507 + ), [INFO] [stdout] 508 + ) [INFO] [stdout] 509 + .returning(UserSubscription::as_returning()), &mut conn) [INFO] [stdout] | [INFO] [stdout] help: disambiguate the method for candidate #2 [INFO] [stdout] | [INFO] [stdout] 502 ~ let res = diesel_async::RunQueryDsl::get_result(diesel::delete( [INFO] [stdout] 503 + user_subscriptions::table.filter( [INFO] [stdout] 504 + user_subscriptions::channel [INFO] [stdout] 505 + .eq(&channel) [INFO] [stdout] 506 + .and(user_subscriptions::user_id.eq(&user_id)), [INFO] [stdout] 507 + ), [INFO] [stdout] 508 + ) [INFO] [stdout] 509 + .returning(UserSubscription::as_returning()), &mut conn) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0282]: type annotations needed [INFO] [stdout] --> src/user/handlers.rs:502:15 [INFO] [stdout] | [INFO] [stdout] 502 | let res = diesel::delete( [INFO] [stdout] | _______________^ [INFO] [stdout] 503 | | user_subscriptions::table.filter( [INFO] [stdout] 504 | | user_subscriptions::channel [INFO] [stdout] 505 | | .eq(&channel) [INFO] [stdout] ... | [INFO] [stdout] 510 | | .get_result(&mut conn) [INFO] [stdout] 511 | | .await [INFO] [stdout] | |__________^ cannot infer type [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0034]: multiple applicable items in scope [INFO] [stdout] --> src/user/handlers.rs:535:10 [INFO] [stdout] | [INFO] [stdout] 535 | .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` [INFO] [stdout] help: disambiguate the method for candidate #1 [INFO] [stdout] | [INFO] [stdout] 528 ~ let res = diesel_async::RunQueryDsl::get_result(user_subscriptions::table [INFO] [stdout] 529 + .filter( [INFO] [stdout] 530 + user_subscriptions::user_id [INFO] [stdout] 531 + .eq(&user_id) [INFO] [stdout] 532 + .and(user_subscriptions::channel.eq(&channel)), [INFO] [stdout] 533 + ) [INFO] [stdout] 534 + .select(UserSubscription::as_select()), &mut conn) [INFO] [stdout] | [INFO] [stdout] help: disambiguate the method for candidate #2 [INFO] [stdout] | [INFO] [stdout] 528 ~ let res = diesel::RunQueryDsl::get_result(user_subscriptions::table [INFO] [stdout] 529 + .filter( [INFO] [stdout] 530 + user_subscriptions::user_id [INFO] [stdout] 531 + .eq(&user_id) [INFO] [stdout] 532 + .and(user_subscriptions::channel.eq(&channel)), [INFO] [stdout] 533 + ) [INFO] [stdout] 534 + .select(UserSubscription::as_select()), &mut conn) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0282]: type annotations needed [INFO] [stdout] --> src/user/handlers.rs:528:15 [INFO] [stdout] | [INFO] [stdout] 528 | let res = user_subscriptions::table [INFO] [stdout] | _______________^ [INFO] [stdout] 529 | | .filter( [INFO] [stdout] 530 | | user_subscriptions::user_id [INFO] [stdout] 531 | | .eq(&user_id) [INFO] [stdout] ... | [INFO] [stdout] 535 | | .get_result(&mut conn) [INFO] [stdout] 536 | | .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 `axum-shop` (bin "axum-shop" test) due to 124 previous errors [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 `axum-shop` (bin "axum-shop") due to 124 previous errors [INFO] running `Command { std: "docker" "inspect" "001d1f0aac53134e4c4ff4d0c1040884d3eacbb282faf6f08f37e8ae50166302", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "001d1f0aac53134e4c4ff4d0c1040884d3eacbb282faf6f08f37e8ae50166302", kill_on_drop: false }` [INFO] [stdout] 001d1f0aac53134e4c4ff4d0c1040884d3eacbb282faf6f08f37e8ae50166302