[INFO] cloning repository https://github.com/vermiculite/mealplanner [INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/vermiculite/mealplanner" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fvermiculite%2Fmealplanner", kill_on_drop: false }` [INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fvermiculite%2Fmealplanner'... [INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }` [INFO] [stdout] 00388f3b4b6cae29cf9844d2fc2bf3dee2d36f89 [INFO] checking vermiculite/mealplanner against master#a5f164faad4a2fed606b8160fd7ecd2d5cbba381 for pr-84920 [INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fvermiculite%2Fmealplanner" "/workspace/builds/worker-12/source", kill_on_drop: false }` [INFO] [stderr] Cloning into '/workspace/builds/worker-12/source'... [INFO] [stderr] done. [INFO] validating manifest of git repo https://github.com/vermiculite/mealplanner on toolchain a5f164faad4a2fed606b8160fd7ecd2d5cbba381 [INFO] running `Command { std: "/workspace/cargo-home/bin/cargo" "+a5f164faad4a2fed606b8160fd7ecd2d5cbba381" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] started tweaking git repo https://github.com/vermiculite/mealplanner [INFO] finished tweaking git repo https://github.com/vermiculite/mealplanner [INFO] tweaked toml for git repo https://github.com/vermiculite/mealplanner written to /workspace/builds/worker-12/source/Cargo.toml [INFO] crate git repo https://github.com/vermiculite/mealplanner already has a lockfile, it will not be regenerated [INFO] running `Command { std: "/workspace/cargo-home/bin/cargo" "+a5f164faad4a2fed606b8160fd7ecd2d5cbba381" "fetch" "--locked" "--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-12/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-12/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:20528e8c29e4536546f0102ce88568b16ea7538393a33fcca951030f7af10457" "/opt/rustwide/cargo-home/bin/cargo" "+a5f164faad4a2fed606b8160fd7ecd2d5cbba381" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] be5df1e07e269ccc8ea77b6466366936acce40465a298610b9586b955eafb7ef [INFO] [stderr] WARNING: Your kernel does not support swap limit capabilities or the cgroup is not mounted. Memory limited without swap. [INFO] running `Command { std: "docker" "start" "-a" "be5df1e07e269ccc8ea77b6466366936acce40465a298610b9586b955eafb7ef", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "be5df1e07e269ccc8ea77b6466366936acce40465a298610b9586b955eafb7ef", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "be5df1e07e269ccc8ea77b6466366936acce40465a298610b9586b955eafb7ef", kill_on_drop: false }` [INFO] [stdout] be5df1e07e269ccc8ea77b6466366936acce40465a298610b9586b955eafb7ef [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-12/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-12/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" "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:20528e8c29e4536546f0102ce88568b16ea7538393a33fcca951030f7af10457" "/opt/rustwide/cargo-home/bin/cargo" "+a5f164faad4a2fed606b8160fd7ecd2d5cbba381" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] 0ef7cf533ced85277506f18b85f20fbeb6a5401125e9c4969e8722a571b0bbeb [INFO] [stderr] WARNING: Your kernel does not support swap limit capabilities or the cgroup is not mounted. Memory limited without swap. [INFO] running `Command { std: "docker" "start" "-a" "0ef7cf533ced85277506f18b85f20fbeb6a5401125e9c4969e8722a571b0bbeb", kill_on_drop: false }` [INFO] [stderr] Compiling proc-macro2 v1.0.13 [INFO] [stderr] Compiling syn v1.0.22 [INFO] [stderr] Compiling log v0.4.8 [INFO] [stderr] Checking futures-sink v0.3.5 [INFO] [stderr] Checking arc-swap v0.4.6 [INFO] [stderr] Checking pin-project-lite v0.1.5 [INFO] [stderr] Checking futures-io v0.3.5 [INFO] [stderr] Compiling serde v1.0.110 [INFO] [stderr] Checking rustc-demangle v0.1.16 [INFO] [stderr] Checking itoa v0.4.5 [INFO] [stderr] Checking copyless v0.1.4 [INFO] [stderr] Checking either v1.5.3 [INFO] [stderr] Compiling crc32fast v1.2.0 [INFO] [stderr] Compiling httparse v1.3.4 [INFO] [stderr] Compiling encoding_rs v0.8.23 [INFO] [stderr] Checking dtoa v0.4.5 [INFO] [stderr] Checking language-tags v0.2.2 [INFO] [stderr] Checking termcolor v1.1.0 [INFO] [stderr] Checking dotenv v0.15.0 [INFO] [stderr] Checking bytestring v0.1.5 [INFO] [stderr] Compiling indexmap v1.3.2 [INFO] [stderr] Compiling ring v0.16.13 [INFO] [stderr] Compiling brotli-sys v0.3.2 [INFO] [stderr] Checking addr2line v0.12.1 [INFO] [stderr] Checking humantime v1.3.0 [INFO] [stderr] Checking miniz_oxide v0.3.6 [INFO] [stderr] Checking futures-channel v0.3.5 [INFO] [stderr] Checking idna v0.2.0 [INFO] [stderr] Checking stringprep v0.1.2 [INFO] [stderr] Checking http v0.2.1 [INFO] [stderr] Compiling proc-macro2 v0.4.30 [INFO] [stderr] Checking iovec v0.1.4 [INFO] [stderr] Checking num_cpus v1.13.0 [INFO] [stderr] Checking net2 v0.2.34 [INFO] [stderr] Checking signal-hook-registry v1.2.0 [INFO] [stderr] Checking getrandom v0.1.14 [INFO] [stderr] Checking parking_lot_core v0.7.2 [INFO] [stderr] Checking socket2 v0.3.12 [INFO] [stderr] Checking hostname v0.3.1 [INFO] [stderr] Checking time v0.1.43 [INFO] [stderr] Checking atty v0.2.14 [INFO] [stderr] Checking fxhash v0.2.1 [INFO] [stderr] Checking backtrace v0.3.48 [INFO] [stderr] Checking threadpool v1.8.1 [INFO] [stderr] Checking resolv-conf v0.6.3 [INFO] [stderr] Checking rand_core v0.5.1 [INFO] [stderr] Checking parking_lot v0.10.2 [INFO] [stderr] Checking mio v0.6.22 [INFO] [stderr] Checking env_logger v0.7.1 [INFO] [stderr] Compiling quote v0.6.13 [INFO] [stderr] Checking chrono v0.4.11 [INFO] [stderr] Checking flate2 v1.0.14 [INFO] [stderr] Checking rand_chacha v0.2.2 [INFO] [stderr] Checking url v2.1.1 [INFO] [stderr] Checking futures-intrusive v0.3.1 [INFO] [stderr] Compiling syn v0.15.44 [INFO] [stderr] Checking rand v0.7.3 [INFO] [stderr] Compiling quote v1.0.6 [INFO] [stderr] Checking mio-uds v0.6.8 [INFO] [stderr] Checking webpki v0.21.2 [INFO] [stderr] Checking sct v0.6.0 [INFO] [stderr] Checking rustls v0.17.0 [INFO] [stderr] Checking webpki-roots v0.18.0 [INFO] [stderr] Checking brotli2 v0.3.2 [INFO] [stderr] Compiling typed-builder v0.3.0 [INFO] [stderr] Compiling synstructure v0.12.3 [INFO] [stderr] Compiling syn-mid v0.5.0 [INFO] [stderr] Compiling pin-project-internal v0.4.17 [INFO] [stderr] Compiling tokio-macros v0.2.5 [INFO] [stderr] Compiling futures-macro v0.3.5 [INFO] [stderr] Compiling serde_derive v1.0.110 [INFO] [stderr] Compiling derive_more v0.99.7 [INFO] [stderr] Compiling actix-macros v0.1.2 [INFO] [stderr] Compiling async-trait v0.1.31 [INFO] [stderr] Compiling enum-as-inner v0.3.2 [INFO] [stderr] Compiling failure_derive v0.1.8 [INFO] [stderr] Compiling thiserror-impl v1.0.18 [INFO] [stderr] Compiling rustversion v1.0.2 [INFO] [stderr] Compiling proc-macro-error-attr v1.0.2 [INFO] [stderr] Compiling serde_with_macros v1.1.0 [INFO] [stderr] Compiling juniper_codegen v0.14.2 [INFO] [stderr] Compiling actix-web-codegen v0.2.1 [INFO] [stderr] Compiling derivative v2.1.1 [INFO] [stderr] Compiling proc-macro-error v1.0.2 [INFO] [stderr] Checking tokio v0.2.21 [INFO] [stderr] Checking failure v0.1.8 [INFO] [stderr] Compiling err-derive v0.2.4 [INFO] [stderr] Checking thiserror v1.0.18 [INFO] [stderr] Checking pin-project v0.4.17 [INFO] [stderr] Checking futures-util v0.3.5 [INFO] [stderr] Checking tokio-util v0.2.0 [INFO] [stderr] Checking tokio-util v0.3.1 [INFO] [stderr] Checking tokio-rustls v0.13.1 [INFO] [stderr] Checking actix-codec v0.2.0 [INFO] [stderr] Checking actix-threadpool v0.3.2 [INFO] [stderr] Checking futures-executor v0.3.5 [INFO] [stderr] Checking actix-service v1.0.5 [INFO] [stderr] Checking actix-rt v1.1.1 [INFO] [stderr] Checking futures v0.3.5 [INFO] [stderr] Checking trust-dns-proto v0.18.0-alpha.2 [INFO] [stderr] Checking trust-dns-proto v0.19.5 [INFO] [stderr] Checking actix-utils v1.0.6 [INFO] [stderr] Checking actix-server v1.0.3 [INFO] [stderr] Checking actix-tls v1.0.0 [INFO] [stderr] Checking actix-testing v1.0.1 [INFO] [stderr] Checking trust-dns-resolver v0.18.0-alpha.2 [INFO] [stderr] Checking trust-dns-resolver v0.19.5 [INFO] [stderr] Checking serde_urlencoded v0.6.1 [INFO] [stderr] Checking actix-router v0.2.4 [INFO] [stderr] Checking os_info v1.3.3 [INFO] [stderr] Checking serde_with v1.4.0 [INFO] [stderr] Checking uuid v0.8.1 [INFO] [stderr] Checking actix-connect v1.0.2 [INFO] [stderr] Checking serde_json v1.0.53 [INFO] [stderr] Checking h2 v0.2.5 [INFO] [stderr] Checking juniper v0.14.2 [INFO] [stderr] Checking bson v0.14.1 [INFO] [stderr] Checking mongodb v0.10.0 [INFO] [stderr] Checking actix-http v1.0.1 [INFO] [stderr] Checking awc v1.0.1 [INFO] [stderr] Checking actix-web v2.0.0 [INFO] [stderr] Checking mealplanner v0.1.0 (/opt/rustwide/workdir) [INFO] [stdout] error: cannot find macro `params` in this scope [INFO] [stdout] --> src/schemas/root.rs:146:13 [INFO] [stdout] | [INFO] [stdout] 146 | params! { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: cannot find macro `params` in this scope [INFO] [stdout] --> src/schemas/root.rs:114:13 [INFO] [stdout] | [INFO] [stdout] 114 | params! { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: cannot find macro `params` in this scope [INFO] [stdout] --> src/schemas/root.rs:86:64 [INFO] [stdout] | [INFO] [stdout] 86 | conn.first_exec("SELECT * FROM user WHERE id=:id", params! {"id" => id}); [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: cannot find macro `params` in this scope [INFO] [stdout] --> src/schemas/root.rs:46:64 [INFO] [stdout] | [INFO] [stdout] 46 | conn.first_exec("SELECT * FROM user WHERE id=:id", params! {"id" => id}); [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: cannot find macro `doc` in this scope [INFO] [stdout] --> src/schemas/root.rs:23:22 [INFO] [stdout] | [INFO] [stdout] 23 | let filter = doc! {}; [INFO] [stdout] | ^^^ [INFO] [stdout] | [INFO] [stdout] = note: consider importing one of these items: [INFO] [stdout] bson::doc [INFO] [stdout] crate::schemas::user::doc [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: cannot find macro `doc` in this scope [INFO] [stdout] --> src/schemas/product.rs:31:31 [INFO] [stdout] | [INFO] [stdout] 31 | return users.find_one(doc!{"id": &self.user_id}, None); [INFO] [stdout] | ^^^ [INFO] [stdout] | [INFO] [stdout] = note: consider importing one of these items: [INFO] [stdout] bson::doc [INFO] [stdout] crate::schemas::user::doc [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: cannot find macro `params` in this scope [INFO] [stdout] --> src/schemas/root.rs:146:13 [INFO] [stdout] | [INFO] [stdout] 146 | params! { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: cannot find macro `params` in this scope [INFO] [stdout] --> src/schemas/root.rs:114:13 [INFO] [stdout] | [INFO] [stdout] 114 | params! { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: cannot find macro `params` in this scope [INFO] [stdout] --> src/schemas/root.rs:86:64 [INFO] [stdout] | [INFO] [stdout] 86 | conn.first_exec("SELECT * FROM user WHERE id=:id", params! {"id" => id}); [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: cannot find macro `params` in this scope [INFO] [stdout] --> src/schemas/root.rs:46:64 [INFO] [stdout] | [INFO] [stdout] 46 | conn.first_exec("SELECT * FROM user WHERE id=:id", params! {"id" => id}); [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: cannot find macro `doc` in this scope [INFO] [stdout] --> src/schemas/root.rs:23:22 [INFO] [stdout] | [INFO] [stdout] 23 | let filter = doc! {}; [INFO] [stdout] | ^^^ [INFO] [stdout] | [INFO] [stdout] = note: consider importing one of these items: [INFO] [stdout] bson::doc [INFO] [stdout] crate::schemas::user::doc [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: cannot find macro `doc` in this scope [INFO] [stdout] --> src/schemas/product.rs:31:31 [INFO] [stdout] | [INFO] [stdout] 31 | return users.find_one(doc!{"id": &self.user_id}, None); [INFO] [stdout] | ^^^ [INFO] [stdout] | [INFO] [stdout] = note: consider importing one of these items: [INFO] [stdout] bson::doc [INFO] [stdout] crate::schemas::user::doc [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `DBError` [INFO] [stdout] --> src/schemas/root.rs:129:21 [INFO] [stdout] | [INFO] [stdout] 129 | DBError::MySqlError(err) => err.message, [INFO] [stdout] | ^^^^^^^ use of undeclared type `DBError` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `DBError` [INFO] [stdout] --> src/schemas/root.rs:163:21 [INFO] [stdout] | [INFO] [stdout] 163 | DBError::MySqlError(err) => err.message, [INFO] [stdout] | ^^^^^^^ use of undeclared type `DBError` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0425]: cannot find value `this` in this scope [INFO] [stdout] --> src/schemas/root.rs:22:42 [INFO] [stdout] | [INFO] [stdout] 22 | let users = context.users.borrow(this); [INFO] [stdout] | ^^^^ [INFO] [stdout] | | [INFO] [stdout] | not found in this scope [INFO] [stdout] | help: you might have meant to use `self` here instead [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0425]: cannot find value `conn` in this scope [INFO] [stdout] --> src/schemas/root.rs:26:21 [INFO] [stdout] | [INFO] [stdout] 26 | let users = conn [INFO] [stdout] | ^^^^ not found in this scope [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0425]: cannot find function `from_row` in this scope [INFO] [stdout] --> src/schemas/root.rs:32:49 [INFO] [stdout] | [INFO] [stdout] 32 | let (id, name, email) = from_row(row); [INFO] [stdout] | ^^^^^^^^ not found in this scope [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0412]: cannot find type `Row` in this scope [INFO] [stdout] --> src/schemas/root.rs:45:33 [INFO] [stdout] | [INFO] [stdout] 45 | let user: Result, DBError> = [INFO] [stdout] | ^^^ not found in this scope [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `DBError` [INFO] [stdout] --> src/schemas/root.rs:129:21 [INFO] [stdout] | [INFO] [stdout] 129 | DBError::MySqlError(err) => err.message, [INFO] [stdout] | ^^^^^^^ use of undeclared type `DBError` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0412]: cannot find type `DBError` in this scope [INFO] [stdout] --> src/schemas/root.rs:45:39 [INFO] [stdout] | [INFO] [stdout] 45 | let user: Result, DBError> = [INFO] [stdout] | ^^^^^^^ not found in this scope [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0425]: cannot find value `conn` in this scope [INFO] [stdout] --> src/schemas/root.rs:46:13 [INFO] [stdout] | [INFO] [stdout] 46 | conn.first_exec("SELECT * FROM user WHERE id=:id", params! {"id" => id}); [INFO] [stdout] | ^^^^ not found in this scope [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0425]: cannot find function `from_row` in this scope [INFO] [stdout] --> src/schemas/root.rs:55:33 [INFO] [stdout] | [INFO] [stdout] 55 | let (id, name, email) = from_row(user.unwrap().unwrap()); [INFO] [stdout] | ^^^^^^^^ not found in this scope [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0425]: cannot find function `from_row` in this scope [INFO] [stdout] --> src/schemas/root.rs:68:58 [INFO] [stdout] | [INFO] [stdout] 68 | let (id, user_id, name, price) = from_row(row); [INFO] [stdout] | ^^^^^^^^ not found in this scope [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0412]: cannot find type `Row` in this scope [INFO] [stdout] --> src/schemas/root.rs:85:36 [INFO] [stdout] | [INFO] [stdout] 85 | let product: Result, DBError> = [INFO] [stdout] | ^^^ not found in this scope [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0412]: cannot find type `DBError` in this scope [INFO] [stdout] --> src/schemas/root.rs:85:42 [INFO] [stdout] | [INFO] [stdout] 85 | let product: Result, DBError> = [INFO] [stdout] | ^^^^^^^ not found in this scope [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0425]: cannot find function `from_row` in this scope [INFO] [stdout] --> src/schemas/root.rs:94:42 [INFO] [stdout] | [INFO] [stdout] 94 | let (id, user_id, name, price) = from_row(product.unwrap().unwrap()); [INFO] [stdout] | ^^^^^^^^ not found in this scope [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0412]: cannot find type `Row` in this scope [INFO] [stdout] --> src/schemas/root.rs:112:35 [INFO] [stdout] | [INFO] [stdout] 112 | let insert: Result, DBError> = conn.first_exec( [INFO] [stdout] | ^^^ not found in this scope [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0412]: cannot find type `DBError` in this scope [INFO] [stdout] --> src/schemas/root.rs:112:41 [INFO] [stdout] | [INFO] [stdout] 112 | let insert: Result, DBError> = conn.first_exec( [INFO] [stdout] | ^^^^^^^ not found in this scope [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0412]: cannot find type `Row` in this scope [INFO] [stdout] --> src/schemas/root.rs:144:35 [INFO] [stdout] | [INFO] [stdout] 144 | let insert: Result, DBError> = conn.first_exec( [INFO] [stdout] | ^^^ not found in this scope [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0412]: cannot find type `DBError` in this scope [INFO] [stdout] --> src/schemas/root.rs:144:41 [INFO] [stdout] | [INFO] [stdout] 144 | let insert: Result, DBError> = conn.first_exec( [INFO] [stdout] | ^^^^^^^ not found in this scope [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `DBError` [INFO] [stdout] --> src/schemas/root.rs:163:21 [INFO] [stdout] | [INFO] [stdout] 163 | DBError::MySqlError(err) => err.message, [INFO] [stdout] | ^^^^^^^ use of undeclared type `DBError` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0425]: cannot find value `this` in this scope [INFO] [stdout] --> src/schemas/root.rs:22:42 [INFO] [stdout] | [INFO] [stdout] 22 | let users = context.users.borrow(this); [INFO] [stdout] | ^^^^ [INFO] [stdout] | | [INFO] [stdout] | not found in this scope [INFO] [stdout] | help: you might have meant to use `self` here instead [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0425]: cannot find value `conn` in this scope [INFO] [stdout] --> src/schemas/root.rs:26:21 [INFO] [stdout] | [INFO] [stdout] 26 | let users = conn [INFO] [stdout] | ^^^^ not found in this scope [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0425]: cannot find function `from_row` in this scope [INFO] [stdout] --> src/schemas/root.rs:32:49 [INFO] [stdout] | [INFO] [stdout] 32 | let (id, name, email) = from_row(row); [INFO] [stdout] | ^^^^^^^^ not found in this scope [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0412]: cannot find type `Row` in this scope [INFO] [stdout] --> src/schemas/root.rs:45:33 [INFO] [stdout] | [INFO] [stdout] 45 | let user: Result, DBError> = [INFO] [stdout] | ^^^ not found in this scope [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0412]: cannot find type `DBError` in this scope [INFO] [stdout] --> src/schemas/root.rs:45:39 [INFO] [stdout] | [INFO] [stdout] 45 | let user: Result, DBError> = [INFO] [stdout] | ^^^^^^^ not found in this scope [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0425]: cannot find value `conn` in this scope [INFO] [stdout] --> src/schemas/root.rs:46:13 [INFO] [stdout] | [INFO] [stdout] 46 | conn.first_exec("SELECT * FROM user WHERE id=:id", params! {"id" => id}); [INFO] [stdout] | ^^^^ not found in this scope [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0425]: cannot find function `from_row` in this scope [INFO] [stdout] --> src/schemas/root.rs:55:33 [INFO] [stdout] | [INFO] [stdout] 55 | let (id, name, email) = from_row(user.unwrap().unwrap()); [INFO] [stdout] | ^^^^^^^^ not found in this scope [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0425]: cannot find function `from_row` in this scope [INFO] [stdout] --> src/schemas/root.rs:68:58 [INFO] [stdout] | [INFO] [stdout] 68 | let (id, user_id, name, price) = from_row(row); [INFO] [stdout] | ^^^^^^^^ not found in this scope [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0412]: cannot find type `Row` in this scope [INFO] [stdout] --> src/schemas/root.rs:85:36 [INFO] [stdout] | [INFO] [stdout] 85 | let product: Result, DBError> = [INFO] [stdout] | ^^^ not found in this scope [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0412]: cannot find type `DBError` in this scope [INFO] [stdout] --> src/schemas/root.rs:85:42 [INFO] [stdout] | [INFO] [stdout] 85 | let product: Result, DBError> = [INFO] [stdout] | ^^^^^^^ not found in this scope [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0425]: cannot find function `from_row` in this scope [INFO] [stdout] --> src/schemas/root.rs:94:42 [INFO] [stdout] | [INFO] [stdout] 94 | let (id, user_id, name, price) = from_row(product.unwrap().unwrap()); [INFO] [stdout] | ^^^^^^^^ not found in this scope [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0412]: cannot find type `Row` in this scope [INFO] [stdout] --> src/schemas/root.rs:112:35 [INFO] [stdout] | [INFO] [stdout] 112 | let insert: Result, DBError> = conn.first_exec( [INFO] [stdout] | ^^^ not found in this scope [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0412]: cannot find type `DBError` in this scope [INFO] [stdout] --> src/schemas/root.rs:112:41 [INFO] [stdout] | [INFO] [stdout] 112 | let insert: Result, DBError> = conn.first_exec( [INFO] [stdout] | ^^^^^^^ not found in this scope [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0412]: cannot find type `Row` in this scope [INFO] [stdout] --> src/schemas/root.rs:144:35 [INFO] [stdout] | [INFO] [stdout] 144 | let insert: Result, DBError> = conn.first_exec( [INFO] [stdout] | ^^^ not found in this scope [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0412]: cannot find type `DBError` in this scope [INFO] [stdout] --> src/schemas/root.rs:144:41 [INFO] [stdout] | [INFO] [stdout] 144 | let insert: Result, DBError> = conn.first_exec( [INFO] [stdout] | ^^^^^^^ not found in this scope [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0728]: `await` is only allowed inside `async` functions and blocks [INFO] [stdout] --> src/schemas/user.rs:33:22 [INFO] [stdout] | [INFO] [stdout] 20 | #[juniper::object(Context = Context)] [INFO] [stdout] | ------------------------------------- this is not `async` [INFO] [stdout] ... [INFO] [stdout] 33 | let cursor = context.users.find(doc!{"user_id": self.id}, None).await?; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ only allowed inside `async` functions and blocks [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0728]: `await` is only allowed inside `async` functions and blocks [INFO] [stdout] --> src/schemas/user.rs:33:22 [INFO] [stdout] | [INFO] [stdout] 20 | #[juniper::object(Context = Context)] [INFO] [stdout] | ------------------------------------- this is not `async` [INFO] [stdout] ... [INFO] [stdout] 33 | let cursor = context.users.find(doc!{"user_id": self.id}, None).await?; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ only allowed inside `async` functions and blocks [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::db::get_db` [INFO] [stdout] --> src/main.rs:7:5 [INFO] [stdout] | [INFO] [stdout] 7 | use crate::db::get_db; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::db::get_db` [INFO] [stdout] --> src/main.rs:7:5 [INFO] [stdout] | [INFO] [stdout] 7 | use crate::db::get_db; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0308]: mismatched types [INFO] [stdout] --> src/schemas/product.rs:31:16 [INFO] [stdout] | [INFO] [stdout] 31 | return users.find_one(doc!{"id": &self.user_id}, None); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ expected enum `std::option::Option`, found opaque type [INFO] [stdout] | [INFO] [stdout] ::: /opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/mongodb-0.10.0/src/coll/mod.rs:338:10 [INFO] [stdout] | [INFO] [stdout] 338 | ) -> Result> { [INFO] [stdout] | ------------------------ checked the `Output` of this `async fn`, found opaque type [INFO] [stdout] | [INFO] [stdout] = note: while checking the return type of the `async fn` [INFO] [stdout] = note: expected enum `std::option::Option` [INFO] [stdout] found opaque type `impl futures::Future` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0061]: this function takes 0 arguments but 1 argument was supplied [INFO] [stdout] --> src/schemas/root.rs:22:35 [INFO] [stdout] | [INFO] [stdout] 22 | let users = context.users.borrow(this); [INFO] [stdout] | ^^^^^^ ---- supplied 1 argument [INFO] [stdout] | | [INFO] [stdout] | expected 0 arguments [INFO] [stdout] | [INFO] [stdout] note: associated function defined here [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0061]: this function takes 2 arguments but 1 argument was supplied [INFO] [stdout] --> src/schemas/root.rs:24:32 [INFO] [stdout] | [INFO] [stdout] 24 | let mut cursor = users.find(filter); [INFO] [stdout] | ^^^^ ------ supplied 1 argument [INFO] [stdout] | | [INFO] [stdout] | expected 2 arguments [INFO] [stdout] | [INFO] [stdout] note: associated function defined here [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/mongodb-0.10.0/src/coll/mod.rs:320:18 [INFO] [stdout] | [INFO] [stdout] 320 | pub async fn find( [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0609]: no field `findOne` on type `Collection` [INFO] [stdout] --> src/schemas/root.rs:43:34 [INFO] [stdout] | [INFO] [stdout] 43 | let user = context.users.findOne; [INFO] [stdout] | ^^^^^^^ unknown field [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0609]: no field `dbpool` on type `&root::Context` [INFO] [stdout] --> src/schemas/root.rs:61:32 [INFO] [stdout] | [INFO] [stdout] 61 | let mut conn = context.dbpool.get().unwrap(); [INFO] [stdout] | ^^^^^^ unknown field [INFO] [stdout] | [INFO] [stdout] = note: available fields are: `users`, `products` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0609]: no field `dbpool` on type `&root::Context` [INFO] [stdout] --> src/schemas/root.rs:84:32 [INFO] [stdout] | [INFO] [stdout] 84 | let mut conn = context.dbpool.get().unwrap(); [INFO] [stdout] | ^^^^^^ unknown field [INFO] [stdout] | [INFO] [stdout] = note: available fields are: `users`, `products` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0308]: mismatched types [INFO] [stdout] --> src/schemas/product.rs:31:16 [INFO] [stdout] | [INFO] [stdout] 31 | return users.find_one(doc!{"id": &self.user_id}, None); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ expected enum `std::option::Option`, found opaque type [INFO] [stdout] | [INFO] [stdout] ::: /opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/mongodb-0.10.0/src/coll/mod.rs:338:10 [INFO] [stdout] | [INFO] [stdout] 338 | ) -> Result> { [INFO] [stdout] | ------------------------ checked the `Output` of this `async fn`, found opaque type [INFO] [stdout] | [INFO] [stdout] = note: while checking the return type of the `async fn` [INFO] [stdout] = note: expected enum `std::option::Option` [INFO] [stdout] found opaque type `impl futures::Future` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0609]: no field `dbpool` on type `&root::Context` [INFO] [stdout] --> src/schemas/root.rs:109:32 [INFO] [stdout] | [INFO] [stdout] 109 | let mut conn = context.dbpool.get().unwrap(); [INFO] [stdout] | ^^^^^^ unknown field [INFO] [stdout] | [INFO] [stdout] = note: available fields are: `users`, `products` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0609]: no field `dbpool` on type `&root::Context` [INFO] [stdout] --> src/schemas/root.rs:141:32 [INFO] [stdout] | [INFO] [stdout] 141 | let mut conn = context.dbpool.get().unwrap(); [INFO] [stdout] | ^^^^^^ unknown field [INFO] [stdout] | [INFO] [stdout] = note: available fields are: `users`, `products` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0061]: this function takes 0 arguments but 1 argument was supplied [INFO] [stdout] --> src/schemas/root.rs:22:35 [INFO] [stdout] | [INFO] [stdout] 22 | let users = context.users.borrow(this); [INFO] [stdout] | ^^^^^^ ---- supplied 1 argument [INFO] [stdout] | | [INFO] [stdout] | expected 0 arguments [INFO] [stdout] | [INFO] [stdout] note: associated function defined here [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0061]: this function takes 2 arguments but 1 argument was supplied [INFO] [stdout] --> src/schemas/root.rs:24:32 [INFO] [stdout] | [INFO] [stdout] 24 | let mut cursor = users.find(filter); [INFO] [stdout] | ^^^^ ------ supplied 1 argument [INFO] [stdout] | | [INFO] [stdout] | expected 2 arguments [INFO] [stdout] | [INFO] [stdout] note: associated function defined here [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/mongodb-0.10.0/src/coll/mod.rs:320:18 [INFO] [stdout] | [INFO] [stdout] 320 | pub async fn find( [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the `?` operator can only be used in a closure that returns `Result` or `Option` (or another type that implements `Try`) [INFO] [stdout] --> src/schemas/user.rs:33:22 [INFO] [stdout] | [INFO] [stdout] 20 | #[juniper::object(Context = Context)] [INFO] [stdout] | ------------------------------------- this function should return `Result` or `Option` to accept `?` [INFO] [stdout] ... [INFO] [stdout] 33 | let cursor = context.users.find(doc!{"user_id": self.id}, None).await?; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ cannot use the `?` operator in a closure that returns `Vec` [INFO] [stdout] | [INFO] [stdout] = help: the trait `Try` is not implemented for `Vec` [INFO] [stdout] = note: required by `from_error` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0609]: no field `findOne` on type `Collection` [INFO] [stdout] --> src/schemas/root.rs:43:34 [INFO] [stdout] | [INFO] [stdout] 43 | let user = context.users.findOne; [INFO] [stdout] | ^^^^^^^ unknown field [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0609]: no field `dbpool` on type `&root::Context` [INFO] [stdout] --> src/schemas/root.rs:61:32 [INFO] [stdout] | [INFO] [stdout] 61 | let mut conn = context.dbpool.get().unwrap(); [INFO] [stdout] | ^^^^^^ unknown field [INFO] [stdout] | [INFO] [stdout] = note: available fields are: `users`, `products` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0609]: no field `dbpool` on type `&root::Context` [INFO] [stdout] --> src/schemas/root.rs:84:32 [INFO] [stdout] | [INFO] [stdout] 84 | let mut conn = context.dbpool.get().unwrap(); [INFO] [stdout] | ^^^^^^ unknown field [INFO] [stdout] | [INFO] [stdout] = note: available fields are: `users`, `products` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0609]: no field `dbpool` on type `&root::Context` [INFO] [stdout] --> src/schemas/root.rs:109:32 [INFO] [stdout] | [INFO] [stdout] 109 | let mut conn = context.dbpool.get().unwrap(); [INFO] [stdout] | ^^^^^^ unknown field [INFO] [stdout] | [INFO] [stdout] = note: available fields are: `users`, `products` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: the method `map` exists for struct `mongodb::Cursor`, but its trait bounds were not satisfied [INFO] [stdout] --> src/schemas/user.rs:34:41 [INFO] [stdout] | [INFO] [stdout] 34 | let docs: Vec = cursor.map(|doc| doc.unwrap()).collect(); [INFO] [stdout] | ^^^ method cannot be called on `mongodb::Cursor` due to unsatisfied trait bounds [INFO] [stdout] | [INFO] [stdout] ::: /opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/mongodb-0.10.0/src/cursor.rs:34:1 [INFO] [stdout] | [INFO] [stdout] 34 | pub struct Cursor { [INFO] [stdout] | ----------------- doesn't satisfy `mongodb::Cursor: Iterator` [INFO] [stdout] | [INFO] [stdout] = note: the following trait bounds were not satisfied: [INFO] [stdout] `mongodb::Cursor: Iterator` [INFO] [stdout] which is required by `&mut mongodb::Cursor: Iterator` [INFO] [stdout] = help: items from traits can only be used if the trait is in scope [INFO] [stdout] = note: the following traits are implemented but not in scope; perhaps add a `use` for one of them: [INFO] [stdout] candidate #1: `use std::iter::Iterator;` [INFO] [stdout] candidate #2: `use tokio::stream::StreamExt;` [INFO] [stdout] candidate #3: `use actix_web::dev::Service;` [INFO] [stdout] candidate #4: `use actix_service::ServiceFactory;` [INFO] [stdout] and 3 others [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0609]: no field `dbpool` on type `&root::Context` [INFO] [stdout] --> src/schemas/root.rs:141:32 [INFO] [stdout] | [INFO] [stdout] 141 | let mut conn = context.dbpool.get().unwrap(); [INFO] [stdout] | ^^^^^^ unknown field [INFO] [stdout] | [INFO] [stdout] = note: available fields are: `users`, `products` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: aborting due to 34 previous errors; 1 warning emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] Some errors have detailed explanations: E0061, E0277, E0308, E0412, E0425, E0433, E0599, E0609, E0728. [INFO] [stdout] [INFO] [stdout] For more information about an error, try `rustc --explain E0061`. [INFO] [stdout] [INFO] [stdout] error[E0277]: the `?` operator can only be used in a closure that returns `Result` or `Option` (or another type that implements `Try`) [INFO] [stdout] --> src/schemas/user.rs:33:22 [INFO] [stdout] | [INFO] [stdout] 20 | #[juniper::object(Context = Context)] [INFO] [stdout] | ------------------------------------- this function should return `Result` or `Option` to accept `?` [INFO] [stdout] ... [INFO] [stdout] 33 | let cursor = context.users.find(doc!{"user_id": self.id}, None).await?; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ cannot use the `?` operator in a closure that returns `Vec` [INFO] [stdout] | [INFO] [stdout] = help: the trait `Try` is not implemented for `Vec` [INFO] [stdout] = note: required by `from_error` [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] error: could not compile `mealplanner` [INFO] [stderr] [INFO] [stderr] To learn more, run the command again with --verbose. [INFO] [stderr] warning: build failed, waiting for other jobs to finish... [INFO] [stdout] error[E0599]: the method `map` exists for struct `mongodb::Cursor`, but its trait bounds were not satisfied [INFO] [stdout] --> src/schemas/user.rs:34:41 [INFO] [stdout] | [INFO] [stdout] 34 | let docs: Vec = cursor.map(|doc| doc.unwrap()).collect(); [INFO] [stdout] | ^^^ method cannot be called on `mongodb::Cursor` due to unsatisfied trait bounds [INFO] [stdout] | [INFO] [stdout] ::: /opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/mongodb-0.10.0/src/cursor.rs:34:1 [INFO] [stdout] | [INFO] [stdout] 34 | pub struct Cursor { [INFO] [stdout] | ----------------- doesn't satisfy `mongodb::Cursor: Iterator` [INFO] [stdout] | [INFO] [stdout] = note: the following trait bounds were not satisfied: [INFO] [stdout] `mongodb::Cursor: Iterator` [INFO] [stdout] which is required by `&mut mongodb::Cursor: Iterator` [INFO] [stdout] = help: items from traits can only be used if the trait is in scope [INFO] [stdout] = note: the following traits are implemented but not in scope; perhaps add a `use` for one of them: [INFO] [stdout] candidate #1: `use std::iter::Iterator;` [INFO] [stdout] candidate #2: `use tokio::stream::StreamExt;` [INFO] [stdout] candidate #3: `use actix_web::dev::Service;` [INFO] [stdout] candidate #4: `use actix_service::ServiceFactory;` [INFO] [stdout] and 3 others [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: aborting due to 34 previous errors; 1 warning emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] Some errors have detailed explanations: E0061, E0277, E0308, E0412, E0425, E0433, E0599, E0609, E0728. [INFO] [stdout] [INFO] [stdout] For more information about an error, try `rustc --explain E0061`. [INFO] [stdout] [INFO] [stderr] error: build failed [INFO] running `Command { std: "docker" "inspect" "0ef7cf533ced85277506f18b85f20fbeb6a5401125e9c4969e8722a571b0bbeb", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "0ef7cf533ced85277506f18b85f20fbeb6a5401125e9c4969e8722a571b0bbeb", kill_on_drop: false }` [INFO] [stdout] 0ef7cf533ced85277506f18b85f20fbeb6a5401125e9c4969e8722a571b0bbeb