[INFO] cloning repository https://github.com/nathannewyen/chat [INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/nathannewyen/chat" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fnathannewyen%2Fchat", kill_on_drop: false }` [INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fnathannewyen%2Fchat'... [INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }` [INFO] [stdout] d901e8dbbd74fbaed067a1199fe67c7af1ae696d [INFO] checking nathannewyen/chat against try#c0a9760914bada211f4924ee16d41ae1a366d2ba for pr-148545 [INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fnathannewyen%2Fchat" "/workspace/builds/worker-5-tc2/source", kill_on_drop: false }` [INFO] [stderr] Cloning into '/workspace/builds/worker-5-tc2/source'... [INFO] [stderr] done. [INFO] started tweaking git repo https://github.com/nathannewyen/chat [INFO] finished tweaking git repo https://github.com/nathannewyen/chat [INFO] tweaked toml for git repo https://github.com/nathannewyen/chat written to /workspace/builds/worker-5-tc2/source/Cargo.toml [INFO] validating manifest of git repo https://github.com/nathannewyen/chat on toolchain c0a9760914bada211f4924ee16d41ae1a366d2ba [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+c0a9760914bada211f4924ee16d41ae1a366d2ba" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] crate git repo https://github.com/nathannewyen/chat 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" "+c0a9760914bada211f4924ee16d41ae1a366d2ba" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] [stderr] Blocking waiting for file lock on package cache [INFO] [stderr] Blocking waiting for file lock on package cache [INFO] [stderr] Downloading crates ... [INFO] [stderr] Downloaded actix-files v0.6.5 [INFO] [stderr] Downloaded actix-web-actors v4.3.0 [INFO] [stderr] Downloaded actix v0.13.3 [INFO] [stderr] Downloaded diesel_derives v2.1.4 [INFO] [stderr] Downloaded diesel v2.1.6 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-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:845e597a41426bbf2703be69acdb67d10b6de511142d05cba7bbe119c898b2c7" "/opt/rustwide/cargo-home/bin/cargo" "+c0a9760914bada211f4924ee16d41ae1a366d2ba" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] e045a0f7cef23a43f07cfc05ce2a48fbe0d2fe30fd6ff797759c45ee255e0978 [INFO] running `Command { std: "docker" "start" "-a" "e045a0f7cef23a43f07cfc05ce2a48fbe0d2fe30fd6ff797759c45ee255e0978", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "e045a0f7cef23a43f07cfc05ce2a48fbe0d2fe30fd6ff797759c45ee255e0978", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "e045a0f7cef23a43f07cfc05ce2a48fbe0d2fe30fd6ff797759c45ee255e0978", kill_on_drop: false }` [INFO] [stdout] e045a0f7cef23a43f07cfc05ce2a48fbe0d2fe30fd6ff797759c45ee255e0978 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-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:845e597a41426bbf2703be69acdb67d10b6de511142d05cba7bbe119c898b2c7" "/opt/rustwide/cargo-home/bin/cargo" "+c0a9760914bada211f4924ee16d41ae1a366d2ba" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] 23c2ec37a47eb07875491dee435bf3497144b47bce23a99fd42a23b5e1c33f5d [INFO] running `Command { std: "docker" "start" "-a" "23c2ec37a47eb07875491dee435bf3497144b47bce23a99fd42a23b5e1c33f5d", kill_on_drop: false }` [INFO] [stderr] Checking signal-hook-registry v1.4.2 [INFO] [stderr] Checking parking_lot_core v0.9.9 [INFO] [stderr] Checking mio v0.8.11 [INFO] [stderr] Compiling serde v1.0.198 [INFO] [stderr] Checking tracing v0.1.40 [INFO] [stderr] Compiling syn v2.0.60 [INFO] [stderr] Compiling cc v1.0.95 [INFO] [stderr] Checking getrandom v0.2.14 [INFO] [stderr] Checking futures-task v0.3.30 [INFO] [stderr] Checking alloc-no-stdlib v2.0.4 [INFO] [stderr] Compiling bytes v1.6.0 [INFO] [stderr] Checking futures-util v0.3.30 [INFO] [stderr] Compiling zstd-safe v7.1.0 [INFO] [stderr] Checking local-waker v0.1.4 [INFO] [stderr] Compiling syn v1.0.109 [INFO] [stderr] Checking alloc-stdlib v0.2.2 [INFO] [stderr] Checking parking_lot v0.12.1 [INFO] [stderr] Compiling regex-automata v0.4.6 [INFO] [stderr] Checking http v0.2.12 [INFO] [stderr] Checking tokio v1.37.0 [INFO] [stderr] Checking rand_core v0.6.4 [INFO] [stderr] Compiling ahash v0.8.11 [INFO] [stderr] Compiling tracing-core v0.1.32 [INFO] [stderr] Checking miniz_oxide v0.7.2 [INFO] [stderr] Checking rand_chacha v0.3.1 [INFO] [stderr] Compiling zstd-sys v2.0.10+zstd.1.5.6 [INFO] [stderr] Checking indexmap v2.2.6 [INFO] [stderr] Checking actix-service v2.0.2 [INFO] [stderr] Compiling regex v1.10.4 [INFO] [stderr] Compiling bytestring v1.3.1 [INFO] [stderr] Checking brotli-decompressor v2.5.1 [INFO] [stderr] Checking actix-utils v3.0.1 [INFO] [stderr] Checking tokio-util v0.7.10 [INFO] [stderr] Checking actix-rt v2.9.0 [INFO] [stderr] Compiling crossbeam-utils v0.8.19 [INFO] [stderr] Checking brotli v3.5.0 [INFO] [stderr] Checking flate2 v1.0.28 [INFO] [stderr] Checking actix-codec v0.5.2 [INFO] [stderr] Checking h2 v0.3.26 [INFO] [stderr] Checking rand v0.8.5 [INFO] [stderr] Checking local-channel v0.1.5 [INFO] [stderr] Checking language-tags v0.3.2 [INFO] [stderr] Compiling libsqlite3-sys v0.28.0 [INFO] [stderr] Checking actix-router v0.5.2 [INFO] [stderr] Compiling actix-macros v0.2.4 [INFO] [stderr] Checking cookie v0.16.2 [INFO] [stderr] Checking serde_json v1.0.116 [INFO] [stderr] Checking serde_urlencoded v0.7.1 [INFO] [stderr] Checking actix-server v2.3.0 [INFO] [stderr] Compiling derive_more v0.99.17 [INFO] [stderr] Compiling num-traits v0.2.18 [INFO] [stderr] Checking crossbeam-channel v0.5.12 [INFO] [stderr] Compiling actix-web-codegen v4.2.2 [INFO] [stderr] Compiling actix_derive v0.6.1 [INFO] [stderr] Compiling diesel_table_macro_syntax v0.1.0 [INFO] [stderr] Compiling diesel_derives v2.1.4 [INFO] [stderr] Checking actix v0.13.3 [INFO] [stderr] Checking http-range v0.1.5 [INFO] [stderr] Checking uuid v1.8.0 [INFO] [stderr] Checking chrono v0.4.38 [INFO] [stderr] Checking zstd v0.13.1 [INFO] [stderr] Checking actix-http v3.6.0 [INFO] [stderr] Checking diesel v2.1.6 [INFO] [stderr] Checking actix-web v4.5.1 [INFO] [stderr] Checking actix-files v0.6.5 [INFO] [stderr] Checking actix-web-actors v4.3.0 [INFO] [stderr] Checking rust-react-chat-project v0.1.0 (/opt/rustwide/workdir) [INFO] [stdout] error[E0468]: an `extern crate` loading macros must be at the crate root [INFO] [stdout] --> src/db.rs:12:1 [INFO] [stdout] | [INFO] [stdout] 12 | extern crate diesel; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0428]: the name `schema` is defined multiple times [INFO] [stdout] --> src/main.rs:19:1 [INFO] [stdout] | [INFO] [stdout] 16 | mod schema; [INFO] [stdout] | ----------- previous definition of the module `schema` here [INFO] [stdout] ... [INFO] [stdout] 19 | mod schema; [INFO] [stdout] | ^^^^^^^^^^^ `schema` redefined here [INFO] [stdout] | [INFO] [stdout] = note: `schema` must be defined only once in the type namespace of this module [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0468]: an `extern crate` loading macros must be at the crate root [INFO] [stdout] --> src/db.rs:12:1 [INFO] [stdout] | [INFO] [stdout] 12 | extern crate diesel; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0428]: the name `schema` is defined multiple times [INFO] [stdout] --> src/main.rs:19:1 [INFO] [stdout] | [INFO] [stdout] 16 | mod schema; [INFO] [stdout] | ----------- previous definition of the module `schema` here [INFO] [stdout] ... [INFO] [stdout] 19 | mod schema; [INFO] [stdout] | ^^^^^^^^^^^ `schema` redefined here [INFO] [stdout] | [INFO] [stdout] = note: `schema` must be defined only once in the type namespace of this module [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0428]: the name `main` is defined multiple times [INFO] [stdout] --> src/main.rs:57:1 [INFO] [stdout] | [INFO] [stdout] 21 | #[actix_web::main] [INFO] [stdout] | ------------------ previous definition of the value `main` here [INFO] [stdout] ... [INFO] [stdout] 57 | fn main() {} [INFO] [stdout] | ^^^^^^^^^ `main` redefined here [INFO] [stdout] | [INFO] [stdout] = note: `main` must be defined only once in the value namespace of this module [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0432]: unresolved imports `diesel::r2d2`, `diesel::r2d2` [INFO] [stdout] --> src/main.rs:10:5 [INFO] [stdout] | [INFO] [stdout] 10 | r2d2::{self, ConnectionManager}, [INFO] [stdout] | ^^^^ ^^^^ no `r2d2` in the root [INFO] [stdout] | | [INFO] [stdout] | could not find `r2d2` in `diesel` [INFO] [stdout] | [INFO] [stdout] note: found an item that was configured out [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/diesel-2.1.6/src/lib.rs:289:9 [INFO] [stdout] | [INFO] [stdout] 288 | #[cfg(feature = "r2d2")] [INFO] [stdout] | ---------------- the item is gated behind the `r2d2` feature [INFO] [stdout] 289 | pub mod r2d2; [INFO] [stdout] | ^^^^ [INFO] [stdout] note: found an item that was configured out [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/diesel-2.1.6/src/lib.rs:289:9 [INFO] [stdout] | [INFO] [stdout] 288 | #[cfg(feature = "r2d2")] [INFO] [stdout] | ---------------- the item is gated behind the `r2d2` feature [INFO] [stdout] 289 | pub mod r2d2; [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0432]: unresolved imports `diesel::r2d2`, `diesel::r2d2` [INFO] [stdout] --> src/routes.rs:8:5 [INFO] [stdout] | [INFO] [stdout] 8 | r2d2::{self, ConnectionManager}, [INFO] [stdout] | ^^^^ ^^^^ no `r2d2` in the root [INFO] [stdout] | | [INFO] [stdout] | could not find `r2d2` in `diesel` [INFO] [stdout] | [INFO] [stdout] = help: consider importing this unresolved item through its public re-export instead: [INFO] [stdout] crate::r2d2 [INFO] [stdout] note: found an item that was configured out [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/diesel-2.1.6/src/lib.rs:289:9 [INFO] [stdout] | [INFO] [stdout] 288 | #[cfg(feature = "r2d2")] [INFO] [stdout] | ---------------- the item is gated behind the `r2d2` feature [INFO] [stdout] 289 | pub mod r2d2; [INFO] [stdout] | ^^^^ [INFO] [stdout] note: found an item that was configured out [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/diesel-2.1.6/src/lib.rs:289:9 [INFO] [stdout] | [INFO] [stdout] 288 | #[cfg(feature = "r2d2")] [INFO] [stdout] | ---------------- the item is gated behind the `r2d2` feature [INFO] [stdout] 289 | pub mod r2d2; [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0432]: unresolved imports `diesel::r2d2`, `diesel::r2d2` [INFO] [stdout] --> src/session.rs:8:5 [INFO] [stdout] | [INFO] [stdout] 8 | r2d2::{self, ConnectionManager}, [INFO] [stdout] | ^^^^ ^^^^ no `r2d2` in the root [INFO] [stdout] | | [INFO] [stdout] | could not find `r2d2` in `diesel` [INFO] [stdout] | [INFO] [stdout] = help: consider importing this unresolved item through its public re-export instead: [INFO] [stdout] crate::r2d2 [INFO] [stdout] note: found an item that was configured out [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/diesel-2.1.6/src/lib.rs:289:9 [INFO] [stdout] | [INFO] [stdout] 288 | #[cfg(feature = "r2d2")] [INFO] [stdout] | ---------------- the item is gated behind the `r2d2` feature [INFO] [stdout] 289 | pub mod r2d2; [INFO] [stdout] | ^^^^ [INFO] [stdout] note: found an item that was configured out [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/diesel-2.1.6/src/lib.rs:289:9 [INFO] [stdout] | [INFO] [stdout] 288 | #[cfg(feature = "r2d2")] [INFO] [stdout] | ---------------- the item is gated behind the `r2d2` feature [INFO] [stdout] 289 | pub mod r2d2; [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0432]: unresolved import `actix_cors` [INFO] [stdout] --> src/main.rs:5:5 [INFO] [stdout] | [INFO] [stdout] 5 | use actix_cors::Cors; [INFO] [stdout] | ^^^^^^^^^^ use of unresolved module or unlinked crate `actix_cors` [INFO] [stdout] | [INFO] [stdout] = help: if you wanted to use a crate named `actix_cors`, use `cargo add actix_cors` to add it to your `Cargo.toml` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0432]: unresolved import `crate::schema::users::dsl` [INFO] [stdout] --> src/db.rs:26:31 [INFO] [stdout] | [INFO] [stdout] 26 | use crate::schema::users::dsl::*; [INFO] [stdout] | ^^^ could not find `dsl` in `users` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0432]: unresolved import `crate::schema::users::dsl` [INFO] [stdout] --> src/db.rs:35:31 [INFO] [stdout] | [INFO] [stdout] 35 | use crate::schema::users::dsl::*; [INFO] [stdout] | ^^^ could not find `dsl` in `users` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: cannot find derive macro `Serialize` in this scope [INFO] [stdout] --> src/session.rs:36:10 [INFO] [stdout] | [INFO] [stdout] 36 | #[derive(Serialize, Deserialize)] [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] note: `Serialize` is imported here, but it is only a trait, without a derive macro [INFO] [stdout] --> src/session.rs:5:26 [INFO] [stdout] | [INFO] [stdout] 5 | use serde::{Deserialize, Serialize}; [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: cannot find derive macro `Deserialize` in this scope [INFO] [stdout] --> src/session.rs:36:21 [INFO] [stdout] | [INFO] [stdout] 36 | #[derive(Serialize, Deserialize)] [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] note: `Deserialize` is imported here, but it is only a trait, without a derive macro [INFO] [stdout] --> src/session.rs:5:13 [INFO] [stdout] | [INFO] [stdout] 5 | use serde::{Deserialize, Serialize}; [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: cannot find derive macro `Serialize` in this scope [INFO] [stdout] --> src/session.rs:28:21 [INFO] [stdout] | [INFO] [stdout] 28 | #[derive(PartialEq, Serialize, Deserialize)] [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] note: `Serialize` is imported here, but it is only a trait, without a derive macro [INFO] [stdout] --> src/session.rs:5:26 [INFO] [stdout] | [INFO] [stdout] 5 | use serde::{Deserialize, Serialize}; [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: cannot find derive macro `Deserialize` in this scope [INFO] [stdout] --> src/session.rs:28:32 [INFO] [stdout] | [INFO] [stdout] 28 | #[derive(PartialEq, Serialize, Deserialize)] [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] note: `Deserialize` is imported here, but it is only a trait, without a derive macro [INFO] [stdout] --> src/session.rs:5:13 [INFO] [stdout] | [INFO] [stdout] 5 | use serde::{Deserialize, Serialize}; [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: cannot find derive macro `Serialize` in this scope [INFO] [stdout] --> src/models.rs:42:24 [INFO] [stdout] | [INFO] [stdout] 42 | #[derive(Debug, Clone, Serialize, Deserialize)] [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] note: `Serialize` is imported here, but it is only a trait, without a derive macro [INFO] [stdout] --> src/models.rs:1:13 [INFO] [stdout] | [INFO] [stdout] 1 | use serde::{Serialize, Deserialize}; [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0428]: the name `main` is defined multiple times [INFO] [stdout] --> src/main.rs:57:1 [INFO] [stdout] | [INFO] [stdout] 21 | #[actix_web::main] [INFO] [stdout] | ------------------ previous definition of the value `main` here [INFO] [stdout] ... [INFO] [stdout] 57 | fn main() {} [INFO] [stdout] | ^^^^^^^^^ `main` redefined here [INFO] [stdout] | [INFO] [stdout] = note: `main` must be defined only once in the value namespace of this module [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: cannot find derive macro `Deserialize` in this scope [INFO] [stdout] --> src/models.rs:42:35 [INFO] [stdout] | [INFO] [stdout] 42 | #[derive(Debug, Clone, Serialize, Deserialize)] [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] note: `Deserialize` is imported here, but it is only a trait, without a derive macro [INFO] [stdout] --> src/models.rs:1:24 [INFO] [stdout] | [INFO] [stdout] 1 | use serde::{Serialize, Deserialize}; [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: cannot find derive macro `Serialize` in this scope [INFO] [stdout] --> src/models.rs:35:24 [INFO] [stdout] | [INFO] [stdout] 35 | #[derive(Debug, Clone, Serialize, Deserialize)] [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] note: `Serialize` is imported here, but it is only a trait, without a derive macro [INFO] [stdout] --> src/models.rs:1:13 [INFO] [stdout] | [INFO] [stdout] 1 | use serde::{Serialize, Deserialize}; [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: cannot find derive macro `Deserialize` in this scope [INFO] [stdout] --> src/models.rs:35:35 [INFO] [stdout] | [INFO] [stdout] 35 | #[derive(Debug, Clone, Serialize, Deserialize)] [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] note: `Deserialize` is imported here, but it is only a trait, without a derive macro [INFO] [stdout] --> src/models.rs:1:24 [INFO] [stdout] | [INFO] [stdout] 1 | use serde::{Serialize, Deserialize}; [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: cannot find derive macro `Serialize` in this scope [INFO] [stdout] --> src/models.rs:29:24 [INFO] [stdout] | [INFO] [stdout] 29 | #[derive(Debug, Clone, Serialize, Deserialize)] [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] note: `Serialize` is imported here, but it is only a trait, without a derive macro [INFO] [stdout] --> src/models.rs:1:13 [INFO] [stdout] | [INFO] [stdout] 1 | use serde::{Serialize, Deserialize}; [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: cannot find derive macro `Deserialize` in this scope [INFO] [stdout] --> src/models.rs:29:35 [INFO] [stdout] | [INFO] [stdout] 29 | #[derive(Debug, Clone, Serialize, Deserialize)] [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] note: `Deserialize` is imported here, but it is only a trait, without a derive macro [INFO] [stdout] --> src/models.rs:1:24 [INFO] [stdout] | [INFO] [stdout] 1 | use serde::{Serialize, Deserialize}; [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: cannot find derive macro `Serialize` in this scope [INFO] [stdout] --> src/models.rs:20:24 [INFO] [stdout] | [INFO] [stdout] 20 | #[derive(Debug, Clone, Serialize, Deserialize, Queryable, Insertable)] [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] note: `Serialize` is imported here, but it is only a trait, without a derive macro [INFO] [stdout] --> src/models.rs:1:13 [INFO] [stdout] | [INFO] [stdout] 1 | use serde::{Serialize, Deserialize}; [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: cannot find derive macro `Deserialize` in this scope [INFO] [stdout] --> src/models.rs:20:35 [INFO] [stdout] | [INFO] [stdout] 20 | #[derive(Debug, Clone, Serialize, Deserialize, Queryable, Insertable)] [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] note: `Deserialize` is imported here, but it is only a trait, without a derive macro [INFO] [stdout] --> src/models.rs:1:24 [INFO] [stdout] | [INFO] [stdout] 1 | use serde::{Serialize, Deserialize}; [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: cannot find derive macro `Serialize` in this scope [INFO] [stdout] --> src/models.rs:11:35 [INFO] [stdout] | [INFO] [stdout] 11 | #[derive(Debug, Clone, PartialEq, Serialize, Deserialize, Queryable, Insertable)] [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] note: `Serialize` is imported here, but it is only a trait, without a derive macro [INFO] [stdout] --> src/models.rs:1:13 [INFO] [stdout] | [INFO] [stdout] 1 | use serde::{Serialize, Deserialize}; [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: cannot find derive macro `Deserialize` in this scope [INFO] [stdout] --> src/models.rs:11:46 [INFO] [stdout] | [INFO] [stdout] 11 | #[derive(Debug, Clone, PartialEq, Serialize, Deserialize, Queryable, Insertable)] [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] note: `Deserialize` is imported here, but it is only a trait, without a derive macro [INFO] [stdout] --> src/models.rs:1:24 [INFO] [stdout] | [INFO] [stdout] 1 | use serde::{Serialize, Deserialize}; [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: cannot find derive macro `Serialize` in this scope [INFO] [stdout] --> src/models.rs:3:24 [INFO] [stdout] | [INFO] [stdout] 3 | #[derive(Debug, Clone, Serialize, Deserialize, Queryable, Insertable)] [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] note: `Serialize` is imported here, but it is only a trait, without a derive macro [INFO] [stdout] --> src/models.rs:1:13 [INFO] [stdout] | [INFO] [stdout] 1 | use serde::{Serialize, Deserialize}; [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: cannot find derive macro `Deserialize` in this scope [INFO] [stdout] --> src/models.rs:3:35 [INFO] [stdout] | [INFO] [stdout] 3 | #[derive(Debug, Clone, Serialize, Deserialize, Queryable, Insertable)] [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] note: `Deserialize` is imported here, but it is only a trait, without a derive macro [INFO] [stdout] --> src/models.rs:1:24 [INFO] [stdout] | [INFO] [stdout] 1 | use serde::{Serialize, Deserialize}; [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `#[macro_use]` import [INFO] [stdout] --> src/main.rs:1:1 [INFO] [stdout] | [INFO] [stdout] 1 | #[macro_use] [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `diesel::prelude::*` [INFO] [stdout] --> src/schema.rs:4:5 [INFO] [stdout] | [INFO] [stdout] 4 | use diesel::prelude::*; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0432]: unresolved imports `diesel::r2d2`, `diesel::r2d2` [INFO] [stdout] --> src/main.rs:10:5 [INFO] [stdout] | [INFO] [stdout] 10 | r2d2::{self, ConnectionManager}, [INFO] [stdout] | ^^^^ ^^^^ no `r2d2` in the root [INFO] [stdout] | | [INFO] [stdout] | could not find `r2d2` in `diesel` [INFO] [stdout] | [INFO] [stdout] note: found an item that was configured out [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/diesel-2.1.6/src/lib.rs:289:9 [INFO] [stdout] | [INFO] [stdout] 288 | #[cfg(feature = "r2d2")] [INFO] [stdout] | ---------------- the item is gated behind the `r2d2` feature [INFO] [stdout] 289 | pub mod r2d2; [INFO] [stdout] | ^^^^ [INFO] [stdout] note: found an item that was configured out [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/diesel-2.1.6/src/lib.rs:289:9 [INFO] [stdout] | [INFO] [stdout] 288 | #[cfg(feature = "r2d2")] [INFO] [stdout] | ---------------- the item is gated behind the `r2d2` feature [INFO] [stdout] 289 | pub mod r2d2; [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0432]: unresolved imports `diesel::r2d2`, `diesel::r2d2` [INFO] [stdout] --> src/routes.rs:8:5 [INFO] [stdout] | [INFO] [stdout] 8 | r2d2::{self, ConnectionManager}, [INFO] [stdout] | ^^^^ ^^^^ no `r2d2` in the root [INFO] [stdout] | | [INFO] [stdout] | could not find `r2d2` in `diesel` [INFO] [stdout] | [INFO] [stdout] = help: consider importing this unresolved item through its public re-export instead: [INFO] [stdout] crate::r2d2 [INFO] [stdout] note: found an item that was configured out [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/diesel-2.1.6/src/lib.rs:289:9 [INFO] [stdout] | [INFO] [stdout] 288 | #[cfg(feature = "r2d2")] [INFO] [stdout] | ---------------- the item is gated behind the `r2d2` feature [INFO] [stdout] 289 | pub mod r2d2; [INFO] [stdout] | ^^^^ [INFO] [stdout] note: found an item that was configured out [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/diesel-2.1.6/src/lib.rs:289:9 [INFO] [stdout] | [INFO] [stdout] 288 | #[cfg(feature = "r2d2")] [INFO] [stdout] | ---------------- the item is gated behind the `r2d2` feature [INFO] [stdout] 289 | pub mod r2d2; [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0432]: unresolved imports `diesel::r2d2`, `diesel::r2d2` [INFO] [stdout] --> src/session.rs:8:5 [INFO] [stdout] | [INFO] [stdout] 8 | r2d2::{self, ConnectionManager}, [INFO] [stdout] | ^^^^ ^^^^ no `r2d2` in the root [INFO] [stdout] | | [INFO] [stdout] | could not find `r2d2` in `diesel` [INFO] [stdout] | [INFO] [stdout] = help: consider importing this unresolved item through its public re-export instead: [INFO] [stdout] crate::r2d2 [INFO] [stdout] note: found an item that was configured out [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/diesel-2.1.6/src/lib.rs:289:9 [INFO] [stdout] | [INFO] [stdout] 288 | #[cfg(feature = "r2d2")] [INFO] [stdout] | ---------------- the item is gated behind the `r2d2` feature [INFO] [stdout] 289 | pub mod r2d2; [INFO] [stdout] | ^^^^ [INFO] [stdout] note: found an item that was configured out [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/diesel-2.1.6/src/lib.rs:289:9 [INFO] [stdout] | [INFO] [stdout] 288 | #[cfg(feature = "r2d2")] [INFO] [stdout] | ---------------- the item is gated behind the `r2d2` feature [INFO] [stdout] 289 | pub mod r2d2; [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0432]: unresolved import `actix_cors` [INFO] [stdout] --> src/main.rs:5:5 [INFO] [stdout] | [INFO] [stdout] 5 | use actix_cors::Cors; [INFO] [stdout] | ^^^^^^^^^^ use of unresolved module or unlinked crate `actix_cors` [INFO] [stdout] | [INFO] [stdout] = help: if you wanted to use a crate named `actix_cors`, use `cargo add actix_cors` to add it to your `Cargo.toml` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0432]: unresolved import `crate::schema::users::dsl` [INFO] [stdout] --> src/db.rs:26:31 [INFO] [stdout] | [INFO] [stdout] 26 | use crate::schema::users::dsl::*; [INFO] [stdout] | ^^^ could not find `dsl` in `users` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0432]: unresolved import `crate::schema::users::dsl` [INFO] [stdout] --> src/db.rs:35:31 [INFO] [stdout] | [INFO] [stdout] 35 | use crate::schema::users::dsl::*; [INFO] [stdout] | ^^^ could not find `dsl` in `users` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: cannot find derive macro `Serialize` in this scope [INFO] [stdout] --> src/session.rs:36:10 [INFO] [stdout] | [INFO] [stdout] 36 | #[derive(Serialize, Deserialize)] [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] note: `Serialize` is imported here, but it is only a trait, without a derive macro [INFO] [stdout] --> src/session.rs:5:26 [INFO] [stdout] | [INFO] [stdout] 5 | use serde::{Deserialize, Serialize}; [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: cannot find derive macro `Deserialize` in this scope [INFO] [stdout] --> src/session.rs:36:21 [INFO] [stdout] | [INFO] [stdout] 36 | #[derive(Serialize, Deserialize)] [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] note: `Deserialize` is imported here, but it is only a trait, without a derive macro [INFO] [stdout] --> src/session.rs:5:13 [INFO] [stdout] | [INFO] [stdout] 5 | use serde::{Deserialize, Serialize}; [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: cannot find derive macro `Serialize` in this scope [INFO] [stdout] --> src/session.rs:28:21 [INFO] [stdout] | [INFO] [stdout] 28 | #[derive(PartialEq, Serialize, Deserialize)] [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] note: `Serialize` is imported here, but it is only a trait, without a derive macro [INFO] [stdout] --> src/session.rs:5:26 [INFO] [stdout] | [INFO] [stdout] 5 | use serde::{Deserialize, Serialize}; [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: cannot find derive macro `Deserialize` in this scope [INFO] [stdout] --> src/session.rs:28:32 [INFO] [stdout] | [INFO] [stdout] 28 | #[derive(PartialEq, Serialize, Deserialize)] [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] note: `Deserialize` is imported here, but it is only a trait, without a derive macro [INFO] [stdout] --> src/session.rs:5:13 [INFO] [stdout] | [INFO] [stdout] 5 | use serde::{Deserialize, Serialize}; [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: cannot find derive macro `Serialize` in this scope [INFO] [stdout] --> src/models.rs:42:24 [INFO] [stdout] | [INFO] [stdout] 42 | #[derive(Debug, Clone, Serialize, Deserialize)] [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] note: `Serialize` is imported here, but it is only a trait, without a derive macro [INFO] [stdout] --> src/models.rs:1:13 [INFO] [stdout] | [INFO] [stdout] 1 | use serde::{Serialize, Deserialize}; [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: cannot find derive macro `Deserialize` in this scope [INFO] [stdout] --> src/models.rs:42:35 [INFO] [stdout] | [INFO] [stdout] 42 | #[derive(Debug, Clone, Serialize, Deserialize)] [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] note: `Deserialize` is imported here, but it is only a trait, without a derive macro [INFO] [stdout] --> src/models.rs:1:24 [INFO] [stdout] | [INFO] [stdout] 1 | use serde::{Serialize, Deserialize}; [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: cannot find derive macro `Serialize` in this scope [INFO] [stdout] --> src/models.rs:35:24 [INFO] [stdout] | [INFO] [stdout] 35 | #[derive(Debug, Clone, Serialize, Deserialize)] [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] note: `Serialize` is imported here, but it is only a trait, without a derive macro [INFO] [stdout] --> src/models.rs:1:13 [INFO] [stdout] | [INFO] [stdout] 1 | use serde::{Serialize, Deserialize}; [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: cannot find derive macro `Deserialize` in this scope [INFO] [stdout] --> src/models.rs:35:35 [INFO] [stdout] | [INFO] [stdout] 35 | #[derive(Debug, Clone, Serialize, Deserialize)] [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] note: `Deserialize` is imported here, but it is only a trait, without a derive macro [INFO] [stdout] --> src/models.rs:1:24 [INFO] [stdout] | [INFO] [stdout] 1 | use serde::{Serialize, Deserialize}; [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0119]: conflicting implementations of trait `AppearsInFromClause` for type `schema::conversations::table` [INFO] [stdout] --> src/schema.rs:6:1 [INFO] [stdout] | [INFO] [stdout] 6 | / diesel::table! { [INFO] [stdout] 7 | | conversations (id) { [INFO] [stdout] 8 | | id -> Text, [INFO] [stdout] 9 | | room_id -> Text, [INFO] [stdout] ... | [INFO] [stdout] 14 | | } [INFO] [stdout] | |_^ [INFO] [stdout] | [INFO] [stdout] = note: conflicting implementation in crate `diesel`: [INFO] [stdout] - impl AppearsInFromClause for T1 [INFO] [stdout] where T1: TableNotEqual, T1: Table, T2: Table; [INFO] [stdout] = note: this error originates in the macro `diesel::table` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0119]: conflicting implementations of trait `AppearsInFromClause>` for type `schema::conversations::table` [INFO] [stdout] --> src/schema.rs:6:1 [INFO] [stdout] | [INFO] [stdout] 6 | / diesel::table! { [INFO] [stdout] 7 | | conversations (id) { [INFO] [stdout] 8 | | id -> Text, [INFO] [stdout] 9 | | room_id -> Text, [INFO] [stdout] ... | [INFO] [stdout] 14 | | } [INFO] [stdout] | |_^ [INFO] [stdout] | [INFO] [stdout] = note: conflicting implementation in crate `diesel`: [INFO] [stdout] - impl AppearsInFromClause for T1 [INFO] [stdout] where T1: TableNotEqual, T1: Table, T2: Table; [INFO] [stdout] = note: upstream crates may add a new impl of trait `diesel::Table` for type `diesel::query_source::Alias<_>` in future versions [INFO] [stdout] = note: this error originates in the macro `diesel::table` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0119]: conflicting implementations of trait `AppearsInFromClause` for type `schema::rooms::table` [INFO] [stdout] --> src/schema.rs:16:1 [INFO] [stdout] | [INFO] [stdout] 16 | / diesel::table! { [INFO] [stdout] 17 | | rooms (id) { [INFO] [stdout] 18 | | id -> Text, [INFO] [stdout] 19 | | name -> Text, [INFO] [stdout] ... | [INFO] [stdout] 24 | | } [INFO] [stdout] | |_^ [INFO] [stdout] | [INFO] [stdout] = note: conflicting implementation in crate `diesel`: [INFO] [stdout] - impl AppearsInFromClause for T1 [INFO] [stdout] where T1: TableNotEqual, T1: Table, T2: Table; [INFO] [stdout] = note: this error originates in the macro `diesel::table` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0119]: conflicting implementations of trait `AppearsInFromClause>` for type `schema::rooms::table` [INFO] [stdout] --> src/schema.rs:16:1 [INFO] [stdout] | [INFO] [stdout] 16 | / diesel::table! { [INFO] [stdout] 17 | | rooms (id) { [INFO] [stdout] 18 | | id -> Text, [INFO] [stdout] 19 | | name -> Text, [INFO] [stdout] ... | [INFO] [stdout] 24 | | } [INFO] [stdout] | |_^ [INFO] [stdout] | [INFO] [stdout] = note: conflicting implementation in crate `diesel`: [INFO] [stdout] - impl AppearsInFromClause for T1 [INFO] [stdout] where T1: TableNotEqual, T1: Table, T2: Table; [INFO] [stdout] = note: upstream crates may add a new impl of trait `diesel::Table` for type `diesel::query_source::Alias<_>` in future versions [INFO] [stdout] = note: this error originates in the macro `diesel::table` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0119]: conflicting implementations of trait `AppearsInFromClause` for type `schema::conversations::table` [INFO] [stdout] --> src/schema.rs:6:1 [INFO] [stdout] | [INFO] [stdout] 6 | / diesel::table! { [INFO] [stdout] 7 | | conversations (id) { [INFO] [stdout] 8 | | id -> Text, [INFO] [stdout] 9 | | room_id -> Text, [INFO] [stdout] ... | [INFO] [stdout] 14 | | } [INFO] [stdout] | |_^ [INFO] [stdout] | [INFO] [stdout] = note: conflicting implementation in crate `diesel`: [INFO] [stdout] - impl AppearsInFromClause for T1 [INFO] [stdout] where T1: TableNotEqual, T1: Table, T2: Table; [INFO] [stdout] = note: this error originates in the macro `diesel::table` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0119]: conflicting implementations of trait `AppearsInFromClause>` for type `schema::conversations::table` [INFO] [stdout] --> src/schema.rs:6:1 [INFO] [stdout] | [INFO] [stdout] 6 | / diesel::table! { [INFO] [stdout] 7 | | conversations (id) { [INFO] [stdout] 8 | | id -> Text, [INFO] [stdout] 9 | | room_id -> Text, [INFO] [stdout] ... | [INFO] [stdout] 14 | | } [INFO] [stdout] | |_^ [INFO] [stdout] | [INFO] [stdout] = note: conflicting implementation in crate `diesel`: [INFO] [stdout] - impl AppearsInFromClause for T1 [INFO] [stdout] where T1: TableNotEqual, T1: Table, T2: Table; [INFO] [stdout] = note: upstream crates may add a new impl of trait `diesel::Table` for type `diesel::query_source::Alias<_>` in future versions [INFO] [stdout] = note: this error originates in the macro `diesel::table` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0119]: conflicting implementations of trait `AppearsInFromClause` for type `schema::rooms::table` [INFO] [stdout] --> src/schema.rs:16:1 [INFO] [stdout] | [INFO] [stdout] 16 | / diesel::table! { [INFO] [stdout] 17 | | rooms (id) { [INFO] [stdout] 18 | | id -> Text, [INFO] [stdout] 19 | | name -> Text, [INFO] [stdout] ... | [INFO] [stdout] 24 | | } [INFO] [stdout] | |_^ [INFO] [stdout] | [INFO] [stdout] = note: conflicting implementation in crate `diesel`: [INFO] [stdout] - impl AppearsInFromClause for T1 [INFO] [stdout] where T1: TableNotEqual, T1: Table, T2: Table; [INFO] [stdout] = note: this error originates in the macro `diesel::table` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0119]: conflicting implementations of trait `AppearsInFromClause>` for type `schema::rooms::table` [INFO] [stdout] --> src/schema.rs:16:1 [INFO] [stdout] | [INFO] [stdout] 16 | / diesel::table! { [INFO] [stdout] 17 | | rooms (id) { [INFO] [stdout] 18 | | id -> Text, [INFO] [stdout] 19 | | name -> Text, [INFO] [stdout] ... | [INFO] [stdout] 24 | | } [INFO] [stdout] | |_^ [INFO] [stdout] | [INFO] [stdout] = note: conflicting implementation in crate `diesel`: [INFO] [stdout] - impl AppearsInFromClause for T1 [INFO] [stdout] where T1: TableNotEqual, T1: Table, T2: Table; [INFO] [stdout] = note: upstream crates may add a new impl of trait `diesel::Table` for type `diesel::query_source::Alias<_>` in future versions [INFO] [stdout] = note: this error originates in the macro `diesel::table` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0119]: conflicting implementations of trait `AliasAppearsInFromClause<_, schema::conversations::table>` for type `schema::conversations::table` [INFO] [stdout] --> src/schema.rs:6:1 [INFO] [stdout] | [INFO] [stdout] 6 | / diesel::table! { [INFO] [stdout] 7 | | conversations (id) { [INFO] [stdout] 8 | | id -> Text, [INFO] [stdout] 9 | | room_id -> Text, [INFO] [stdout] ... | [INFO] [stdout] 14 | | } [INFO] [stdout] | |_^ [INFO] [stdout] | [INFO] [stdout] = note: conflicting implementation in crate `diesel`: [INFO] [stdout] - impl AliasAppearsInFromClause for T1 [INFO] [stdout] where ::Target == T1, T1: TableNotEqual, T1: Table, T2: Table, S: AliasSource; [INFO] [stdout] = note: this error originates in the macro `diesel::table` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0119]: conflicting implementations of trait `AliasAppearsInFromClause<_, schema::rooms::table>` for type `schema::rooms::table` [INFO] [stdout] --> src/schema.rs:16:1 [INFO] [stdout] | [INFO] [stdout] 16 | / diesel::table! { [INFO] [stdout] 17 | | rooms (id) { [INFO] [stdout] 18 | | id -> Text, [INFO] [stdout] 19 | | name -> Text, [INFO] [stdout] ... | [INFO] [stdout] 24 | | } [INFO] [stdout] | |_^ [INFO] [stdout] | [INFO] [stdout] = note: conflicting implementation in crate `diesel`: [INFO] [stdout] - impl AliasAppearsInFromClause for T1 [INFO] [stdout] where ::Target == T1, T1: TableNotEqual, T1: Table, T2: Table, S: AliasSource; [INFO] [stdout] = note: this error originates in the macro `diesel::table` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0119]: conflicting implementations of trait `AliasAppearsInFromClause<_, schema::conversations::table>` for type `schema::conversations::table` [INFO] [stdout] --> src/schema.rs:6:1 [INFO] [stdout] | [INFO] [stdout] 6 | / diesel::table! { [INFO] [stdout] 7 | | conversations (id) { [INFO] [stdout] 8 | | id -> Text, [INFO] [stdout] 9 | | room_id -> Text, [INFO] [stdout] ... | [INFO] [stdout] 14 | | } [INFO] [stdout] | |_^ [INFO] [stdout] | [INFO] [stdout] = note: conflicting implementation in crate `diesel`: [INFO] [stdout] - impl AliasAppearsInFromClause for T1 [INFO] [stdout] where ::Target == T1, T1: TableNotEqual, T1: Table, T2: Table, S: AliasSource; [INFO] [stdout] = note: this error originates in the macro `diesel::table` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: cannot find derive macro `Serialize` in this scope [INFO] [stdout] --> src/models.rs:29:24 [INFO] [stdout] | [INFO] [stdout] 29 | #[derive(Debug, Clone, Serialize, Deserialize)] [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] note: `Serialize` is imported here, but it is only a trait, without a derive macro [INFO] [stdout] --> src/models.rs:1:13 [INFO] [stdout] | [INFO] [stdout] 1 | use serde::{Serialize, Deserialize}; [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0119]: conflicting implementations of trait `AliasAppearsInFromClause<_, schema::rooms::table>` for type `schema::rooms::table` [INFO] [stdout] --> src/schema.rs:16:1 [INFO] [stdout] | [INFO] [stdout] 16 | / diesel::table! { [INFO] [stdout] 17 | | rooms (id) { [INFO] [stdout] 18 | | id -> Text, [INFO] [stdout] 19 | | name -> Text, [INFO] [stdout] ... | [INFO] [stdout] 24 | | } [INFO] [stdout] | |_^ [INFO] [stdout] | [INFO] [stdout] = note: conflicting implementation in crate `diesel`: [INFO] [stdout] - impl AliasAppearsInFromClause for T1 [INFO] [stdout] where ::Target == T1, T1: TableNotEqual, T1: Table, T2: Table, S: AliasSource; [INFO] [stdout] = note: this error originates in the macro `diesel::table` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0119]: conflicting implementations of trait `AliasAliasAppearsInFromClause` for type `schema::conversations::table` [INFO] [stdout] --> src/schema.rs:6:1 [INFO] [stdout] | [INFO] [stdout] 6 | / diesel::table! { [INFO] [stdout] 7 | | conversations (id) { [INFO] [stdout] 8 | | id -> Text, [INFO] [stdout] 9 | | room_id -> Text, [INFO] [stdout] ... | [INFO] [stdout] 14 | | } [INFO] [stdout] | |_^ [INFO] [stdout] | [INFO] [stdout] = note: conflicting implementation in crate `diesel`: [INFO] [stdout] - impl AliasAliasAppearsInFromClause for T2 [INFO] [stdout] where ::Target == T1, ::Target == T2, T1: TableNotEqual, T1: Table, T2: Table, S1: AliasSource, S2: AliasSource; [INFO] [stdout] = note: this error originates in the macro `diesel::table` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0119]: conflicting implementations of trait `AliasAliasAppearsInFromClause` for type `schema::rooms::table` [INFO] [stdout] --> src/schema.rs:16:1 [INFO] [stdout] | [INFO] [stdout] 16 | / diesel::table! { [INFO] [stdout] 17 | | rooms (id) { [INFO] [stdout] 18 | | id -> Text, [INFO] [stdout] 19 | | name -> Text, [INFO] [stdout] ... | [INFO] [stdout] 24 | | } [INFO] [stdout] | |_^ [INFO] [stdout] | [INFO] [stdout] = note: conflicting implementation in crate `diesel`: [INFO] [stdout] - impl AliasAliasAppearsInFromClause for T2 [INFO] [stdout] where ::Target == T1, ::Target == T2, T1: TableNotEqual, T1: Table, T2: Table, S1: AliasSource, S2: AliasSource; [INFO] [stdout] = note: this error originates in the macro `diesel::table` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0119]: conflicting implementations of trait `AliasAliasAppearsInFromClause` for type `schema::conversations::table` [INFO] [stdout] --> src/schema.rs:6:1 [INFO] [stdout] | [INFO] [stdout] 6 | / diesel::table! { [INFO] [stdout] 7 | | conversations (id) { [INFO] [stdout] 8 | | id -> Text, [INFO] [stdout] 9 | | room_id -> Text, [INFO] [stdout] ... | [INFO] [stdout] 14 | | } [INFO] [stdout] | |_^ [INFO] [stdout] | [INFO] [stdout] = note: conflicting implementation in crate `diesel`: [INFO] [stdout] - impl AliasAliasAppearsInFromClause for T2 [INFO] [stdout] where ::Target == T1, ::Target == T2, T1: TableNotEqual, T1: Table, T2: Table, S1: AliasSource, S2: AliasSource; [INFO] [stdout] = note: this error originates in the macro `diesel::table` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0119]: conflicting implementations of trait `AliasAliasAppearsInFromClause` for type `schema::rooms::table` [INFO] [stdout] --> src/schema.rs:16:1 [INFO] [stdout] | [INFO] [stdout] 16 | / diesel::table! { [INFO] [stdout] 17 | | rooms (id) { [INFO] [stdout] 18 | | id -> Text, [INFO] [stdout] 19 | | name -> Text, [INFO] [stdout] ... | [INFO] [stdout] 24 | | } [INFO] [stdout] | |_^ [INFO] [stdout] | [INFO] [stdout] = note: conflicting implementation in crate `diesel`: [INFO] [stdout] - impl AliasAliasAppearsInFromClause for T2 [INFO] [stdout] where ::Target == T1, ::Target == T2, T1: TableNotEqual, T1: Table, T2: Table, S1: AliasSource, S2: AliasSource; [INFO] [stdout] = note: this error originates in the macro `diesel::table` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: cannot find derive macro `Deserialize` in this scope [INFO] [stdout] --> src/models.rs:29:35 [INFO] [stdout] | [INFO] [stdout] 29 | #[derive(Debug, Clone, Serialize, Deserialize)] [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] note: `Deserialize` is imported here, but it is only a trait, without a derive macro [INFO] [stdout] --> src/models.rs:1:24 [INFO] [stdout] | [INFO] [stdout] 1 | use serde::{Serialize, Deserialize}; [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0119]: conflicting implementations of trait `FieldAliasMapperAssociatedTypesDisjointnessTrick` for type `schema::conversations::table` [INFO] [stdout] --> src/schema.rs:6:1 [INFO] [stdout] | [INFO] [stdout] 6 | / diesel::table! { [INFO] [stdout] 7 | | conversations (id) { [INFO] [stdout] 8 | | id -> Text, [INFO] [stdout] 9 | | room_id -> Text, [INFO] [stdout] ... | [INFO] [stdout] 14 | | } [INFO] [stdout] | |_^ [INFO] [stdout] | [INFO] [stdout] = note: conflicting implementation in crate `diesel`: [INFO] [stdout] - impl FieldAliasMapperAssociatedTypesDisjointnessTrick for TS [INFO] [stdout] where ::Target == TS, ::Table == TC, S: AliasSource, C: Column, TC: Table, TS: TableNotEqual; [INFO] [stdout] = note: this error originates in the macro `diesel::table` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0119]: conflicting implementations of trait `FieldAliasMapperAssociatedTypesDisjointnessTrick` for type `schema::rooms::table` [INFO] [stdout] --> src/schema.rs:16:1 [INFO] [stdout] | [INFO] [stdout] 16 | / diesel::table! { [INFO] [stdout] 17 | | rooms (id) { [INFO] [stdout] 18 | | id -> Text, [INFO] [stdout] 19 | | name -> Text, [INFO] [stdout] ... | [INFO] [stdout] 24 | | } [INFO] [stdout] | |_^ [INFO] [stdout] | [INFO] [stdout] = note: conflicting implementation in crate `diesel`: [INFO] [stdout] - impl FieldAliasMapperAssociatedTypesDisjointnessTrick for TS [INFO] [stdout] where ::Target == TS, ::Table == TC, S: AliasSource, C: Column, TC: Table, TS: TableNotEqual; [INFO] [stdout] = note: this error originates in the macro `diesel::table` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0119]: conflicting implementations of trait `FieldAliasMapperAssociatedTypesDisjointnessTrick` for type `schema::conversations::table` [INFO] [stdout] --> src/schema.rs:6:1 [INFO] [stdout] | [INFO] [stdout] 6 | / diesel::table! { [INFO] [stdout] 7 | | conversations (id) { [INFO] [stdout] 8 | | id -> Text, [INFO] [stdout] 9 | | room_id -> Text, [INFO] [stdout] ... | [INFO] [stdout] 14 | | } [INFO] [stdout] | |_^ [INFO] [stdout] | [INFO] [stdout] = note: conflicting implementation in crate `diesel`: [INFO] [stdout] - impl FieldAliasMapperAssociatedTypesDisjointnessTrick for TS [INFO] [stdout] where ::Target == TS, ::Table == TC, S: AliasSource, C: Column, TC: Table, TS: TableNotEqual; [INFO] [stdout] = note: this error originates in the macro `diesel::table` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0119]: conflicting implementations of trait `FieldAliasMapperAssociatedTypesDisjointnessTrick` for type `schema::rooms::table` [INFO] [stdout] --> src/schema.rs:16:1 [INFO] [stdout] | [INFO] [stdout] 16 | / diesel::table! { [INFO] [stdout] 17 | | rooms (id) { [INFO] [stdout] 18 | | id -> Text, [INFO] [stdout] 19 | | name -> Text, [INFO] [stdout] ... | [INFO] [stdout] 24 | | } [INFO] [stdout] | |_^ [INFO] [stdout] | [INFO] [stdout] = note: conflicting implementation in crate `diesel`: [INFO] [stdout] - impl FieldAliasMapperAssociatedTypesDisjointnessTrick for TS [INFO] [stdout] where ::Target == TS, ::Table == TC, S: AliasSource, C: Column, TC: Table, TS: TableNotEqual; [INFO] [stdout] = note: this error originates in the macro `diesel::table` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: cannot find derive macro `Serialize` in this scope [INFO] [stdout] --> src/models.rs:20:24 [INFO] [stdout] | [INFO] [stdout] 20 | #[derive(Debug, Clone, Serialize, Deserialize, Queryable, Insertable)] [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] note: `Serialize` is imported here, but it is only a trait, without a derive macro [INFO] [stdout] --> src/models.rs:1:13 [INFO] [stdout] | [INFO] [stdout] 1 | use serde::{Serialize, Deserialize}; [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: cannot find derive macro `Deserialize` in this scope [INFO] [stdout] --> src/models.rs:20:35 [INFO] [stdout] | [INFO] [stdout] 20 | #[derive(Debug, Clone, Serialize, Deserialize, Queryable, Insertable)] [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] note: `Deserialize` is imported here, but it is only a trait, without a derive macro [INFO] [stdout] --> src/models.rs:1:24 [INFO] [stdout] | [INFO] [stdout] 1 | use serde::{Serialize, Deserialize}; [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: cannot find derive macro `Serialize` in this scope [INFO] [stdout] --> src/models.rs:11:35 [INFO] [stdout] | [INFO] [stdout] 11 | #[derive(Debug, Clone, PartialEq, Serialize, Deserialize, Queryable, Insertable)] [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] note: `Serialize` is imported here, but it is only a trait, without a derive macro [INFO] [stdout] --> src/models.rs:1:13 [INFO] [stdout] | [INFO] [stdout] 1 | use serde::{Serialize, Deserialize}; [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: cannot find derive macro `Deserialize` in this scope [INFO] [stdout] --> src/models.rs:11:46 [INFO] [stdout] | [INFO] [stdout] 11 | #[derive(Debug, Clone, PartialEq, Serialize, Deserialize, Queryable, Insertable)] [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] note: `Deserialize` is imported here, but it is only a trait, without a derive macro [INFO] [stdout] --> src/models.rs:1:24 [INFO] [stdout] | [INFO] [stdout] 1 | use serde::{Serialize, Deserialize}; [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: cannot find derive macro `Serialize` in this scope [INFO] [stdout] --> src/models.rs:3:24 [INFO] [stdout] | [INFO] [stdout] 3 | #[derive(Debug, Clone, Serialize, Deserialize, Queryable, Insertable)] [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] note: `Serialize` is imported here, but it is only a trait, without a derive macro [INFO] [stdout] --> src/models.rs:1:13 [INFO] [stdout] | [INFO] [stdout] 1 | use serde::{Serialize, Deserialize}; [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: cannot find derive macro `Deserialize` in this scope [INFO] [stdout] --> src/models.rs:3:35 [INFO] [stdout] | [INFO] [stdout] 3 | #[derive(Debug, Clone, Serialize, Deserialize, Queryable, Insertable)] [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] note: `Deserialize` is imported here, but it is only a trait, without a derive macro [INFO] [stdout] --> src/models.rs:1:24 [INFO] [stdout] | [INFO] [stdout] 1 | use serde::{Serialize, Deserialize}; [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `#[macro_use]` import [INFO] [stdout] --> src/main.rs:1:1 [INFO] [stdout] | [INFO] [stdout] 1 | #[macro_use] [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `diesel::prelude::*` [INFO] [stdout] --> src/schema.rs:4:5 [INFO] [stdout] | [INFO] [stdout] 4 | use diesel::prelude::*; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `User: serde::Serialize` is not satisfied [INFO] [stdout] --> src/routes.rs:54:32 [INFO] [stdout] | [INFO] [stdout] 54 | Ok(HttpResponse::Ok().json(user)) [INFO] [stdout] | ---- ^^^^ unsatisfied trait bound [INFO] [stdout] | | [INFO] [stdout] | required by a bound introduced by this call [INFO] [stdout] | [INFO] [stdout] help: the trait `serde::Serialize` is not implemented for `User` [INFO] [stdout] --> src/models.rs:4:1 [INFO] [stdout] | [INFO] [stdout] 4 | pub struct User { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] = help: the following other types implement trait `serde::Serialize`: [INFO] [stdout] &'a T [INFO] [stdout] &'a mut T [INFO] [stdout] () [INFO] [stdout] (T0, T1) [INFO] [stdout] (T0, T1, T2) [INFO] [stdout] (T0, T1, T2, T3) [INFO] [stdout] (T0, T1, T2, T3, T4) [INFO] [stdout] (T0, T1, T2, T3, T4, T5) [INFO] [stdout] and 134 others [INFO] [stdout] note: required by a bound in `HttpResponseBuilder::json` [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/actix-web-4.5.1/src/response/builder.rs:333:40 [INFO] [stdout] | [INFO] [stdout] 333 | pub fn json(&mut self, value: impl Serialize) -> HttpResponse { [INFO] [stdout] | ^^^^^^^^^ required by this bound in `HttpResponseBuilder::json` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0282]: type annotations needed [INFO] [stdout] --> src/routes.rs:62:16 [INFO] [stdout] | [INFO] [stdout] 62 | let user = web::block(move || { [INFO] [stdout] | ________________^ [INFO] [stdout] 63 | | let mut conn = pool.get()?; [INFO] [stdout] 64 | | db::find_user_by_uid(&mut conn, user_id) [INFO] [stdout] 65 | | }) [INFO] [stdout] 66 | | .await? [INFO] [stdout] | |_______________^ cannot infer type [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0282]: type annotations needed [INFO] [stdout] --> src/routes.rs:87:25 [INFO] [stdout] | [INFO] [stdout] 87 | let conversations = web::block(move || { [INFO] [stdout] | _________________________^ [INFO] [stdout] 88 | | let mut conn = pool.get()?; [INFO] [stdout] 89 | | db::get_conversation_by_room_uid(&mut conn, room_id) [INFO] [stdout] 90 | | }) [INFO] [stdout] 91 | | .await? [INFO] [stdout] | |_______________^ cannot infer type [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `User: serde::Serialize` is not satisfied [INFO] [stdout] --> src/routes.rs:119:36 [INFO] [stdout] | [INFO] [stdout] 119 | Ok(HttpResponse::Ok().json(user)) [INFO] [stdout] | ---- ^^^^ unsatisfied trait bound [INFO] [stdout] | | [INFO] [stdout] | required by a bound introduced by this call [INFO] [stdout] | [INFO] [stdout] help: the trait `serde::Serialize` is not implemented for `User` [INFO] [stdout] --> src/models.rs:4:1 [INFO] [stdout] | [INFO] [stdout] 4 | pub struct User { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] = help: the following other types implement trait `serde::Serialize`: [INFO] [stdout] &'a T [INFO] [stdout] &'a mut T [INFO] [stdout] () [INFO] [stdout] (T0, T1) [INFO] [stdout] (T0, T1, T2) [INFO] [stdout] (T0, T1, T2, T3) [INFO] [stdout] (T0, T1, T2, T3, T4) [INFO] [stdout] (T0, T1, T2, T3, T4, T5) [INFO] [stdout] and 134 others [INFO] [stdout] note: required by a bound in `HttpResponseBuilder::json` [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/actix-web-4.5.1/src/response/builder.rs:333:40 [INFO] [stdout] | [INFO] [stdout] 333 | pub fn json(&mut self, value: impl Serialize) -> HttpResponse { [INFO] [stdout] | ^^^^^^^^^ required by this bound in `HttpResponseBuilder::json` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0119]: conflicting implementations of trait `AppearsInFromClause` for type `schema::conversations::table` [INFO] [stdout] --> src/schema.rs:6:1 [INFO] [stdout] | [INFO] [stdout] 6 | / diesel::table! { [INFO] [stdout] 7 | | conversations (id) { [INFO] [stdout] 8 | | id -> Text, [INFO] [stdout] 9 | | room_id -> Text, [INFO] [stdout] ... | [INFO] [stdout] 14 | | } [INFO] [stdout] | |_^ [INFO] [stdout] | [INFO] [stdout] = note: conflicting implementation in crate `diesel`: [INFO] [stdout] - impl AppearsInFromClause for T1 [INFO] [stdout] where T1: TableNotEqual, T1: Table, T2: Table; [INFO] [stdout] = note: this error originates in the macro `diesel::table` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0119]: conflicting implementations of trait `AppearsInFromClause>` for type `schema::conversations::table` [INFO] [stdout] --> src/schema.rs:6:1 [INFO] [stdout] | [INFO] [stdout] 6 | / diesel::table! { [INFO] [stdout] 7 | | conversations (id) { [INFO] [stdout] 8 | | id -> Text, [INFO] [stdout] 9 | | room_id -> Text, [INFO] [stdout] ... | [INFO] [stdout] 14 | | } [INFO] [stdout] | |_^ [INFO] [stdout] | [INFO] [stdout] = note: conflicting implementation in crate `diesel`: [INFO] [stdout] - impl AppearsInFromClause for T1 [INFO] [stdout] where T1: TableNotEqual, T1: Table, T2: Table; [INFO] [stdout] = note: upstream crates may add a new impl of trait `diesel::Table` for type `diesel::query_source::Alias<_>` in future versions [INFO] [stdout] = note: this error originates in the macro `diesel::table` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0119]: conflicting implementations of trait `AppearsInFromClause` for type `schema::rooms::table` [INFO] [stdout] --> src/schema.rs:16:1 [INFO] [stdout] | [INFO] [stdout] 16 | / diesel::table! { [INFO] [stdout] 17 | | rooms (id) { [INFO] [stdout] 18 | | id -> Text, [INFO] [stdout] 19 | | name -> Text, [INFO] [stdout] ... | [INFO] [stdout] 24 | | } [INFO] [stdout] | |_^ [INFO] [stdout] | [INFO] [stdout] = note: conflicting implementation in crate `diesel`: [INFO] [stdout] - impl AppearsInFromClause for T1 [INFO] [stdout] where T1: TableNotEqual, T1: Table, T2: Table; [INFO] [stdout] = note: this error originates in the macro `diesel::table` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0119]: conflicting implementations of trait `AppearsInFromClause>` for type `schema::rooms::table` [INFO] [stdout] --> src/schema.rs:16:1 [INFO] [stdout] | [INFO] [stdout] 16 | / diesel::table! { [INFO] [stdout] 17 | | rooms (id) { [INFO] [stdout] 18 | | id -> Text, [INFO] [stdout] 19 | | name -> Text, [INFO] [stdout] ... | [INFO] [stdout] 24 | | } [INFO] [stdout] | |_^ [INFO] [stdout] | [INFO] [stdout] = note: conflicting implementation in crate `diesel`: [INFO] [stdout] - impl AppearsInFromClause for T1 [INFO] [stdout] where T1: TableNotEqual, T1: Table, T2: Table; [INFO] [stdout] = note: upstream crates may add a new impl of trait `diesel::Table` for type `diesel::query_source::Alias<_>` in future versions [INFO] [stdout] = note: this error originates in the macro `diesel::table` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0119]: conflicting implementations of trait `AppearsInFromClause` for type `schema::conversations::table` [INFO] [stdout] --> src/schema.rs:6:1 [INFO] [stdout] | [INFO] [stdout] 6 | / diesel::table! { [INFO] [stdout] 7 | | conversations (id) { [INFO] [stdout] 8 | | id -> Text, [INFO] [stdout] 9 | | room_id -> Text, [INFO] [stdout] ... | [INFO] [stdout] 14 | | } [INFO] [stdout] | |_^ [INFO] [stdout] | [INFO] [stdout] = note: conflicting implementation in crate `diesel`: [INFO] [stdout] - impl AppearsInFromClause for T1 [INFO] [stdout] where T1: TableNotEqual, T1: Table, T2: Table; [INFO] [stdout] = note: this error originates in the macro `diesel::table` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0119]: conflicting implementations of trait `AppearsInFromClause>` for type `schema::conversations::table` [INFO] [stdout] --> src/schema.rs:6:1 [INFO] [stdout] | [INFO] [stdout] 6 | / diesel::table! { [INFO] [stdout] 7 | | conversations (id) { [INFO] [stdout] 8 | | id -> Text, [INFO] [stdout] 9 | | room_id -> Text, [INFO] [stdout] ... | [INFO] [stdout] 14 | | } [INFO] [stdout] | |_^ [INFO] [stdout] | [INFO] [stdout] = note: conflicting implementation in crate `diesel`: [INFO] [stdout] - impl AppearsInFromClause for T1 [INFO] [stdout] where T1: TableNotEqual, T1: Table, T2: Table; [INFO] [stdout] = note: upstream crates may add a new impl of trait `diesel::Table` for type `diesel::query_source::Alias<_>` in future versions [INFO] [stdout] = note: this error originates in the macro `diesel::table` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0119]: conflicting implementations of trait `AppearsInFromClause` for type `schema::rooms::table` [INFO] [stdout] --> src/schema.rs:16:1 [INFO] [stdout] | [INFO] [stdout] 16 | / diesel::table! { [INFO] [stdout] 17 | | rooms (id) { [INFO] [stdout] 18 | | id -> Text, [INFO] [stdout] 19 | | name -> Text, [INFO] [stdout] ... | [INFO] [stdout] 24 | | } [INFO] [stdout] | |_^ [INFO] [stdout] | [INFO] [stdout] = note: conflicting implementation in crate `diesel`: [INFO] [stdout] - impl AppearsInFromClause for T1 [INFO] [stdout] where T1: TableNotEqual, T1: Table, T2: Table; [INFO] [stdout] = note: this error originates in the macro `diesel::table` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0119]: conflicting implementations of trait `AppearsInFromClause>` for type `schema::rooms::table` [INFO] [stdout] --> src/schema.rs:16:1 [INFO] [stdout] | [INFO] [stdout] 16 | / diesel::table! { [INFO] [stdout] 17 | | rooms (id) { [INFO] [stdout] 18 | | id -> Text, [INFO] [stdout] 19 | | name -> Text, [INFO] [stdout] ... | [INFO] [stdout] 24 | | } [INFO] [stdout] | |_^ [INFO] [stdout] | [INFO] [stdout] = note: conflicting implementation in crate `diesel`: [INFO] [stdout] - impl AppearsInFromClause for T1 [INFO] [stdout] where T1: TableNotEqual, T1: Table, T2: Table; [INFO] [stdout] = note: upstream crates may add a new impl of trait `diesel::Table` for type `diesel::query_source::Alias<_>` in future versions [INFO] [stdout] = note: this error originates in the macro `diesel::table` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `RoomResponse: serde::Serialize` is not satisfied [INFO] [stdout] --> src/routes.rs:142:36 [INFO] [stdout] | [INFO] [stdout] 142 | Ok(HttpResponse::Ok().json(rooms)) [INFO] [stdout] | ---- ^^^^^ unsatisfied trait bound [INFO] [stdout] | | [INFO] [stdout] | required by a bound introduced by this call [INFO] [stdout] | [INFO] [stdout] help: the trait `serde::Serialize` is not implemented for `RoomResponse` [INFO] [stdout] --> src/models.rs:43:1 [INFO] [stdout] | [INFO] [stdout] 43 | pub struct RoomResponse { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] = help: the following other types implement trait `serde::Serialize`: [INFO] [stdout] &'a T [INFO] [stdout] &'a mut T [INFO] [stdout] () [INFO] [stdout] (T0, T1) [INFO] [stdout] (T0, T1, T2) [INFO] [stdout] (T0, T1, T2, T3) [INFO] [stdout] (T0, T1, T2, T3, T4) [INFO] [stdout] (T0, T1, T2, T3, T4, T5) [INFO] [stdout] and 134 others [INFO] [stdout] = note: required for `Vec` to implement `serde::Serialize` [INFO] [stdout] note: required by a bound in `HttpResponseBuilder::json` [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/actix-web-4.5.1/src/response/builder.rs:333:40 [INFO] [stdout] | [INFO] [stdout] 333 | pub fn json(&mut self, value: impl Serialize) -> HttpResponse { [INFO] [stdout] | ^^^^^^^^^ required by this bound in `HttpResponseBuilder::json` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0119]: conflicting implementations of trait `AliasAppearsInFromClause<_, schema::conversations::table>` for type `schema::conversations::table` [INFO] [stdout] --> src/schema.rs:6:1 [INFO] [stdout] | [INFO] [stdout] 6 | / diesel::table! { [INFO] [stdout] 7 | | conversations (id) { [INFO] [stdout] 8 | | id -> Text, [INFO] [stdout] 9 | | room_id -> Text, [INFO] [stdout] ... | [INFO] [stdout] 14 | | } [INFO] [stdout] | |_^ [INFO] [stdout] | [INFO] [stdout] = note: conflicting implementation in crate `diesel`: [INFO] [stdout] - impl AliasAppearsInFromClause for T1 [INFO] [stdout] where ::Target == T1, T1: TableNotEqual, T1: Table, T2: Table, S: AliasSource; [INFO] [stdout] = note: this error originates in the macro `diesel::table` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0119]: conflicting implementations of trait `AliasAppearsInFromClause<_, schema::rooms::table>` for type `schema::rooms::table` [INFO] [stdout] --> src/schema.rs:16:1 [INFO] [stdout] | [INFO] [stdout] 16 | / diesel::table! { [INFO] [stdout] 17 | | rooms (id) { [INFO] [stdout] 18 | | id -> Text, [INFO] [stdout] 19 | | name -> Text, [INFO] [stdout] ... | [INFO] [stdout] 24 | | } [INFO] [stdout] | |_^ [INFO] [stdout] | [INFO] [stdout] = note: conflicting implementation in crate `diesel`: [INFO] [stdout] - impl AliasAppearsInFromClause for T1 [INFO] [stdout] where ::Target == T1, T1: TableNotEqual, T1: Table, T2: Table, S: AliasSource; [INFO] [stdout] = note: this error originates in the macro `diesel::table` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0119]: conflicting implementations of trait `AliasAppearsInFromClause<_, schema::conversations::table>` for type `schema::conversations::table` [INFO] [stdout] --> src/schema.rs:6:1 [INFO] [stdout] | [INFO] [stdout] 6 | / diesel::table! { [INFO] [stdout] 7 | | conversations (id) { [INFO] [stdout] 8 | | id -> Text, [INFO] [stdout] 9 | | room_id -> Text, [INFO] [stdout] ... | [INFO] [stdout] 14 | | } [INFO] [stdout] | |_^ [INFO] [stdout] | [INFO] [stdout] = note: conflicting implementation in crate `diesel`: [INFO] [stdout] - impl AliasAppearsInFromClause for T1 [INFO] [stdout] where ::Target == T1, T1: TableNotEqual, T1: Table, T2: Table, S: AliasSource; [INFO] [stdout] = note: this error originates in the macro `diesel::table` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0119]: conflicting implementations of trait `AliasAppearsInFromClause<_, schema::rooms::table>` for type `schema::rooms::table` [INFO] [stdout] --> src/schema.rs:16:1 [INFO] [stdout] | [INFO] [stdout] 16 | / diesel::table! { [INFO] [stdout] 17 | | rooms (id) { [INFO] [stdout] 18 | | id -> Text, [INFO] [stdout] 19 | | name -> Text, [INFO] [stdout] ... | [INFO] [stdout] 24 | | } [INFO] [stdout] | |_^ [INFO] [stdout] | [INFO] [stdout] = note: conflicting implementation in crate `diesel`: [INFO] [stdout] - impl AliasAppearsInFromClause for T1 [INFO] [stdout] where ::Target == T1, T1: TableNotEqual, T1: Table, T2: Table, S: AliasSource; [INFO] [stdout] = note: this error originates in the macro `diesel::table` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0119]: conflicting implementations of trait `AliasAliasAppearsInFromClause` for type `schema::conversations::table` [INFO] [stdout] --> src/schema.rs:6:1 [INFO] [stdout] | [INFO] [stdout] 6 | / diesel::table! { [INFO] [stdout] 7 | | conversations (id) { [INFO] [stdout] 8 | | id -> Text, [INFO] [stdout] 9 | | room_id -> Text, [INFO] [stdout] ... | [INFO] [stdout] 14 | | } [INFO] [stdout] | |_^ [INFO] [stdout] | [INFO] [stdout] = note: conflicting implementation in crate `diesel`: [INFO] [stdout] - impl AliasAliasAppearsInFromClause for T2 [INFO] [stdout] where ::Target == T1, ::Target == T2, T1: TableNotEqual, T1: Table, T2: Table, S1: AliasSource, S2: AliasSource; [INFO] [stdout] = note: this error originates in the macro `diesel::table` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0119]: conflicting implementations of trait `AliasAliasAppearsInFromClause` for type `schema::rooms::table` [INFO] [stdout] --> src/schema.rs:16:1 [INFO] [stdout] | [INFO] [stdout] 16 | / diesel::table! { [INFO] [stdout] 17 | | rooms (id) { [INFO] [stdout] 18 | | id -> Text, [INFO] [stdout] 19 | | name -> Text, [INFO] [stdout] ... | [INFO] [stdout] 24 | | } [INFO] [stdout] | |_^ [INFO] [stdout] | [INFO] [stdout] = note: conflicting implementation in crate `diesel`: [INFO] [stdout] - impl AliasAliasAppearsInFromClause for T2 [INFO] [stdout] where ::Target == T1, ::Target == T2, T1: TableNotEqual, T1: Table, T2: Table, S1: AliasSource, S2: AliasSource; [INFO] [stdout] = note: this error originates in the macro `diesel::table` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0119]: conflicting implementations of trait `AliasAliasAppearsInFromClause` for type `schema::conversations::table` [INFO] [stdout] --> src/schema.rs:6:1 [INFO] [stdout] | [INFO] [stdout] 6 | / diesel::table! { [INFO] [stdout] 7 | | conversations (id) { [INFO] [stdout] 8 | | id -> Text, [INFO] [stdout] 9 | | room_id -> Text, [INFO] [stdout] ... | [INFO] [stdout] 14 | | } [INFO] [stdout] | |_^ [INFO] [stdout] | [INFO] [stdout] = note: conflicting implementation in crate `diesel`: [INFO] [stdout] - impl AliasAliasAppearsInFromClause for T2 [INFO] [stdout] where ::Target == T1, ::Target == T2, T1: TableNotEqual, T1: Table, T2: Table, S1: AliasSource, S2: AliasSource; [INFO] [stdout] = note: this error originates in the macro `diesel::table` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0119]: conflicting implementations of trait `AliasAliasAppearsInFromClause` for type `schema::rooms::table` [INFO] [stdout] --> src/schema.rs:16:1 [INFO] [stdout] | [INFO] [stdout] 16 | / diesel::table! { [INFO] [stdout] 17 | | rooms (id) { [INFO] [stdout] 18 | | id -> Text, [INFO] [stdout] 19 | | name -> Text, [INFO] [stdout] ... | [INFO] [stdout] 24 | | } [INFO] [stdout] | |_^ [INFO] [stdout] | [INFO] [stdout] = note: conflicting implementation in crate `diesel`: [INFO] [stdout] - impl AliasAliasAppearsInFromClause for T2 [INFO] [stdout] where ::Target == T1, ::Target == T2, T1: TableNotEqual, T1: Table, T2: Table, S1: AliasSource, S2: AliasSource; [INFO] [stdout] = note: this error originates in the macro `diesel::table` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0119]: conflicting implementations of trait `FieldAliasMapperAssociatedTypesDisjointnessTrick` for type `schema::conversations::table` [INFO] [stdout] --> src/schema.rs:6:1 [INFO] [stdout] | [INFO] [stdout] 6 | / diesel::table! { [INFO] [stdout] 7 | | conversations (id) { [INFO] [stdout] 8 | | id -> Text, [INFO] [stdout] 9 | | room_id -> Text, [INFO] [stdout] ... | [INFO] [stdout] 14 | | } [INFO] [stdout] | |_^ [INFO] [stdout] | [INFO] [stdout] = note: conflicting implementation in crate `diesel`: [INFO] [stdout] - impl FieldAliasMapperAssociatedTypesDisjointnessTrick for TS [INFO] [stdout] where ::Target == TS, ::Table == TC, S: AliasSource, C: Column, TC: Table, TS: TableNotEqual; [INFO] [stdout] = note: this error originates in the macro `diesel::table` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0119]: conflicting implementations of trait `FieldAliasMapperAssociatedTypesDisjointnessTrick` for type `schema::rooms::table` [INFO] [stdout] --> src/schema.rs:16:1 [INFO] [stdout] | [INFO] [stdout] 16 | / diesel::table! { [INFO] [stdout] 17 | | rooms (id) { [INFO] [stdout] 18 | | id -> Text, [INFO] [stdout] 19 | | name -> Text, [INFO] [stdout] ... | [INFO] [stdout] 24 | | } [INFO] [stdout] | |_^ [INFO] [stdout] | [INFO] [stdout] = note: conflicting implementation in crate `diesel`: [INFO] [stdout] - impl FieldAliasMapperAssociatedTypesDisjointnessTrick for TS [INFO] [stdout] where ::Target == TS, ::Table == TC, S: AliasSource, C: Column, TC: Table, TS: TableNotEqual; [INFO] [stdout] = note: this error originates in the macro `diesel::table` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0119]: conflicting implementations of trait `FieldAliasMapperAssociatedTypesDisjointnessTrick` for type `schema::conversations::table` [INFO] [stdout] --> src/schema.rs:6:1 [INFO] [stdout] | [INFO] [stdout] 6 | / diesel::table! { [INFO] [stdout] 7 | | conversations (id) { [INFO] [stdout] 8 | | id -> Text, [INFO] [stdout] 9 | | room_id -> Text, [INFO] [stdout] ... | [INFO] [stdout] 14 | | } [INFO] [stdout] | |_^ [INFO] [stdout] | [INFO] [stdout] = note: conflicting implementation in crate `diesel`: [INFO] [stdout] - impl FieldAliasMapperAssociatedTypesDisjointnessTrick for TS [INFO] [stdout] where ::Target == TS, ::Table == TC, S: AliasSource, C: Column, TC: Table, TS: TableNotEqual; [INFO] [stdout] = note: this error originates in the macro `diesel::table` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0119]: conflicting implementations of trait `FieldAliasMapperAssociatedTypesDisjointnessTrick` for type `schema::rooms::table` [INFO] [stdout] --> src/schema.rs:16:1 [INFO] [stdout] | [INFO] [stdout] 16 | / diesel::table! { [INFO] [stdout] 17 | | rooms (id) { [INFO] [stdout] 18 | | id -> Text, [INFO] [stdout] 19 | | name -> Text, [INFO] [stdout] ... | [INFO] [stdout] 24 | | } [INFO] [stdout] | |_^ [INFO] [stdout] | [INFO] [stdout] = note: conflicting implementation in crate `diesel`: [INFO] [stdout] - impl FieldAliasMapperAssociatedTypesDisjointnessTrick for TS [INFO] [stdout] where ::Target == TS, ::Table == TC, S: AliasSource, C: Column, TC: Table, TS: TableNotEqual; [INFO] [stdout] = note: this error originates in the macro `diesel::table` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: no function or associated item named `new_v4` found for struct `Uuid` in the current scope [INFO] [stdout] --> src/db.rs:37:19 [INFO] [stdout] | [INFO] [stdout] 37 | id: Uuid::new_v4().to_string(), [INFO] [stdout] | ^^^^^^ function or associated item not found in `Uuid` [INFO] [stdout] | [INFO] [stdout] note: if you're trying to build a new `Uuid` consider using one of the following associated functions: [INFO] [stdout] uuid::builder::::nil [INFO] [stdout] uuid::builder::::max [INFO] [stdout] uuid::builder::::from_fields [INFO] [stdout] uuid::builder::::from_fields_le [INFO] [stdout] and 10 others [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/uuid-1.8.0/src/builder.rs:72:5 [INFO] [stdout] | [INFO] [stdout] 72 | pub const fn nil() -> Self { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 98 | pub const fn max() -> Self { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 122 | pub const fn from_fields(d1: u32, d2: u16, d3: u16, d4: &[u8; 8]) -> Uuid { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 168 | pub const fn from_fields_le(d1: u32, d2: u16, d3: u16, d4: &[u8; 8]) -> Uuid { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: no function or associated item named `new_v4` found for struct `Uuid` in the current scope [INFO] [stdout] --> src/db.rs:52:19 [INFO] [stdout] | [INFO] [stdout] 52 | id: Uuid::new_v4().to_string(), [INFO] [stdout] | ^^^^^^ function or associated item not found in `Uuid` [INFO] [stdout] | [INFO] [stdout] note: if you're trying to build a new `Uuid` consider using one of the following associated functions: [INFO] [stdout] uuid::builder::::nil [INFO] [stdout] uuid::builder::::max [INFO] [stdout] uuid::builder::::from_fields [INFO] [stdout] uuid::builder::::from_fields_le [INFO] [stdout] and 10 others [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/uuid-1.8.0/src/builder.rs:72:5 [INFO] [stdout] | [INFO] [stdout] 72 | pub const fn nil() -> Self { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 98 | pub const fn max() -> Self { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 122 | pub const fn from_fields(d1: u32, d2: u16, d3: u16, d4: &[u8; 8]) -> Uuid { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 168 | pub const fn from_fields_le(d1: u32, d2: u16, d3: u16, d4: &[u8; 8]) -> Uuid { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `User: serde::Serialize` is not satisfied [INFO] [stdout] --> src/routes.rs:54:32 [INFO] [stdout] | [INFO] [stdout] 54 | Ok(HttpResponse::Ok().json(user)) [INFO] [stdout] | ---- ^^^^ unsatisfied trait bound [INFO] [stdout] | | [INFO] [stdout] | required by a bound introduced by this call [INFO] [stdout] | [INFO] [stdout] help: the trait `serde::Serialize` is not implemented for `User` [INFO] [stdout] --> src/models.rs:4:1 [INFO] [stdout] | [INFO] [stdout] 4 | pub struct User { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] = help: the following other types implement trait `serde::Serialize`: [INFO] [stdout] &'a T [INFO] [stdout] &'a mut T [INFO] [stdout] () [INFO] [stdout] (T0, T1) [INFO] [stdout] (T0, T1, T2) [INFO] [stdout] (T0, T1, T2, T3) [INFO] [stdout] (T0, T1, T2, T3, T4) [INFO] [stdout] (T0, T1, T2, T3, T4, T5) [INFO] [stdout] and 134 others [INFO] [stdout] note: required by a bound in `HttpResponseBuilder::json` [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/actix-web-4.5.1/src/response/builder.rs:333:40 [INFO] [stdout] | [INFO] [stdout] 333 | pub fn json(&mut self, value: impl Serialize) -> HttpResponse { [INFO] [stdout] | ^^^^^^^^^ required by this bound in `HttpResponseBuilder::json` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0282]: type annotations needed [INFO] [stdout] --> src/routes.rs:62:16 [INFO] [stdout] | [INFO] [stdout] 62 | let user = web::block(move || { [INFO] [stdout] | ________________^ [INFO] [stdout] 63 | | let mut conn = pool.get()?; [INFO] [stdout] 64 | | db::find_user_by_uid(&mut conn, user_id) [INFO] [stdout] 65 | | }) [INFO] [stdout] 66 | | .await? [INFO] [stdout] | |_______________^ cannot infer type [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0282]: type annotations needed [INFO] [stdout] --> src/routes.rs:87:25 [INFO] [stdout] | [INFO] [stdout] 87 | let conversations = web::block(move || { [INFO] [stdout] | _________________________^ [INFO] [stdout] 88 | | let mut conn = pool.get()?; [INFO] [stdout] 89 | | db::get_conversation_by_room_uid(&mut conn, room_id) [INFO] [stdout] 90 | | }) [INFO] [stdout] 91 | | .await? [INFO] [stdout] | |_______________^ cannot infer type [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `User: serde::Serialize` is not satisfied [INFO] [stdout] --> src/routes.rs:119:36 [INFO] [stdout] | [INFO] [stdout] 119 | Ok(HttpResponse::Ok().json(user)) [INFO] [stdout] | ---- ^^^^ unsatisfied trait bound [INFO] [stdout] | | [INFO] [stdout] | required by a bound introduced by this call [INFO] [stdout] | [INFO] [stdout] help: the trait `serde::Serialize` is not implemented for `User` [INFO] [stdout] --> src/models.rs:4:1 [INFO] [stdout] | [INFO] [stdout] 4 | pub struct User { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] = help: the following other types implement trait `serde::Serialize`: [INFO] [stdout] &'a T [INFO] [stdout] &'a mut T [INFO] [stdout] () [INFO] [stdout] (T0, T1) [INFO] [stdout] (T0, T1, T2) [INFO] [stdout] (T0, T1, T2, T3) [INFO] [stdout] (T0, T1, T2, T3, T4) [INFO] [stdout] (T0, T1, T2, T3, T4, T5) [INFO] [stdout] and 134 others [INFO] [stdout] note: required by a bound in `HttpResponseBuilder::json` [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/actix-web-4.5.1/src/response/builder.rs:333:40 [INFO] [stdout] | [INFO] [stdout] 333 | pub fn json(&mut self, value: impl Serialize) -> HttpResponse { [INFO] [stdout] | ^^^^^^^^^ required by this bound in `HttpResponseBuilder::json` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `RoomResponse: serde::Serialize` is not satisfied [INFO] [stdout] --> src/routes.rs:142:36 [INFO] [stdout] | [INFO] [stdout] 142 | Ok(HttpResponse::Ok().json(rooms)) [INFO] [stdout] | ---- ^^^^^ unsatisfied trait bound [INFO] [stdout] | | [INFO] [stdout] | required by a bound introduced by this call [INFO] [stdout] | [INFO] [stdout] help: the trait `serde::Serialize` is not implemented for `RoomResponse` [INFO] [stdout] --> src/models.rs:43:1 [INFO] [stdout] | [INFO] [stdout] 43 | pub struct RoomResponse { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] = help: the following other types implement trait `serde::Serialize`: [INFO] [stdout] &'a T [INFO] [stdout] &'a mut T [INFO] [stdout] () [INFO] [stdout] (T0, T1) [INFO] [stdout] (T0, T1, T2) [INFO] [stdout] (T0, T1, T2, T3) [INFO] [stdout] (T0, T1, T2, T3, T4) [INFO] [stdout] (T0, T1, T2, T3, T4, T5) [INFO] [stdout] and 134 others [INFO] [stdout] = note: required for `Vec` to implement `serde::Serialize` [INFO] [stdout] note: required by a bound in `HttpResponseBuilder::json` [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/actix-web-4.5.1/src/response/builder.rs:333:40 [INFO] [stdout] | [INFO] [stdout] 333 | pub fn json(&mut self, value: impl Serialize) -> HttpResponse { [INFO] [stdout] | ^^^^^^^^^ required by this bound in `HttpResponseBuilder::json` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: no function or associated item named `new_v4` found for struct `Uuid` in the current scope [INFO] [stdout] --> src/db.rs:37:19 [INFO] [stdout] | [INFO] [stdout] 37 | id: Uuid::new_v4().to_string(), [INFO] [stdout] | ^^^^^^ function or associated item not found in `Uuid` [INFO] [stdout] | [INFO] [stdout] note: if you're trying to build a new `Uuid` consider using one of the following associated functions: [INFO] [stdout] uuid::builder::::nil [INFO] [stdout] uuid::builder::::max [INFO] [stdout] uuid::builder::::from_fields [INFO] [stdout] uuid::builder::::from_fields_le [INFO] [stdout] and 10 others [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/uuid-1.8.0/src/builder.rs:72:5 [INFO] [stdout] | [INFO] [stdout] 72 | pub const fn nil() -> Self { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 98 | pub const fn max() -> Self { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 122 | pub const fn from_fields(d1: u32, d2: u16, d3: u16, d4: &[u8; 8]) -> Uuid { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 168 | pub const fn from_fields_le(d1: u32, d2: u16, d3: u16, d4: &[u8; 8]) -> Uuid { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `for<'de> NewUser: serde::Deserialize<'de>` is not satisfied [INFO] [stdout] --> src/routes.rs:43:1 [INFO] [stdout] | [INFO] [stdout] 43 | #[post("/users/create")] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ unsatisfied trait bound [INFO] [stdout] | [INFO] [stdout] help: the trait `for<'de> serde::Deserialize<'de>` is not implemented for `NewUser` [INFO] [stdout] --> src/models.rs:30:1 [INFO] [stdout] | [INFO] [stdout] 30 | pub struct NewUser { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] = help: the following other types implement trait `serde::Deserialize<'de>`: [INFO] [stdout] &'a [u8] [INFO] [stdout] &'a std::path::Path [INFO] [stdout] &'a str [INFO] [stdout] () [INFO] [stdout] (T0, T1) [INFO] [stdout] (T0, T1, T2) [INFO] [stdout] (T0, T1, T2, T3) [INFO] [stdout] (T0, T1, T2, T3, T4) [INFO] [stdout] and 143 others [INFO] [stdout] = note: required for `NewUser` to implement `DeserializeOwned` [INFO] [stdout] = note: required for `actix_web::web::Json` to implement `FromRequest` [INFO] [stdout] = note: 1 redundant requirement hidden [INFO] [stdout] = note: required for `(actix_web::web::Data<{type error}>, actix_web::web::Json)` to implement `FromRequest` [INFO] [stdout] note: required by a bound in `Resource::::to` [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/actix-web-4.5.1/src/resource.rs:244:15 [INFO] [stdout] | [INFO] [stdout] 241 | pub fn to(mut self, handler: F) -> Self [INFO] [stdout] | -- required by a bound in this associated function [INFO] [stdout] ... [INFO] [stdout] 244 | Args: FromRequest + 'static, [INFO] [stdout] | ^^^^^^^^^^^ required by this bound in `Resource::::to` [INFO] [stdout] = note: this error originates in the attribute macro `post` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: no function or associated item named `new_v4` found for struct `Uuid` in the current scope [INFO] [stdout] --> src/db.rs:52:19 [INFO] [stdout] | [INFO] [stdout] 52 | id: Uuid::new_v4().to_string(), [INFO] [stdout] | ^^^^^^ function or associated item not found in `Uuid` [INFO] [stdout] | [INFO] [stdout] note: if you're trying to build a new `Uuid` consider using one of the following associated functions: [INFO] [stdout] uuid::builder::::nil [INFO] [stdout] uuid::builder::::max [INFO] [stdout] uuid::builder::::from_fields [INFO] [stdout] uuid::builder::::from_fields_le [INFO] [stdout] and 10 others [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/uuid-1.8.0/src/builder.rs:72:5 [INFO] [stdout] | [INFO] [stdout] 72 | pub const fn nil() -> Self { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 98 | pub const fn max() -> Self { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 122 | pub const fn from_fields(d1: u32, d2: u16, d3: u16, d4: &[u8; 8]) -> Uuid { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 168 | pub const fn from_fields_le(d1: u32, d2: u16, d3: u16, d4: &[u8; 8]) -> Uuid { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `for<'de> Uuid: serde::Deserialize<'de>` is not satisfied [INFO] [stdout] --> src/routes.rs:56:1 [INFO] [stdout] | [INFO] [stdout] 56 | #[get("/users/{user_id}")] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `for<'de> serde::Deserialize<'de>` is not implemented for `Uuid` [INFO] [stdout] | [INFO] [stdout] = help: the following other types implement trait `serde::Deserialize<'de>`: [INFO] [stdout] &'a [u8] [INFO] [stdout] &'a std::path::Path [INFO] [stdout] &'a str [INFO] [stdout] () [INFO] [stdout] (T0, T1) [INFO] [stdout] (T0, T1, T2) [INFO] [stdout] (T0, T1, T2, T3) [INFO] [stdout] (T0, T1, T2, T3, T4) [INFO] [stdout] and 143 others [INFO] [stdout] = note: required for `Uuid` to implement `DeserializeOwned` [INFO] [stdout] = note: required for `actix_web::web::Path` to implement `FromRequest` [INFO] [stdout] = note: 1 redundant requirement hidden [INFO] [stdout] = note: required for `(actix_web::web::Data<{type error}>, actix_web::web::Path)` to implement `FromRequest` [INFO] [stdout] note: required by a bound in `Resource::::to` [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/actix-web-4.5.1/src/resource.rs:244:15 [INFO] [stdout] | [INFO] [stdout] 241 | pub fn to(mut self, handler: F) -> Self [INFO] [stdout] | -- required by a bound in this associated function [INFO] [stdout] ... [INFO] [stdout] 244 | Args: FromRequest + 'static, [INFO] [stdout] | ^^^^^^^^^^^ required by this bound in `Resource::::to` [INFO] [stdout] = note: this error originates in the attribute macro `get` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `for<'de> Uuid: serde::Deserialize<'de>` is not satisfied [INFO] [stdout] --> src/routes.rs:81:1 [INFO] [stdout] | [INFO] [stdout] 81 | #[get("/conversations/{uid}")] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `for<'de> serde::Deserialize<'de>` is not implemented for `Uuid` [INFO] [stdout] | [INFO] [stdout] = help: the following other types implement trait `serde::Deserialize<'de>`: [INFO] [stdout] &'a [u8] [INFO] [stdout] &'a std::path::Path [INFO] [stdout] &'a str [INFO] [stdout] () [INFO] [stdout] (T0, T1) [INFO] [stdout] (T0, T1, T2) [INFO] [stdout] (T0, T1, T2, T3) [INFO] [stdout] (T0, T1, T2, T3, T4) [INFO] [stdout] and 143 others [INFO] [stdout] = note: required for `Uuid` to implement `DeserializeOwned` [INFO] [stdout] = note: required for `actix_web::web::Path` to implement `FromRequest` [INFO] [stdout] = note: 1 redundant requirement hidden [INFO] [stdout] = note: required for `(actix_web::web::Data<{type error}>, actix_web::web::Path)` to implement `FromRequest` [INFO] [stdout] note: required by a bound in `Resource::::to` [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/actix-web-4.5.1/src/resource.rs:244:15 [INFO] [stdout] | [INFO] [stdout] 241 | pub fn to(mut self, handler: F) -> Self [INFO] [stdout] | -- required by a bound in this associated function [INFO] [stdout] ... [INFO] [stdout] 244 | Args: FromRequest + 'static, [INFO] [stdout] | ^^^^^^^^^^^ required by this bound in `Resource::::to` [INFO] [stdout] = note: this error originates in the attribute macro `get` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `ChatType: serde::Serialize` is not satisfied [INFO] [stdout] --> src/server.rs:82:36 [INFO] [stdout] | [INFO] [stdout] 82 | self.send_message("main", &json!({ [INFO] [stdout] | ____________________________________^ [INFO] [stdout] 83 | | "value": vec![format!("{}", id)], [INFO] [stdout] 84 | | "chat_type": session::ChatType::CONNECT [INFO] [stdout] 85 | | }).to_string(), 0); [INFO] [stdout] | | ^ [INFO] [stdout] | | | [INFO] [stdout] | |__________unsatisfied trait bound [INFO] [stdout] | required by a bound introduced by this call [INFO] [stdout] | [INFO] [stdout] help: the trait `serde::Serialize` is not implemented for `ChatType` [INFO] [stdout] --> src/session.rs:29:1 [INFO] [stdout] | [INFO] [stdout] 29 | pub enum ChatType { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] = help: the following other types implement trait `serde::Serialize`: [INFO] [stdout] &'a T [INFO] [stdout] &'a mut T [INFO] [stdout] () [INFO] [stdout] (T0, T1) [INFO] [stdout] (T0, T1, T2) [INFO] [stdout] (T0, T1, T2, T3) [INFO] [stdout] (T0, T1, T2, T3, T4) [INFO] [stdout] (T0, T1, T2, T3, T4, T5) [INFO] [stdout] and 134 others [INFO] [stdout] = note: required for `&ChatType` to implement `serde::Serialize` [INFO] [stdout] note: required by a bound in `to_value` [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/serde_json-1.0.116/src/value/mod.rs:964:8 [INFO] [stdout] | [INFO] [stdout] 962 | pub fn to_value(value: T) -> Result [INFO] [stdout] | -------- required by a bound in this function [INFO] [stdout] 963 | where [INFO] [stdout] 964 | T: Serialize, [INFO] [stdout] | ^^^^^^^^^ required by this bound in `to_value` [INFO] [stdout] = note: this error originates in the macro `json_internal` which comes from the expansion of the macro `json` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `for<'de> NewUser: serde::Deserialize<'de>` is not satisfied [INFO] [stdout] --> src/routes.rs:43:1 [INFO] [stdout] | [INFO] [stdout] 43 | #[post("/users/create")] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ unsatisfied trait bound [INFO] [stdout] | [INFO] [stdout] help: the trait `for<'de> serde::Deserialize<'de>` is not implemented for `NewUser` [INFO] [stdout] --> src/models.rs:30:1 [INFO] [stdout] | [INFO] [stdout] 30 | pub struct NewUser { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] = help: the following other types implement trait `serde::Deserialize<'de>`: [INFO] [stdout] &'a [u8] [INFO] [stdout] &'a std::path::Path [INFO] [stdout] &'a str [INFO] [stdout] () [INFO] [stdout] (T0, T1) [INFO] [stdout] (T0, T1, T2) [INFO] [stdout] (T0, T1, T2, T3) [INFO] [stdout] (T0, T1, T2, T3, T4) [INFO] [stdout] and 143 others [INFO] [stdout] = note: required for `NewUser` to implement `DeserializeOwned` [INFO] [stdout] = note: required for `actix_web::web::Json` to implement `FromRequest` [INFO] [stdout] = note: 1 redundant requirement hidden [INFO] [stdout] = note: required for `(actix_web::web::Data<{type error}>, actix_web::web::Json)` to implement `FromRequest` [INFO] [stdout] note: required by a bound in `Resource::::to` [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/actix-web-4.5.1/src/resource.rs:244:15 [INFO] [stdout] | [INFO] [stdout] 241 | pub fn to(mut self, handler: F) -> Self [INFO] [stdout] | -- required by a bound in this associated function [INFO] [stdout] ... [INFO] [stdout] 244 | Args: FromRequest + 'static, [INFO] [stdout] | ^^^^^^^^^^^ required by this bound in `Resource::::to` [INFO] [stdout] = note: this error originates in the attribute macro `post` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `ChatType: serde::Serialize` is not satisfied [INFO] [stdout] --> src/server.rs:101:40 [INFO] [stdout] | [INFO] [stdout] 101 | self.send_message("main", &json!({ [INFO] [stdout] | ________________________________________^ [INFO] [stdout] 102 | | "room": room, [INFO] [stdout] 103 | | "value": vec![format!("Someone disconnect!")], [INFO] [stdout] 104 | | "chat_type": session::ChatType::DISCONNECT [INFO] [stdout] 105 | | }).to_string(), 0); [INFO] [stdout] | | ^ [INFO] [stdout] | | | [INFO] [stdout] | |______________unsatisfied trait bound [INFO] [stdout] | required by a bound introduced by this call [INFO] [stdout] | [INFO] [stdout] help: the trait `serde::Serialize` is not implemented for `ChatType` [INFO] [stdout] --> src/session.rs:29:1 [INFO] [stdout] | [INFO] [stdout] 29 | pub enum ChatType { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] = help: the following other types implement trait `serde::Serialize`: [INFO] [stdout] &'a T [INFO] [stdout] &'a mut T [INFO] [stdout] () [INFO] [stdout] (T0, T1) [INFO] [stdout] (T0, T1, T2) [INFO] [stdout] (T0, T1, T2, T3) [INFO] [stdout] (T0, T1, T2, T3, T4) [INFO] [stdout] (T0, T1, T2, T3, T4, T5) [INFO] [stdout] and 134 others [INFO] [stdout] = note: required for `&ChatType` to implement `serde::Serialize` [INFO] [stdout] note: required by a bound in `to_value` [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/serde_json-1.0.116/src/value/mod.rs:964:8 [INFO] [stdout] | [INFO] [stdout] 962 | pub fn to_value(value: T) -> Result [INFO] [stdout] | -------- required by a bound in this function [INFO] [stdout] 963 | where [INFO] [stdout] 964 | T: Serialize, [INFO] [stdout] | ^^^^^^^^^ required by this bound in `to_value` [INFO] [stdout] = note: this error originates in the macro `json_internal` which comes from the expansion of the macro `json` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `for<'de> Uuid: serde::Deserialize<'de>` is not satisfied [INFO] [stdout] --> src/routes.rs:56:1 [INFO] [stdout] | [INFO] [stdout] 56 | #[get("/users/{user_id}")] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `for<'de> serde::Deserialize<'de>` is not implemented for `Uuid` [INFO] [stdout] | [INFO] [stdout] = help: the following other types implement trait `serde::Deserialize<'de>`: [INFO] [stdout] &'a [u8] [INFO] [stdout] &'a std::path::Path [INFO] [stdout] &'a str [INFO] [stdout] () [INFO] [stdout] (T0, T1) [INFO] [stdout] (T0, T1, T2) [INFO] [stdout] (T0, T1, T2, T3) [INFO] [stdout] (T0, T1, T2, T3, T4) [INFO] [stdout] and 143 others [INFO] [stdout] = note: required for `Uuid` to implement `DeserializeOwned` [INFO] [stdout] = note: required for `actix_web::web::Path` to implement `FromRequest` [INFO] [stdout] = note: 1 redundant requirement hidden [INFO] [stdout] = note: required for `(actix_web::web::Data<{type error}>, actix_web::web::Path)` to implement `FromRequest` [INFO] [stdout] note: required by a bound in `Resource::::to` [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/actix-web-4.5.1/src/resource.rs:244:15 [INFO] [stdout] | [INFO] [stdout] 241 | pub fn to(mut self, handler: F) -> Self [INFO] [stdout] | -- required by a bound in this associated function [INFO] [stdout] ... [INFO] [stdout] 244 | Args: FromRequest + 'static, [INFO] [stdout] | ^^^^^^^^^^^ required by this bound in `Resource::::to` [INFO] [stdout] = note: this error originates in the attribute macro `get` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `ChatType: serde::Serialize` is not satisfied [INFO] [stdout] --> src/server.rs:136:39 [INFO] [stdout] | [INFO] [stdout] 136 | self.send_message(&room, &json!({ [INFO] [stdout] | _______________________________________^ [INFO] [stdout] 137 | | "room": room, [INFO] [stdout] 138 | | "value": vec![format!("Someone disconnect!")], [INFO] [stdout] 139 | | "chat_type": session::ChatType::DISCONNECT [INFO] [stdout] 140 | | }).to_string(), 0); [INFO] [stdout] | | ^ [INFO] [stdout] | | | [INFO] [stdout] | |______________unsatisfied trait bound [INFO] [stdout] | required by a bound introduced by this call [INFO] [stdout] | [INFO] [stdout] help: the trait `serde::Serialize` is not implemented for `ChatType` [INFO] [stdout] --> src/session.rs:29:1 [INFO] [stdout] | [INFO] [stdout] 29 | pub enum ChatType { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] = help: the following other types implement trait `serde::Serialize`: [INFO] [stdout] &'a T [INFO] [stdout] &'a mut T [INFO] [stdout] () [INFO] [stdout] (T0, T1) [INFO] [stdout] (T0, T1, T2) [INFO] [stdout] (T0, T1, T2, T3) [INFO] [stdout] (T0, T1, T2, T3, T4) [INFO] [stdout] (T0, T1, T2, T3, T4, T5) [INFO] [stdout] and 134 others [INFO] [stdout] = note: required for `&ChatType` to implement `serde::Serialize` [INFO] [stdout] note: required by a bound in `to_value` [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/serde_json-1.0.116/src/value/mod.rs:964:8 [INFO] [stdout] | [INFO] [stdout] 962 | pub fn to_value(value: T) -> Result [INFO] [stdout] | -------- required by a bound in this function [INFO] [stdout] 963 | where [INFO] [stdout] 964 | T: Serialize, [INFO] [stdout] | ^^^^^^^^^ required by this bound in `to_value` [INFO] [stdout] = note: this error originates in the macro `json_internal` which comes from the expansion of the macro `json` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `for<'de> Uuid: serde::Deserialize<'de>` is not satisfied [INFO] [stdout] --> src/routes.rs:81:1 [INFO] [stdout] | [INFO] [stdout] 81 | #[get("/conversations/{uid}")] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `for<'de> serde::Deserialize<'de>` is not implemented for `Uuid` [INFO] [stdout] | [INFO] [stdout] = help: the following other types implement trait `serde::Deserialize<'de>`: [INFO] [stdout] &'a [u8] [INFO] [stdout] &'a std::path::Path [INFO] [stdout] &'a str [INFO] [stdout] () [INFO] [stdout] (T0, T1) [INFO] [stdout] (T0, T1, T2) [INFO] [stdout] (T0, T1, T2, T3) [INFO] [stdout] (T0, T1, T2, T3, T4) [INFO] [stdout] and 143 others [INFO] [stdout] = note: required for `Uuid` to implement `DeserializeOwned` [INFO] [stdout] = note: required for `actix_web::web::Path` to implement `FromRequest` [INFO] [stdout] = note: 1 redundant requirement hidden [INFO] [stdout] = note: required for `(actix_web::web::Data<{type error}>, actix_web::web::Path)` to implement `FromRequest` [INFO] [stdout] note: required by a bound in `Resource::::to` [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/actix-web-4.5.1/src/resource.rs:244:15 [INFO] [stdout] | [INFO] [stdout] 241 | pub fn to(mut self, handler: F) -> Self [INFO] [stdout] | -- required by a bound in this associated function [INFO] [stdout] ... [INFO] [stdout] 244 | Args: FromRequest + 'static, [INFO] [stdout] | ^^^^^^^^^^^ required by this bound in `Resource::::to` [INFO] [stdout] = note: this error originates in the attribute macro `get` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0308]: mismatched types [INFO] [stdout] --> src/server.rs:142:9 [INFO] [stdout] | [INFO] [stdout] 127 | fn handle(&mut self, msg: Join, _: &mut Self::Context) -> Self::Result { [INFO] [stdout] | ------------ expected `()` because of return type [INFO] [stdout] ... [INFO] [stdout] 142 | / self.rooms [INFO] [stdout] 143 | | .entry(name.clone()) [INFO] [stdout] 144 | | .or_insert_with(HashSet::new) [INFO] [stdout] 145 | | .insert(id) [INFO] [stdout] | | ^- help: consider using a semicolon here: `;` [INFO] [stdout] | |_______________________| [INFO] [stdout] | expected `()`, found `bool` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `ChatMessage: serde::Deserialize<'_>` is not satisfied [INFO] [stdout] --> src/session.rs:95:56 [INFO] [stdout] | [INFO] [stdout] 95 | let data_json = serde_json::from_str::(&text.to_string()); [INFO] [stdout] | ^^^^^^^^^^^ unsatisfied trait bound [INFO] [stdout] | [INFO] [stdout] help: the trait `serde::Deserialize<'_>` is not implemented for `ChatMessage` [INFO] [stdout] --> src/session.rs:37:1 [INFO] [stdout] | [INFO] [stdout] 37 | struct ChatMessage { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] = help: the following other types implement trait `serde::Deserialize<'de>`: [INFO] [stdout] &'a [u8] [INFO] [stdout] &'a std::path::Path [INFO] [stdout] &'a str [INFO] [stdout] () [INFO] [stdout] (T0, T1) [INFO] [stdout] (T0, T1, T2) [INFO] [stdout] (T0, T1, T2, T3) [INFO] [stdout] (T0, T1, T2, T3, T4) [INFO] [stdout] and 143 others [INFO] [stdout] note: required by a bound in `serde_json::from_str` [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/serde_json-1.0.116/src/de.rs:2676:8 [INFO] [stdout] | [INFO] [stdout] 2674 | pub fn from_str<'a, T>(s: &'a str) -> Result [INFO] [stdout] | -------- required by a bound in this function [INFO] [stdout] 2675 | where [INFO] [stdout] 2676 | T: de::Deserialize<'a>, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ required by this bound in `from_str` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `ChatMessage: serde::Serialize` is not satisfied [INFO] [stdout] --> src/session.rs:111:57 [INFO] [stdout] | [INFO] [stdout] 111 | let msg = serde_json::to_string(&chat_msg).unwrap(); [INFO] [stdout] | --------------------- ^^^^^^^^^ unsatisfied trait bound [INFO] [stdout] | | [INFO] [stdout] | required by a bound introduced by this call [INFO] [stdout] | [INFO] [stdout] help: the trait `serde::Serialize` is not implemented for `ChatMessage` [INFO] [stdout] --> src/session.rs:37:1 [INFO] [stdout] | [INFO] [stdout] 37 | struct ChatMessage { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] = help: the following other types implement trait `serde::Serialize`: [INFO] [stdout] &'a T [INFO] [stdout] &'a mut T [INFO] [stdout] () [INFO] [stdout] (T0, T1) [INFO] [stdout] (T0, T1, T2) [INFO] [stdout] (T0, T1, T2, T3) [INFO] [stdout] (T0, T1, T2, T3, T4) [INFO] [stdout] (T0, T1, T2, T3, T4, T5) [INFO] [stdout] and 134 others [INFO] [stdout] note: required by a bound in `serde_json::to_string` [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/serde_json-1.0.116/src/ser.rs:2209:17 [INFO] [stdout] | [INFO] [stdout] 2207 | pub fn to_string(value: &T) -> Result [INFO] [stdout] | --------- required by a bound in this function [INFO] [stdout] 2208 | where [INFO] [stdout] 2209 | T: ?Sized + Serialize, [INFO] [stdout] | ^^^^^^^^^ required by this bound in `to_string` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `ChatMessage: serde::Serialize` is not satisfied [INFO] [stdout] --> src/session.rs:134:57 [INFO] [stdout] | [INFO] [stdout] 134 | let msg = serde_json::to_string(&chat_msg).unwrap(); [INFO] [stdout] | --------------------- ^^^^^^^^^ unsatisfied trait bound [INFO] [stdout] | | [INFO] [stdout] | required by a bound introduced by this call [INFO] [stdout] | [INFO] [stdout] help: the trait `serde::Serialize` is not implemented for `ChatMessage` [INFO] [stdout] --> src/session.rs:37:1 [INFO] [stdout] | [INFO] [stdout] 37 | struct ChatMessage { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] = help: the following other types implement trait `serde::Serialize`: [INFO] [stdout] &'a T [INFO] [stdout] &'a mut T [INFO] [stdout] () [INFO] [stdout] (T0, T1) [INFO] [stdout] (T0, T1, T2) [INFO] [stdout] (T0, T1, T2, T3) [INFO] [stdout] (T0, T1, T2, T3, T4) [INFO] [stdout] (T0, T1, T2, T3, T4, T5) [INFO] [stdout] and 134 others [INFO] [stdout] note: required by a bound in `serde_json::to_string` [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/serde_json-1.0.116/src/ser.rs:2209:17 [INFO] [stdout] | [INFO] [stdout] 2207 | pub fn to_string(value: &T) -> Result [INFO] [stdout] | --------- required by a bound in this function [INFO] [stdout] 2208 | where [INFO] [stdout] 2209 | T: ?Sized + Serialize, [INFO] [stdout] | ^^^^^^^^^ required by this bound in `to_string` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `ChatType: serde::Serialize` is not satisfied [INFO] [stdout] --> src/server.rs:82:36 [INFO] [stdout] | [INFO] [stdout] 82 | self.send_message("main", &json!({ [INFO] [stdout] | ____________________________________^ [INFO] [stdout] 83 | | "value": vec![format!("{}", id)], [INFO] [stdout] 84 | | "chat_type": session::ChatType::CONNECT [INFO] [stdout] 85 | | }).to_string(), 0); [INFO] [stdout] | | ^ [INFO] [stdout] | | | [INFO] [stdout] | |__________unsatisfied trait bound [INFO] [stdout] | required by a bound introduced by this call [INFO] [stdout] | [INFO] [stdout] help: the trait `serde::Serialize` is not implemented for `ChatType` [INFO] [stdout] --> src/session.rs:29:1 [INFO] [stdout] | [INFO] [stdout] 29 | pub enum ChatType { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] = help: the following other types implement trait `serde::Serialize`: [INFO] [stdout] &'a T [INFO] [stdout] &'a mut T [INFO] [stdout] () [INFO] [stdout] (T0, T1) [INFO] [stdout] (T0, T1, T2) [INFO] [stdout] (T0, T1, T2, T3) [INFO] [stdout] (T0, T1, T2, T3, T4) [INFO] [stdout] (T0, T1, T2, T3, T4, T5) [INFO] [stdout] and 134 others [INFO] [stdout] = note: required for `&ChatType` to implement `serde::Serialize` [INFO] [stdout] note: required by a bound in `to_value` [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/serde_json-1.0.116/src/value/mod.rs:964:8 [INFO] [stdout] | [INFO] [stdout] 962 | pub fn to_value(value: T) -> Result [INFO] [stdout] | -------- required by a bound in this function [INFO] [stdout] 963 | where [INFO] [stdout] 964 | T: Serialize, [INFO] [stdout] | ^^^^^^^^^ required by this bound in `to_value` [INFO] [stdout] = note: this error originates in the macro `json_internal` which comes from the expansion of the macro `json` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `ChatType: serde::Serialize` is not satisfied [INFO] [stdout] --> src/server.rs:101:40 [INFO] [stdout] | [INFO] [stdout] 101 | self.send_message("main", &json!({ [INFO] [stdout] | ________________________________________^ [INFO] [stdout] 102 | | "room": room, [INFO] [stdout] 103 | | "value": vec![format!("Someone disconnect!")], [INFO] [stdout] 104 | | "chat_type": session::ChatType::DISCONNECT [INFO] [stdout] 105 | | }).to_string(), 0); [INFO] [stdout] | | ^ [INFO] [stdout] | | | [INFO] [stdout] | |______________unsatisfied trait bound [INFO] [stdout] | required by a bound introduced by this call [INFO] [stdout] | [INFO] [stdout] help: the trait `serde::Serialize` is not implemented for `ChatType` [INFO] [stdout] --> src/session.rs:29:1 [INFO] [stdout] | [INFO] [stdout] 29 | pub enum ChatType { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] = help: the following other types implement trait `serde::Serialize`: [INFO] [stdout] &'a T [INFO] [stdout] &'a mut T [INFO] [stdout] () [INFO] [stdout] (T0, T1) [INFO] [stdout] (T0, T1, T2) [INFO] [stdout] (T0, T1, T2, T3) [INFO] [stdout] (T0, T1, T2, T3, T4) [INFO] [stdout] (T0, T1, T2, T3, T4, T5) [INFO] [stdout] and 134 others [INFO] [stdout] = note: required for `&ChatType` to implement `serde::Serialize` [INFO] [stdout] note: required by a bound in `to_value` [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/serde_json-1.0.116/src/value/mod.rs:964:8 [INFO] [stdout] | [INFO] [stdout] 962 | pub fn to_value(value: T) -> Result [INFO] [stdout] | -------- required by a bound in this function [INFO] [stdout] 963 | where [INFO] [stdout] 964 | T: Serialize, [INFO] [stdout] | ^^^^^^^^^ required by this bound in `to_value` [INFO] [stdout] = note: this error originates in the macro `json_internal` which comes from the expansion of the macro `json` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `ChatType: serde::Serialize` is not satisfied [INFO] [stdout] --> src/server.rs:136:39 [INFO] [stdout] | [INFO] [stdout] 136 | self.send_message(&room, &json!({ [INFO] [stdout] | _______________________________________^ [INFO] [stdout] 137 | | "room": room, [INFO] [stdout] 138 | | "value": vec![format!("Someone disconnect!")], [INFO] [stdout] 139 | | "chat_type": session::ChatType::DISCONNECT [INFO] [stdout] 140 | | }).to_string(), 0); [INFO] [stdout] | | ^ [INFO] [stdout] | | | [INFO] [stdout] | |______________unsatisfied trait bound [INFO] [stdout] | required by a bound introduced by this call [INFO] [stdout] | [INFO] [stdout] help: the trait `serde::Serialize` is not implemented for `ChatType` [INFO] [stdout] --> src/session.rs:29:1 [INFO] [stdout] | [INFO] [stdout] 29 | pub enum ChatType { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] = help: the following other types implement trait `serde::Serialize`: [INFO] [stdout] &'a T [INFO] [stdout] &'a mut T [INFO] [stdout] () [INFO] [stdout] (T0, T1) [INFO] [stdout] (T0, T1, T2) [INFO] [stdout] (T0, T1, T2, T3) [INFO] [stdout] (T0, T1, T2, T3, T4) [INFO] [stdout] (T0, T1, T2, T3, T4, T5) [INFO] [stdout] and 134 others [INFO] [stdout] = note: required for `&ChatType` to implement `serde::Serialize` [INFO] [stdout] note: required by a bound in `to_value` [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/serde_json-1.0.116/src/value/mod.rs:964:8 [INFO] [stdout] | [INFO] [stdout] 962 | pub fn to_value(value: T) -> Result [INFO] [stdout] | -------- required by a bound in this function [INFO] [stdout] 963 | where [INFO] [stdout] 964 | T: Serialize, [INFO] [stdout] | ^^^^^^^^^ required by this bound in `to_value` [INFO] [stdout] = note: this error originates in the macro `json_internal` which comes from the expansion of the macro `json` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0308]: mismatched types [INFO] [stdout] --> src/server.rs:142:9 [INFO] [stdout] | [INFO] [stdout] 127 | fn handle(&mut self, msg: Join, _: &mut Self::Context) -> Self::Result { [INFO] [stdout] | ------------ expected `()` because of return type [INFO] [stdout] ... [INFO] [stdout] 142 | / self.rooms [INFO] [stdout] 143 | | .entry(name.clone()) [INFO] [stdout] 144 | | .or_insert_with(HashSet::new) [INFO] [stdout] 145 | | .insert(id) [INFO] [stdout] | | ^- help: consider using a semicolon here: `;` [INFO] [stdout] | |_______________________| [INFO] [stdout] | expected `()`, found `bool` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `ChatMessage: serde::Deserialize<'_>` is not satisfied [INFO] [stdout] --> src/session.rs:95:56 [INFO] [stdout] | [INFO] [stdout] 95 | let data_json = serde_json::from_str::(&text.to_string()); [INFO] [stdout] | ^^^^^^^^^^^ unsatisfied trait bound [INFO] [stdout] | [INFO] [stdout] help: the trait `serde::Deserialize<'_>` is not implemented for `ChatMessage` [INFO] [stdout] --> src/session.rs:37:1 [INFO] [stdout] | [INFO] [stdout] 37 | struct ChatMessage { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] = help: the following other types implement trait `serde::Deserialize<'de>`: [INFO] [stdout] &'a [u8] [INFO] [stdout] &'a std::path::Path [INFO] [stdout] &'a str [INFO] [stdout] () [INFO] [stdout] (T0, T1) [INFO] [stdout] (T0, T1, T2) [INFO] [stdout] (T0, T1, T2, T3) [INFO] [stdout] (T0, T1, T2, T3, T4) [INFO] [stdout] and 143 others [INFO] [stdout] note: required by a bound in `serde_json::from_str` [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/serde_json-1.0.116/src/de.rs:2676:8 [INFO] [stdout] | [INFO] [stdout] 2674 | pub fn from_str<'a, T>(s: &'a str) -> Result [INFO] [stdout] | -------- required by a bound in this function [INFO] [stdout] 2675 | where [INFO] [stdout] 2676 | T: de::Deserialize<'a>, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ required by this bound in `from_str` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `ChatMessage: serde::Serialize` is not satisfied [INFO] [stdout] --> src/session.rs:111:57 [INFO] [stdout] | [INFO] [stdout] 111 | let msg = serde_json::to_string(&chat_msg).unwrap(); [INFO] [stdout] | --------------------- ^^^^^^^^^ unsatisfied trait bound [INFO] [stdout] | | [INFO] [stdout] | required by a bound introduced by this call [INFO] [stdout] | [INFO] [stdout] help: the trait `serde::Serialize` is not implemented for `ChatMessage` [INFO] [stdout] --> src/session.rs:37:1 [INFO] [stdout] | [INFO] [stdout] 37 | struct ChatMessage { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] = help: the following other types implement trait `serde::Serialize`: [INFO] [stdout] &'a T [INFO] [stdout] &'a mut T [INFO] [stdout] () [INFO] [stdout] (T0, T1) [INFO] [stdout] (T0, T1, T2) [INFO] [stdout] (T0, T1, T2, T3) [INFO] [stdout] (T0, T1, T2, T3, T4) [INFO] [stdout] (T0, T1, T2, T3, T4, T5) [INFO] [stdout] and 134 others [INFO] [stdout] note: required by a bound in `serde_json::to_string` [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/serde_json-1.0.116/src/ser.rs:2209:17 [INFO] [stdout] | [INFO] [stdout] 2207 | pub fn to_string(value: &T) -> Result [INFO] [stdout] | --------- required by a bound in this function [INFO] [stdout] 2208 | where [INFO] [stdout] 2209 | T: ?Sized + Serialize, [INFO] [stdout] | ^^^^^^^^^ required by this bound in `to_string` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `ChatMessage: serde::Serialize` is not satisfied [INFO] [stdout] --> src/session.rs:134:57 [INFO] [stdout] | [INFO] [stdout] 134 | let msg = serde_json::to_string(&chat_msg).unwrap(); [INFO] [stdout] | --------------------- ^^^^^^^^^ unsatisfied trait bound [INFO] [stdout] | | [INFO] [stdout] | required by a bound introduced by this call [INFO] [stdout] | [INFO] [stdout] help: the trait `serde::Serialize` is not implemented for `ChatMessage` [INFO] [stdout] --> src/session.rs:37:1 [INFO] [stdout] | [INFO] [stdout] 37 | struct ChatMessage { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] = help: the following other types implement trait `serde::Serialize`: [INFO] [stdout] &'a T [INFO] [stdout] &'a mut T [INFO] [stdout] () [INFO] [stdout] (T0, T1) [INFO] [stdout] (T0, T1, T2) [INFO] [stdout] (T0, T1, T2, T3) [INFO] [stdout] (T0, T1, T2, T3, T4) [INFO] [stdout] (T0, T1, T2, T3, T4, T5) [INFO] [stdout] and 134 others [INFO] [stdout] note: required by a bound in `serde_json::to_string` [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/serde_json-1.0.116/src/ser.rs:2209:17 [INFO] [stdout] | [INFO] [stdout] 2207 | pub fn to_string(value: &T) -> Result [INFO] [stdout] | --------- required by a bound in this function [INFO] [stdout] 2208 | where [INFO] [stdout] 2209 | T: ?Sized + Serialize, [INFO] [stdout] | ^^^^^^^^^ required by this bound in `to_string` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] Some errors have detailed explanations: E0119, E0277, E0282, E0308, E0428, E0432, E0468, E0599. [INFO] [stdout] [INFO] [stdout] For more information about an error, try `rustc --explain E0119`. [INFO] [stdout] [INFO] [stderr] error: could not compile `rust-react-chat-project` (bin "rust-react-chat-project" test) due to 62 previous errors; 2 warnings emitted [INFO] [stderr] warning: build failed, waiting for other jobs to finish... [INFO] [stdout] Some errors have detailed explanations: E0119, E0277, E0282, E0308, E0428, E0432, E0468, E0599. [INFO] [stdout] [INFO] [stdout] For more information about an error, try `rustc --explain E0119`. [INFO] [stdout] [INFO] [stderr] error: could not compile `rust-react-chat-project` (bin "rust-react-chat-project") due to 62 previous errors; 2 warnings emitted [INFO] running `Command { std: "docker" "inspect" "23c2ec37a47eb07875491dee435bf3497144b47bce23a99fd42a23b5e1c33f5d", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "23c2ec37a47eb07875491dee435bf3497144b47bce23a99fd42a23b5e1c33f5d", kill_on_drop: false }` [INFO] [stdout] 23c2ec37a47eb07875491dee435bf3497144b47bce23a99fd42a23b5e1c33f5d