[INFO] fetching crate ajars_actix_web 0.8.0...
[INFO] checking ajars_actix_web-0.8.0 against master#b0696a5160711c068cb1f01b7437db7990d15750 for pr-121848
[INFO] extracting crate ajars_actix_web 0.8.0 into /workspace/builds/worker-7-tc1/source
[INFO] validating manifest of crates.io crate ajars_actix_web 0.8.0 on toolchain b0696a5160711c068cb1f01b7437db7990d15750
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+b0696a5160711c068cb1f01b7437db7990d15750" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] started tweaking crates.io crate ajars_actix_web 0.8.0
[INFO] finished tweaking crates.io crate ajars_actix_web 0.8.0
[INFO] tweaked toml for crates.io crate ajars_actix_web 0.8.0 written to /workspace/builds/worker-7-tc1/source/Cargo.toml
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+b0696a5160711c068cb1f01b7437db7990d15750" "generate-lockfile" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Updating crates.io index
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+b0696a5160711c068cb1f01b7437db7990d15750" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]  Downloading crates ...
[INFO] [stderr]   Downloaded local-waker v0.1.4
[INFO] [stderr]   Downloaded digest v0.10.7
[INFO] [stderr]   Downloaded block-buffer v0.10.4
[INFO] [stderr]   Downloaded language-tags v0.3.2
[INFO] [stderr]   Downloaded local-channel v0.1.5
[INFO] [stderr]   Downloaded ajars_core v0.8.0
[INFO] [stderr]   Downloaded sha1 v0.10.6
[INFO] [stderr]   Downloaded crypto-common v0.1.6
[INFO] [stderr]   Downloaded actix-utils v3.0.1
[INFO] [stderr]   Downloaded actix-codec v0.5.2
[INFO] [stderr]   Downloaded actix-router v0.5.2
[INFO] [stderr]   Downloaded actix-server v2.3.0
[INFO] [stderr]   Downloaded actix-http v3.6.0
[INFO] [stderr]   Downloaded actix-service v2.0.2
[INFO] [stderr]   Downloaded actix-web v4.5.1
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc1/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:2788e3201cd34a07e3172128adcd8b3090168a8e3bcc40d7c032b9dda1df7d1c" "/opt/rustwide/cargo-home/bin/cargo" "+b0696a5160711c068cb1f01b7437db7990d15750" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] fc5d18988e1711b52e94f4377212f8cb6a4ec766a667e2d00ae066b4c5194f82
[INFO] running `Command { std: "docker" "start" "-a" "fc5d18988e1711b52e94f4377212f8cb6a4ec766a667e2d00ae066b4c5194f82", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "fc5d18988e1711b52e94f4377212f8cb6a4ec766a667e2d00ae066b4c5194f82", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "fc5d18988e1711b52e94f4377212f8cb6a4ec766a667e2d00ae066b4c5194f82", kill_on_drop: false }`
[INFO] [stdout] fc5d18988e1711b52e94f4377212f8cb6a4ec766a667e2d00ae066b4c5194f82
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc1/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:2788e3201cd34a07e3172128adcd8b3090168a8e3bcc40d7c032b9dda1df7d1c" "/opt/rustwide/cargo-home/bin/cargo" "+b0696a5160711c068cb1f01b7437db7990d15750" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 1e88751eb0cb895bbb9fc9ead224f2035b0b19842f1734941244b9e3a5ac071e
[INFO] running `Command { std: "docker" "start" "-a" "1e88751eb0cb895bbb9fc9ead224f2035b0b19842f1734941244b9e3a5ac071e", kill_on_drop: false }`
[INFO] [stderr]    Compiling libc v0.2.153
[INFO] [stderr]    Compiling parking_lot_core v0.9.9
[INFO] [stderr]    Compiling generic-array v0.14.7
[INFO] [stderr]    Compiling serde v1.0.197
[INFO] [stderr]    Compiling syn v2.0.52
[INFO] [stderr]    Compiling syn v1.0.109
[INFO] [stderr]     Checking local-waker v0.1.4
[INFO] [stderr]    Compiling ahash v0.8.11
[INFO] [stderr]     Checking actix-utils v3.0.1
[INFO] [stderr]     Checking actix-service v2.0.2
[INFO] [stderr]     Checking unicode-normalization v0.1.23
[INFO] [stderr]     Checking unicode-bidi v0.3.15
[INFO] [stderr]     Checking bitflags v2.4.2
[INFO] [stderr]     Checking local-channel v0.1.5
[INFO] [stderr]     Checking base64 v0.21.7
[INFO] [stderr]     Checking httpdate v1.0.3
[INFO] [stderr]     Checking idna v0.5.0
[INFO] [stderr]     Checking language-tags v0.3.2
[INFO] [stderr]     Checking block-buffer v0.10.4
[INFO] [stderr]     Checking crypto-common v0.1.6
[INFO] [stderr]     Checking time v0.3.34
[INFO] [stderr]     Checking digest v0.10.7
[INFO] [stderr]     Checking sha1 v0.10.6
[INFO] [stderr]     Checking signal-hook-registry v1.4.1
[INFO] [stderr]     Checking socket2 v0.5.6
[INFO] [stderr]     Checking parking_lot v0.12.1
[INFO] [stderr]     Checking mio v0.8.11
[INFO] [stderr]     Checking getrandom v0.2.12
[INFO] [stderr]     Checking url v2.5.0
[INFO] [stderr]     Checking rand_core v0.6.4
[INFO] [stderr]     Checking tokio v1.36.0
[INFO] [stderr]     Checking rand_chacha v0.3.1
[INFO] [stderr]     Checking rand v0.8.5
[INFO] [stderr]    Compiling derive_more v0.99.17
[INFO] [stderr]    Compiling actix-macros v0.2.4
[INFO] [stderr]    Compiling futures-macro v0.3.30
[INFO] [stderr]     Checking serde_json v1.0.114
[INFO] [stderr]     Checking serde_urlencoded v0.7.1
[INFO] [stderr]     Checking actix-router v0.5.2
[INFO] [stderr]     Checking ajars_core v0.8.0
[INFO] [stderr]     Checking futures-util v0.3.30
[INFO] [stderr]     Checking tokio-util v0.7.10
[INFO] [stderr]     Checking actix-rt v2.9.0
[INFO] [stderr]     Checking actix-codec v0.5.2
[INFO] [stderr]     Checking actix-http v3.6.0
[INFO] [stderr]     Checking actix-server v2.3.0
[INFO] [stderr]     Checking actix-web v4.5.1
[INFO] [stderr]     Checking ajars_actix_web v0.8.0 (/opt/rustwide/workdir)
[INFO] [stdout] error: cannot find derive macro `Serialize` in this scope
[INFO] [stdout]   --> src/lib.rs:81:14
[INFO] [stdout]    |
[INFO] [stdout] 81 |     #[derive(Serialize, Deserialize, Debug)]
[INFO] [stdout]    |              ^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout] note: `Serialize` is imported here, but it is only a trait, without a derive macro
[INFO] [stdout]   --> src/lib.rs:79:30
[INFO] [stdout]    |
[INFO] [stdout] 79 |     use serde::{Deserialize, Serialize};
[INFO] [stdout]    |                              ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: cannot find derive macro `Deserialize` in this scope
[INFO] [stdout]   --> src/lib.rs:81:25
[INFO] [stdout]    |
[INFO] [stdout] 81 |     #[derive(Serialize, Deserialize, Debug)]
[INFO] [stdout]    |                         ^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout] note: `Deserialize` is imported here, but it is only a trait, without a derive macro
[INFO] [stdout]   --> src/lib.rs:79:17
[INFO] [stdout]    |
[INFO] [stdout] 79 |     use serde::{Deserialize, Serialize};
[INFO] [stdout]    |                 ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: cannot find derive macro `Serialize` in this scope
[INFO] [stdout]   --> src/lib.rs:86:14
[INFO] [stdout]    |
[INFO] [stdout] 86 |     #[derive(Serialize, Deserialize, Debug)]
[INFO] [stdout]    |              ^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout] note: `Serialize` is imported here, but it is only a trait, without a derive macro
[INFO] [stdout]   --> src/lib.rs:79:30
[INFO] [stdout]    |
[INFO] [stdout] 79 |     use serde::{Deserialize, Serialize};
[INFO] [stdout]    |                              ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: cannot find derive macro `Deserialize` in this scope
[INFO] [stdout]   --> src/lib.rs:86:25
[INFO] [stdout]    |
[INFO] [stdout] 86 |     #[derive(Serialize, Deserialize, Debug)]
[INFO] [stdout]    |                         ^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout] note: `Deserialize` is imported here, but it is only a trait, without a derive macro
[INFO] [stdout]   --> src/lib.rs:79:17
[INFO] [stdout]    |
[INFO] [stdout] 79 |     use serde::{Deserialize, Serialize};
[INFO] [stdout]    |                 ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: the function or associated item `delete` exists for struct `RestFluent<PingRequest, PingResponse>`, but its trait bounds were not satisfied
[INFO] [stdout]    --> src/lib.rs:110:54
[INFO] [stdout]     |
[INFO] [stdout] 82  |     pub struct PingRequest {
[INFO] [stdout]     |     ---------------------- doesn't satisfy `PingRequest: DeserializeOwned`, `PingRequest: serde::Deserialize<'de>` or `PingRequest: serde::Serialize`
[INFO] [stdout] ...
[INFO] [stdout] 87  |     pub struct PingResponse {
[INFO] [stdout]     |     ----------------------- doesn't satisfy `PingResponse: DeserializeOwned`, `PingResponse: serde::Deserialize<'de>` or `PingResponse: serde::Serialize`
[INFO] [stdout] ...
[INFO] [stdout] 110 |             RestFluent::<PingRequest, PingResponse>::delete(format!("/api/something/{}", rand::random::<usize>()));
[INFO] [stdout]     |                                                      ^^^^^^ function or associated item cannot be called on `RestFluent<PingRequest, PingResponse>` due to unsatisfied trait bounds
[INFO] [stdout]     |
[INFO] [stdout] note: if you're trying to build a new `RestFluent<PingRequest, PingResponse>` consider using one of the following associated functions:
[INFO] [stdout]       RestFluent::<I, O>::new
[INFO] [stdout]       RestFluent::<I, O>::delete
[INFO] [stdout]       RestFluent::<I, O>::get
[INFO] [stdout]       RestFluent::<I, O>::post
[INFO] [stdout]       RestFluent::<I, O>::put
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-6f17d22bba15001f/ajars_core-0.8.0/src/lib.rs:91:5
[INFO] [stdout]     |
[INFO] [stdout] 91  |     pub fn new<P: Into<String>>(method: HttpMethod, path: P) -> Self {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 95  |     pub fn delete<P: Into<String>>(path: P) -> Self {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 99  |     pub fn get<P: Into<String>>(path: P) -> Self {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 103 |     pub fn post<P: Into<String>>(path: P) -> Self {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 107 |     pub fn put<P: Into<String>>(path: P) -> Self {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: the following trait bounds were not satisfied:
[INFO] [stdout]             `PingRequest: serde::Serialize`
[INFO] [stdout]             `PingRequest: DeserializeOwned`
[INFO] [stdout]             `PingRequest: serde::Deserialize<'de>`
[INFO] [stdout]             which is required by `PingRequest: DeserializeOwned`
[INFO] [stdout]             `PingResponse: serde::Serialize`
[INFO] [stdout]             `PingResponse: DeserializeOwned`
[INFO] [stdout]             `PingResponse: serde::Deserialize<'de>`
[INFO] [stdout]             which is required by `PingResponse: DeserializeOwned`
[INFO] [stdout] note: the traits `DeserializeOwned` and `serde::Serialize` must be implemented
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-6f17d22bba15001f/serde-1.0.197/src/de/mod.rs:607:1
[INFO] [stdout]     |
[INFO] [stdout] 607 | pub trait DeserializeOwned: for<'de> Deserialize<'de> {}
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-6f17d22bba15001f/serde-1.0.197/src/ser/mod.rs:218:1
[INFO] [stdout]     |
[INFO] [stdout] 218 | pub trait Serialize {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `PingRequest: serde::Serialize` is not satisfied
[INFO] [stdout]    --> src/lib.rs:110:13
[INFO] [stdout]     |
[INFO] [stdout] 110 |             RestFluent::<PingRequest, PingResponse>::delete(format!("/api/something/{}", rand::random::<usize>()));
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `serde::Serialize` is not implemented for `PingRequest`
[INFO] [stdout]     |
[INFO] [stdout]     = help: the following other types implement trait `serde::Serialize`:
[INFO] [stdout]               bool
[INFO] [stdout]               char
[INFO] [stdout]               isize
[INFO] [stdout]               i8
[INFO] [stdout]               i16
[INFO] [stdout]               i32
[INFO] [stdout]               i64
[INFO] [stdout]               i128
[INFO] [stdout]             and 133 others
[INFO] [stdout] note: required by a bound in `RestFluent`
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-6f17d22bba15001f/ajars_core-0.8.0/src/lib.rs:67:26
[INFO] [stdout]     |
[INFO] [stdout] 67  | pub struct RestFluent<I: Serialize + DeserializeOwned, O: Serialize + DeserializeOwned> {
[INFO] [stdout]     |                          ^^^^^^^^^ required by this bound in `RestFluent`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `PingResponse: serde::Serialize` is not satisfied
[INFO] [stdout]    --> src/lib.rs:110:13
[INFO] [stdout]     |
[INFO] [stdout] 110 |             RestFluent::<PingRequest, PingResponse>::delete(format!("/api/something/{}", rand::random::<usize>()));
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `serde::Serialize` is not implemented for `PingResponse`
[INFO] [stdout]     |
[INFO] [stdout]     = help: the following other types implement trait `serde::Serialize`:
[INFO] [stdout]               bool
[INFO] [stdout]               char
[INFO] [stdout]               isize
[INFO] [stdout]               i8
[INFO] [stdout]               i16
[INFO] [stdout]               i32
[INFO] [stdout]               i64
[INFO] [stdout]               i128
[INFO] [stdout]             and 133 others
[INFO] [stdout] note: required by a bound in `RestFluent`
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-6f17d22bba15001f/ajars_core-0.8.0/src/lib.rs:67:59
[INFO] [stdout]     |
[INFO] [stdout] 67  | pub struct RestFluent<I: Serialize + DeserializeOwned, O: Serialize + DeserializeOwned> {
[INFO] [stdout]     |                                                           ^^^^^^^^^ required by this bound in `RestFluent`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `for<'de> PingRequest: serde::Deserialize<'de>` is not satisfied
[INFO] [stdout]    --> src/lib.rs:110:13
[INFO] [stdout]     |
[INFO] [stdout] 110 |             RestFluent::<PingRequest, PingResponse>::delete(format!("/api/something/{}", rand::random::<usize>()));
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `for<'de> serde::Deserialize<'de>` is not implemented for `PingRequest`, which is required by `PingRequest: DeserializeOwned`
[INFO] [stdout]     |
[INFO] [stdout]     = help: the following other types implement trait `serde::Deserialize<'de>`:
[INFO] [stdout]               bool
[INFO] [stdout]               char
[INFO] [stdout]               isize
[INFO] [stdout]               i8
[INFO] [stdout]               i16
[INFO] [stdout]               i32
[INFO] [stdout]               i64
[INFO] [stdout]               i128
[INFO] [stdout]             and 131 others
[INFO] [stdout]     = note: required for `PingRequest` to implement `DeserializeOwned`
[INFO] [stdout] note: required by a bound in `RestFluent`
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-6f17d22bba15001f/ajars_core-0.8.0/src/lib.rs:67:38
[INFO] [stdout]     |
[INFO] [stdout] 67  | pub struct RestFluent<I: Serialize + DeserializeOwned, O: Serialize + DeserializeOwned> {
[INFO] [stdout]     |                                      ^^^^^^^^^^^^^^^^ required by this bound in `RestFluent`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `for<'de> PingResponse: serde::Deserialize<'de>` is not satisfied
[INFO] [stdout]    --> src/lib.rs:110:13
[INFO] [stdout]     |
[INFO] [stdout] 110 |             RestFluent::<PingRequest, PingResponse>::delete(format!("/api/something/{}", rand::random::<usize>()));
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `for<'de> serde::Deserialize<'de>` is not implemented for `PingResponse`, which is required by `PingResponse: DeserializeOwned`
[INFO] [stdout]     |
[INFO] [stdout]     = help: the following other types implement trait `serde::Deserialize<'de>`:
[INFO] [stdout]               bool
[INFO] [stdout]               char
[INFO] [stdout]               isize
[INFO] [stdout]               i8
[INFO] [stdout]               i16
[INFO] [stdout]               i32
[INFO] [stdout]               i64
[INFO] [stdout]               i128
[INFO] [stdout]             and 131 others
[INFO] [stdout]     = note: required for `PingResponse` to implement `DeserializeOwned`
[INFO] [stdout] note: required by a bound in `RestFluent`
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-6f17d22bba15001f/ajars_core-0.8.0/src/lib.rs:67:71
[INFO] [stdout]     |
[INFO] [stdout] 67  | pub struct RestFluent<I: Serialize + DeserializeOwned, O: Serialize + DeserializeOwned> {
[INFO] [stdout]     |                                                                       ^^^^^^^^^^^^^^^^ required by this bound in `RestFluent`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `for<'de> PingResponse: serde::Deserialize<'de>` is not satisfied
[INFO] [stdout]    --> src/lib.rs:125:34
[INFO] [stdout]     |
[INFO] [stdout] 125 |         let resp: PingResponse = test::read_body_json(resp).await;
[INFO] [stdout]     |                                  ^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `for<'de> serde::Deserialize<'de>` is not implemented for `PingResponse`, which is required by `PingResponse: DeserializeOwned`
[INFO] [stdout]     |
[INFO] [stdout]     = help: the following other types implement trait `serde::Deserialize<'de>`:
[INFO] [stdout]               bool
[INFO] [stdout]               char
[INFO] [stdout]               isize
[INFO] [stdout]               i8
[INFO] [stdout]               i16
[INFO] [stdout]               i32
[INFO] [stdout]               i64
[INFO] [stdout]               i128
[INFO] [stdout]             and 131 others
[INFO] [stdout]     = note: required for `PingResponse` to implement `DeserializeOwned`
[INFO] [stdout] note: required by a bound in `read_body_json`
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-6f17d22bba15001f/actix-web-4.5.1/src/test/test_utils.rs:258:8
[INFO] [stdout]     |
[INFO] [stdout] 255 | pub async fn read_body_json<T, B>(res: ServiceResponse<B>) -> T
[INFO] [stdout]     |              -------------- required by a bound in this function
[INFO] [stdout] ...
[INFO] [stdout] 258 |     T: DeserializeOwned,
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^ required by this bound in `read_body_json`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: the function or associated item `get` exists for struct `RestFluent<PingRequest, PingResponse>`, but its trait bounds were not satisfied
[INFO] [stdout]    --> src/lib.rs:132:61
[INFO] [stdout]     |
[INFO] [stdout] 82  |     pub struct PingRequest {
[INFO] [stdout]     |     ---------------------- doesn't satisfy `PingRequest: DeserializeOwned`, `PingRequest: serde::Deserialize<'de>` or `PingRequest: serde::Serialize`
[INFO] [stdout] ...
[INFO] [stdout] 87  |     pub struct PingResponse {
[INFO] [stdout]     |     ----------------------- doesn't satisfy `PingResponse: DeserializeOwned`, `PingResponse: serde::Deserialize<'de>` or `PingResponse: serde::Serialize`
[INFO] [stdout] ...
[INFO] [stdout] 132 |         let rest = RestFluent::<PingRequest, PingResponse>::get(format!("/api/something/{}", rand::random::<usize>()));
[INFO] [stdout]     |                                                             ^^^ function or associated item cannot be called on `RestFluent<PingRequest, PingResponse>` due to unsatisfied trait bounds
[INFO] [stdout]     |
[INFO] [stdout] note: if you're trying to build a new `RestFluent<PingRequest, PingResponse>` consider using one of the following associated functions:
[INFO] [stdout]       RestFluent::<I, O>::new
[INFO] [stdout]       RestFluent::<I, O>::delete
[INFO] [stdout]       RestFluent::<I, O>::get
[INFO] [stdout]       RestFluent::<I, O>::post
[INFO] [stdout]       RestFluent::<I, O>::put
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-6f17d22bba15001f/ajars_core-0.8.0/src/lib.rs:91:5
[INFO] [stdout]     |
[INFO] [stdout] 91  |     pub fn new<P: Into<String>>(method: HttpMethod, path: P) -> Self {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 95  |     pub fn delete<P: Into<String>>(path: P) -> Self {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 99  |     pub fn get<P: Into<String>>(path: P) -> Self {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 103 |     pub fn post<P: Into<String>>(path: P) -> Self {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 107 |     pub fn put<P: Into<String>>(path: P) -> Self {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: the following trait bounds were not satisfied:
[INFO] [stdout]             `PingRequest: serde::Serialize`
[INFO] [stdout]             `PingRequest: DeserializeOwned`
[INFO] [stdout]             `PingRequest: serde::Deserialize<'de>`
[INFO] [stdout]             which is required by `PingRequest: DeserializeOwned`
[INFO] [stdout]             `PingResponse: serde::Serialize`
[INFO] [stdout]             `PingResponse: DeserializeOwned`
[INFO] [stdout]             `PingResponse: serde::Deserialize<'de>`
[INFO] [stdout]             which is required by `PingResponse: DeserializeOwned`
[INFO] [stdout] note: the traits `DeserializeOwned` and `serde::Serialize` must be implemented
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-6f17d22bba15001f/serde-1.0.197/src/de/mod.rs:607:1
[INFO] [stdout]     |
[INFO] [stdout] 607 | pub trait DeserializeOwned: for<'de> Deserialize<'de> {}
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-6f17d22bba15001f/serde-1.0.197/src/ser/mod.rs:218:1
[INFO] [stdout]     |
[INFO] [stdout] 218 | pub trait Serialize {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `PingRequest: serde::Serialize` is not satisfied
[INFO] [stdout]    --> src/lib.rs:132:20
[INFO] [stdout]     |
[INFO] [stdout] 132 |         let rest = RestFluent::<PingRequest, PingResponse>::get(format!("/api/something/{}", rand::random::<usize>()));
[INFO] [stdout]     |                    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `serde::Serialize` is not implemented for `PingRequest`
[INFO] [stdout]     |
[INFO] [stdout]     = help: the following other types implement trait `serde::Serialize`:
[INFO] [stdout]               bool
[INFO] [stdout]               char
[INFO] [stdout]               isize
[INFO] [stdout]               i8
[INFO] [stdout]               i16
[INFO] [stdout]               i32
[INFO] [stdout]               i64
[INFO] [stdout]               i128
[INFO] [stdout]             and 133 others
[INFO] [stdout] note: required by a bound in `RestFluent`
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-6f17d22bba15001f/ajars_core-0.8.0/src/lib.rs:67:26
[INFO] [stdout]     |
[INFO] [stdout] 67  | pub struct RestFluent<I: Serialize + DeserializeOwned, O: Serialize + DeserializeOwned> {
[INFO] [stdout]     |                          ^^^^^^^^^ required by this bound in `RestFluent`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `PingResponse: serde::Serialize` is not satisfied
[INFO] [stdout]    --> src/lib.rs:132:20
[INFO] [stdout]     |
[INFO] [stdout] 132 |         let rest = RestFluent::<PingRequest, PingResponse>::get(format!("/api/something/{}", rand::random::<usize>()));
[INFO] [stdout]     |                    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `serde::Serialize` is not implemented for `PingResponse`
[INFO] [stdout]     |
[INFO] [stdout]     = help: the following other types implement trait `serde::Serialize`:
[INFO] [stdout]               bool
[INFO] [stdout]               char
[INFO] [stdout]               isize
[INFO] [stdout]               i8
[INFO] [stdout]               i16
[INFO] [stdout]               i32
[INFO] [stdout]               i64
[INFO] [stdout]               i128
[INFO] [stdout]             and 133 others
[INFO] [stdout] note: required by a bound in `RestFluent`
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-6f17d22bba15001f/ajars_core-0.8.0/src/lib.rs:67:59
[INFO] [stdout]     |
[INFO] [stdout] 67  | pub struct RestFluent<I: Serialize + DeserializeOwned, O: Serialize + DeserializeOwned> {
[INFO] [stdout]     |                                                           ^^^^^^^^^ required by this bound in `RestFluent`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `for<'de> PingRequest: serde::Deserialize<'de>` is not satisfied
[INFO] [stdout]    --> src/lib.rs:132:20
[INFO] [stdout]     |
[INFO] [stdout] 132 |         let rest = RestFluent::<PingRequest, PingResponse>::get(format!("/api/something/{}", rand::random::<usize>()));
[INFO] [stdout]     |                    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `for<'de> serde::Deserialize<'de>` is not implemented for `PingRequest`, which is required by `PingRequest: DeserializeOwned`
[INFO] [stdout]     |
[INFO] [stdout]     = help: the following other types implement trait `serde::Deserialize<'de>`:
[INFO] [stdout]               bool
[INFO] [stdout]               char
[INFO] [stdout]               isize
[INFO] [stdout]               i8
[INFO] [stdout]               i16
[INFO] [stdout]               i32
[INFO] [stdout]               i64
[INFO] [stdout]               i128
[INFO] [stdout]             and 131 others
[INFO] [stdout]     = note: required for `PingRequest` to implement `DeserializeOwned`
[INFO] [stdout] note: required by a bound in `RestFluent`
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-6f17d22bba15001f/ajars_core-0.8.0/src/lib.rs:67:38
[INFO] [stdout]     |
[INFO] [stdout] 67  | pub struct RestFluent<I: Serialize + DeserializeOwned, O: Serialize + DeserializeOwned> {
[INFO] [stdout]     |                                      ^^^^^^^^^^^^^^^^ required by this bound in `RestFluent`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `for<'de> PingResponse: serde::Deserialize<'de>` is not satisfied
[INFO] [stdout]    --> src/lib.rs:132:20
[INFO] [stdout]     |
[INFO] [stdout] 132 |         let rest = RestFluent::<PingRequest, PingResponse>::get(format!("/api/something/{}", rand::random::<usize>()));
[INFO] [stdout]     |                    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `for<'de> serde::Deserialize<'de>` is not implemented for `PingResponse`, which is required by `PingResponse: DeserializeOwned`
[INFO] [stdout]     |
[INFO] [stdout]     = help: the following other types implement trait `serde::Deserialize<'de>`:
[INFO] [stdout]               bool
[INFO] [stdout]               char
[INFO] [stdout]               isize
[INFO] [stdout]               i8
[INFO] [stdout]               i16
[INFO] [stdout]               i32
[INFO] [stdout]               i64
[INFO] [stdout]               i128
[INFO] [stdout]             and 131 others
[INFO] [stdout]     = note: required for `PingResponse` to implement `DeserializeOwned`
[INFO] [stdout] note: required by a bound in `RestFluent`
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-6f17d22bba15001f/ajars_core-0.8.0/src/lib.rs:67:71
[INFO] [stdout]     |
[INFO] [stdout] 67  | pub struct RestFluent<I: Serialize + DeserializeOwned, O: Serialize + DeserializeOwned> {
[INFO] [stdout]     |                                                                       ^^^^^^^^^^^^^^^^ required by this bound in `RestFluent`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `for<'de> PingResponse: serde::Deserialize<'de>` is not satisfied
[INFO] [stdout]    --> src/lib.rs:147:34
[INFO] [stdout]     |
[INFO] [stdout] 147 |         let resp: PingResponse = test::read_body_json(resp).await;
[INFO] [stdout]     |                                  ^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `for<'de> serde::Deserialize<'de>` is not implemented for `PingResponse`, which is required by `PingResponse: DeserializeOwned`
[INFO] [stdout]     |
[INFO] [stdout]     = help: the following other types implement trait `serde::Deserialize<'de>`:
[INFO] [stdout]               bool
[INFO] [stdout]               char
[INFO] [stdout]               isize
[INFO] [stdout]               i8
[INFO] [stdout]               i16
[INFO] [stdout]               i32
[INFO] [stdout]               i64
[INFO] [stdout]               i128
[INFO] [stdout]             and 131 others
[INFO] [stdout]     = note: required for `PingResponse` to implement `DeserializeOwned`
[INFO] [stdout] note: required by a bound in `read_body_json`
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-6f17d22bba15001f/actix-web-4.5.1/src/test/test_utils.rs:258:8
[INFO] [stdout]     |
[INFO] [stdout] 255 | pub async fn read_body_json<T, B>(res: ServiceResponse<B>) -> T
[INFO] [stdout]     |              -------------- required by a bound in this function
[INFO] [stdout] ...
[INFO] [stdout] 258 |     T: DeserializeOwned,
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^ required by this bound in `read_body_json`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: the function or associated item `post` exists for struct `RestFluent<PingRequest, PingResponse>`, but its trait bounds were not satisfied
[INFO] [stdout]    --> src/lib.rs:154:61
[INFO] [stdout]     |
[INFO] [stdout] 82  |     pub struct PingRequest {
[INFO] [stdout]     |     ---------------------- doesn't satisfy `PingRequest: DeserializeOwned`, `PingRequest: serde::Deserialize<'de>` or `PingRequest: serde::Serialize`
[INFO] [stdout] ...
[INFO] [stdout] 87  |     pub struct PingResponse {
[INFO] [stdout]     |     ----------------------- doesn't satisfy `PingResponse: DeserializeOwned`, `PingResponse: serde::Deserialize<'de>` or `PingResponse: serde::Serialize`
[INFO] [stdout] ...
[INFO] [stdout] 154 |         let rest = RestFluent::<PingRequest, PingResponse>::post(format!("/api/something/{}", rand::random::<usize>()));
[INFO] [stdout]     |                                                             ^^^^ function or associated item cannot be called on `RestFluent<PingRequest, PingResponse>` due to unsatisfied trait bounds
[INFO] [stdout]     |
[INFO] [stdout] note: if you're trying to build a new `RestFluent<PingRequest, PingResponse>` consider using one of the following associated functions:
[INFO] [stdout]       RestFluent::<I, O>::new
[INFO] [stdout]       RestFluent::<I, O>::delete
[INFO] [stdout]       RestFluent::<I, O>::get
[INFO] [stdout]       RestFluent::<I, O>::post
[INFO] [stdout]       RestFluent::<I, O>::put
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-6f17d22bba15001f/ajars_core-0.8.0/src/lib.rs:91:5
[INFO] [stdout]     |
[INFO] [stdout] 91  |     pub fn new<P: Into<String>>(method: HttpMethod, path: P) -> Self {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 95  |     pub fn delete<P: Into<String>>(path: P) -> Self {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 99  |     pub fn get<P: Into<String>>(path: P) -> Self {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 103 |     pub fn post<P: Into<String>>(path: P) -> Self {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 107 |     pub fn put<P: Into<String>>(path: P) -> Self {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: the following trait bounds were not satisfied:
[INFO] [stdout]             `PingRequest: serde::Serialize`
[INFO] [stdout]             `PingRequest: DeserializeOwned`
[INFO] [stdout]             `PingRequest: serde::Deserialize<'de>`
[INFO] [stdout]             which is required by `PingRequest: DeserializeOwned`
[INFO] [stdout]             `PingResponse: serde::Serialize`
[INFO] [stdout]             `PingResponse: DeserializeOwned`
[INFO] [stdout]             `PingResponse: serde::Deserialize<'de>`
[INFO] [stdout]             which is required by `PingResponse: DeserializeOwned`
[INFO] [stdout] note: the traits `DeserializeOwned` and `serde::Serialize` must be implemented
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-6f17d22bba15001f/serde-1.0.197/src/de/mod.rs:607:1
[INFO] [stdout]     |
[INFO] [stdout] 607 | pub trait DeserializeOwned: for<'de> Deserialize<'de> {}
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-6f17d22bba15001f/serde-1.0.197/src/ser/mod.rs:218:1
[INFO] [stdout]     |
[INFO] [stdout] 218 | pub trait Serialize {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `PingRequest: serde::Serialize` is not satisfied
[INFO] [stdout]    --> src/lib.rs:154:20
[INFO] [stdout]     |
[INFO] [stdout] 154 |         let rest = RestFluent::<PingRequest, PingResponse>::post(format!("/api/something/{}", rand::random::<usize>()));
[INFO] [stdout]     |                    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `serde::Serialize` is not implemented for `PingRequest`
[INFO] [stdout]     |
[INFO] [stdout]     = help: the following other types implement trait `serde::Serialize`:
[INFO] [stdout]               bool
[INFO] [stdout]               char
[INFO] [stdout]               isize
[INFO] [stdout]               i8
[INFO] [stdout]               i16
[INFO] [stdout]               i32
[INFO] [stdout]               i64
[INFO] [stdout]               i128
[INFO] [stdout]             and 133 others
[INFO] [stdout] note: required by a bound in `RestFluent`
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-6f17d22bba15001f/ajars_core-0.8.0/src/lib.rs:67:26
[INFO] [stdout]     |
[INFO] [stdout] 67  | pub struct RestFluent<I: Serialize + DeserializeOwned, O: Serialize + DeserializeOwned> {
[INFO] [stdout]     |                          ^^^^^^^^^ required by this bound in `RestFluent`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `PingResponse: serde::Serialize` is not satisfied
[INFO] [stdout]    --> src/lib.rs:154:20
[INFO] [stdout]     |
[INFO] [stdout] 154 |         let rest = RestFluent::<PingRequest, PingResponse>::post(format!("/api/something/{}", rand::random::<usize>()));
[INFO] [stdout]     |                    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `serde::Serialize` is not implemented for `PingResponse`
[INFO] [stdout]     |
[INFO] [stdout]     = help: the following other types implement trait `serde::Serialize`:
[INFO] [stdout]               bool
[INFO] [stdout]               char
[INFO] [stdout]               isize
[INFO] [stdout]               i8
[INFO] [stdout]               i16
[INFO] [stdout]               i32
[INFO] [stdout]               i64
[INFO] [stdout]               i128
[INFO] [stdout]             and 133 others
[INFO] [stdout] note: required by a bound in `RestFluent`
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-6f17d22bba15001f/ajars_core-0.8.0/src/lib.rs:67:59
[INFO] [stdout]     |
[INFO] [stdout] 67  | pub struct RestFluent<I: Serialize + DeserializeOwned, O: Serialize + DeserializeOwned> {
[INFO] [stdout]     |                                                           ^^^^^^^^^ required by this bound in `RestFluent`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `for<'de> PingRequest: serde::Deserialize<'de>` is not satisfied
[INFO] [stdout]    --> src/lib.rs:154:20
[INFO] [stdout]     |
[INFO] [stdout] 154 |         let rest = RestFluent::<PingRequest, PingResponse>::post(format!("/api/something/{}", rand::random::<usize>()));
[INFO] [stdout]     |                    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `for<'de> serde::Deserialize<'de>` is not implemented for `PingRequest`, which is required by `PingRequest: DeserializeOwned`
[INFO] [stdout]     |
[INFO] [stdout]     = help: the following other types implement trait `serde::Deserialize<'de>`:
[INFO] [stdout]               bool
[INFO] [stdout]               char
[INFO] [stdout]               isize
[INFO] [stdout]               i8
[INFO] [stdout]               i16
[INFO] [stdout]               i32
[INFO] [stdout]               i64
[INFO] [stdout]               i128
[INFO] [stdout]             and 131 others
[INFO] [stdout]     = note: required for `PingRequest` to implement `DeserializeOwned`
[INFO] [stdout] note: required by a bound in `RestFluent`
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-6f17d22bba15001f/ajars_core-0.8.0/src/lib.rs:67:38
[INFO] [stdout]     |
[INFO] [stdout] 67  | pub struct RestFluent<I: Serialize + DeserializeOwned, O: Serialize + DeserializeOwned> {
[INFO] [stdout]     |                                      ^^^^^^^^^^^^^^^^ required by this bound in `RestFluent`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `for<'de> PingResponse: serde::Deserialize<'de>` is not satisfied
[INFO] [stdout]    --> src/lib.rs:154:20
[INFO] [stdout]     |
[INFO] [stdout] 154 |         let rest = RestFluent::<PingRequest, PingResponse>::post(format!("/api/something/{}", rand::random::<usize>()));
[INFO] [stdout]     |                    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `for<'de> serde::Deserialize<'de>` is not implemented for `PingResponse`, which is required by `PingResponse: DeserializeOwned`
[INFO] [stdout]     |
[INFO] [stdout]     = help: the following other types implement trait `serde::Deserialize<'de>`:
[INFO] [stdout]               bool
[INFO] [stdout]               char
[INFO] [stdout]               isize
[INFO] [stdout]               i8
[INFO] [stdout]               i16
[INFO] [stdout]               i32
[INFO] [stdout]               i64
[INFO] [stdout]               i128
[INFO] [stdout]             and 131 others
[INFO] [stdout]     = note: required for `PingResponse` to implement `DeserializeOwned`
[INFO] [stdout] note: required by a bound in `RestFluent`
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-6f17d22bba15001f/ajars_core-0.8.0/src/lib.rs:67:71
[INFO] [stdout]     |
[INFO] [stdout] 67  | pub struct RestFluent<I: Serialize + DeserializeOwned, O: Serialize + DeserializeOwned> {
[INFO] [stdout]     |                                                                       ^^^^^^^^^^^^^^^^ required by this bound in `RestFluent`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `PingRequest: serde::Serialize` is not satisfied
[INFO] [stdout]    --> src/lib.rs:160:72
[INFO] [stdout]     |
[INFO] [stdout] 160 |         let req = test::TestRequest::post().uri(rest.path()).set_json(&payload).to_request();
[INFO] [stdout]     |                                                              --------  ^^^^^^^ the trait `serde::Serialize` is not implemented for `PingRequest`, which is required by `&PingRequest: serde::Serialize`
[INFO] [stdout]     |                                                              |
[INFO] [stdout]     |                                                              required by a bound introduced by this call
[INFO] [stdout]     |
[INFO] [stdout]     = help: the following other types implement trait `serde::Serialize`:
[INFO] [stdout]               bool
[INFO] [stdout]               char
[INFO] [stdout]               isize
[INFO] [stdout]               i8
[INFO] [stdout]               i16
[INFO] [stdout]               i32
[INFO] [stdout]               i64
[INFO] [stdout]               i128
[INFO] [stdout]             and 133 others
[INFO] [stdout]     = note: required for `&PingRequest` to implement `serde::Serialize`
[INFO] [stdout] note: required by a bound in `TestRequest::set_json`
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-6f17d22bba15001f/actix-web-4.5.1/src/test/test_request.rs:201:42
[INFO] [stdout]     |
[INFO] [stdout] 201 |     pub fn set_json(mut self, data: impl Serialize) -> Self {
[INFO] [stdout]     |                                          ^^^^^^^^^ required by this bound in `TestRequest::set_json`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `for<'de> PingResponse: serde::Deserialize<'de>` is not satisfied
[INFO] [stdout]    --> src/lib.rs:169:34
[INFO] [stdout]     |
[INFO] [stdout] 169 |         let resp: PingResponse = test::read_body_json(resp).await;
[INFO] [stdout]     |                                  ^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `for<'de> serde::Deserialize<'de>` is not implemented for `PingResponse`, which is required by `PingResponse: DeserializeOwned`
[INFO] [stdout]     |
[INFO] [stdout]     = help: the following other types implement trait `serde::Deserialize<'de>`:
[INFO] [stdout]               bool
[INFO] [stdout]               char
[INFO] [stdout]               isize
[INFO] [stdout]               i8
[INFO] [stdout]               i16
[INFO] [stdout]               i32
[INFO] [stdout]               i64
[INFO] [stdout]               i128
[INFO] [stdout]             and 131 others
[INFO] [stdout]     = note: required for `PingResponse` to implement `DeserializeOwned`
[INFO] [stdout] note: required by a bound in `read_body_json`
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-6f17d22bba15001f/actix-web-4.5.1/src/test/test_utils.rs:258:8
[INFO] [stdout]     |
[INFO] [stdout] 255 | pub async fn read_body_json<T, B>(res: ServiceResponse<B>) -> T
[INFO] [stdout]     |              -------------- required by a bound in this function
[INFO] [stdout] ...
[INFO] [stdout] 258 |     T: DeserializeOwned,
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^ required by this bound in `read_body_json`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: the function or associated item `put` exists for struct `RestFluent<PingRequest, PingResponse>`, but its trait bounds were not satisfied
[INFO] [stdout]    --> src/lib.rs:176:61
[INFO] [stdout]     |
[INFO] [stdout] 82  |     pub struct PingRequest {
[INFO] [stdout]     |     ---------------------- doesn't satisfy `PingRequest: DeserializeOwned`, `PingRequest: serde::Deserialize<'de>` or `PingRequest: serde::Serialize`
[INFO] [stdout] ...
[INFO] [stdout] 87  |     pub struct PingResponse {
[INFO] [stdout]     |     ----------------------- doesn't satisfy `PingResponse: DeserializeOwned`, `PingResponse: serde::Deserialize<'de>` or `PingResponse: serde::Serialize`
[INFO] [stdout] ...
[INFO] [stdout] 176 |         let rest = RestFluent::<PingRequest, PingResponse>::put(format!("/api/something/{}", rand::random::<usize>()));
[INFO] [stdout]     |                                                             ^^^ function or associated item cannot be called on `RestFluent<PingRequest, PingResponse>` due to unsatisfied trait bounds
[INFO] [stdout]     |
[INFO] [stdout] note: if you're trying to build a new `RestFluent<PingRequest, PingResponse>` consider using one of the following associated functions:
[INFO] [stdout]       RestFluent::<I, O>::new
[INFO] [stdout]       RestFluent::<I, O>::delete
[INFO] [stdout]       RestFluent::<I, O>::get
[INFO] [stdout]       RestFluent::<I, O>::post
[INFO] [stdout]       RestFluent::<I, O>::put
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-6f17d22bba15001f/ajars_core-0.8.0/src/lib.rs:91:5
[INFO] [stdout]     |
[INFO] [stdout] 91  |     pub fn new<P: Into<String>>(method: HttpMethod, path: P) -> Self {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 95  |     pub fn delete<P: Into<String>>(path: P) -> Self {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 99  |     pub fn get<P: Into<String>>(path: P) -> Self {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 103 |     pub fn post<P: Into<String>>(path: P) -> Self {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 107 |     pub fn put<P: Into<String>>(path: P) -> Self {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: the following trait bounds were not satisfied:
[INFO] [stdout]             `PingRequest: serde::Serialize`
[INFO] [stdout]             `PingRequest: DeserializeOwned`
[INFO] [stdout]             `PingRequest: serde::Deserialize<'de>`
[INFO] [stdout]             which is required by `PingRequest: DeserializeOwned`
[INFO] [stdout]             `PingResponse: serde::Serialize`
[INFO] [stdout]             `PingResponse: DeserializeOwned`
[INFO] [stdout]             `PingResponse: serde::Deserialize<'de>`
[INFO] [stdout]             which is required by `PingResponse: DeserializeOwned`
[INFO] [stdout] note: the traits `DeserializeOwned` and `serde::Serialize` must be implemented
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-6f17d22bba15001f/serde-1.0.197/src/de/mod.rs:607:1
[INFO] [stdout]     |
[INFO] [stdout] 607 | pub trait DeserializeOwned: for<'de> Deserialize<'de> {}
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-6f17d22bba15001f/serde-1.0.197/src/ser/mod.rs:218:1
[INFO] [stdout]     |
[INFO] [stdout] 218 | pub trait Serialize {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `PingRequest: serde::Serialize` is not satisfied
[INFO] [stdout]    --> src/lib.rs:176:20
[INFO] [stdout]     |
[INFO] [stdout] 176 |         let rest = RestFluent::<PingRequest, PingResponse>::put(format!("/api/something/{}", rand::random::<usize>()));
[INFO] [stdout]     |                    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `serde::Serialize` is not implemented for `PingRequest`
[INFO] [stdout]     |
[INFO] [stdout]     = help: the following other types implement trait `serde::Serialize`:
[INFO] [stdout]               bool
[INFO] [stdout]               char
[INFO] [stdout]               isize
[INFO] [stdout]               i8
[INFO] [stdout]               i16
[INFO] [stdout]               i32
[INFO] [stdout]               i64
[INFO] [stdout]               i128
[INFO] [stdout]             and 133 others
[INFO] [stdout] note: required by a bound in `RestFluent`
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-6f17d22bba15001f/ajars_core-0.8.0/src/lib.rs:67:26
[INFO] [stdout]     |
[INFO] [stdout] 67  | pub struct RestFluent<I: Serialize + DeserializeOwned, O: Serialize + DeserializeOwned> {
[INFO] [stdout]     |                          ^^^^^^^^^ required by this bound in `RestFluent`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `PingResponse: serde::Serialize` is not satisfied
[INFO] [stdout]    --> src/lib.rs:176:20
[INFO] [stdout]     |
[INFO] [stdout] 176 |         let rest = RestFluent::<PingRequest, PingResponse>::put(format!("/api/something/{}", rand::random::<usize>()));
[INFO] [stdout]     |                    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `serde::Serialize` is not implemented for `PingResponse`
[INFO] [stdout]     |
[INFO] [stdout]     = help: the following other types implement trait `serde::Serialize`:
[INFO] [stdout]               bool
[INFO] [stdout]               char
[INFO] [stdout]               isize
[INFO] [stdout]               i8
[INFO] [stdout]               i16
[INFO] [stdout]               i32
[INFO] [stdout]               i64
[INFO] [stdout]               i128
[INFO] [stdout]             and 133 others
[INFO] [stdout] note: required by a bound in `RestFluent`
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-6f17d22bba15001f/ajars_core-0.8.0/src/lib.rs:67:59
[INFO] [stdout]     |
[INFO] [stdout] 67  | pub struct RestFluent<I: Serialize + DeserializeOwned, O: Serialize + DeserializeOwned> {
[INFO] [stdout]     |                                                           ^^^^^^^^^ required by this bound in `RestFluent`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `for<'de> PingRequest: serde::Deserialize<'de>` is not satisfied
[INFO] [stdout]    --> src/lib.rs:176:20
[INFO] [stdout]     |
[INFO] [stdout] 176 |         let rest = RestFluent::<PingRequest, PingResponse>::put(format!("/api/something/{}", rand::random::<usize>()));
[INFO] [stdout]     |                    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `for<'de> serde::Deserialize<'de>` is not implemented for `PingRequest`, which is required by `PingRequest: DeserializeOwned`
[INFO] [stdout]     |
[INFO] [stdout]     = help: the following other types implement trait `serde::Deserialize<'de>`:
[INFO] [stdout]               bool
[INFO] [stdout]               char
[INFO] [stdout]               isize
[INFO] [stdout]               i8
[INFO] [stdout]               i16
[INFO] [stdout]               i32
[INFO] [stdout]               i64
[INFO] [stdout]               i128
[INFO] [stdout]             and 131 others
[INFO] [stdout]     = note: required for `PingRequest` to implement `DeserializeOwned`
[INFO] [stdout] note: required by a bound in `RestFluent`
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-6f17d22bba15001f/ajars_core-0.8.0/src/lib.rs:67:38
[INFO] [stdout]     |
[INFO] [stdout] 67  | pub struct RestFluent<I: Serialize + DeserializeOwned, O: Serialize + DeserializeOwned> {
[INFO] [stdout]     |                                      ^^^^^^^^^^^^^^^^ required by this bound in `RestFluent`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `for<'de> PingResponse: serde::Deserialize<'de>` is not satisfied
[INFO] [stdout]    --> src/lib.rs:176:20
[INFO] [stdout]     |
[INFO] [stdout] 176 |         let rest = RestFluent::<PingRequest, PingResponse>::put(format!("/api/something/{}", rand::random::<usize>()));
[INFO] [stdout]     |                    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `for<'de> serde::Deserialize<'de>` is not implemented for `PingResponse`, which is required by `PingResponse: DeserializeOwned`
[INFO] [stdout]     |
[INFO] [stdout]     = help: the following other types implement trait `serde::Deserialize<'de>`:
[INFO] [stdout]               bool
[INFO] [stdout]               char
[INFO] [stdout]               isize
[INFO] [stdout]               i8
[INFO] [stdout]               i16
[INFO] [stdout]               i32
[INFO] [stdout]               i64
[INFO] [stdout]               i128
[INFO] [stdout]             and 131 others
[INFO] [stdout]     = note: required for `PingResponse` to implement `DeserializeOwned`
[INFO] [stdout] note: required by a bound in `RestFluent`
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-6f17d22bba15001f/ajars_core-0.8.0/src/lib.rs:67:71
[INFO] [stdout]     |
[INFO] [stdout] 67  | pub struct RestFluent<I: Serialize + DeserializeOwned, O: Serialize + DeserializeOwned> {
[INFO] [stdout]     |                                                                       ^^^^^^^^^^^^^^^^ required by this bound in `RestFluent`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `PingRequest: serde::Serialize` is not satisfied
[INFO] [stdout]    --> src/lib.rs:182:71
[INFO] [stdout]     |
[INFO] [stdout] 182 |         let req = test::TestRequest::put().uri(rest.path()).set_json(&payload).to_request();
[INFO] [stdout]     |                                                             --------  ^^^^^^^ the trait `serde::Serialize` is not implemented for `PingRequest`, which is required by `&PingRequest: serde::Serialize`
[INFO] [stdout]     |                                                             |
[INFO] [stdout]     |                                                             required by a bound introduced by this call
[INFO] [stdout]     |
[INFO] [stdout]     = help: the following other types implement trait `serde::Serialize`:
[INFO] [stdout]               bool
[INFO] [stdout]               char
[INFO] [stdout]               isize
[INFO] [stdout]               i8
[INFO] [stdout]               i16
[INFO] [stdout]               i32
[INFO] [stdout]               i64
[INFO] [stdout]               i128
[INFO] [stdout]             and 133 others
[INFO] [stdout]     = note: required for `&PingRequest` to implement `serde::Serialize`
[INFO] [stdout] note: required by a bound in `TestRequest::set_json`
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-6f17d22bba15001f/actix-web-4.5.1/src/test/test_request.rs:201:42
[INFO] [stdout]     |
[INFO] [stdout] 201 |     pub fn set_json(mut self, data: impl Serialize) -> Self {
[INFO] [stdout]     |                                          ^^^^^^^^^ required by this bound in `TestRequest::set_json`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `for<'de> PingResponse: serde::Deserialize<'de>` is not satisfied
[INFO] [stdout]    --> src/lib.rs:191:34
[INFO] [stdout]     |
[INFO] [stdout] 191 |         let resp: PingResponse = test::read_body_json(resp).await;
[INFO] [stdout]     |                                  ^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `for<'de> serde::Deserialize<'de>` is not implemented for `PingResponse`, which is required by `PingResponse: DeserializeOwned`
[INFO] [stdout]     |
[INFO] [stdout]     = help: the following other types implement trait `serde::Deserialize<'de>`:
[INFO] [stdout]               bool
[INFO] [stdout]               char
[INFO] [stdout]               isize
[INFO] [stdout]               i8
[INFO] [stdout]               i16
[INFO] [stdout]               i32
[INFO] [stdout]               i64
[INFO] [stdout]               i128
[INFO] [stdout]             and 131 others
[INFO] [stdout]     = note: required for `PingResponse` to implement `DeserializeOwned`
[INFO] [stdout] note: required by a bound in `read_body_json`
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-6f17d22bba15001f/actix-web-4.5.1/src/test/test_utils.rs:258:8
[INFO] [stdout]     |
[INFO] [stdout] 255 | pub async fn read_body_json<T, B>(res: ServiceResponse<B>) -> T
[INFO] [stdout]     |              -------------- required by a bound in this function
[INFO] [stdout] ...
[INFO] [stdout] 258 |     T: DeserializeOwned,
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^ required by this bound in `read_body_json`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: aborting due to 30 previous errors
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] Some errors have detailed explanations: E0277, E0599.
[INFO] [stdout] 
[INFO] [stdout] For more information about an error, try `rustc --explain E0277`.
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `ajars_actix_web` (lib test) due to 31 previous errors
[INFO] running `Command { std: "docker" "inspect" "1e88751eb0cb895bbb9fc9ead224f2035b0b19842f1734941244b9e3a5ac071e", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "1e88751eb0cb895bbb9fc9ead224f2035b0b19842f1734941244b9e3a5ac071e", kill_on_drop: false }`
[INFO] [stdout] 1e88751eb0cb895bbb9fc9ead224f2035b0b19842f1734941244b9e3a5ac071e
[INFO] checking ajars_actix_web-0.8.0 against try#bfe97fcae016881ad333f0ff8cea2cadb9cf136c for pr-121848
[INFO] extracting crate ajars_actix_web 0.8.0 into /workspace/builds/worker-7-tc2/source
[INFO] validating manifest of crates.io crate ajars_actix_web 0.8.0 on toolchain bfe97fcae016881ad333f0ff8cea2cadb9cf136c
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+bfe97fcae016881ad333f0ff8cea2cadb9cf136c" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] started tweaking crates.io crate ajars_actix_web 0.8.0
[INFO] finished tweaking crates.io crate ajars_actix_web 0.8.0
[INFO] tweaked toml for crates.io crate ajars_actix_web 0.8.0 written to /workspace/builds/worker-7-tc2/source/Cargo.toml
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+bfe97fcae016881ad333f0ff8cea2cadb9cf136c" "generate-lockfile" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Updating crates.io index
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+bfe97fcae016881ad333f0ff8cea2cadb9cf136c" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:2788e3201cd34a07e3172128adcd8b3090168a8e3bcc40d7c032b9dda1df7d1c" "/opt/rustwide/cargo-home/bin/cargo" "+bfe97fcae016881ad333f0ff8cea2cadb9cf136c" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] a77fa1f35055adf82a4aaa5630ebabcabf2a42d37c645a01c84ee6727e8ec65b
[INFO] running `Command { std: "docker" "start" "-a" "a77fa1f35055adf82a4aaa5630ebabcabf2a42d37c645a01c84ee6727e8ec65b", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "a77fa1f35055adf82a4aaa5630ebabcabf2a42d37c645a01c84ee6727e8ec65b", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "a77fa1f35055adf82a4aaa5630ebabcabf2a42d37c645a01c84ee6727e8ec65b", kill_on_drop: false }`
[INFO] [stdout] a77fa1f35055adf82a4aaa5630ebabcabf2a42d37c645a01c84ee6727e8ec65b
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:2788e3201cd34a07e3172128adcd8b3090168a8e3bcc40d7c032b9dda1df7d1c" "/opt/rustwide/cargo-home/bin/cargo" "+bfe97fcae016881ad333f0ff8cea2cadb9cf136c" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 3d85052ca97fd93d7d218d2aea2da0886b9524ba703afc0485e8197220d06a0c
[INFO] running `Command { std: "docker" "start" "-a" "3d85052ca97fd93d7d218d2aea2da0886b9524ba703afc0485e8197220d06a0c", kill_on_drop: false }`
[INFO] [stderr]    Compiling libc v0.2.153
[INFO] [stderr]    Compiling parking_lot_core v0.9.9
[INFO] [stderr]    Compiling generic-array v0.14.7
[INFO] [stderr]    Compiling syn v2.0.52
[INFO] [stderr]    Compiling serde v1.0.197
[INFO] [stderr]     Checking local-waker v0.1.4
[INFO] [stderr]    Compiling syn v1.0.109
[INFO] [stderr]    Compiling ahash v0.8.11
[INFO] [stderr]     Checking actix-utils v3.0.1
[INFO] [stderr]     Checking actix-service v2.0.2
[INFO] [stderr]     Checking unicode-normalization v0.1.23
[INFO] [stderr]     Checking unicode-bidi v0.3.15
[INFO] [stderr]     Checking bitflags v2.4.2
[INFO] [stderr]     Checking local-channel v0.1.5
[INFO] [stderr]     Checking base64 v0.21.7
[INFO] [stderr]     Checking language-tags v0.3.2
[INFO] [stderr]     Checking idna v0.5.0
[INFO] [stderr]     Checking block-buffer v0.10.4
[INFO] [stderr]     Checking crypto-common v0.1.6
[INFO] [stderr]     Checking httpdate v1.0.3
[INFO] [stderr]     Checking digest v0.10.7
[INFO] [stderr]     Checking time v0.3.34
[INFO] [stderr]     Checking sha1 v0.10.6
[INFO] [stderr]     Checking socket2 v0.5.6
[INFO] [stderr]     Checking signal-hook-registry v1.4.1
[INFO] [stderr]     Checking parking_lot v0.12.1
[INFO] [stderr]     Checking mio v0.8.11
[INFO] [stderr]     Checking getrandom v0.2.12
[INFO] [stderr]     Checking url v2.5.0
[INFO] [stderr]     Checking rand_core v0.6.4
[INFO] [stderr]     Checking rand_chacha v0.3.1
[INFO] [stderr]     Checking tokio v1.36.0
[INFO] [stderr]     Checking rand v0.8.5
[INFO] [stderr]    Compiling derive_more v0.99.17
[INFO] [stderr]     Checking serde_json v1.0.114
[INFO] [stderr]     Checking actix-router v0.5.2
[INFO] [stderr]     Checking serde_urlencoded v0.7.1
[INFO] [stderr]     Checking ajars_core v0.8.0
[INFO] [stderr]    Compiling actix-macros v0.2.4
[INFO] [stderr]    Compiling futures-macro v0.3.30
[INFO] [stderr]     Checking tokio-util v0.7.10
[INFO] [stderr]     Checking actix-rt v2.9.0
[INFO] [stderr]     Checking futures-util v0.3.30
[INFO] [stderr]     Checking actix-codec v0.5.2
[INFO] [stderr]     Checking actix-http v3.6.0
[INFO] [stderr]     Checking actix-server v2.3.0
[INFO] [stderr]     Checking actix-web v4.5.1
[INFO] [stderr]     Checking ajars_actix_web v0.8.0 (/opt/rustwide/workdir)
[INFO] [stdout] error: cannot find derive macro `Serialize` in this scope
[INFO] [stdout]   --> src/lib.rs:81:14
[INFO] [stdout]    |
[INFO] [stdout] 81 |     #[derive(Serialize, Deserialize, Debug)]
[INFO] [stdout]    |              ^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout] note: `Serialize` is imported here, but it is only a trait, without a derive macro
[INFO] [stdout]   --> src/lib.rs:79:30
[INFO] [stdout]    |
[INFO] [stdout] 79 |     use serde::{Deserialize, Serialize};
[INFO] [stdout]    |                              ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: cannot find derive macro `Deserialize` in this scope
[INFO] [stdout]   --> src/lib.rs:81:25
[INFO] [stdout]    |
[INFO] [stdout] 81 |     #[derive(Serialize, Deserialize, Debug)]
[INFO] [stdout]    |                         ^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout] note: `Deserialize` is imported here, but it is only a trait, without a derive macro
[INFO] [stdout]   --> src/lib.rs:79:17
[INFO] [stdout]    |
[INFO] [stdout] 79 |     use serde::{Deserialize, Serialize};
[INFO] [stdout]    |                 ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: cannot find derive macro `Serialize` in this scope
[INFO] [stdout]   --> src/lib.rs:86:14
[INFO] [stdout]    |
[INFO] [stdout] 86 |     #[derive(Serialize, Deserialize, Debug)]
[INFO] [stdout]    |              ^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout] note: `Serialize` is imported here, but it is only a trait, without a derive macro
[INFO] [stdout]   --> src/lib.rs:79:30
[INFO] [stdout]    |
[INFO] [stdout] 79 |     use serde::{Deserialize, Serialize};
[INFO] [stdout]    |                              ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: cannot find derive macro `Deserialize` in this scope
[INFO] [stdout]   --> src/lib.rs:86:25
[INFO] [stdout]    |
[INFO] [stdout] 86 |     #[derive(Serialize, Deserialize, Debug)]
[INFO] [stdout]    |                         ^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout] note: `Deserialize` is imported here, but it is only a trait, without a derive macro
[INFO] [stdout]   --> src/lib.rs:79:17
[INFO] [stdout]    |
[INFO] [stdout] 79 |     use serde::{Deserialize, Serialize};
[INFO] [stdout]    |                 ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: the function or associated item `delete` exists for struct `RestFluent<PingRequest, PingResponse>`, but its trait bounds were not satisfied
[INFO] [stdout]    --> src/lib.rs:110:54
[INFO] [stdout]     |
[INFO] [stdout] 82  |     pub struct PingRequest {
[INFO] [stdout]     |     ---------------------- doesn't satisfy `PingRequest: DeserializeOwned`, `PingRequest: serde::Deserialize<'de>` or `PingRequest: serde::Serialize`
[INFO] [stdout] ...
[INFO] [stdout] 87  |     pub struct PingResponse {
[INFO] [stdout]     |     ----------------------- doesn't satisfy `PingResponse: DeserializeOwned`, `PingResponse: serde::Deserialize<'de>` or `PingResponse: serde::Serialize`
[INFO] [stdout] ...
[INFO] [stdout] 110 |             RestFluent::<PingRequest, PingResponse>::delete(format!("/api/something/{}", rand::random::<usize>()));
[INFO] [stdout]     |                                                      ^^^^^^ function or associated item cannot be called on `RestFluent<PingRequest, PingResponse>` due to unsatisfied trait bounds
[INFO] [stdout]     |
[INFO] [stdout] note: if you're trying to build a new `RestFluent<PingRequest, PingResponse>` consider using one of the following associated functions:
[INFO] [stdout]       RestFluent::<I, O>::new
[INFO] [stdout]       RestFluent::<I, O>::delete
[INFO] [stdout]       RestFluent::<I, O>::get
[INFO] [stdout]       RestFluent::<I, O>::post
[INFO] [stdout]       RestFluent::<I, O>::put
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-6f17d22bba15001f/ajars_core-0.8.0/src/lib.rs:91:5
[INFO] [stdout]     |
[INFO] [stdout] 91  |     pub fn new<P: Into<String>>(method: HttpMethod, path: P) -> Self {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 95  |     pub fn delete<P: Into<String>>(path: P) -> Self {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 99  |     pub fn get<P: Into<String>>(path: P) -> Self {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 103 |     pub fn post<P: Into<String>>(path: P) -> Self {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 107 |     pub fn put<P: Into<String>>(path: P) -> Self {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: the following trait bounds were not satisfied:
[INFO] [stdout]             `PingRequest: serde::Serialize`
[INFO] [stdout]             `PingRequest: DeserializeOwned`
[INFO] [stdout]             `PingRequest: serde::Deserialize<'de>`
[INFO] [stdout]             which is required by `PingRequest: DeserializeOwned`
[INFO] [stdout]             `PingResponse: serde::Serialize`
[INFO] [stdout]             `PingResponse: DeserializeOwned`
[INFO] [stdout]             `PingResponse: serde::Deserialize<'de>`
[INFO] [stdout]             which is required by `PingResponse: DeserializeOwned`
[INFO] [stdout] note: the traits `DeserializeOwned` and `serde::Serialize` must be implemented
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-6f17d22bba15001f/serde-1.0.197/src/de/mod.rs:607:1
[INFO] [stdout]     |
[INFO] [stdout] 607 | pub trait DeserializeOwned: for<'de> Deserialize<'de> {}
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-6f17d22bba15001f/serde-1.0.197/src/ser/mod.rs:218:1
[INFO] [stdout]     |
[INFO] [stdout] 218 | pub trait Serialize {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `PingRequest: serde::Serialize` is not satisfied
[INFO] [stdout]    --> src/lib.rs:110:13
[INFO] [stdout]     |
[INFO] [stdout] 110 |             RestFluent::<PingRequest, PingResponse>::delete(format!("/api/something/{}", rand::random::<usize>()));
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `serde::Serialize` is not implemented for `PingRequest`
[INFO] [stdout]     |
[INFO] [stdout]     = help: the following other types implement trait `serde::Serialize`:
[INFO] [stdout]               bool
[INFO] [stdout]               char
[INFO] [stdout]               isize
[INFO] [stdout]               i8
[INFO] [stdout]               i16
[INFO] [stdout]               i32
[INFO] [stdout]               i64
[INFO] [stdout]               i128
[INFO] [stdout]             and 133 others
[INFO] [stdout] note: required by a bound in `RestFluent`
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-6f17d22bba15001f/ajars_core-0.8.0/src/lib.rs:67:26
[INFO] [stdout]     |
[INFO] [stdout] 67  | pub struct RestFluent<I: Serialize + DeserializeOwned, O: Serialize + DeserializeOwned> {
[INFO] [stdout]     |                          ^^^^^^^^^ required by this bound in `RestFluent`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `PingResponse: serde::Serialize` is not satisfied
[INFO] [stdout]    --> src/lib.rs:110:13
[INFO] [stdout]     |
[INFO] [stdout] 110 |             RestFluent::<PingRequest, PingResponse>::delete(format!("/api/something/{}", rand::random::<usize>()));
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `serde::Serialize` is not implemented for `PingResponse`
[INFO] [stdout]     |
[INFO] [stdout]     = help: the following other types implement trait `serde::Serialize`:
[INFO] [stdout]               bool
[INFO] [stdout]               char
[INFO] [stdout]               isize
[INFO] [stdout]               i8
[INFO] [stdout]               i16
[INFO] [stdout]               i32
[INFO] [stdout]               i64
[INFO] [stdout]               i128
[INFO] [stdout]             and 133 others
[INFO] [stdout] note: required by a bound in `RestFluent`
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-6f17d22bba15001f/ajars_core-0.8.0/src/lib.rs:67:59
[INFO] [stdout]     |
[INFO] [stdout] 67  | pub struct RestFluent<I: Serialize + DeserializeOwned, O: Serialize + DeserializeOwned> {
[INFO] [stdout]     |                                                           ^^^^^^^^^ required by this bound in `RestFluent`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `for<'de> PingRequest: serde::Deserialize<'de>` is not satisfied
[INFO] [stdout]    --> src/lib.rs:110:13
[INFO] [stdout]     |
[INFO] [stdout] 110 |             RestFluent::<PingRequest, PingResponse>::delete(format!("/api/something/{}", rand::random::<usize>()));
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `for<'de> serde::Deserialize<'de>` is not implemented for `PingRequest`, which is required by `PingRequest: DeserializeOwned`
[INFO] [stdout]     |
[INFO] [stdout]     = help: the following other types implement trait `serde::Deserialize<'de>`:
[INFO] [stdout]               bool
[INFO] [stdout]               char
[INFO] [stdout]               isize
[INFO] [stdout]               i8
[INFO] [stdout]               i16
[INFO] [stdout]               i32
[INFO] [stdout]               i64
[INFO] [stdout]               i128
[INFO] [stdout]             and 131 others
[INFO] [stdout]     = note: required for `PingRequest` to implement `DeserializeOwned`
[INFO] [stdout] note: required by a bound in `RestFluent`
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-6f17d22bba15001f/ajars_core-0.8.0/src/lib.rs:67:38
[INFO] [stdout]     |
[INFO] [stdout] 67  | pub struct RestFluent<I: Serialize + DeserializeOwned, O: Serialize + DeserializeOwned> {
[INFO] [stdout]     |                                      ^^^^^^^^^^^^^^^^ required by this bound in `RestFluent`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `for<'de> PingResponse: serde::Deserialize<'de>` is not satisfied
[INFO] [stdout]    --> src/lib.rs:110:13
[INFO] [stdout]     |
[INFO] [stdout] 110 |             RestFluent::<PingRequest, PingResponse>::delete(format!("/api/something/{}", rand::random::<usize>()));
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `for<'de> serde::Deserialize<'de>` is not implemented for `PingResponse`, which is required by `PingResponse: DeserializeOwned`
[INFO] [stdout]     |
[INFO] [stdout]     = help: the following other types implement trait `serde::Deserialize<'de>`:
[INFO] [stdout]               bool
[INFO] [stdout]               char
[INFO] [stdout]               isize
[INFO] [stdout]               i8
[INFO] [stdout]               i16
[INFO] [stdout]               i32
[INFO] [stdout]               i64
[INFO] [stdout]               i128
[INFO] [stdout]             and 131 others
[INFO] [stdout]     = note: required for `PingResponse` to implement `DeserializeOwned`
[INFO] [stdout] note: required by a bound in `RestFluent`
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-6f17d22bba15001f/ajars_core-0.8.0/src/lib.rs:67:71
[INFO] [stdout]     |
[INFO] [stdout] 67  | pub struct RestFluent<I: Serialize + DeserializeOwned, O: Serialize + DeserializeOwned> {
[INFO] [stdout]     |                                                                       ^^^^^^^^^^^^^^^^ required by this bound in `RestFluent`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `for<'de> PingResponse: serde::Deserialize<'de>` is not satisfied
[INFO] [stdout]    --> src/lib.rs:125:34
[INFO] [stdout]     |
[INFO] [stdout] 125 |         let resp: PingResponse = test::read_body_json(resp).await;
[INFO] [stdout]     |                                  ^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `for<'de> serde::Deserialize<'de>` is not implemented for `PingResponse`, which is required by `PingResponse: DeserializeOwned`
[INFO] [stdout]     |
[INFO] [stdout]     = help: the following other types implement trait `serde::Deserialize<'de>`:
[INFO] [stdout]               bool
[INFO] [stdout]               char
[INFO] [stdout]               isize
[INFO] [stdout]               i8
[INFO] [stdout]               i16
[INFO] [stdout]               i32
[INFO] [stdout]               i64
[INFO] [stdout]               i128
[INFO] [stdout]             and 131 others
[INFO] [stdout]     = note: required for `PingResponse` to implement `DeserializeOwned`
[INFO] [stdout] note: required by a bound in `read_body_json`
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-6f17d22bba15001f/actix-web-4.5.1/src/test/test_utils.rs:258:8
[INFO] [stdout]     |
[INFO] [stdout] 255 | pub async fn read_body_json<T, B>(res: ServiceResponse<B>) -> T
[INFO] [stdout]     |              -------------- required by a bound in this function
[INFO] [stdout] ...
[INFO] [stdout] 258 |     T: DeserializeOwned,
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^ required by this bound in `read_body_json`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: the function or associated item `get` exists for struct `RestFluent<PingRequest, PingResponse>`, but its trait bounds were not satisfied
[INFO] [stdout]    --> src/lib.rs:132:61
[INFO] [stdout]     |
[INFO] [stdout] 82  |     pub struct PingRequest {
[INFO] [stdout]     |     ---------------------- doesn't satisfy `PingRequest: DeserializeOwned`, `PingRequest: serde::Deserialize<'de>` or `PingRequest: serde::Serialize`
[INFO] [stdout] ...
[INFO] [stdout] 87  |     pub struct PingResponse {
[INFO] [stdout]     |     ----------------------- doesn't satisfy `PingResponse: DeserializeOwned`, `PingResponse: serde::Deserialize<'de>` or `PingResponse: serde::Serialize`
[INFO] [stdout] ...
[INFO] [stdout] 132 |         let rest = RestFluent::<PingRequest, PingResponse>::get(format!("/api/something/{}", rand::random::<usize>()));
[INFO] [stdout]     |                                                             ^^^ function or associated item cannot be called on `RestFluent<PingRequest, PingResponse>` due to unsatisfied trait bounds
[INFO] [stdout]     |
[INFO] [stdout] note: if you're trying to build a new `RestFluent<PingRequest, PingResponse>` consider using one of the following associated functions:
[INFO] [stdout]       RestFluent::<I, O>::new
[INFO] [stdout]       RestFluent::<I, O>::delete
[INFO] [stdout]       RestFluent::<I, O>::get
[INFO] [stdout]       RestFluent::<I, O>::post
[INFO] [stdout]       RestFluent::<I, O>::put
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-6f17d22bba15001f/ajars_core-0.8.0/src/lib.rs:91:5
[INFO] [stdout]     |
[INFO] [stdout] 91  |     pub fn new<P: Into<String>>(method: HttpMethod, path: P) -> Self {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 95  |     pub fn delete<P: Into<String>>(path: P) -> Self {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 99  |     pub fn get<P: Into<String>>(path: P) -> Self {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 103 |     pub fn post<P: Into<String>>(path: P) -> Self {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 107 |     pub fn put<P: Into<String>>(path: P) -> Self {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: the following trait bounds were not satisfied:
[INFO] [stdout]             `PingRequest: serde::Serialize`
[INFO] [stdout]             `PingRequest: DeserializeOwned`
[INFO] [stdout]             `PingRequest: serde::Deserialize<'de>`
[INFO] [stdout]             which is required by `PingRequest: DeserializeOwned`
[INFO] [stdout]             `PingResponse: serde::Serialize`
[INFO] [stdout]             `PingResponse: DeserializeOwned`
[INFO] [stdout]             `PingResponse: serde::Deserialize<'de>`
[INFO] [stdout]             which is required by `PingResponse: DeserializeOwned`
[INFO] [stdout] note: the traits `DeserializeOwned` and `serde::Serialize` must be implemented
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-6f17d22bba15001f/serde-1.0.197/src/de/mod.rs:607:1
[INFO] [stdout]     |
[INFO] [stdout] 607 | pub trait DeserializeOwned: for<'de> Deserialize<'de> {}
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-6f17d22bba15001f/serde-1.0.197/src/ser/mod.rs:218:1
[INFO] [stdout]     |
[INFO] [stdout] 218 | pub trait Serialize {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `PingRequest: serde::Serialize` is not satisfied
[INFO] [stdout]    --> src/lib.rs:132:20
[INFO] [stdout]     |
[INFO] [stdout] 132 |         let rest = RestFluent::<PingRequest, PingResponse>::get(format!("/api/something/{}", rand::random::<usize>()));
[INFO] [stdout]     |                    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `serde::Serialize` is not implemented for `PingRequest`
[INFO] [stdout]     |
[INFO] [stdout]     = help: the following other types implement trait `serde::Serialize`:
[INFO] [stdout]               bool
[INFO] [stdout]               char
[INFO] [stdout]               isize
[INFO] [stdout]               i8
[INFO] [stdout]               i16
[INFO] [stdout]               i32
[INFO] [stdout]               i64
[INFO] [stdout]               i128
[INFO] [stdout]             and 133 others
[INFO] [stdout] note: required by a bound in `RestFluent`
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-6f17d22bba15001f/ajars_core-0.8.0/src/lib.rs:67:26
[INFO] [stdout]     |
[INFO] [stdout] 67  | pub struct RestFluent<I: Serialize + DeserializeOwned, O: Serialize + DeserializeOwned> {
[INFO] [stdout]     |                          ^^^^^^^^^ required by this bound in `RestFluent`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `PingResponse: serde::Serialize` is not satisfied
[INFO] [stdout]    --> src/lib.rs:132:20
[INFO] [stdout]     |
[INFO] [stdout] 132 |         let rest = RestFluent::<PingRequest, PingResponse>::get(format!("/api/something/{}", rand::random::<usize>()));
[INFO] [stdout]     |                    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `serde::Serialize` is not implemented for `PingResponse`
[INFO] [stdout]     |
[INFO] [stdout]     = help: the following other types implement trait `serde::Serialize`:
[INFO] [stdout]               bool
[INFO] [stdout]               char
[INFO] [stdout]               isize
[INFO] [stdout]               i8
[INFO] [stdout]               i16
[INFO] [stdout]               i32
[INFO] [stdout]               i64
[INFO] [stdout]               i128
[INFO] [stdout]             and 133 others
[INFO] [stdout] note: required by a bound in `RestFluent`
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-6f17d22bba15001f/ajars_core-0.8.0/src/lib.rs:67:59
[INFO] [stdout]     |
[INFO] [stdout] 67  | pub struct RestFluent<I: Serialize + DeserializeOwned, O: Serialize + DeserializeOwned> {
[INFO] [stdout]     |                                                           ^^^^^^^^^ required by this bound in `RestFluent`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `for<'de> PingRequest: serde::Deserialize<'de>` is not satisfied
[INFO] [stdout]    --> src/lib.rs:132:20
[INFO] [stdout]     |
[INFO] [stdout] 132 |         let rest = RestFluent::<PingRequest, PingResponse>::get(format!("/api/something/{}", rand::random::<usize>()));
[INFO] [stdout]     |                    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `for<'de> serde::Deserialize<'de>` is not implemented for `PingRequest`, which is required by `PingRequest: DeserializeOwned`
[INFO] [stdout]     |
[INFO] [stdout]     = help: the following other types implement trait `serde::Deserialize<'de>`:
[INFO] [stdout]               bool
[INFO] [stdout]               char
[INFO] [stdout]               isize
[INFO] [stdout]               i8
[INFO] [stdout]               i16
[INFO] [stdout]               i32
[INFO] [stdout]               i64
[INFO] [stdout]               i128
[INFO] [stdout]             and 131 others
[INFO] [stdout]     = note: required for `PingRequest` to implement `DeserializeOwned`
[INFO] [stdout] note: required by a bound in `RestFluent`
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-6f17d22bba15001f/ajars_core-0.8.0/src/lib.rs:67:38
[INFO] [stdout]     |
[INFO] [stdout] 67  | pub struct RestFluent<I: Serialize + DeserializeOwned, O: Serialize + DeserializeOwned> {
[INFO] [stdout]     |                                      ^^^^^^^^^^^^^^^^ required by this bound in `RestFluent`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `for<'de> PingResponse: serde::Deserialize<'de>` is not satisfied
[INFO] [stdout]    --> src/lib.rs:132:20
[INFO] [stdout]     |
[INFO] [stdout] 132 |         let rest = RestFluent::<PingRequest, PingResponse>::get(format!("/api/something/{}", rand::random::<usize>()));
[INFO] [stdout]     |                    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `for<'de> serde::Deserialize<'de>` is not implemented for `PingResponse`, which is required by `PingResponse: DeserializeOwned`
[INFO] [stdout]     |
[INFO] [stdout]     = help: the following other types implement trait `serde::Deserialize<'de>`:
[INFO] [stdout]               bool
[INFO] [stdout]               char
[INFO] [stdout]               isize
[INFO] [stdout]               i8
[INFO] [stdout]               i16
[INFO] [stdout]               i32
[INFO] [stdout]               i64
[INFO] [stdout]               i128
[INFO] [stdout]             and 131 others
[INFO] [stdout]     = note: required for `PingResponse` to implement `DeserializeOwned`
[INFO] [stdout] note: required by a bound in `RestFluent`
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-6f17d22bba15001f/ajars_core-0.8.0/src/lib.rs:67:71
[INFO] [stdout]     |
[INFO] [stdout] 67  | pub struct RestFluent<I: Serialize + DeserializeOwned, O: Serialize + DeserializeOwned> {
[INFO] [stdout]     |                                                                       ^^^^^^^^^^^^^^^^ required by this bound in `RestFluent`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `for<'de> PingResponse: serde::Deserialize<'de>` is not satisfied
[INFO] [stdout]    --> src/lib.rs:147:34
[INFO] [stdout]     |
[INFO] [stdout] 147 |         let resp: PingResponse = test::read_body_json(resp).await;
[INFO] [stdout]     |                                  ^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `for<'de> serde::Deserialize<'de>` is not implemented for `PingResponse`, which is required by `PingResponse: DeserializeOwned`
[INFO] [stdout]     |
[INFO] [stdout]     = help: the following other types implement trait `serde::Deserialize<'de>`:
[INFO] [stdout]               bool
[INFO] [stdout]               char
[INFO] [stdout]               isize
[INFO] [stdout]               i8
[INFO] [stdout]               i16
[INFO] [stdout]               i32
[INFO] [stdout]               i64
[INFO] [stdout]               i128
[INFO] [stdout]             and 131 others
[INFO] [stdout]     = note: required for `PingResponse` to implement `DeserializeOwned`
[INFO] [stdout] note: required by a bound in `read_body_json`
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-6f17d22bba15001f/actix-web-4.5.1/src/test/test_utils.rs:258:8
[INFO] [stdout]     |
[INFO] [stdout] 255 | pub async fn read_body_json<T, B>(res: ServiceResponse<B>) -> T
[INFO] [stdout]     |              -------------- required by a bound in this function
[INFO] [stdout] ...
[INFO] [stdout] 258 |     T: DeserializeOwned,
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^ required by this bound in `read_body_json`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: the function or associated item `post` exists for struct `RestFluent<PingRequest, PingResponse>`, but its trait bounds were not satisfied
[INFO] [stdout]    --> src/lib.rs:154:61
[INFO] [stdout]     |
[INFO] [stdout] 82  |     pub struct PingRequest {
[INFO] [stdout]     |     ---------------------- doesn't satisfy `PingRequest: DeserializeOwned`, `PingRequest: serde::Deserialize<'de>` or `PingRequest: serde::Serialize`
[INFO] [stdout] ...
[INFO] [stdout] 87  |     pub struct PingResponse {
[INFO] [stdout]     |     ----------------------- doesn't satisfy `PingResponse: DeserializeOwned`, `PingResponse: serde::Deserialize<'de>` or `PingResponse: serde::Serialize`
[INFO] [stdout] ...
[INFO] [stdout] 154 |         let rest = RestFluent::<PingRequest, PingResponse>::post(format!("/api/something/{}", rand::random::<usize>()));
[INFO] [stdout]     |                                                             ^^^^ function or associated item cannot be called on `RestFluent<PingRequest, PingResponse>` due to unsatisfied trait bounds
[INFO] [stdout]     |
[INFO] [stdout] note: if you're trying to build a new `RestFluent<PingRequest, PingResponse>` consider using one of the following associated functions:
[INFO] [stdout]       RestFluent::<I, O>::new
[INFO] [stdout]       RestFluent::<I, O>::delete
[INFO] [stdout]       RestFluent::<I, O>::get
[INFO] [stdout]       RestFluent::<I, O>::post
[INFO] [stdout]       RestFluent::<I, O>::put
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-6f17d22bba15001f/ajars_core-0.8.0/src/lib.rs:91:5
[INFO] [stdout]     |
[INFO] [stdout] 91  |     pub fn new<P: Into<String>>(method: HttpMethod, path: P) -> Self {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 95  |     pub fn delete<P: Into<String>>(path: P) -> Self {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 99  |     pub fn get<P: Into<String>>(path: P) -> Self {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 103 |     pub fn post<P: Into<String>>(path: P) -> Self {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 107 |     pub fn put<P: Into<String>>(path: P) -> Self {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: the following trait bounds were not satisfied:
[INFO] [stdout]             `PingRequest: serde::Serialize`
[INFO] [stdout]             `PingRequest: DeserializeOwned`
[INFO] [stdout]             `PingRequest: serde::Deserialize<'de>`
[INFO] [stdout]             which is required by `PingRequest: DeserializeOwned`
[INFO] [stdout]             `PingResponse: serde::Serialize`
[INFO] [stdout]             `PingResponse: DeserializeOwned`
[INFO] [stdout]             `PingResponse: serde::Deserialize<'de>`
[INFO] [stdout]             which is required by `PingResponse: DeserializeOwned`
[INFO] [stdout] note: the traits `DeserializeOwned` and `serde::Serialize` must be implemented
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-6f17d22bba15001f/serde-1.0.197/src/de/mod.rs:607:1
[INFO] [stdout]     |
[INFO] [stdout] 607 | pub trait DeserializeOwned: for<'de> Deserialize<'de> {}
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-6f17d22bba15001f/serde-1.0.197/src/ser/mod.rs:218:1
[INFO] [stdout]     |
[INFO] [stdout] 218 | pub trait Serialize {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `PingRequest: serde::Serialize` is not satisfied
[INFO] [stdout]    --> src/lib.rs:154:20
[INFO] [stdout]     |
[INFO] [stdout] 154 |         let rest = RestFluent::<PingRequest, PingResponse>::post(format!("/api/something/{}", rand::random::<usize>()));
[INFO] [stdout]     |                    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `serde::Serialize` is not implemented for `PingRequest`
[INFO] [stdout]     |
[INFO] [stdout]     = help: the following other types implement trait `serde::Serialize`:
[INFO] [stdout]               bool
[INFO] [stdout]               char
[INFO] [stdout]               isize
[INFO] [stdout]               i8
[INFO] [stdout]               i16
[INFO] [stdout]               i32
[INFO] [stdout]               i64
[INFO] [stdout]               i128
[INFO] [stdout]             and 133 others
[INFO] [stdout] note: required by a bound in `RestFluent`
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-6f17d22bba15001f/ajars_core-0.8.0/src/lib.rs:67:26
[INFO] [stdout]     |
[INFO] [stdout] 67  | pub struct RestFluent<I: Serialize + DeserializeOwned, O: Serialize + DeserializeOwned> {
[INFO] [stdout]     |                          ^^^^^^^^^ required by this bound in `RestFluent`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `PingResponse: serde::Serialize` is not satisfied
[INFO] [stdout]    --> src/lib.rs:154:20
[INFO] [stdout]     |
[INFO] [stdout] 154 |         let rest = RestFluent::<PingRequest, PingResponse>::post(format!("/api/something/{}", rand::random::<usize>()));
[INFO] [stdout]     |                    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `serde::Serialize` is not implemented for `PingResponse`
[INFO] [stdout]     |
[INFO] [stdout]     = help: the following other types implement trait `serde::Serialize`:
[INFO] [stdout]               bool
[INFO] [stdout]               char
[INFO] [stdout]               isize
[INFO] [stdout]               i8
[INFO] [stdout]               i16
[INFO] [stdout]               i32
[INFO] [stdout]               i64
[INFO] [stdout]               i128
[INFO] [stdout]             and 133 others
[INFO] [stdout] note: required by a bound in `RestFluent`
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-6f17d22bba15001f/ajars_core-0.8.0/src/lib.rs:67:59
[INFO] [stdout]     |
[INFO] [stdout] 67  | pub struct RestFluent<I: Serialize + DeserializeOwned, O: Serialize + DeserializeOwned> {
[INFO] [stdout]     |                                                           ^^^^^^^^^ required by this bound in `RestFluent`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `for<'de> PingRequest: serde::Deserialize<'de>` is not satisfied
[INFO] [stdout]    --> src/lib.rs:154:20
[INFO] [stdout]     |
[INFO] [stdout] 154 |         let rest = RestFluent::<PingRequest, PingResponse>::post(format!("/api/something/{}", rand::random::<usize>()));
[INFO] [stdout]     |                    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `for<'de> serde::Deserialize<'de>` is not implemented for `PingRequest`, which is required by `PingRequest: DeserializeOwned`
[INFO] [stdout]     |
[INFO] [stdout]     = help: the following other types implement trait `serde::Deserialize<'de>`:
[INFO] [stdout]               bool
[INFO] [stdout]               char
[INFO] [stdout]               isize
[INFO] [stdout]               i8
[INFO] [stdout]               i16
[INFO] [stdout]               i32
[INFO] [stdout]               i64
[INFO] [stdout]               i128
[INFO] [stdout]             and 131 others
[INFO] [stdout]     = note: required for `PingRequest` to implement `DeserializeOwned`
[INFO] [stdout] note: required by a bound in `RestFluent`
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-6f17d22bba15001f/ajars_core-0.8.0/src/lib.rs:67:38
[INFO] [stdout]     |
[INFO] [stdout] 67  | pub struct RestFluent<I: Serialize + DeserializeOwned, O: Serialize + DeserializeOwned> {
[INFO] [stdout]     |                                      ^^^^^^^^^^^^^^^^ required by this bound in `RestFluent`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `for<'de> PingResponse: serde::Deserialize<'de>` is not satisfied
[INFO] [stdout]    --> src/lib.rs:154:20
[INFO] [stdout]     |
[INFO] [stdout] 154 |         let rest = RestFluent::<PingRequest, PingResponse>::post(format!("/api/something/{}", rand::random::<usize>()));
[INFO] [stdout]     |                    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `for<'de> serde::Deserialize<'de>` is not implemented for `PingResponse`, which is required by `PingResponse: DeserializeOwned`
[INFO] [stdout]     |
[INFO] [stdout]     = help: the following other types implement trait `serde::Deserialize<'de>`:
[INFO] [stdout]               bool
[INFO] [stdout]               char
[INFO] [stdout]               isize
[INFO] [stdout]               i8
[INFO] [stdout]               i16
[INFO] [stdout]               i32
[INFO] [stdout]               i64
[INFO] [stdout]               i128
[INFO] [stdout]             and 131 others
[INFO] [stdout]     = note: required for `PingResponse` to implement `DeserializeOwned`
[INFO] [stdout] note: required by a bound in `RestFluent`
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-6f17d22bba15001f/ajars_core-0.8.0/src/lib.rs:67:71
[INFO] [stdout]     |
[INFO] [stdout] 67  | pub struct RestFluent<I: Serialize + DeserializeOwned, O: Serialize + DeserializeOwned> {
[INFO] [stdout]     |                                                                       ^^^^^^^^^^^^^^^^ required by this bound in `RestFluent`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `PingRequest: serde::Serialize` is not satisfied
[INFO] [stdout]    --> src/lib.rs:160:72
[INFO] [stdout]     |
[INFO] [stdout] 160 |         let req = test::TestRequest::post().uri(rest.path()).set_json(&payload).to_request();
[INFO] [stdout]     |                                                              --------  ^^^^^^^ the trait `serde::Serialize` is not implemented for `PingRequest`, which is required by `&PingRequest: serde::Serialize`
[INFO] [stdout]     |                                                              |
[INFO] [stdout]     |                                                              required by a bound introduced by this call
[INFO] [stdout]     |
[INFO] [stdout]     = help: the following other types implement trait `serde::Serialize`:
[INFO] [stdout]               bool
[INFO] [stdout]               char
[INFO] [stdout]               isize
[INFO] [stdout]               i8
[INFO] [stdout]               i16
[INFO] [stdout]               i32
[INFO] [stdout]               i64
[INFO] [stdout]               i128
[INFO] [stdout]             and 133 others
[INFO] [stdout]     = note: required for `&PingRequest` to implement `serde::Serialize`
[INFO] [stdout] note: required by a bound in `TestRequest::set_json`
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-6f17d22bba15001f/actix-web-4.5.1/src/test/test_request.rs:201:42
[INFO] [stdout]     |
[INFO] [stdout] 201 |     pub fn set_json(mut self, data: impl Serialize) -> Self {
[INFO] [stdout]     |                                          ^^^^^^^^^ required by this bound in `TestRequest::set_json`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `for<'de> PingResponse: serde::Deserialize<'de>` is not satisfied
[INFO] [stdout]    --> src/lib.rs:169:34
[INFO] [stdout]     |
[INFO] [stdout] 169 |         let resp: PingResponse = test::read_body_json(resp).await;
[INFO] [stdout]     |                                  ^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `for<'de> serde::Deserialize<'de>` is not implemented for `PingResponse`, which is required by `PingResponse: DeserializeOwned`
[INFO] [stdout]     |
[INFO] [stdout]     = help: the following other types implement trait `serde::Deserialize<'de>`:
[INFO] [stdout]               bool
[INFO] [stdout]               char
[INFO] [stdout]               isize
[INFO] [stdout]               i8
[INFO] [stdout]               i16
[INFO] [stdout]               i32
[INFO] [stdout]               i64
[INFO] [stdout]               i128
[INFO] [stdout]             and 131 others
[INFO] [stdout]     = note: required for `PingResponse` to implement `DeserializeOwned`
[INFO] [stdout] note: required by a bound in `read_body_json`
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-6f17d22bba15001f/actix-web-4.5.1/src/test/test_utils.rs:258:8
[INFO] [stdout]     |
[INFO] [stdout] 255 | pub async fn read_body_json<T, B>(res: ServiceResponse<B>) -> T
[INFO] [stdout]     |              -------------- required by a bound in this function
[INFO] [stdout] ...
[INFO] [stdout] 258 |     T: DeserializeOwned,
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^ required by this bound in `read_body_json`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: the function or associated item `put` exists for struct `RestFluent<PingRequest, PingResponse>`, but its trait bounds were not satisfied
[INFO] [stdout]    --> src/lib.rs:176:61
[INFO] [stdout]     |
[INFO] [stdout] 82  |     pub struct PingRequest {
[INFO] [stdout]     |     ---------------------- doesn't satisfy `PingRequest: DeserializeOwned`, `PingRequest: serde::Deserialize<'de>` or `PingRequest: serde::Serialize`
[INFO] [stdout] ...
[INFO] [stdout] 87  |     pub struct PingResponse {
[INFO] [stdout]     |     ----------------------- doesn't satisfy `PingResponse: DeserializeOwned`, `PingResponse: serde::Deserialize<'de>` or `PingResponse: serde::Serialize`
[INFO] [stdout] ...
[INFO] [stdout] 176 |         let rest = RestFluent::<PingRequest, PingResponse>::put(format!("/api/something/{}", rand::random::<usize>()));
[INFO] [stdout]     |                                                             ^^^ function or associated item cannot be called on `RestFluent<PingRequest, PingResponse>` due to unsatisfied trait bounds
[INFO] [stdout]     |
[INFO] [stdout] note: if you're trying to build a new `RestFluent<PingRequest, PingResponse>` consider using one of the following associated functions:
[INFO] [stdout]       RestFluent::<I, O>::new
[INFO] [stdout]       RestFluent::<I, O>::delete
[INFO] [stdout]       RestFluent::<I, O>::get
[INFO] [stdout]       RestFluent::<I, O>::post
[INFO] [stdout]       RestFluent::<I, O>::put
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-6f17d22bba15001f/ajars_core-0.8.0/src/lib.rs:91:5
[INFO] [stdout]     |
[INFO] [stdout] 91  |     pub fn new<P: Into<String>>(method: HttpMethod, path: P) -> Self {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 95  |     pub fn delete<P: Into<String>>(path: P) -> Self {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 99  |     pub fn get<P: Into<String>>(path: P) -> Self {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 103 |     pub fn post<P: Into<String>>(path: P) -> Self {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 107 |     pub fn put<P: Into<String>>(path: P) -> Self {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: the following trait bounds were not satisfied:
[INFO] [stdout]             `PingRequest: serde::Serialize`
[INFO] [stdout]             `PingRequest: DeserializeOwned`
[INFO] [stdout]             `PingRequest: serde::Deserialize<'de>`
[INFO] [stdout]             which is required by `PingRequest: DeserializeOwned`
[INFO] [stdout]             `PingResponse: serde::Serialize`
[INFO] [stdout]             `PingResponse: DeserializeOwned`
[INFO] [stdout]             `PingResponse: serde::Deserialize<'de>`
[INFO] [stdout]             which is required by `PingResponse: DeserializeOwned`
[INFO] [stdout] note: the traits `DeserializeOwned` and `serde::Serialize` must be implemented
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-6f17d22bba15001f/serde-1.0.197/src/de/mod.rs:607:1
[INFO] [stdout]     |
[INFO] [stdout] 607 | pub trait DeserializeOwned: for<'de> Deserialize<'de> {}
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-6f17d22bba15001f/serde-1.0.197/src/ser/mod.rs:218:1
[INFO] [stdout]     |
[INFO] [stdout] 218 | pub trait Serialize {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `PingRequest: serde::Serialize` is not satisfied
[INFO] [stdout]    --> src/lib.rs:176:20
[INFO] [stdout]     |
[INFO] [stdout] 176 |         let rest = RestFluent::<PingRequest, PingResponse>::put(format!("/api/something/{}", rand::random::<usize>()));
[INFO] [stdout]     |                    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `serde::Serialize` is not implemented for `PingRequest`
[INFO] [stdout]     |
[INFO] [stdout]     = help: the following other types implement trait `serde::Serialize`:
[INFO] [stdout]               bool
[INFO] [stdout]               char
[INFO] [stdout]               isize
[INFO] [stdout]               i8
[INFO] [stdout]               i16
[INFO] [stdout]               i32
[INFO] [stdout]               i64
[INFO] [stdout]               i128
[INFO] [stdout]             and 133 others
[INFO] [stdout] note: required by a bound in `RestFluent`
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-6f17d22bba15001f/ajars_core-0.8.0/src/lib.rs:67:26
[INFO] [stdout]     |
[INFO] [stdout] 67  | pub struct RestFluent<I: Serialize + DeserializeOwned, O: Serialize + DeserializeOwned> {
[INFO] [stdout]     |                          ^^^^^^^^^ required by this bound in `RestFluent`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `PingResponse: serde::Serialize` is not satisfied
[INFO] [stdout]    --> src/lib.rs:176:20
[INFO] [stdout]     |
[INFO] [stdout] 176 |         let rest = RestFluent::<PingRequest, PingResponse>::put(format!("/api/something/{}", rand::random::<usize>()));
[INFO] [stdout]     |                    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `serde::Serialize` is not implemented for `PingResponse`
[INFO] [stdout]     |
[INFO] [stdout]     = help: the following other types implement trait `serde::Serialize`:
[INFO] [stdout]               bool
[INFO] [stdout]               char
[INFO] [stdout]               isize
[INFO] [stdout]               i8
[INFO] [stdout]               i16
[INFO] [stdout]               i32
[INFO] [stdout]               i64
[INFO] [stdout]               i128
[INFO] [stdout]             and 133 others
[INFO] [stdout] note: required by a bound in `RestFluent`
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-6f17d22bba15001f/ajars_core-0.8.0/src/lib.rs:67:59
[INFO] [stdout]     |
[INFO] [stdout] 67  | pub struct RestFluent<I: Serialize + DeserializeOwned, O: Serialize + DeserializeOwned> {
[INFO] [stdout]     |                                                           ^^^^^^^^^ required by this bound in `RestFluent`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `for<'de> PingRequest: serde::Deserialize<'de>` is not satisfied
[INFO] [stdout]    --> src/lib.rs:176:20
[INFO] [stdout]     |
[INFO] [stdout] 176 |         let rest = RestFluent::<PingRequest, PingResponse>::put(format!("/api/something/{}", rand::random::<usize>()));
[INFO] [stdout]     |                    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `for<'de> serde::Deserialize<'de>` is not implemented for `PingRequest`, which is required by `PingRequest: DeserializeOwned`
[INFO] [stdout]     |
[INFO] [stdout]     = help: the following other types implement trait `serde::Deserialize<'de>`:
[INFO] [stdout]               bool
[INFO] [stdout]               char
[INFO] [stdout]               isize
[INFO] [stdout]               i8
[INFO] [stdout]               i16
[INFO] [stdout]               i32
[INFO] [stdout]               i64
[INFO] [stdout]               i128
[INFO] [stdout]             and 131 others
[INFO] [stdout]     = note: required for `PingRequest` to implement `DeserializeOwned`
[INFO] [stdout] note: required by a bound in `RestFluent`
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-6f17d22bba15001f/ajars_core-0.8.0/src/lib.rs:67:38
[INFO] [stdout]     |
[INFO] [stdout] 67  | pub struct RestFluent<I: Serialize + DeserializeOwned, O: Serialize + DeserializeOwned> {
[INFO] [stdout]     |                                      ^^^^^^^^^^^^^^^^ required by this bound in `RestFluent`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `for<'de> PingResponse: serde::Deserialize<'de>` is not satisfied
[INFO] [stdout]    --> src/lib.rs:176:20
[INFO] [stdout]     |
[INFO] [stdout] 176 |         let rest = RestFluent::<PingRequest, PingResponse>::put(format!("/api/something/{}", rand::random::<usize>()));
[INFO] [stdout]     |                    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `for<'de> serde::Deserialize<'de>` is not implemented for `PingResponse`, which is required by `PingResponse: DeserializeOwned`
[INFO] [stdout]     |
[INFO] [stdout]     = help: the following other types implement trait `serde::Deserialize<'de>`:
[INFO] [stdout]               bool
[INFO] [stdout]               char
[INFO] [stdout]               isize
[INFO] [stdout]               i8
[INFO] [stdout]               i16
[INFO] [stdout]               i32
[INFO] [stdout]               i64
[INFO] [stdout]               i128
[INFO] [stdout]             and 131 others
[INFO] [stdout]     = note: required for `PingResponse` to implement `DeserializeOwned`
[INFO] [stdout] note: required by a bound in `RestFluent`
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-6f17d22bba15001f/ajars_core-0.8.0/src/lib.rs:67:71
[INFO] [stdout]     |
[INFO] [stdout] 67  | pub struct RestFluent<I: Serialize + DeserializeOwned, O: Serialize + DeserializeOwned> {
[INFO] [stdout]     |                                                                       ^^^^^^^^^^^^^^^^ required by this bound in `RestFluent`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `PingRequest: serde::Serialize` is not satisfied
[INFO] [stdout]    --> src/lib.rs:182:71
[INFO] [stdout]     |
[INFO] [stdout] 182 |         let req = test::TestRequest::put().uri(rest.path()).set_json(&payload).to_request();
[INFO] [stdout]     |                                                             --------  ^^^^^^^ the trait `serde::Serialize` is not implemented for `PingRequest`, which is required by `&PingRequest: serde::Serialize`
[INFO] [stdout]     |                                                             |
[INFO] [stdout]     |                                                             required by a bound introduced by this call
[INFO] [stdout]     |
[INFO] [stdout]     = help: the following other types implement trait `serde::Serialize`:
[INFO] [stdout]               bool
[INFO] [stdout]               char
[INFO] [stdout]               isize
[INFO] [stdout]               i8
[INFO] [stdout]               i16
[INFO] [stdout]               i32
[INFO] [stdout]               i64
[INFO] [stdout]               i128
[INFO] [stdout]             and 133 others
[INFO] [stdout]     = note: required for `&PingRequest` to implement `serde::Serialize`
[INFO] [stdout] note: required by a bound in `TestRequest::set_json`
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-6f17d22bba15001f/actix-web-4.5.1/src/test/test_request.rs:201:42
[INFO] [stdout]     |
[INFO] [stdout] 201 |     pub fn set_json(mut self, data: impl Serialize) -> Self {
[INFO] [stdout]     |                                          ^^^^^^^^^ required by this bound in `TestRequest::set_json`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `for<'de> PingResponse: serde::Deserialize<'de>` is not satisfied
[INFO] [stdout]    --> src/lib.rs:191:34
[INFO] [stdout]     |
[INFO] [stdout] 191 |         let resp: PingResponse = test::read_body_json(resp).await;
[INFO] [stdout]     |                                  ^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `for<'de> serde::Deserialize<'de>` is not implemented for `PingResponse`, which is required by `PingResponse: DeserializeOwned`
[INFO] [stdout]     |
[INFO] [stdout]     = help: the following other types implement trait `serde::Deserialize<'de>`:
[INFO] [stdout]               bool
[INFO] [stdout]               char
[INFO] [stdout]               isize
[INFO] [stdout]               i8
[INFO] [stdout]               i16
[INFO] [stdout]               i32
[INFO] [stdout]               i64
[INFO] [stdout]               i128
[INFO] [stdout]             and 131 others
[INFO] [stdout]     = note: required for `PingResponse` to implement `DeserializeOwned`
[INFO] [stdout] note: required by a bound in `read_body_json`
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-6f17d22bba15001f/actix-web-4.5.1/src/test/test_utils.rs:258:8
[INFO] [stdout]     |
[INFO] [stdout] 255 | pub async fn read_body_json<T, B>(res: ServiceResponse<B>) -> T
[INFO] [stdout]     |              -------------- required by a bound in this function
[INFO] [stdout] ...
[INFO] [stdout] 258 |     T: DeserializeOwned,
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^ required by this bound in `read_body_json`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: aborting due to 30 previous errors
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] Some errors have detailed explanations: E0277, E0599.
[INFO] [stdout] 
[INFO] [stdout] For more information about an error, try `rustc --explain E0277`.
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `ajars_actix_web` (lib test) due to 31 previous errors
[INFO] running `Command { std: "docker" "inspect" "3d85052ca97fd93d7d218d2aea2da0886b9524ba703afc0485e8197220d06a0c", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "3d85052ca97fd93d7d218d2aea2da0886b9524ba703afc0485e8197220d06a0c", kill_on_drop: false }`
[INFO] [stdout] 3d85052ca97fd93d7d218d2aea2da0886b9524ba703afc0485e8197220d06a0c
