[INFO] cloning repository https://github.com/Lethe10137/yuanyang25-back [INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/Lethe10137/yuanyang25-back" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FLethe10137%2Fyuanyang25-back", kill_on_drop: false }` [INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FLethe10137%2Fyuanyang25-back'... [INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }` [INFO] [stdout] 7ec80fc0929fc9a4d353013eebfe6e842d5cce77 [INFO] checking Lethe10137/yuanyang25-back against try#95813608313bff49cfc1afc393a946a3c085b772 for pr-148946 [INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FLethe10137%2Fyuanyang25-back" "/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/Lethe10137/yuanyang25-back [INFO] finished tweaking git repo https://github.com/Lethe10137/yuanyang25-back [INFO] tweaked toml for git repo https://github.com/Lethe10137/yuanyang25-back written to /workspace/builds/worker-3-tc2/source/Cargo.toml [INFO] validating manifest of git repo https://github.com/Lethe10137/yuanyang25-back 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/Lethe10137/yuanyang25-back 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] 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] 146857a6d940c867d57dc8c54cbce0da14086e0c4f82d7fefcef85989a2a4e22 [INFO] running `Command { std: "docker" "start" "-a" "146857a6d940c867d57dc8c54cbce0da14086e0c4f82d7fefcef85989a2a4e22", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "146857a6d940c867d57dc8c54cbce0da14086e0c4f82d7fefcef85989a2a4e22", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "146857a6d940c867d57dc8c54cbce0da14086e0c4f82d7fefcef85989a2a4e22", kill_on_drop: false }` [INFO] [stdout] 146857a6d940c867d57dc8c54cbce0da14086e0c4f82d7fefcef85989a2a4e22 [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] cec6ef58a68dcd9d272a08eedc4f4cc57c67862a10d21640a2b1ee0bb9fb6fb9 [INFO] running `Command { std: "docker" "start" "-a" "cec6ef58a68dcd9d272a08eedc4f4cc57c67862a10d21640a2b1ee0bb9fb6fb9", kill_on_drop: false }` [INFO] [stderr] Compiling proc-macro2 v1.0.92 [INFO] [stderr] Compiling parking_lot_core v0.9.2 [INFO] [stderr] Compiling serde v1.0.217 [INFO] [stderr] Checking signal-hook-registry v1.4.0 [INFO] [stderr] Checking mio v1.0.2 [INFO] [stderr] Checking socket2 v0.5.7 [INFO] [stderr] Checking rand_core v0.6.3 [INFO] [stderr] Compiling cc v1.1.28 [INFO] [stderr] Checking cipher v0.3.0 [INFO] [stderr] Checking universal-hash v0.4.1 [INFO] [stderr] Checking digest v0.10.7 [INFO] [stderr] Checking http v0.2.12 [INFO] [stderr] Compiling ahash v0.8.11 [INFO] [stderr] Compiling tracing v0.1.40 [INFO] [stderr] Checking aead v0.4.3 [INFO] [stderr] Checking polyval v0.5.3 [INFO] [stderr] Checking aes v0.7.5 [INFO] [stderr] Checking ctr v0.8.0 [INFO] [stderr] Checking hmac v0.12.1 [INFO] [stderr] Checking sha2 v0.10.8 [INFO] [stderr] Checking ghash v0.4.4 [INFO] [stderr] Compiling num-traits v0.2.19 [INFO] [stderr] Checking rand_chacha v0.3.1 [INFO] [stderr] Compiling cookie v0.16.0 [INFO] [stderr] Compiling serde_json v1.0.135 [INFO] [stderr] Checking hkdf v0.12.4 [INFO] [stderr] Checking stringprep v0.1.5 [INFO] [stderr] Checking time v0.3.36 [INFO] [stderr] Compiling quote v1.0.37 [INFO] [stderr] Checking rand v0.8.5 [INFO] [stderr] Checking sha1 v0.10.4 [INFO] [stderr] Checking md-5 v0.10.6 [INFO] [stderr] Checking fallible-iterator v0.2.0 [INFO] [stderr] Checking aes-gcm v0.9.4 [INFO] [stderr] Compiling pq-sys v0.6.3 [INFO] [stderr] Checking event-listener v5.4.0 [INFO] [stderr] Checking phf_shared v0.11.2 [INFO] [stderr] Checking url v2.2.2 [INFO] [stderr] Compiling portable-atomic v1.10.0 [INFO] [stderr] Checking phf v0.11.2 [INFO] [stderr] Checking whoami v1.5.2 [INFO] [stderr] Checking env_filter v0.1.2 [INFO] [stderr] Compiling syn v2.0.93 [INFO] [stderr] Checking parking_lot v0.12.0 [INFO] [stderr] Checking crossbeam-channel v0.5.14 [INFO] [stderr] Checking event-listener-strategy v0.5.3 [INFO] [stderr] Checking scoped-futures v0.1.4 [INFO] [stderr] Checking env_logger v0.11.6 [INFO] [stderr] Checking async-lock v3.4.0 [INFO] [stderr] Checking scheduled-thread-pool v0.2.7 [INFO] [stderr] Compiling zstd-sys v2.0.13+zstd.1.5.6 [INFO] [stderr] Checking chrono v0.4.39 [INFO] [stderr] Checking postgres-protocol v0.6.7 [INFO] [stderr] Checking r2d2 v0.8.10 [INFO] [stderr] Checking postgres-types v0.2.8 [INFO] [stderr] Compiling actix-router v0.5.3 [INFO] [stderr] Compiling darling_core v0.20.10 [INFO] [stderr] Compiling diesel_table_macro_syntax v0.2.0 [INFO] [stderr] Compiling tokio-macros v2.5.0 [INFO] [stderr] Compiling futures-macro v0.3.31 [INFO] [stderr] Compiling tracing-attributes v0.1.27 [INFO] [stderr] Compiling serde_derive v1.0.217 [INFO] [stderr] Compiling actix-macros v0.2.4 [INFO] [stderr] Compiling derive_more v0.99.18 [INFO] [stderr] Compiling async-trait v0.1.83 [INFO] [stderr] Compiling actix-web-codegen v4.3.0 [INFO] [stderr] Compiling thiserror-impl v1.0.69 [INFO] [stderr] Compiling derive_more-impl v1.0.0 [INFO] [stderr] Compiling zstd-safe v7.2.1 [INFO] [stderr] Checking zstd v0.13.2 [INFO] [stderr] Checking tokio v1.43.0 [INFO] [stderr] Checking futures-util v0.3.31 [INFO] [stderr] Checking thiserror v1.0.69 [INFO] [stderr] Compiling darling_macro v0.20.10 [INFO] [stderr] Checking derive_more v1.0.0 [INFO] [stderr] Compiling darling v0.20.10 [INFO] [stderr] Compiling dsl_auto_type v0.1.2 [INFO] [stderr] Compiling diesel_derives v2.2.3 [INFO] [stderr] Checking tokio-util v0.7.1 [INFO] [stderr] Checking actix-rt v2.10.0 [INFO] [stderr] Checking bb8 v0.8.6 [INFO] [stderr] Checking bb8 v0.9.0 [INFO] [stderr] Checking actix-server v2.5.0 [INFO] [stderr] Checking h2 v0.3.26 [INFO] [stderr] Checking actix-codec v0.5.2 [INFO] [stderr] Checking tokio-postgres v0.7.12 [INFO] [stderr] Checking serde_urlencoded v0.7.1 [INFO] [stderr] Checking uuid v1.12.0 [INFO] [stderr] Checking moka v0.12.10 [INFO] [stderr] Checking diesel v2.2.6 [INFO] [stderr] Checking actix-http v3.9.0 [INFO] [stderr] Checking actix-web v4.9.0 [INFO] [stderr] Checking actix-session v0.10.1 [INFO] [stderr] Checking actix-cors v0.7.0 [INFO] [stderr] Checking diesel-async v0.5.2 [INFO] [stderr] Checking server v0.1.0 (/opt/rustwide/workdir) [INFO] [stdout] error[E0034]: multiple applicable items in scope [INFO] [stdout] --> src/api/oracle.rs:95:22 [INFO] [stdout] | [INFO] [stdout] 95 | .get_result::(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] 92 ~ let active_count: i64 = diesel_async::RunQueryDsl::get_result(oracle [INFO] [stdout] 93 + .filter(team.eq(team_id).and(active.eq(true))) [INFO] [stdout] 94 + .select(diesel::dsl::count_star()), conn) [INFO] [stdout] | [INFO] [stdout] help: disambiguate the method for candidate #2 [INFO] [stdout] | [INFO] [stdout] 92 ~ let active_count: i64 = diesel::RunQueryDsl::get_result(oracle [INFO] [stdout] 93 + .filter(team.eq(team_id).and(active.eq(true))) [INFO] [stdout] 94 + .select(diesel::dsl::count_star()), conn) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0034]: multiple applicable items in scope [INFO] [stdout] --> src/api/oracle.rs:114:22 [INFO] [stdout] | [INFO] [stdout] 114 | .get_result(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] 111 ~ let inserted_id: i32 = diesel::RunQueryDsl::get_result(diesel::insert_into(oracle) [INFO] [stdout] 112 + .values(&new_oracle) [INFO] [stdout] 113 + .returning(id), conn) [INFO] [stdout] | [INFO] [stdout] help: disambiguate the method for candidate #2 [INFO] [stdout] | [INFO] [stdout] 111 ~ let inserted_id: i32 = diesel_async::RunQueryDsl::get_result(diesel::insert_into(oracle) [INFO] [stdout] 112 + .values(&new_oracle) [INFO] [stdout] 113 + .returning(id), conn) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0034]: multiple applicable items in scope [INFO] [stdout] --> src/api/oracle.rs:95:22 [INFO] [stdout] | [INFO] [stdout] 95 | .get_result::(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] 92 ~ let active_count: i64 = diesel_async::RunQueryDsl::get_result(oracle [INFO] [stdout] 93 + .filter(team.eq(team_id).and(active.eq(true))) [INFO] [stdout] 94 + .select(diesel::dsl::count_star()), conn) [INFO] [stdout] | [INFO] [stdout] help: disambiguate the method for candidate #2 [INFO] [stdout] | [INFO] [stdout] 92 ~ let active_count: i64 = diesel::RunQueryDsl::get_result(oracle [INFO] [stdout] 93 + .filter(team.eq(team_id).and(active.eq(true))) [INFO] [stdout] 94 + .select(diesel::dsl::count_star()), conn) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0034]: multiple applicable items in scope [INFO] [stdout] --> src/api/oracle.rs:114:22 [INFO] [stdout] | [INFO] [stdout] 114 | .get_result(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] 111 ~ let inserted_id: i32 = diesel::RunQueryDsl::get_result(diesel::insert_into(oracle) [INFO] [stdout] 112 + .values(&new_oracle) [INFO] [stdout] 113 + .returning(id), conn) [INFO] [stdout] | [INFO] [stdout] help: disambiguate the method for candidate #2 [INFO] [stdout] | [INFO] [stdout] 111 ~ let inserted_id: i32 = diesel_async::RunQueryDsl::get_result(diesel::insert_into(oracle) [INFO] [stdout] 112 + .values(&new_oracle) [INFO] [stdout] 113 + .returning(id), conn) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0034]: multiple applicable items in scope [INFO] [stdout] --> src/util/api_util.rs:528:10 [INFO] [stdout] | [INFO] [stdout] 528 | .get_results::(conn) // 获取返回的 `team` 字段 [INFO] [stdout] | ^^^^^^^^^^^ multiple `get_results` 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 `query_builder::sql_query::UncheckedBind` [INFO] [stdout] help: disambiguate the method for candidate #1 [INFO] [stdout] | [INFO] [stdout] 524 ~ let result = diesel_async::RunQueryDsl::get_results(diesel::sql_query(query) [INFO] [stdout] 525 ~ .bind::(refund_value) // 绑定 refund_value [INFO] [stdout] 526 ~ .bind::(response_value) // 绑定 response_value [INFO] [stdout] 527 ~ .bind::(id), conn) // 获取返回的 `team` 字段 [INFO] [stdout] | [INFO] [stdout] help: disambiguate the method for candidate #2 [INFO] [stdout] | [INFO] [stdout] 524 ~ let result = diesel::RunQueryDsl::get_results(diesel::sql_query(query) [INFO] [stdout] 525 ~ .bind::(refund_value) // 绑定 refund_value [INFO] [stdout] 526 ~ .bind::(response_value) // 绑定 response_value [INFO] [stdout] 527 ~ .bind::(id), conn) // 获取返回的 `team` 字段 [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0282]: type annotations needed [INFO] [stdout] --> src/util/api_util.rs:524:9 [INFO] [stdout] | [INFO] [stdout] 524 | let result = diesel::sql_query(query) [INFO] [stdout] | ^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 532 | Ok(result.get(0).map(|i| (i.team, i.refund))) [INFO] [stdout] | ------ type must be known at this point [INFO] [stdout] | [INFO] [stdout] help: consider giving `result` an explicit type [INFO] [stdout] | [INFO] [stdout] 524 | let result: /* Type */ = diesel::sql_query(query) [INFO] [stdout] | ++++++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0034]: multiple applicable items in scope [INFO] [stdout] --> src/util/api_util.rs:528:10 [INFO] [stdout] | [INFO] [stdout] 528 | .get_results::(conn) // 获取返回的 `team` 字段 [INFO] [stdout] | ^^^^^^^^^^^ multiple `get_results` 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 `query_builder::sql_query::UncheckedBind` [INFO] [stdout] help: disambiguate the method for candidate #1 [INFO] [stdout] | [INFO] [stdout] 524 ~ let result = diesel_async::RunQueryDsl::get_results(diesel::sql_query(query) [INFO] [stdout] 525 ~ .bind::(refund_value) // 绑定 refund_value [INFO] [stdout] 526 ~ .bind::(response_value) // 绑定 response_value [INFO] [stdout] 527 ~ .bind::(id), conn) // 获取返回的 `team` 字段 [INFO] [stdout] | [INFO] [stdout] help: disambiguate the method for candidate #2 [INFO] [stdout] | [INFO] [stdout] 524 ~ let result = diesel::RunQueryDsl::get_results(diesel::sql_query(query) [INFO] [stdout] 525 ~ .bind::(refund_value) // 绑定 refund_value [INFO] [stdout] 526 ~ .bind::(response_value) // 绑定 response_value [INFO] [stdout] 527 ~ .bind::(id), conn) // 获取返回的 `team` 字段 [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0282]: type annotations needed [INFO] [stdout] --> src/util/api_util.rs:524:9 [INFO] [stdout] | [INFO] [stdout] 524 | let result = diesel::sql_query(query) [INFO] [stdout] | ^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 532 | Ok(result.get(0).map(|i| (i.team, i.refund))) [INFO] [stdout] | ------ type must be known at this point [INFO] [stdout] | [INFO] [stdout] help: consider giving `result` an explicit type [INFO] [stdout] | [INFO] [stdout] 524 | let result: /* Type */ = diesel::sql_query(query) [INFO] [stdout] | ++++++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0034]: multiple applicable items in scope [INFO] [stdout] --> src/util/economy.rs:88:10 [INFO] [stdout] | [INFO] [stdout] 88 | .first::(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] 85 ~ let current_balance = diesel_async::RunQueryDsl::first(team_dsl::team [INFO] [stdout] 86 + .filter(team_dsl::id.eq(team_id)) [INFO] [stdout] 87 + .select(team_dsl::token_balance), conn) [INFO] [stdout] | [INFO] [stdout] help: disambiguate the method for candidate #2 [INFO] [stdout] | [INFO] [stdout] 85 ~ let current_balance = diesel::RunQueryDsl::first(team_dsl::team [INFO] [stdout] 86 + .filter(team_dsl::id.eq(team_id)) [INFO] [stdout] 87 + .select(team_dsl::token_balance), conn) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0034]: multiple applicable items in scope [INFO] [stdout] --> src/util/economy.rs:88:10 [INFO] [stdout] | [INFO] [stdout] 88 | .first::(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] 85 ~ let current_balance = diesel_async::RunQueryDsl::first(team_dsl::team [INFO] [stdout] 86 + .filter(team_dsl::id.eq(team_id)) [INFO] [stdout] 87 + .select(team_dsl::token_balance), conn) [INFO] [stdout] | [INFO] [stdout] help: disambiguate the method for candidate #2 [INFO] [stdout] | [INFO] [stdout] 85 ~ let current_balance = diesel::RunQueryDsl::first(team_dsl::team [INFO] [stdout] 86 + .filter(team_dsl::id.eq(team_id)) [INFO] [stdout] 87 + .select(team_dsl::token_balance), conn) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0034]: multiple applicable items in scope [INFO] [stdout] --> src/util/economy.rs:110:10 [INFO] [stdout] | [INFO] [stdout] 110 | .execute(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] 101 ~ diesel::RunQueryDsl::execute(diesel::insert_into(transaction_dsl::transaction) [INFO] [stdout] 102 + .values(( [INFO] [stdout] 103 + transaction_dsl::team.eq(team_id), [INFO] [stdout] 104 + transaction_dsl::desp.eq(description), [INFO] [stdout] 105 + transaction_dsl::amount.eq(amount), [INFO] [stdout] 106 + transaction_dsl::balance.eq(new_balance), [INFO] [stdout] 107 + transaction_dsl::allowance.eq(time_allowance), [INFO] [stdout] 108 + transaction_dsl::purchase_ref.eq(purchase), [INFO] [stdout] 109 + )), conn) [INFO] [stdout] | [INFO] [stdout] help: disambiguate the method for candidate #2 [INFO] [stdout] | [INFO] [stdout] 101 ~ diesel_async::RunQueryDsl::execute(diesel::insert_into(transaction_dsl::transaction) [INFO] [stdout] 102 + .values(( [INFO] [stdout] 103 + transaction_dsl::team.eq(team_id), [INFO] [stdout] 104 + transaction_dsl::desp.eq(description), [INFO] [stdout] 105 + transaction_dsl::amount.eq(amount), [INFO] [stdout] 106 + transaction_dsl::balance.eq(new_balance), [INFO] [stdout] 107 + transaction_dsl::allowance.eq(time_allowance), [INFO] [stdout] 108 + transaction_dsl::purchase_ref.eq(purchase), [INFO] [stdout] 109 + )), conn) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0282]: type annotations needed [INFO] [stdout] --> src/util/economy.rs:101:5 [INFO] [stdout] | [INFO] [stdout] 101 | / diesel::insert_into(transaction_dsl::transaction) [INFO] [stdout] 102 | | .values(( [INFO] [stdout] 103 | | transaction_dsl::team.eq(team_id), [INFO] [stdout] 104 | | transaction_dsl::desp.eq(description), [INFO] [stdout] ... | [INFO] [stdout] 110 | | .execute(conn) [INFO] [stdout] 111 | | .await [INFO] [stdout] | |______________^ cannot infer type [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0034]: multiple applicable items in scope [INFO] [stdout] --> src/util/economy.rs:110:10 [INFO] [stdout] | [INFO] [stdout] 110 | .execute(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] 101 ~ diesel::RunQueryDsl::execute(diesel::insert_into(transaction_dsl::transaction) [INFO] [stdout] 102 + .values(( [INFO] [stdout] 103 + transaction_dsl::team.eq(team_id), [INFO] [stdout] 104 + transaction_dsl::desp.eq(description), [INFO] [stdout] 105 + transaction_dsl::amount.eq(amount), [INFO] [stdout] 106 + transaction_dsl::balance.eq(new_balance), [INFO] [stdout] 107 + transaction_dsl::allowance.eq(time_allowance), [INFO] [stdout] 108 + transaction_dsl::purchase_ref.eq(purchase), [INFO] [stdout] 109 + )), conn) [INFO] [stdout] | [INFO] [stdout] help: disambiguate the method for candidate #2 [INFO] [stdout] | [INFO] [stdout] 101 ~ diesel_async::RunQueryDsl::execute(diesel::insert_into(transaction_dsl::transaction) [INFO] [stdout] 102 + .values(( [INFO] [stdout] 103 + transaction_dsl::team.eq(team_id), [INFO] [stdout] 104 + transaction_dsl::desp.eq(description), [INFO] [stdout] 105 + transaction_dsl::amount.eq(amount), [INFO] [stdout] 106 + transaction_dsl::balance.eq(new_balance), [INFO] [stdout] 107 + transaction_dsl::allowance.eq(time_allowance), [INFO] [stdout] 108 + transaction_dsl::purchase_ref.eq(purchase), [INFO] [stdout] 109 + )), conn) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0282]: type annotations needed [INFO] [stdout] --> src/util/economy.rs:101:5 [INFO] [stdout] | [INFO] [stdout] 101 | / diesel::insert_into(transaction_dsl::transaction) [INFO] [stdout] 102 | | .values(( [INFO] [stdout] 103 | | transaction_dsl::team.eq(team_id), [INFO] [stdout] 104 | | transaction_dsl::desp.eq(description), [INFO] [stdout] ... | [INFO] [stdout] 110 | | .execute(conn) [INFO] [stdout] 111 | | .await [INFO] [stdout] | |______________^ cannot infer type [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0034]: multiple applicable items in scope [INFO] [stdout] --> src/util/economy.rs:125:10 [INFO] [stdout] | [INFO] [stdout] 125 | .execute(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] 120 ~ diesel_async::RunQueryDsl::execute(diesel::update(team_dsl::team.filter(team_dsl::id.eq(team_id))) [INFO] [stdout] 121 + .set(( [INFO] [stdout] 122 + team_dsl::token_balance.eq(new_balance), [INFO] [stdout] 123 + team_dsl::confirmed.eq(true), [INFO] [stdout] 124 + )), conn) [INFO] [stdout] | [INFO] [stdout] help: disambiguate the method for candidate #2 [INFO] [stdout] | [INFO] [stdout] 120 ~ diesel::RunQueryDsl::execute(diesel::update(team_dsl::team.filter(team_dsl::id.eq(team_id))) [INFO] [stdout] 121 + .set(( [INFO] [stdout] 122 + team_dsl::token_balance.eq(new_balance), [INFO] [stdout] 123 + team_dsl::confirmed.eq(true), [INFO] [stdout] 124 + )), conn) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0034]: multiple applicable items in scope [INFO] [stdout] --> src/util/economy.rs:125:10 [INFO] [stdout] | [INFO] [stdout] 125 | .execute(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] 120 ~ diesel_async::RunQueryDsl::execute(diesel::update(team_dsl::team.filter(team_dsl::id.eq(team_id))) [INFO] [stdout] 121 + .set(( [INFO] [stdout] 122 + team_dsl::token_balance.eq(new_balance), [INFO] [stdout] 123 + team_dsl::confirmed.eq(true), [INFO] [stdout] 124 + )), conn) [INFO] [stdout] | [INFO] [stdout] help: disambiguate the method for candidate #2 [INFO] [stdout] | [INFO] [stdout] 120 ~ diesel::RunQueryDsl::execute(diesel::update(team_dsl::team.filter(team_dsl::id.eq(team_id))) [INFO] [stdout] 121 + .set(( [INFO] [stdout] 122 + team_dsl::token_balance.eq(new_balance), [INFO] [stdout] 123 + team_dsl::confirmed.eq(true), [INFO] [stdout] 124 + )), conn) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0034]: multiple applicable items in scope [INFO] [stdout] --> src/util/api_util.rs:295:10 [INFO] [stdout] | [INFO] [stdout] 295 | .first::<(DateTime, i32, i32)>(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] 292 ~ match diesel_async::RunQueryDsl::first(wrong_answer_cnt [INFO] [stdout] 293 + .filter(team.eq(team_id).and(puzzle.eq(puzzle_id))) [INFO] [stdout] 294 + .select((time_penalty_until, token_penalty_level, time_penalty_level)), conn) [INFO] [stdout] | [INFO] [stdout] help: disambiguate the method for candidate #2 [INFO] [stdout] | [INFO] [stdout] 292 ~ match diesel::RunQueryDsl::first(wrong_answer_cnt [INFO] [stdout] 293 + .filter(team.eq(team_id).and(puzzle.eq(puzzle_id))) [INFO] [stdout] 294 + .select((time_penalty_until, token_penalty_level, time_penalty_level)), conn) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0034]: multiple applicable items in scope [INFO] [stdout] --> src/util/api_util.rs:295:10 [INFO] [stdout] | [INFO] [stdout] 295 | .first::<(DateTime, i32, i32)>(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] 292 ~ match diesel_async::RunQueryDsl::first(wrong_answer_cnt [INFO] [stdout] 293 + .filter(team.eq(team_id).and(puzzle.eq(puzzle_id))) [INFO] [stdout] 294 + .select((time_penalty_until, token_penalty_level, time_penalty_level)), conn) [INFO] [stdout] | [INFO] [stdout] help: disambiguate the method for candidate #2 [INFO] [stdout] | [INFO] [stdout] 292 ~ match diesel::RunQueryDsl::first(wrong_answer_cnt [INFO] [stdout] 293 + .filter(team.eq(team_id).and(puzzle.eq(puzzle_id))) [INFO] [stdout] 294 + .select((time_penalty_until, token_penalty_level, time_penalty_level)), conn) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0034]: multiple applicable items in scope [INFO] [stdout] --> src/util/api_util.rs:349:10 [INFO] [stdout] | [INFO] [stdout] 349 | .execute(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] 334 ~ diesel::RunQueryDsl::execute(diesel::insert_into(wrong_answer_cnt) [INFO] [stdout] 335 + .values(( [INFO] [stdout] 336 + team.eq(team_id), [INFO] [stdout] 337 + puzzle.eq(puzzle_id), [INFO] [stdout] 338 + token_penalty_level.eq(data.token_penalty_level), [INFO] [stdout] 339 + time_penalty_level.eq(data.time_penalty_level), [INFO] [stdout] 340 + time_penalty_until.eq(data.time_penalty_until), [INFO] [stdout] 341 + )) [INFO] [stdout] 342 + .on_conflict((team, puzzle)) [INFO] [stdout] 343 + .do_update() [INFO] [stdout] 344 + .set(( [INFO] [stdout] 345 + token_penalty_level.eq(data.token_penalty_level), [INFO] [stdout] 346 + time_penalty_level.eq(data.time_penalty_level), [INFO] [stdout] 347 + time_penalty_until.eq(data.time_penalty_until), [INFO] [stdout] 348 + )), conn) [INFO] [stdout] | [INFO] [stdout] help: disambiguate the method for candidate #2 [INFO] [stdout] | [INFO] [stdout] 334 ~ diesel_async::RunQueryDsl::execute(diesel::insert_into(wrong_answer_cnt) [INFO] [stdout] 335 + .values(( [INFO] [stdout] 336 + team.eq(team_id), [INFO] [stdout] 337 + puzzle.eq(puzzle_id), [INFO] [stdout] 338 + token_penalty_level.eq(data.token_penalty_level), [INFO] [stdout] 339 + time_penalty_level.eq(data.time_penalty_level), [INFO] [stdout] 340 + time_penalty_until.eq(data.time_penalty_until), [INFO] [stdout] 341 + )) [INFO] [stdout] 342 + .on_conflict((team, puzzle)) [INFO] [stdout] 343 + .do_update() [INFO] [stdout] 344 + .set(( [INFO] [stdout] 345 + token_penalty_level.eq(data.token_penalty_level), [INFO] [stdout] 346 + time_penalty_level.eq(data.time_penalty_level), [INFO] [stdout] 347 + time_penalty_until.eq(data.time_penalty_until), [INFO] [stdout] 348 + )), conn) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0282]: type annotations needed [INFO] [stdout] --> src/util/api_util.rs:334:5 [INFO] [stdout] | [INFO] [stdout] 334 | / diesel::insert_into(wrong_answer_cnt) [INFO] [stdout] 335 | | .values(( [INFO] [stdout] 336 | | team.eq(team_id), [INFO] [stdout] 337 | | puzzle.eq(puzzle_id), [INFO] [stdout] ... | [INFO] [stdout] 349 | | .execute(conn) [INFO] [stdout] 350 | | .await [INFO] [stdout] | |______________^ cannot infer type [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0034]: multiple applicable items in scope [INFO] [stdout] --> src/util/api_util.rs:349:10 [INFO] [stdout] | [INFO] [stdout] 349 | .execute(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] 334 ~ diesel::RunQueryDsl::execute(diesel::insert_into(wrong_answer_cnt) [INFO] [stdout] 335 + .values(( [INFO] [stdout] 336 + team.eq(team_id), [INFO] [stdout] 337 + puzzle.eq(puzzle_id), [INFO] [stdout] 338 + token_penalty_level.eq(data.token_penalty_level), [INFO] [stdout] 339 + time_penalty_level.eq(data.time_penalty_level), [INFO] [stdout] 340 + time_penalty_until.eq(data.time_penalty_until), [INFO] [stdout] 341 + )) [INFO] [stdout] 342 + .on_conflict((team, puzzle)) [INFO] [stdout] 343 + .do_update() [INFO] [stdout] 344 + .set(( [INFO] [stdout] 345 + token_penalty_level.eq(data.token_penalty_level), [INFO] [stdout] 346 + time_penalty_level.eq(data.time_penalty_level), [INFO] [stdout] 347 + time_penalty_until.eq(data.time_penalty_until), [INFO] [stdout] 348 + )), conn) [INFO] [stdout] | [INFO] [stdout] help: disambiguate the method for candidate #2 [INFO] [stdout] | [INFO] [stdout] 334 ~ diesel_async::RunQueryDsl::execute(diesel::insert_into(wrong_answer_cnt) [INFO] [stdout] 335 + .values(( [INFO] [stdout] 336 + team.eq(team_id), [INFO] [stdout] 337 + puzzle.eq(puzzle_id), [INFO] [stdout] 338 + token_penalty_level.eq(data.token_penalty_level), [INFO] [stdout] 339 + time_penalty_level.eq(data.time_penalty_level), [INFO] [stdout] 340 + time_penalty_until.eq(data.time_penalty_until), [INFO] [stdout] 341 + )) [INFO] [stdout] 342 + .on_conflict((team, puzzle)) [INFO] [stdout] 343 + .do_update() [INFO] [stdout] 344 + .set(( [INFO] [stdout] 345 + token_penalty_level.eq(data.token_penalty_level), [INFO] [stdout] 346 + time_penalty_level.eq(data.time_penalty_level), [INFO] [stdout] 347 + time_penalty_until.eq(data.time_penalty_until), [INFO] [stdout] 348 + )), conn) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0282]: type annotations needed [INFO] [stdout] --> src/util/api_util.rs:334:5 [INFO] [stdout] | [INFO] [stdout] 334 | / diesel::insert_into(wrong_answer_cnt) [INFO] [stdout] 335 | | .values(( [INFO] [stdout] 336 | | team.eq(team_id), [INFO] [stdout] 337 | | puzzle.eq(puzzle_id), [INFO] [stdout] ... | [INFO] [stdout] 349 | | .execute(conn) [INFO] [stdout] 350 | | .await [INFO] [stdout] | |______________^ cannot infer type [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0034]: multiple applicable items in scope [INFO] [stdout] --> src/api/register.rs:144:18 [INFO] [stdout] | [INFO] [stdout] 144 | .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] 127 ~ let user: User = diesel::RunQueryDsl::get_result(diesel::insert_into(users::table) [INFO] [stdout] 128 + .values(( [INFO] [stdout] 129 + users::username.eq(&form.username), [INFO] [stdout] 130 + users::openid.eq(openid.as_str()), [INFO] [stdout] 131 + users::privilege.eq(mark as i32), [INFO] [stdout] 132 + users::salt.eq(&salt), [INFO] [stdout] 133 + users::password.eq(&salted_password), [INFO] [stdout] 134 + )) [INFO] [stdout] 135 + .on_conflict(users::openid) [INFO] [stdout] 136 + .do_update() [INFO] [stdout] 137 + .set(( [INFO] [stdout] 138 + users::username.eq(&form.username), [INFO] [stdout] 139 + users::privilege.eq(mark as i32), [INFO] [stdout] 140 + users::salt.eq(&salt), [INFO] [stdout] 141 + users::password.eq(&salted_password), [INFO] [stdout] 142 + )) [INFO] [stdout] 143 + .returning(User::as_returning()), &mut conn) [INFO] [stdout] | [INFO] [stdout] help: disambiguate the method for candidate #2 [INFO] [stdout] | [INFO] [stdout] 127 ~ let user: User = diesel_async::RunQueryDsl::get_result(diesel::insert_into(users::table) [INFO] [stdout] 128 + .values(( [INFO] [stdout] 129 + users::username.eq(&form.username), [INFO] [stdout] 130 + users::openid.eq(openid.as_str()), [INFO] [stdout] 131 + users::privilege.eq(mark as i32), [INFO] [stdout] 132 + users::salt.eq(&salt), [INFO] [stdout] 133 + users::password.eq(&salted_password), [INFO] [stdout] 134 + )) [INFO] [stdout] 135 + .on_conflict(users::openid) [INFO] [stdout] 136 + .do_update() [INFO] [stdout] 137 + .set(( [INFO] [stdout] 138 + users::username.eq(&form.username), [INFO] [stdout] 139 + users::privilege.eq(mark as i32), [INFO] [stdout] 140 + users::salt.eq(&salt), [INFO] [stdout] 141 + users::password.eq(&salted_password), [INFO] [stdout] 142 + )) [INFO] [stdout] 143 + .returning(User::as_returning()), &mut conn) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0282]: type annotations needed [INFO] [stdout] --> src/api/register.rs:127:30 [INFO] [stdout] | [INFO] [stdout] 127 | let user: User = diesel::insert_into(users::table) [INFO] [stdout] | ______________________________^ [INFO] [stdout] 128 | | .values(( [INFO] [stdout] 129 | | users::username.eq(&form.username), [INFO] [stdout] 130 | | users::openid.eq(openid.as_str()), [INFO] [stdout] ... | [INFO] [stdout] 144 | | .get_result(&mut conn) [INFO] [stdout] 145 | | .await [INFO] [stdout] | |______________________^ cannot infer type [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0034]: multiple applicable items in scope [INFO] [stdout] --> src/api/register.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 `SelectStatement` [INFO] [stdout] help: disambiguate the method for candidate #1 [INFO] [stdout] | [INFO] [stdout] 179 ~ let result: LoginResponse = if let Ok(user) = diesel_async::RunQueryDsl::get_result(users::table [INFO] [stdout] 180 + .filter(users::id.eq(id)), &mut conn) [INFO] [stdout] | [INFO] [stdout] help: disambiguate the method for candidate #2 [INFO] [stdout] | [INFO] [stdout] 179 ~ let result: LoginResponse = if let Ok(user) = diesel::RunQueryDsl::get_result(users::table [INFO] [stdout] 180 + .filter(users::id.eq(id)), &mut conn) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0034]: multiple applicable items in scope [INFO] [stdout] --> src/api/register.rs:144:18 [INFO] [stdout] | [INFO] [stdout] 144 | .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] 127 ~ let user: User = diesel::RunQueryDsl::get_result(diesel::insert_into(users::table) [INFO] [stdout] 128 + .values(( [INFO] [stdout] 129 + users::username.eq(&form.username), [INFO] [stdout] 130 + users::openid.eq(openid.as_str()), [INFO] [stdout] 131 + users::privilege.eq(mark as i32), [INFO] [stdout] 132 + users::salt.eq(&salt), [INFO] [stdout] 133 + users::password.eq(&salted_password), [INFO] [stdout] 134 + )) [INFO] [stdout] 135 + .on_conflict(users::openid) [INFO] [stdout] 136 + .do_update() [INFO] [stdout] 137 + .set(( [INFO] [stdout] 138 + users::username.eq(&form.username), [INFO] [stdout] 139 + users::privilege.eq(mark as i32), [INFO] [stdout] 140 + users::salt.eq(&salt), [INFO] [stdout] 141 + users::password.eq(&salted_password), [INFO] [stdout] 142 + )) [INFO] [stdout] 143 + .returning(User::as_returning()), &mut conn) [INFO] [stdout] | [INFO] [stdout] help: disambiguate the method for candidate #2 [INFO] [stdout] | [INFO] [stdout] 127 ~ let user: User = diesel_async::RunQueryDsl::get_result(diesel::insert_into(users::table) [INFO] [stdout] 128 + .values(( [INFO] [stdout] 129 + users::username.eq(&form.username), [INFO] [stdout] 130 + users::openid.eq(openid.as_str()), [INFO] [stdout] 131 + users::privilege.eq(mark as i32), [INFO] [stdout] 132 + users::salt.eq(&salt), [INFO] [stdout] 133 + users::password.eq(&salted_password), [INFO] [stdout] 134 + )) [INFO] [stdout] 135 + .on_conflict(users::openid) [INFO] [stdout] 136 + .do_update() [INFO] [stdout] 137 + .set(( [INFO] [stdout] 138 + users::username.eq(&form.username), [INFO] [stdout] 139 + users::privilege.eq(mark as i32), [INFO] [stdout] 140 + users::salt.eq(&salt), [INFO] [stdout] 141 + users::password.eq(&salted_password), [INFO] [stdout] 142 + )) [INFO] [stdout] 143 + .returning(User::as_returning()), &mut conn) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0282]: type annotations needed [INFO] [stdout] --> src/api/register.rs:127:30 [INFO] [stdout] | [INFO] [stdout] 127 | let user: User = diesel::insert_into(users::table) [INFO] [stdout] | ______________________________^ [INFO] [stdout] 128 | | .values(( [INFO] [stdout] 129 | | users::username.eq(&form.username), [INFO] [stdout] 130 | | users::openid.eq(openid.as_str()), [INFO] [stdout] ... | [INFO] [stdout] 144 | | .get_result(&mut conn) [INFO] [stdout] 145 | | .await [INFO] [stdout] | |______________________^ cannot infer type [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0034]: multiple applicable items in scope [INFO] [stdout] --> src/api/register.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 `SelectStatement` [INFO] [stdout] help: disambiguate the method for candidate #1 [INFO] [stdout] | [INFO] [stdout] 179 ~ let result: LoginResponse = if let Ok(user) = diesel_async::RunQueryDsl::get_result(users::table [INFO] [stdout] 180 + .filter(users::id.eq(id)), &mut conn) [INFO] [stdout] | [INFO] [stdout] help: disambiguate the method for candidate #2 [INFO] [stdout] | [INFO] [stdout] 179 ~ let result: LoginResponse = if let Ok(user) = diesel::RunQueryDsl::get_result(users::table [INFO] [stdout] 180 + .filter(users::id.eq(id)), &mut conn) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0034]: multiple applicable items in scope [INFO] [stdout] --> src/util/api_util.rs:176:40 [INFO] [stdout] | [INFO] [stdout] 176 | match users.filter(id.eq(user_id)).first::(conn).await { [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] 176 - match users.filter(id.eq(user_id)).first::(conn).await { [INFO] [stdout] 176 + match diesel_async::RunQueryDsl::first(users.filter(id.eq(user_id)), conn).await { [INFO] [stdout] | [INFO] [stdout] help: disambiguate the method for candidate #2 [INFO] [stdout] | [INFO] [stdout] 176 - match users.filter(id.eq(user_id)).first::(conn).await { [INFO] [stdout] 176 + match diesel::RunQueryDsl::first(users.filter(id.eq(user_id)), conn).await { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0034]: multiple applicable items in scope [INFO] [stdout] --> src/util/api_util.rs:189:39 [INFO] [stdout] | [INFO] [stdout] 189 | match team.filter(id.eq(team_id)).first::(conn).await { [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] 189 - match team.filter(id.eq(team_id)).first::(conn).await { [INFO] [stdout] 189 + match diesel_async::RunQueryDsl::first(team.filter(id.eq(team_id)), conn).await { [INFO] [stdout] | [INFO] [stdout] help: disambiguate the method for candidate #2 [INFO] [stdout] | [INFO] [stdout] 189 - match team.filter(id.eq(team_id)).first::(conn).await { [INFO] [stdout] 189 + match diesel::RunQueryDsl::first(team.filter(id.eq(team_id)), conn).await { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0034]: multiple applicable items in scope [INFO] [stdout] --> src/util/api_util.rs:176:40 [INFO] [stdout] | [INFO] [stdout] 176 | match users.filter(id.eq(user_id)).first::(conn).await { [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] 176 - match users.filter(id.eq(user_id)).first::(conn).await { [INFO] [stdout] 176 + match diesel_async::RunQueryDsl::first(users.filter(id.eq(user_id)), conn).await { [INFO] [stdout] | [INFO] [stdout] help: disambiguate the method for candidate #2 [INFO] [stdout] | [INFO] [stdout] 176 - match users.filter(id.eq(user_id)).first::(conn).await { [INFO] [stdout] 176 + match diesel::RunQueryDsl::first(users.filter(id.eq(user_id)), conn).await { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0034]: multiple applicable items in scope [INFO] [stdout] --> src/util/api_util.rs:189:39 [INFO] [stdout] | [INFO] [stdout] 189 | match team.filter(id.eq(team_id)).first::(conn).await { [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] 189 - match team.filter(id.eq(team_id)).first::(conn).await { [INFO] [stdout] 189 + match diesel_async::RunQueryDsl::first(team.filter(id.eq(team_id)), conn).await { [INFO] [stdout] | [INFO] [stdout] help: disambiguate the method for candidate #2 [INFO] [stdout] | [INFO] [stdout] 189 - match team.filter(id.eq(team_id)).first::(conn).await { [INFO] [stdout] 189 + match diesel::RunQueryDsl::first(team.filter(id.eq(team_id)), conn).await { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0034]: multiple applicable items in scope [INFO] [stdout] --> src/util/api_util.rs:208:10 [INFO] [stdout] | [INFO] [stdout] 208 | .first::(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] 205 ~ match diesel_async::RunQueryDsl::first(team [INFO] [stdout] 206 + .filter(id.eq(team_id)) [INFO] [stdout] 207 + .select(confirmed), conn) [INFO] [stdout] | [INFO] [stdout] help: disambiguate the method for candidate #2 [INFO] [stdout] | [INFO] [stdout] 205 ~ match diesel::RunQueryDsl::first(team [INFO] [stdout] 206 + .filter(id.eq(team_id)) [INFO] [stdout] 207 + .select(confirmed), conn) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0034]: multiple applicable items in scope [INFO] [stdout] --> src/util/api_util.rs:226:10 [INFO] [stdout] | [INFO] [stdout] 226 | .first::(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] 223 ~ match diesel_async::RunQueryDsl::first(team [INFO] [stdout] 224 + .filter(id.eq(team_id)) [INFO] [stdout] 225 + .select(token_balance), conn) [INFO] [stdout] | [INFO] [stdout] help: disambiguate the method for candidate #2 [INFO] [stdout] | [INFO] [stdout] 223 ~ match diesel::RunQueryDsl::first(team [INFO] [stdout] 224 + .filter(id.eq(team_id)) [INFO] [stdout] 225 + .select(token_balance), conn) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0034]: multiple applicable items in scope [INFO] [stdout] --> src/util/api_util.rs:319:10 [INFO] [stdout] | [INFO] [stdout] 319 | .execute(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 `SelectStatement` [INFO] [stdout] help: disambiguate the method for candidate #1 [INFO] [stdout] | [INFO] [stdout] 316 ~ diesel_async::RunQueryDsl::execute(submission [INFO] [stdout] 317 + .filter(team.eq(team_id)) [INFO] [stdout] 318 + .count(), conn) [INFO] [stdout] | [INFO] [stdout] help: disambiguate the method for candidate #2 [INFO] [stdout] | [INFO] [stdout] 316 ~ diesel::RunQueryDsl::execute(submission [INFO] [stdout] 317 + .filter(team.eq(team_id)) [INFO] [stdout] 318 + .count(), conn) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0282]: type annotations needed [INFO] [stdout] --> src/util/api_util.rs:316:5 [INFO] [stdout] | [INFO] [stdout] 316 | / submission [INFO] [stdout] 317 | | .filter(team.eq(team_id)) [INFO] [stdout] 318 | | .count() [INFO] [stdout] 319 | | .execute(conn) [INFO] [stdout] 320 | | .await [INFO] [stdout] | |______________^ cannot infer type [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0034]: multiple applicable items in scope [INFO] [stdout] --> src/util/api_util.rs:370:10 [INFO] [stdout] | [INFO] [stdout] 370 | .execute(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] 365 ~ diesel::RunQueryDsl::execute(diesel::insert_into(email) [INFO] [stdout] 366 + .values((user.eq(user_id), email_record.eq(user_email.as_str()))) [INFO] [stdout] 367 + .on_conflict(user) [INFO] [stdout] 368 + .do_update() [INFO] [stdout] 369 + .set(email_record.eq(user_email.as_str())), conn) [INFO] [stdout] | [INFO] [stdout] help: disambiguate the method for candidate #2 [INFO] [stdout] | [INFO] [stdout] 365 ~ diesel_async::RunQueryDsl::execute(diesel::insert_into(email) [INFO] [stdout] 366 + .values((user.eq(user_id), email_record.eq(user_email.as_str()))) [INFO] [stdout] 367 + .on_conflict(user) [INFO] [stdout] 368 + .do_update() [INFO] [stdout] 369 + .set(email_record.eq(user_email.as_str())), conn) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0282]: type annotations needed [INFO] [stdout] --> src/util/api_util.rs:365:5 [INFO] [stdout] | [INFO] [stdout] 365 | / diesel::insert_into(email) [INFO] [stdout] 366 | | .values((user.eq(user_id), email_record.eq(user_email.as_str()))) [INFO] [stdout] 367 | | .on_conflict(user) [INFO] [stdout] 368 | | .do_update() [INFO] [stdout] 369 | | .set(email_record.eq(user_email.as_str())) [INFO] [stdout] 370 | | .execute(conn) [INFO] [stdout] 371 | | .await [INFO] [stdout] | |______________^ cannot infer type [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0034]: multiple applicable items in scope [INFO] [stdout] --> src/util/api_util.rs:385:10 [INFO] [stdout] | [INFO] [stdout] 385 | .first::(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] 382 ~ let record = diesel_async::RunQueryDsl::first(email [INFO] [stdout] 383 + .filter(user.eq(user_id)) [INFO] [stdout] 384 + .select(email_record), conn) [INFO] [stdout] | [INFO] [stdout] help: disambiguate the method for candidate #2 [INFO] [stdout] | [INFO] [stdout] 382 ~ let record = diesel::RunQueryDsl::first(email [INFO] [stdout] 383 + .filter(user.eq(user_id)) [INFO] [stdout] 384 + .select(email_record), conn) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0282]: type annotations needed [INFO] [stdout] --> src/util/api_util.rs:382:18 [INFO] [stdout] | [INFO] [stdout] 382 | let record = email [INFO] [stdout] | __________________^ [INFO] [stdout] 383 | | .filter(user.eq(user_id)) [INFO] [stdout] 384 | | .select(email_record) [INFO] [stdout] 385 | | .first::(conn) [INFO] [stdout] 386 | | .await [INFO] [stdout] | |______________^ cannot infer type [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0034]: multiple applicable items in scope [INFO] [stdout] --> src/util/api_util.rs:405:10 [INFO] [stdout] | [INFO] [stdout] 405 | .first::(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] 402 ~ let record = diesel_async::RunQueryDsl::first(oracle [INFO] [stdout] 403 + .filter(team.eq(team_id).and(id.eq(oracle_id))) [INFO] [stdout] 404 + .select((id, puzzle, team, active, cost, refund, query, response)), conn) [INFO] [stdout] | [INFO] [stdout] help: disambiguate the method for candidate #2 [INFO] [stdout] | [INFO] [stdout] 402 ~ let record = diesel::RunQueryDsl::first(oracle [INFO] [stdout] 403 + .filter(team.eq(team_id).and(id.eq(oracle_id))) [INFO] [stdout] 404 + .select((id, puzzle, team, active, cost, refund, query, response)), conn) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0282]: type annotations needed [INFO] [stdout] --> src/util/api_util.rs:402:18 [INFO] [stdout] | [INFO] [stdout] 402 | let record = oracle [INFO] [stdout] | __________________^ [INFO] [stdout] 403 | | .filter(team.eq(team_id).and(id.eq(oracle_id))) [INFO] [stdout] 404 | | .select((id, puzzle, team, active, cost, refund, query, response)) [INFO] [stdout] 405 | | .first::(conn) [INFO] [stdout] 406 | | .await [INFO] [stdout] | |______________^ cannot infer type [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0034]: multiple applicable items in scope [INFO] [stdout] --> src/util/api_util.rs:424:10 [INFO] [stdout] | [INFO] [stdout] 424 | .first::(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] 421 ~ let record = diesel_async::RunQueryDsl::first(oracle [INFO] [stdout] 422 + .filter(id.eq(oracle_id)) [INFO] [stdout] 423 + .select((id, puzzle, team, active, cost, refund, query, response)), conn) [INFO] [stdout] | [INFO] [stdout] help: disambiguate the method for candidate #2 [INFO] [stdout] | [INFO] [stdout] 421 ~ let record = diesel::RunQueryDsl::first(oracle [INFO] [stdout] 422 + .filter(id.eq(oracle_id)) [INFO] [stdout] 423 + .select((id, puzzle, team, active, cost, refund, query, response)), conn) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0282]: type annotations needed [INFO] [stdout] --> src/util/api_util.rs:421:18 [INFO] [stdout] | [INFO] [stdout] 421 | let record = oracle [INFO] [stdout] | __________________^ [INFO] [stdout] 422 | | .filter(id.eq(oracle_id)) [INFO] [stdout] 423 | | .select((id, puzzle, team, active, cost, refund, query, response)) [INFO] [stdout] 424 | | .first::(conn) [INFO] [stdout] 425 | | .await [INFO] [stdout] | |______________^ cannot infer type [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0034]: multiple applicable items in scope [INFO] [stdout] --> src/util/api_util.rs:444:10 [INFO] [stdout] | [INFO] [stdout] 444 | .load::(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] 441 ~ let oracles = diesel_async::RunQueryDsl::load(oracle [INFO] [stdout] 442 + .filter(team.eq(team_id).and(puzzle.eq(puzzle_id))) [INFO] [stdout] 443 + .select((id, active)), conn) [INFO] [stdout] | [INFO] [stdout] help: disambiguate the method for candidate #2 [INFO] [stdout] | [INFO] [stdout] 441 ~ let oracles = diesel::RunQueryDsl::load(oracle [INFO] [stdout] 442 + .filter(team.eq(team_id).and(puzzle.eq(puzzle_id))) [INFO] [stdout] 443 + .select((id, active)), conn) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0034]: multiple applicable items in scope [INFO] [stdout] --> src/util/api_util.rs:465:10 [INFO] [stdout] | [INFO] [stdout] 465 | .load::(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] 460 ~ let oracles = diesel_async::RunQueryDsl::load(oracle [INFO] [stdout] 461 + .filter(id.ge(oracle_id)) [INFO] [stdout] 462 + .select((id, active, cost, refund, team, puzzle)) [INFO] [stdout] 463 + .order(id.asc()) [INFO] [stdout] 464 + .limit(limit as i64), conn) [INFO] [stdout] | [INFO] [stdout] help: disambiguate the method for candidate #2 [INFO] [stdout] | [INFO] [stdout] 460 ~ let oracles = diesel::RunQueryDsl::load(oracle [INFO] [stdout] 461 + .filter(id.ge(oracle_id)) [INFO] [stdout] 462 + .select((id, active, cost, refund, team, puzzle)) [INFO] [stdout] 463 + .order(id.asc()) [INFO] [stdout] 464 + .limit(limit as i64), conn) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0034]: multiple applicable items in scope [INFO] [stdout] --> src/util/api_util.rs:481:10 [INFO] [stdout] | [INFO] [stdout] 481 | .first::(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] 477 ~ let result = diesel_async::RunQueryDsl::first(oracle [INFO] [stdout] 478 ~ .filter(active.eq(true)) // 过滤active为true [INFO] [stdout] 479 + .select(id) [INFO] [stdout] 480 + .order(id.asc()), conn) [INFO] [stdout] | [INFO] [stdout] help: disambiguate the method for candidate #2 [INFO] [stdout] | [INFO] [stdout] 477 ~ let result = diesel::RunQueryDsl::first(oracle [INFO] [stdout] 478 ~ .filter(active.eq(true)) // 过滤active为true [INFO] [stdout] 479 + .select(id) [INFO] [stdout] 480 + .order(id.asc()), conn) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0034]: multiple applicable items in scope [INFO] [stdout] --> src/util/api_util.rs:208:10 [INFO] [stdout] | [INFO] [stdout] 208 | .first::(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] 205 ~ match diesel_async::RunQueryDsl::first(team [INFO] [stdout] 206 + .filter(id.eq(team_id)) [INFO] [stdout] 207 + .select(confirmed), conn) [INFO] [stdout] | [INFO] [stdout] help: disambiguate the method for candidate #2 [INFO] [stdout] | [INFO] [stdout] 205 ~ match diesel::RunQueryDsl::first(team [INFO] [stdout] 206 + .filter(id.eq(team_id)) [INFO] [stdout] 207 + .select(confirmed), conn) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0034]: multiple applicable items in scope [INFO] [stdout] --> src/util/api_util.rs:226:10 [INFO] [stdout] | [INFO] [stdout] 226 | .first::(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] 223 ~ match diesel_async::RunQueryDsl::first(team [INFO] [stdout] 224 + .filter(id.eq(team_id)) [INFO] [stdout] 225 + .select(token_balance), conn) [INFO] [stdout] | [INFO] [stdout] help: disambiguate the method for candidate #2 [INFO] [stdout] | [INFO] [stdout] 223 ~ match diesel::RunQueryDsl::first(team [INFO] [stdout] 224 + .filter(id.eq(team_id)) [INFO] [stdout] 225 + .select(token_balance), conn) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0034]: multiple applicable items in scope [INFO] [stdout] --> src/util/api_util.rs:319:10 [INFO] [stdout] | [INFO] [stdout] 319 | .execute(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 `SelectStatement` [INFO] [stdout] help: disambiguate the method for candidate #1 [INFO] [stdout] | [INFO] [stdout] 316 ~ diesel_async::RunQueryDsl::execute(submission [INFO] [stdout] 317 + .filter(team.eq(team_id)) [INFO] [stdout] 318 + .count(), conn) [INFO] [stdout] | [INFO] [stdout] help: disambiguate the method for candidate #2 [INFO] [stdout] | [INFO] [stdout] 316 ~ diesel::RunQueryDsl::execute(submission [INFO] [stdout] 317 + .filter(team.eq(team_id)) [INFO] [stdout] 318 + .count(), conn) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0282]: type annotations needed [INFO] [stdout] --> src/util/api_util.rs:316:5 [INFO] [stdout] | [INFO] [stdout] 316 | / submission [INFO] [stdout] 317 | | .filter(team.eq(team_id)) [INFO] [stdout] 318 | | .count() [INFO] [stdout] 319 | | .execute(conn) [INFO] [stdout] 320 | | .await [INFO] [stdout] | |______________^ cannot infer type [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0034]: multiple applicable items in scope [INFO] [stdout] --> src/util/api_util.rs:370:10 [INFO] [stdout] | [INFO] [stdout] 370 | .execute(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] 365 ~ diesel::RunQueryDsl::execute(diesel::insert_into(email) [INFO] [stdout] 366 + .values((user.eq(user_id), email_record.eq(user_email.as_str()))) [INFO] [stdout] 367 + .on_conflict(user) [INFO] [stdout] 368 + .do_update() [INFO] [stdout] 369 + .set(email_record.eq(user_email.as_str())), conn) [INFO] [stdout] | [INFO] [stdout] help: disambiguate the method for candidate #2 [INFO] [stdout] | [INFO] [stdout] 365 ~ diesel_async::RunQueryDsl::execute(diesel::insert_into(email) [INFO] [stdout] 366 + .values((user.eq(user_id), email_record.eq(user_email.as_str()))) [INFO] [stdout] 367 + .on_conflict(user) [INFO] [stdout] 368 + .do_update() [INFO] [stdout] 369 + .set(email_record.eq(user_email.as_str())), conn) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0282]: type annotations needed [INFO] [stdout] --> src/util/api_util.rs:365:5 [INFO] [stdout] | [INFO] [stdout] 365 | / diesel::insert_into(email) [INFO] [stdout] 366 | | .values((user.eq(user_id), email_record.eq(user_email.as_str()))) [INFO] [stdout] 367 | | .on_conflict(user) [INFO] [stdout] 368 | | .do_update() [INFO] [stdout] 369 | | .set(email_record.eq(user_email.as_str())) [INFO] [stdout] 370 | | .execute(conn) [INFO] [stdout] 371 | | .await [INFO] [stdout] | |______________^ cannot infer type [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0034]: multiple applicable items in scope [INFO] [stdout] --> src/util/api_util.rs:385:10 [INFO] [stdout] | [INFO] [stdout] 385 | .first::(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] 382 ~ let record = diesel_async::RunQueryDsl::first(email [INFO] [stdout] 383 + .filter(user.eq(user_id)) [INFO] [stdout] 384 + .select(email_record), conn) [INFO] [stdout] | [INFO] [stdout] help: disambiguate the method for candidate #2 [INFO] [stdout] | [INFO] [stdout] 382 ~ let record = diesel::RunQueryDsl::first(email [INFO] [stdout] 383 + .filter(user.eq(user_id)) [INFO] [stdout] 384 + .select(email_record), conn) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0282]: type annotations needed [INFO] [stdout] --> src/util/api_util.rs:382:18 [INFO] [stdout] | [INFO] [stdout] 382 | let record = email [INFO] [stdout] | __________________^ [INFO] [stdout] 383 | | .filter(user.eq(user_id)) [INFO] [stdout] 384 | | .select(email_record) [INFO] [stdout] 385 | | .first::(conn) [INFO] [stdout] 386 | | .await [INFO] [stdout] | |______________^ cannot infer type [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0034]: multiple applicable items in scope [INFO] [stdout] --> src/util/api_util.rs:405:10 [INFO] [stdout] | [INFO] [stdout] 405 | .first::(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] 402 ~ let record = diesel_async::RunQueryDsl::first(oracle [INFO] [stdout] 403 + .filter(team.eq(team_id).and(id.eq(oracle_id))) [INFO] [stdout] 404 + .select((id, puzzle, team, active, cost, refund, query, response)), conn) [INFO] [stdout] | [INFO] [stdout] help: disambiguate the method for candidate #2 [INFO] [stdout] | [INFO] [stdout] 402 ~ let record = diesel::RunQueryDsl::first(oracle [INFO] [stdout] 403 + .filter(team.eq(team_id).and(id.eq(oracle_id))) [INFO] [stdout] 404 + .select((id, puzzle, team, active, cost, refund, query, response)), conn) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0282]: type annotations needed [INFO] [stdout] --> src/util/api_util.rs:402:18 [INFO] [stdout] | [INFO] [stdout] 402 | let record = oracle [INFO] [stdout] | __________________^ [INFO] [stdout] 403 | | .filter(team.eq(team_id).and(id.eq(oracle_id))) [INFO] [stdout] 404 | | .select((id, puzzle, team, active, cost, refund, query, response)) [INFO] [stdout] 405 | | .first::(conn) [INFO] [stdout] 406 | | .await [INFO] [stdout] | |______________^ cannot infer type [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0034]: multiple applicable items in scope [INFO] [stdout] --> src/util/api_util.rs:424:10 [INFO] [stdout] | [INFO] [stdout] 424 | .first::(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] 421 ~ let record = diesel_async::RunQueryDsl::first(oracle [INFO] [stdout] 422 + .filter(id.eq(oracle_id)) [INFO] [stdout] 423 + .select((id, puzzle, team, active, cost, refund, query, response)), conn) [INFO] [stdout] | [INFO] [stdout] help: disambiguate the method for candidate #2 [INFO] [stdout] | [INFO] [stdout] 421 ~ let record = diesel::RunQueryDsl::first(oracle [INFO] [stdout] 422 + .filter(id.eq(oracle_id)) [INFO] [stdout] 423 + .select((id, puzzle, team, active, cost, refund, query, response)), conn) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0282]: type annotations needed [INFO] [stdout] --> src/util/api_util.rs:421:18 [INFO] [stdout] | [INFO] [stdout] 421 | let record = oracle [INFO] [stdout] | __________________^ [INFO] [stdout] 422 | | .filter(id.eq(oracle_id)) [INFO] [stdout] 423 | | .select((id, puzzle, team, active, cost, refund, query, response)) [INFO] [stdout] 424 | | .first::(conn) [INFO] [stdout] 425 | | .await [INFO] [stdout] | |______________^ cannot infer type [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0034]: multiple applicable items in scope [INFO] [stdout] --> src/util/stat.rs:52:10 [INFO] [stdout] | [INFO] [stdout] 52 | .load(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 `SqlQuery` [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 data: Vec = query [INFO] [stdout] 52 - .load(conn) [INFO] [stdout] 51 + let data: Vec = diesel::RunQueryDsl::load(query, conn) [INFO] [stdout] | [INFO] [stdout] help: disambiguate the method for candidate #2 [INFO] [stdout] | [INFO] [stdout] 51 - let data: Vec = query [INFO] [stdout] 52 - .load(conn) [INFO] [stdout] 51 + let data: Vec = diesel_async::RunQueryDsl::load(query, conn) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0282]: type annotations needed [INFO] [stdout] --> src/util/stat.rs:51:32 [INFO] [stdout] | [INFO] [stdout] 51 | let data: Vec = query [INFO] [stdout] | ________________________________^ [INFO] [stdout] 52 | | .load(conn) [INFO] [stdout] 53 | | .await [INFO] [stdout] | |______________^ cannot infer type [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0034]: multiple applicable items in scope [INFO] [stdout] --> src/util/stat.rs:91:10 [INFO] [stdout] | [INFO] [stdout] 91 | .load(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 `query_builder::sql_query::UncheckedBind` [INFO] [stdout] help: disambiguate the method for candidate #1 [INFO] [stdout] | [INFO] [stdout] 90 - let data: Vec = query [INFO] [stdout] 91 - .load(conn) [INFO] [stdout] 90 + let data: Vec = diesel_async::RunQueryDsl::load(query, conn) [INFO] [stdout] | [INFO] [stdout] help: disambiguate the method for candidate #2 [INFO] [stdout] | [INFO] [stdout] 90 - let data: Vec = query [INFO] [stdout] 91 - .load(conn) [INFO] [stdout] 90 + let data: Vec = diesel::RunQueryDsl::load(query, conn) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0282]: type annotations needed [INFO] [stdout] --> src/util/stat.rs:90:32 [INFO] [stdout] | [INFO] [stdout] 90 | let data: Vec = query [INFO] [stdout] | ________________________________^ [INFO] [stdout] 91 | | .load(conn) [INFO] [stdout] 92 | | .await [INFO] [stdout] | |______________^ cannot infer type [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0034]: multiple applicable items in scope [INFO] [stdout] --> src/util/api_util.rs:444:10 [INFO] [stdout] | [INFO] [stdout] 444 | .load::(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] 441 ~ let oracles = diesel_async::RunQueryDsl::load(oracle [INFO] [stdout] 442 + .filter(team.eq(team_id).and(puzzle.eq(puzzle_id))) [INFO] [stdout] 443 + .select((id, active)), conn) [INFO] [stdout] | [INFO] [stdout] help: disambiguate the method for candidate #2 [INFO] [stdout] | [INFO] [stdout] 441 ~ let oracles = diesel::RunQueryDsl::load(oracle [INFO] [stdout] 442 + .filter(team.eq(team_id).and(puzzle.eq(puzzle_id))) [INFO] [stdout] 443 + .select((id, active)), conn) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0034]: multiple applicable items in scope [INFO] [stdout] --> src/util/api_util.rs:465:10 [INFO] [stdout] | [INFO] [stdout] 465 | .load::(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] 460 ~ let oracles = diesel_async::RunQueryDsl::load(oracle [INFO] [stdout] 461 + .filter(id.ge(oracle_id)) [INFO] [stdout] 462 + .select((id, active, cost, refund, team, puzzle)) [INFO] [stdout] 463 + .order(id.asc()) [INFO] [stdout] 464 + .limit(limit as i64), conn) [INFO] [stdout] | [INFO] [stdout] help: disambiguate the method for candidate #2 [INFO] [stdout] | [INFO] [stdout] 460 ~ let oracles = diesel::RunQueryDsl::load(oracle [INFO] [stdout] 461 + .filter(id.ge(oracle_id)) [INFO] [stdout] 462 + .select((id, active, cost, refund, team, puzzle)) [INFO] [stdout] 463 + .order(id.asc()) [INFO] [stdout] 464 + .limit(limit as i64), conn) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0034]: multiple applicable items in scope [INFO] [stdout] --> src/util/api_util.rs:481:10 [INFO] [stdout] | [INFO] [stdout] 481 | .first::(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] 477 ~ let result = diesel_async::RunQueryDsl::first(oracle [INFO] [stdout] 478 ~ .filter(active.eq(true)) // 过滤active为true [INFO] [stdout] 479 + .select(id) [INFO] [stdout] 480 + .order(id.asc()), conn) [INFO] [stdout] | [INFO] [stdout] help: disambiguate the method for candidate #2 [INFO] [stdout] | [INFO] [stdout] 477 ~ let result = diesel::RunQueryDsl::first(oracle [INFO] [stdout] 478 ~ .filter(active.eq(true)) // 过滤active为true [INFO] [stdout] 479 + .select(id) [INFO] [stdout] 480 + .order(id.asc()), conn) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0034]: multiple applicable items in scope [INFO] [stdout] --> src/util/stat.rs:52:10 [INFO] [stdout] | [INFO] [stdout] 52 | .load(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 `SqlQuery` [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 data: Vec = query [INFO] [stdout] 52 - .load(conn) [INFO] [stdout] 51 + let data: Vec = diesel::RunQueryDsl::load(query, conn) [INFO] [stdout] | [INFO] [stdout] help: disambiguate the method for candidate #2 [INFO] [stdout] | [INFO] [stdout] 51 - let data: Vec = query [INFO] [stdout] 52 - .load(conn) [INFO] [stdout] 51 + let data: Vec = diesel_async::RunQueryDsl::load(query, conn) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0282]: type annotations needed [INFO] [stdout] --> src/util/stat.rs:51:32 [INFO] [stdout] | [INFO] [stdout] 51 | let data: Vec = query [INFO] [stdout] | ________________________________^ [INFO] [stdout] 52 | | .load(conn) [INFO] [stdout] 53 | | .await [INFO] [stdout] | |______________^ cannot infer type [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0034]: multiple applicable items in scope [INFO] [stdout] --> src/util/stat.rs:91:10 [INFO] [stdout] | [INFO] [stdout] 91 | .load(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 `query_builder::sql_query::UncheckedBind` [INFO] [stdout] help: disambiguate the method for candidate #1 [INFO] [stdout] | [INFO] [stdout] 90 - let data: Vec = query [INFO] [stdout] 91 - .load(conn) [INFO] [stdout] 90 + let data: Vec = diesel_async::RunQueryDsl::load(query, conn) [INFO] [stdout] | [INFO] [stdout] help: disambiguate the method for candidate #2 [INFO] [stdout] | [INFO] [stdout] 90 - let data: Vec = query [INFO] [stdout] 91 - .load(conn) [INFO] [stdout] 90 + let data: Vec = diesel::RunQueryDsl::load(query, conn) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0282]: type annotations needed [INFO] [stdout] --> src/util/stat.rs:90:32 [INFO] [stdout] | [INFO] [stdout] 90 | let data: Vec = query [INFO] [stdout] | ________________________________^ [INFO] [stdout] 91 | | .load(conn) [INFO] [stdout] 92 | | .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 `server` (lib) due to 35 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 `server` (lib test) due to 35 previous errors [INFO] running `Command { std: "docker" "inspect" "cec6ef58a68dcd9d272a08eedc4f4cc57c67862a10d21640a2b1ee0bb9fb6fb9", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "cec6ef58a68dcd9d272a08eedc4f4cc57c67862a10d21640a2b1ee0bb9fb6fb9", kill_on_drop: false }` [INFO] [stdout] cec6ef58a68dcd9d272a08eedc4f4cc57c67862a10d21640a2b1ee0bb9fb6fb9