[INFO] fetching crate tcp_message_io 1.0.4...
[INFO] testing tcp_message_io-1.0.4 against nightly-2024-10-28+rustflags=-Zrandomize-layout for randomize-layout
[INFO] extracting crate tcp_message_io 1.0.4 into /workspace/builds/worker-6-tc2/source
[INFO] validating manifest of crates.io crate tcp_message_io 1.0.4 on toolchain nightly-2024-10-28
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+nightly-2024-10-28" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] started tweaking crates.io crate tcp_message_io 1.0.4
[INFO] finished tweaking crates.io crate tcp_message_io 1.0.4
[INFO] tweaked toml for crates.io crate tcp_message_io 1.0.4 written to /workspace/builds/worker-6-tc2/source/Cargo.toml
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+nightly-2024-10-28" "generate-lockfile" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Updating crates.io index
[INFO] [stderr]      Locking 85 packages to latest compatible versions
[INFO] [stderr]       Adding serial_test v2.0.0 (available: v3.1.1)
[INFO] [stderr]       Adding zstd v0.12.4 (available: v0.13.2)
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+nightly-2024-10-28" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-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:4a844ea9eb2546a2d2c7022eacef16ef2e8229c7fbb2c7d4d55a9ceca922f72d" "/opt/rustwide/cargo-home/bin/cargo" "+nightly-2024-10-28" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] 6fa9bcff2c2e4060255cf5d694ecf20022f85eea4dc0dac9b10a74aaf67c5e64
[INFO] running `Command { std: "docker" "start" "-a" "6fa9bcff2c2e4060255cf5d694ecf20022f85eea4dc0dac9b10a74aaf67c5e64", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "6fa9bcff2c2e4060255cf5d694ecf20022f85eea4dc0dac9b10a74aaf67c5e64", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "6fa9bcff2c2e4060255cf5d694ecf20022f85eea4dc0dac9b10a74aaf67c5e64", kill_on_drop: false }`
[INFO] [stdout] 6fa9bcff2c2e4060255cf5d694ecf20022f85eea4dc0dac9b10a74aaf67c5e64
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-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 -Zrandomize-layout" "-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:4a844ea9eb2546a2d2c7022eacef16ef2e8229c7fbb2c7d4d55a9ceca922f72d" "/opt/rustwide/cargo-home/bin/cargo" "+nightly-2024-10-28" "build" "--frozen" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] cf0770bac114f455933be287592fcdb58d5a8bfcd7b982f7c8f28365e5b9104a
[INFO] running `Command { std: "docker" "start" "-a" "cf0770bac114f455933be287592fcdb58d5a8bfcd7b982f7c8f28365e5b9104a", kill_on_drop: false }`
[INFO] [stderr]    Compiling syn v2.0.86
[INFO] [stderr]    Compiling tokio-macros v2.4.0
[INFO] [stderr]    Compiling thiserror-impl v1.0.66
[INFO] [stderr]    Compiling tracing-attributes v0.1.27
[INFO] [stderr]    Compiling tokio v1.41.0
[INFO] [stderr]    Compiling thiserror v1.0.66
[INFO] [stderr]    Compiling tracing v0.1.40
[INFO] [stderr]    Compiling tcp_message_io v1.0.4 (/opt/rustwide/workdir)
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 12.99s
[INFO] running `Command { std: "docker" "inspect" "cf0770bac114f455933be287592fcdb58d5a8bfcd7b982f7c8f28365e5b9104a", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "cf0770bac114f455933be287592fcdb58d5a8bfcd7b982f7c8f28365e5b9104a", kill_on_drop: false }`
[INFO] [stdout] cf0770bac114f455933be287592fcdb58d5a8bfcd7b982f7c8f28365e5b9104a
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-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 -Zrandomize-layout" "-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:4a844ea9eb2546a2d2c7022eacef16ef2e8229c7fbb2c7d4d55a9ceca922f72d" "/opt/rustwide/cargo-home/bin/cargo" "+nightly-2024-10-28" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 4217f17ef6b728a808c764688e9edea3be0cbed87e8698f46df2b5de7bf246a7
[INFO] running `Command { std: "docker" "start" "-a" "4217f17ef6b728a808c764688e9edea3be0cbed87e8698f46df2b5de7bf246a7", kill_on_drop: false }`
[INFO] [stderr]    Compiling futures-sink v0.3.31
[INFO] [stderr]    Compiling hashbrown v0.14.5
[INFO] [stderr]    Compiling serial_test_derive v2.0.0
[INFO] [stderr]    Compiling futures-channel v0.3.31
[INFO] [stderr]    Compiling futures-util v0.3.31
[INFO] [stderr]    Compiling dashmap v5.5.3
[INFO] [stderr]    Compiling futures-executor v0.3.31
[INFO] [stderr]    Compiling futures v0.3.31
[INFO] [stderr]    Compiling serial_test v2.0.0
[INFO] [stderr]    Compiling tcp_message_io v1.0.4 (/opt/rustwide/workdir)
[INFO] [stdout] error[E0432]: unresolved import `serde`
[INFO] [stdout]    --> src/crate_serde.rs:220:9
[INFO] [stdout]     |
[INFO] [stdout] 220 |     use serde::{Deserialize, Serialize};
[INFO] [stdout]     |         ^^^^^ use of undeclared crate or module `serde`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `Response: SerializeMessage` is not satisfied
[INFO] [stdout]    --> src/crate_serde.rs:287:52
[INFO] [stdout]     |
[INFO] [stdout] 287 |             Request::Hello => TCPResponse::Message(Response::World),
[INFO] [stdout]     |                               -------------------- ^^^^^^^^^^^^^^^ the trait `SerializeMessage` is not implemented for `Response`
[INFO] [stdout]     |                               |
[INFO] [stdout]     |                               required by a bound introduced by this call
[INFO] [stdout]     |
[INFO] [stdout] help: this trait has no implementations, consider adding one
[INFO] [stdout]    --> src/crate_serde.rs:19:1
[INFO] [stdout]     |
[INFO] [stdout] 19  | pub trait SerializeMessage: Sized + Send + Sync + 'static {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: required by a bound in `crate_serde::TCPResponse::Message`
[INFO] [stdout]    --> src/crate_serde.rs:92:8
[INFO] [stdout]     |
[INFO] [stdout] 92  |     A: SerializeMessage,
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^ required by this bound in `TCPResponse::Message`
[INFO] [stdout] ...
[INFO] [stdout] 95  |     Message(A),
[INFO] [stdout]     |     ------- required by a bound in this tuple variant
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `Response: SerializeMessage` is not satisfied
[INFO] [stdout]    --> src/crate_serde.rs:287:31
[INFO] [stdout]     |
[INFO] [stdout] 287 |             Request::Hello => TCPResponse::Message(Response::World),
[INFO] [stdout]     |                               ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `SerializeMessage` is not implemented for `Response`
[INFO] [stdout]     |
[INFO] [stdout] help: this trait has no implementations, consider adding one
[INFO] [stdout]    --> src/crate_serde.rs:19:1
[INFO] [stdout]     |
[INFO] [stdout] 19  | pub trait SerializeMessage: Sized + Send + Sync + 'static {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: required by a bound in `crate_serde::TCPResponse`
[INFO] [stdout]    --> src/crate_serde.rs:92:8
[INFO] [stdout]     |
[INFO] [stdout] 90  | pub enum TCPResponse<A>
[INFO] [stdout]     |          ----------- required by a bound in this enum
[INFO] [stdout] 91  | where
[INFO] [stdout] 92  |     A: SerializeMessage,
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^ required by this bound in `TCPResponse`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `Response: SerializeMessage` is not satisfied
[INFO] [stdout]    --> src/crate_serde.rs:288:61
[INFO] [stdout]     |
[INFO] [stdout] 288 |             Request::Double { num } => TCPResponse::Message(Response::Result(2 * num)),
[INFO] [stdout]     |                                        -------------------- ^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `SerializeMessage` is not implemented for `Response`
[INFO] [stdout]     |                                        |
[INFO] [stdout]     |                                        required by a bound introduced by this call
[INFO] [stdout]     |
[INFO] [stdout] help: this trait has no implementations, consider adding one
[INFO] [stdout]    --> src/crate_serde.rs:19:1
[INFO] [stdout]     |
[INFO] [stdout] 19  | pub trait SerializeMessage: Sized + Send + Sync + 'static {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: required by a bound in `crate_serde::TCPResponse::Message`
[INFO] [stdout]    --> src/crate_serde.rs:92:8
[INFO] [stdout]     |
[INFO] [stdout] 92  |     A: SerializeMessage,
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^ required by this bound in `TCPResponse::Message`
[INFO] [stdout] ...
[INFO] [stdout] 95  |     Message(A),
[INFO] [stdout]     |     ------- required by a bound in this tuple variant
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `Response: SerializeMessage` is not satisfied
[INFO] [stdout]    --> src/crate_serde.rs:288:40
[INFO] [stdout]     |
[INFO] [stdout] 288 |             Request::Double { num } => TCPResponse::Message(Response::Result(2 * num)),
[INFO] [stdout]     |                                        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `SerializeMessage` is not implemented for `Response`
[INFO] [stdout]     |
[INFO] [stdout] help: this trait has no implementations, consider adding one
[INFO] [stdout]    --> src/crate_serde.rs:19:1
[INFO] [stdout]     |
[INFO] [stdout] 19  | pub trait SerializeMessage: Sized + Send + Sync + 'static {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: required by a bound in `crate_serde::TCPResponse`
[INFO] [stdout]    --> src/crate_serde.rs:92:8
[INFO] [stdout]     |
[INFO] [stdout] 90  | pub enum TCPResponse<A>
[INFO] [stdout]     |          ----------- required by a bound in this enum
[INFO] [stdout] 91  | where
[INFO] [stdout] 92  |     A: SerializeMessage,
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^ required by this bound in `TCPResponse`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `Response: SerializeMessage` is not satisfied
[INFO] [stdout]    --> src/crate_serde.rs:289:59
[INFO] [stdout]     |
[INFO] [stdout] 289 |             Request::Sum { a, b } => TCPResponse::Message(Response::Result(a + b)),
[INFO] [stdout]     |                                      -------------------- ^^^^^^^^^^^^^^^^^^^^^^^ the trait `SerializeMessage` is not implemented for `Response`
[INFO] [stdout]     |                                      |
[INFO] [stdout]     |                                      required by a bound introduced by this call
[INFO] [stdout]     |
[INFO] [stdout] help: this trait has no implementations, consider adding one
[INFO] [stdout]    --> src/crate_serde.rs:19:1
[INFO] [stdout]     |
[INFO] [stdout] 19  | pub trait SerializeMessage: Sized + Send + Sync + 'static {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: required by a bound in `crate_serde::TCPResponse::Message`
[INFO] [stdout]    --> src/crate_serde.rs:92:8
[INFO] [stdout]     |
[INFO] [stdout] 92  |     A: SerializeMessage,
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^ required by this bound in `TCPResponse::Message`
[INFO] [stdout] ...
[INFO] [stdout] 95  |     Message(A),
[INFO] [stdout]     |     ------- required by a bound in this tuple variant
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `Response: SerializeMessage` is not satisfied
[INFO] [stdout]    --> src/crate_serde.rs:289:38
[INFO] [stdout]     |
[INFO] [stdout] 289 |             Request::Sum { a, b } => TCPResponse::Message(Response::Result(a + b)),
[INFO] [stdout]     |                                      ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `SerializeMessage` is not implemented for `Response`
[INFO] [stdout]     |
[INFO] [stdout] help: this trait has no implementations, consider adding one
[INFO] [stdout]    --> src/crate_serde.rs:19:1
[INFO] [stdout]     |
[INFO] [stdout] 19  | pub trait SerializeMessage: Sized + Send + Sync + 'static {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: required by a bound in `crate_serde::TCPResponse`
[INFO] [stdout]    --> src/crate_serde.rs:92:8
[INFO] [stdout]     |
[INFO] [stdout] 90  | pub enum TCPResponse<A>
[INFO] [stdout]     |          ----------- required by a bound in this enum
[INFO] [stdout] 91  | where
[INFO] [stdout] 92  |     A: SerializeMessage,
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^ required by this bound in `TCPResponse`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `Response: SerializeMessage` is not satisfied
[INFO] [stdout]    --> src/crate_serde.rs:290:31
[INFO] [stdout]     |
[INFO] [stdout] 290 |             Request::Close => TCPResponse::CloseConnection,
[INFO] [stdout]     |                               ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `SerializeMessage` is not implemented for `Response`
[INFO] [stdout]     |
[INFO] [stdout] help: this trait has no implementations, consider adding one
[INFO] [stdout]    --> src/crate_serde.rs:19:1
[INFO] [stdout]     |
[INFO] [stdout] 19  | pub trait SerializeMessage: Sized + Send + Sync + 'static {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: required by a bound in `crate_serde::TCPResponse::CloseConnection`
[INFO] [stdout]    --> src/crate_serde.rs:92:8
[INFO] [stdout]     |
[INFO] [stdout] 92  |     A: SerializeMessage,
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^ required by this bound in `TCPResponse::CloseConnection`
[INFO] [stdout] ...
[INFO] [stdout] 99  |     CloseConnection,
[INFO] [stdout]     |     --------------- required by a bound in this unit variant
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `Response: SerializeMessage` is not satisfied
[INFO] [stdout]    --> src/crate_serde.rs:291:36
[INFO] [stdout]     |
[INFO] [stdout] 291 |             Request::CauseError => bail!("An error occurred".to_string()),
[INFO] [stdout]     |                                    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `SerializeMessage` is not implemented for `Response`
[INFO] [stdout]     |
[INFO] [stdout] help: this trait has no implementations, consider adding one
[INFO] [stdout]    --> src/crate_serde.rs:19:1
[INFO] [stdout]     |
[INFO] [stdout] 19  | pub trait SerializeMessage: Sized + Send + Sync + 'static {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: required by a bound in `crate_serde::TCPResponse`
[INFO] [stdout]    --> src/crate_serde.rs:92:8
[INFO] [stdout]     |
[INFO] [stdout] 90  | pub enum TCPResponse<A>
[INFO] [stdout]     |          ----------- required by a bound in this enum
[INFO] [stdout] 91  | where
[INFO] [stdout] 92  |     A: SerializeMessage,
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^ required by this bound in `TCPResponse`
[INFO] [stdout]     = note: this error originates in the macro `bail` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `Response: SerializeMessage` is not satisfied
[INFO] [stdout]    --> src/crate_serde.rs:292:30
[INFO] [stdout]     |
[INFO] [stdout] 292 |             Request::Stop => TCPResponse::StopServer,
[INFO] [stdout]     |                              ^^^^^^^^^^^^^^^^^^^^^^^ the trait `SerializeMessage` is not implemented for `Response`
[INFO] [stdout]     |
[INFO] [stdout] help: this trait has no implementations, consider adding one
[INFO] [stdout]    --> src/crate_serde.rs:19:1
[INFO] [stdout]     |
[INFO] [stdout] 19  | pub trait SerializeMessage: Sized + Send + Sync + 'static {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: required by a bound in `crate_serde::TCPResponse::StopServer`
[INFO] [stdout]    --> src/crate_serde.rs:92:8
[INFO] [stdout]     |
[INFO] [stdout] 92  |     A: SerializeMessage,
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^ required by this bound in `TCPResponse::StopServer`
[INFO] [stdout] ...
[INFO] [stdout] 103 |     StopServer,
[INFO] [stdout]     |     ---------- required by a bound in this unit variant
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `Response: SerializeMessage` is not satisfied
[INFO] [stdout]    --> src/crate_serde.rs:286:9
[INFO] [stdout]     |
[INFO] [stdout] 286 |         Ok(match req {
[INFO] [stdout]     |         ^^ the trait `SerializeMessage` is not implemented for `Response`
[INFO] [stdout]     |
[INFO] [stdout] help: this trait has no implementations, consider adding one
[INFO] [stdout]    --> src/crate_serde.rs:19:1
[INFO] [stdout]     |
[INFO] [stdout] 19  | pub trait SerializeMessage: Sized + Send + Sync + 'static {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: required by a bound in `crate_serde::TCPResponse`
[INFO] [stdout]    --> src/crate_serde.rs:92:8
[INFO] [stdout]     |
[INFO] [stdout] 90  | pub enum TCPResponse<A>
[INFO] [stdout]     |          ----------- required by a bound in this enum
[INFO] [stdout] 91  | where
[INFO] [stdout] 92  |     A: SerializeMessage,
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^ required by this bound in `TCPResponse`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `Response: SerializeMessage` is not satisfied
[INFO] [stdout]    --> src/crate_serde.rs:286:9
[INFO] [stdout]     |
[INFO] [stdout] 286 | /         Ok(match req {
[INFO] [stdout] 287 | |             Request::Hello => TCPResponse::Message(Response::World),
[INFO] [stdout] 288 | |             Request::Double { num } => TCPResponse::Message(Response::Result(2 * num)),
[INFO] [stdout] 289 | |             Request::Sum { a, b } => TCPResponse::Message(Response::Result(a + b)),
[INFO] [stdout] ...   |
[INFO] [stdout] 292 | |             Request::Stop => TCPResponse::StopServer,
[INFO] [stdout] 293 | |         })
[INFO] [stdout]     | |__________^ the trait `SerializeMessage` is not implemented for `Response`
[INFO] [stdout]     |
[INFO] [stdout] help: this trait has no implementations, consider adding one
[INFO] [stdout]    --> src/crate_serde.rs:19:1
[INFO] [stdout]     |
[INFO] [stdout] 19  | pub trait SerializeMessage: Sized + Send + Sync + 'static {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: required by a bound in `crate_serde::TCPResponse`
[INFO] [stdout]    --> src/crate_serde.rs:92:8
[INFO] [stdout]     |
[INFO] [stdout] 90  | pub enum TCPResponse<A>
[INFO] [stdout]     |          ----------- required by a bound in this enum
[INFO] [stdout] 91  | where
[INFO] [stdout] 92  |     A: SerializeMessage,
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^ required by this bound in `TCPResponse`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `Response: SerializeMessage` is not satisfied
[INFO] [stdout]    --> src/crate_serde.rs:285:5
[INFO] [stdout]     |
[INFO] [stdout] 285 |     async fn handle_requests(req: Request) -> Result<TCPResponse<Response>> {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `SerializeMessage` is not implemented for `Response`
[INFO] [stdout]     |
[INFO] [stdout] help: this trait has no implementations, consider adding one
[INFO] [stdout]    --> src/crate_serde.rs:19:1
[INFO] [stdout]     |
[INFO] [stdout] 19  | pub trait SerializeMessage: Sized + Send + Sync + 'static {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: required by a bound in `crate_serde::TCPResponse`
[INFO] [stdout]    --> src/crate_serde.rs:92:8
[INFO] [stdout]     |
[INFO] [stdout] 90  | pub enum TCPResponse<A>
[INFO] [stdout]     |          ----------- required by a bound in this enum
[INFO] [stdout] 91  | where
[INFO] [stdout] 92  |     A: SerializeMessage,
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^ required by this bound in `TCPResponse`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `Response: SerializeMessage` is not satisfied
[INFO] [stdout]    --> src/crate_serde.rs:262:13
[INFO] [stdout]     |
[INFO] [stdout] 262 |             TCPServer::new(HOST, PORT, handle_requests)
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `SerializeMessage` is not implemented for `Response`
[INFO] [stdout]     |
[INFO] [stdout] help: this trait has no implementations, consider adding one
[INFO] [stdout]    --> src/crate_serde.rs:19:1
[INFO] [stdout]     |
[INFO] [stdout] 19  | pub trait SerializeMessage: Sized + Send + Sync + 'static {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: required by a bound in `crate_serde::TCPServer::<Q, A, H, F>::new`
[INFO] [stdout]    --> src/crate_serde.rs:138:8
[INFO] [stdout]     |
[INFO] [stdout] 138 |     A: SerializeMessage,
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^ required by this bound in `TCPServer::<Q, A, H, F>::new`
[INFO] [stdout] ...
[INFO] [stdout] 149 |     pub fn new(host: impl Into<String>, port: u16, handler: H) -> Arc<Self> {
[INFO] [stdout]     |            --- required by a bound in this associated function
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `crate_serde::tests::Request: SerializeMessage` is not satisfied
[INFO] [stdout]    --> src/crate_serde.rs:262:13
[INFO] [stdout]     |
[INFO] [stdout] 262 |             TCPServer::new(HOST, PORT, handle_requests)
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `SerializeMessage` is not implemented for `crate_serde::tests::Request`
[INFO] [stdout]     |
[INFO] [stdout] help: this trait has no implementations, consider adding one
[INFO] [stdout]    --> src/crate_serde.rs:19:1
[INFO] [stdout]     |
[INFO] [stdout] 19  | pub trait SerializeMessage: Sized + Send + Sync + 'static {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: required by a bound in `crate_serde::TCPServer::<Q, A, H, F>::new`
[INFO] [stdout]    --> src/crate_serde.rs:139:8
[INFO] [stdout]     |
[INFO] [stdout] 139 |     Q: SerializeMessage,
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^ required by this bound in `TCPServer::<Q, A, H, F>::new`
[INFO] [stdout] ...
[INFO] [stdout] 149 |     pub fn new(host: impl Into<String>, port: u16, handler: H) -> Arc<Self> {
[INFO] [stdout]     |            --- required by a bound in this associated function
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `crate_serde::tests::Request: SerializeMessage` is not satisfied
[INFO] [stdout]    --> src/crate_serde.rs:262:13
[INFO] [stdout]     |
[INFO] [stdout] 262 |             TCPServer::new(HOST, PORT, handle_requests)
[INFO] [stdout]     |             ^^^^^^^^^ the trait `SerializeMessage` is not implemented for `crate_serde::tests::Request`
[INFO] [stdout]     |
[INFO] [stdout] help: this trait has no implementations, consider adding one
[INFO] [stdout]    --> src/crate_serde.rs:19:1
[INFO] [stdout]     |
[INFO] [stdout] 19  | pub trait SerializeMessage: Sized + Send + Sync + 'static {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: required by a bound in `crate_serde::TCPServer`
[INFO] [stdout]    --> src/crate_serde.rs:123:8
[INFO] [stdout]     |
[INFO] [stdout] 121 | pub struct TCPServer<Q, A, H, F>
[INFO] [stdout]     |            --------- required by a bound in this struct
[INFO] [stdout] 122 | where
[INFO] [stdout] 123 |     Q: SerializeMessage,
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^ required by this bound in `TCPServer`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `Response: SerializeMessage` is not satisfied
[INFO] [stdout]    --> src/crate_serde.rs:262:13
[INFO] [stdout]     |
[INFO] [stdout] 262 |             TCPServer::new(HOST, PORT, handle_requests)
[INFO] [stdout]     |             ^^^^^^^^^ the trait `SerializeMessage` is not implemented for `Response`
[INFO] [stdout]     |
[INFO] [stdout] help: this trait has no implementations, consider adding one
[INFO] [stdout]    --> src/crate_serde.rs:19:1
[INFO] [stdout]     |
[INFO] [stdout] 19  | pub trait SerializeMessage: Sized + Send + Sync + 'static {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: required by a bound in `crate_serde::TCPServer`
[INFO] [stdout]    --> src/crate_serde.rs:124:8
[INFO] [stdout]     |
[INFO] [stdout] 121 | pub struct TCPServer<Q, A, H, F>
[INFO] [stdout]     |            --------- required by a bound in this struct
[INFO] [stdout] ...
[INFO] [stdout] 124 |     A: SerializeMessage,
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^ required by this bound in `TCPServer`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: the method `with_inactivity_timeout` exists for struct `Arc<TCPServer<Request, Response, fn(Request) -> impl Future<Output = ...> {handle_requests}, ...>>`, but its trait bounds were not satisfied
[INFO] [stdout]    --> src/crate_serde.rs:263:18
[INFO] [stdout]     |
[INFO] [stdout] 231 |       enum Request {
[INFO] [stdout]     |       ------------ doesn't satisfy `crate_serde::tests::Request: SerializeMessage`
[INFO] [stdout] ...
[INFO] [stdout] 255 |       enum Response {
[INFO] [stdout]     |       ------------- doesn't satisfy `Response: SerializeMessage`
[INFO] [stdout] ...
[INFO] [stdout] 262 | /             TCPServer::new(HOST, PORT, handle_requests)
[INFO] [stdout] 263 | |                 .with_inactivity_timeout(15)
[INFO] [stdout]     | |                 -^^^^^^^^^^^^^^^^^^^^^^^ method cannot be called due to unsatisfied trait bounds
[INFO] [stdout]     | |_________________|
[INFO] [stdout]     |
[INFO] [stdout]     |
[INFO] [stdout]     = note: the full type name has been written to '/opt/rustwide/target/debug/deps/tcp_message_io-9fed402937dbd42a.long-type-14683381456657241510.txt'
[INFO] [stdout]     = note: consider using `--verbose` to print the full type name to the console
[INFO] [stdout] note: the following trait bounds were not satisfied:
[INFO] [stdout]       `Response: SerializeMessage`
[INFO] [stdout]       `crate_serde::tests::Request: SerializeMessage`
[INFO] [stdout]    --> src/crate_serde.rs:138:8
[INFO] [stdout]     |
[INFO] [stdout] 136 | impl<Q, A, H, F> TCPServer<Q, A, H, F>
[INFO] [stdout]     |                  ---------------------
[INFO] [stdout] 137 | where
[INFO] [stdout] 138 |     A: SerializeMessage,
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^ unsatisfied trait bound introduced here
[INFO] [stdout] 139 |     Q: SerializeMessage,
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^ unsatisfied trait bound introduced here
[INFO] [stdout] note: the trait `SerializeMessage` must be implemented
[INFO] [stdout]    --> src/crate_serde.rs:19:1
[INFO] [stdout]     |
[INFO] [stdout] 19  | pub trait SerializeMessage: Sized + Send + Sync + 'static {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `Response: SerializeMessage` is not satisfied
[INFO] [stdout]    --> src/crate_serde.rs:274:13
[INFO] [stdout]     |
[INFO] [stdout] 274 |             TCPServer::new(HOST, PORT, handle_requests)
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `SerializeMessage` is not implemented for `Response`
[INFO] [stdout]     |
[INFO] [stdout] help: this trait has no implementations, consider adding one
[INFO] [stdout]    --> src/crate_serde.rs:19:1
[INFO] [stdout]     |
[INFO] [stdout] 19  | pub trait SerializeMessage: Sized + Send + Sync + 'static {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: required by a bound in `crate_serde::TCPServer::<Q, A, H, F>::new`
[INFO] [stdout]    --> src/crate_serde.rs:138:8
[INFO] [stdout]     |
[INFO] [stdout] 138 |     A: SerializeMessage,
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^ required by this bound in `TCPServer::<Q, A, H, F>::new`
[INFO] [stdout] ...
[INFO] [stdout] 149 |     pub fn new(host: impl Into<String>, port: u16, handler: H) -> Arc<Self> {
[INFO] [stdout]     |            --- required by a bound in this associated function
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `crate_serde::tests::Request: SerializeMessage` is not satisfied
[INFO] [stdout]    --> src/crate_serde.rs:274:13
[INFO] [stdout]     |
[INFO] [stdout] 274 |             TCPServer::new(HOST, PORT, handle_requests)
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `SerializeMessage` is not implemented for `crate_serde::tests::Request`
[INFO] [stdout]     |
[INFO] [stdout] help: this trait has no implementations, consider adding one
[INFO] [stdout]    --> src/crate_serde.rs:19:1
[INFO] [stdout]     |
[INFO] [stdout] 19  | pub trait SerializeMessage: Sized + Send + Sync + 'static {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: required by a bound in `crate_serde::TCPServer::<Q, A, H, F>::new`
[INFO] [stdout]    --> src/crate_serde.rs:139:8
[INFO] [stdout]     |
[INFO] [stdout] 139 |     Q: SerializeMessage,
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^ required by this bound in `TCPServer::<Q, A, H, F>::new`
[INFO] [stdout] ...
[INFO] [stdout] 149 |     pub fn new(host: impl Into<String>, port: u16, handler: H) -> Arc<Self> {
[INFO] [stdout]     |            --- required by a bound in this associated function
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `crate_serde::tests::Request: SerializeMessage` is not satisfied
[INFO] [stdout]    --> src/crate_serde.rs:274:13
[INFO] [stdout]     |
[INFO] [stdout] 274 |             TCPServer::new(HOST, PORT, handle_requests)
[INFO] [stdout]     |             ^^^^^^^^^ the trait `SerializeMessage` is not implemented for `crate_serde::tests::Request`
[INFO] [stdout]     |
[INFO] [stdout] help: this trait has no implementations, consider adding one
[INFO] [stdout]    --> src/crate_serde.rs:19:1
[INFO] [stdout]     |
[INFO] [stdout] 19  | pub trait SerializeMessage: Sized + Send + Sync + 'static {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: required by a bound in `crate_serde::TCPServer`
[INFO] [stdout]    --> src/crate_serde.rs:123:8
[INFO] [stdout]     |
[INFO] [stdout] 121 | pub struct TCPServer<Q, A, H, F>
[INFO] [stdout]     |            --------- required by a bound in this struct
[INFO] [stdout] 122 | where
[INFO] [stdout] 123 |     Q: SerializeMessage,
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^ required by this bound in `TCPServer`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `Response: SerializeMessage` is not satisfied
[INFO] [stdout]    --> src/crate_serde.rs:274:13
[INFO] [stdout]     |
[INFO] [stdout] 274 |             TCPServer::new(HOST, PORT, handle_requests)
[INFO] [stdout]     |             ^^^^^^^^^ the trait `SerializeMessage` is not implemented for `Response`
[INFO] [stdout]     |
[INFO] [stdout] help: this trait has no implementations, consider adding one
[INFO] [stdout]    --> src/crate_serde.rs:19:1
[INFO] [stdout]     |
[INFO] [stdout] 19  | pub trait SerializeMessage: Sized + Send + Sync + 'static {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: required by a bound in `crate_serde::TCPServer`
[INFO] [stdout]    --> src/crate_serde.rs:124:8
[INFO] [stdout]     |
[INFO] [stdout] 121 | pub struct TCPServer<Q, A, H, F>
[INFO] [stdout]     |            --------- required by a bound in this struct
[INFO] [stdout] ...
[INFO] [stdout] 124 |     A: SerializeMessage,
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^ required by this bound in `TCPServer`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: the method `with_inactivity_timeout` exists for struct `Arc<TCPServer<Request, Response, fn(Request) -> impl Future<Output = ...> {handle_requests}, ...>>`, but its trait bounds were not satisfied
[INFO] [stdout]    --> src/crate_serde.rs:275:18
[INFO] [stdout]     |
[INFO] [stdout] 231 |       enum Request {
[INFO] [stdout]     |       ------------ doesn't satisfy `crate_serde::tests::Request: SerializeMessage`
[INFO] [stdout] ...
[INFO] [stdout] 255 |       enum Response {
[INFO] [stdout]     |       ------------- doesn't satisfy `Response: SerializeMessage`
[INFO] [stdout] ...
[INFO] [stdout] 274 | /             TCPServer::new(HOST, PORT, handle_requests)
[INFO] [stdout] 275 | |                 .with_inactivity_timeout(15)
[INFO] [stdout]     | |                 -^^^^^^^^^^^^^^^^^^^^^^^ method cannot be called due to unsatisfied trait bounds
[INFO] [stdout]     | |_________________|
[INFO] [stdout]     |
[INFO] [stdout]     |
[INFO] [stdout]     = note: the full type name has been written to '/opt/rustwide/target/debug/deps/tcp_message_io-9fed402937dbd42a.long-type-14683381456657241510.txt'
[INFO] [stdout]     = note: consider using `--verbose` to print the full type name to the console
[INFO] [stdout] note: the following trait bounds were not satisfied:
[INFO] [stdout]       `Response: SerializeMessage`
[INFO] [stdout]       `crate_serde::tests::Request: SerializeMessage`
[INFO] [stdout]    --> src/crate_serde.rs:138:8
[INFO] [stdout]     |
[INFO] [stdout] 136 | impl<Q, A, H, F> TCPServer<Q, A, H, F>
[INFO] [stdout]     |                  ---------------------
[INFO] [stdout] 137 | where
[INFO] [stdout] 138 |     A: SerializeMessage,
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^ unsatisfied trait bound introduced here
[INFO] [stdout] 139 |     Q: SerializeMessage,
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^ unsatisfied trait bound introduced here
[INFO] [stdout] note: the trait `SerializeMessage` must be implemented
[INFO] [stdout]    --> src/crate_serde.rs:19:1
[INFO] [stdout]     |
[INFO] [stdout] 19  | pub trait SerializeMessage: Sized + Send + Sync + 'static {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `Response: SerializeMessage` is not satisfied
[INFO] [stdout]    --> src/crate_serde.rs:276:67
[INFO] [stdout]     |
[INFO] [stdout] 276 |                 .with_bad_request_handler(|| TCPResponse::Message(Response::World))
[INFO] [stdout]     |                                              -------------------- ^^^^^^^^^^^^^^^ the trait `SerializeMessage` is not implemented for `Response`
[INFO] [stdout]     |                                              |
[INFO] [stdout]     |                                              required by a bound introduced by this call
[INFO] [stdout]     |
[INFO] [stdout] help: this trait has no implementations, consider adding one
[INFO] [stdout]    --> src/crate_serde.rs:19:1
[INFO] [stdout]     |
[INFO] [stdout] 19  | pub trait SerializeMessage: Sized + Send + Sync + 'static {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: required by a bound in `crate_serde::TCPResponse::Message`
[INFO] [stdout]    --> src/crate_serde.rs:92:8
[INFO] [stdout]     |
[INFO] [stdout] 92  |     A: SerializeMessage,
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^ required by this bound in `TCPResponse::Message`
[INFO] [stdout] ...
[INFO] [stdout] 95  |     Message(A),
[INFO] [stdout]     |     ------- required by a bound in this tuple variant
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `Response: SerializeMessage` is not satisfied
[INFO] [stdout]    --> src/crate_serde.rs:276:46
[INFO] [stdout]     |
[INFO] [stdout] 276 |                 .with_bad_request_handler(|| TCPResponse::Message(Response::World))
[INFO] [stdout]     |                                              ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `SerializeMessage` is not implemented for `Response`
[INFO] [stdout]     |
[INFO] [stdout] help: this trait has no implementations, consider adding one
[INFO] [stdout]    --> src/crate_serde.rs:19:1
[INFO] [stdout]     |
[INFO] [stdout] 19  | pub trait SerializeMessage: Sized + Send + Sync + 'static {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: required by a bound in `crate_serde::TCPResponse`
[INFO] [stdout]    --> src/crate_serde.rs:92:8
[INFO] [stdout]     |
[INFO] [stdout] 90  | pub enum TCPResponse<A>
[INFO] [stdout]     |          ----------- required by a bound in this enum
[INFO] [stdout] 91  | where
[INFO] [stdout] 92  |     A: SerializeMessage,
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^ required by this bound in `TCPResponse`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: the function or associated item `connect` exists for struct `TCPClient<_, Response>`, but its trait bounds were not satisfied
[INFO] [stdout]    --> src/crate_serde.rs:302:56
[INFO] [stdout]     |
[INFO] [stdout] 45  | pub struct TCPClient<Q, A>
[INFO] [stdout]     | -------------------------- function or associated item `connect` not found for this struct
[INFO] [stdout] ...
[INFO] [stdout] 255 |     enum Response {
[INFO] [stdout]     |     ------------- doesn't satisfy `Response: SerializeMessage`
[INFO] [stdout] ...
[INFO] [stdout] 302 |             let mut client = TCPClient::<_, Response>::connect(HOST, PORT).await.unwrap();
[INFO] [stdout]     |                                                        ^^^^^^^ function or associated item cannot be called on `TCPClient<_, Response>` due to unsatisfied trait bounds
[INFO] [stdout]     |
[INFO] [stdout] note: trait bound `Response: SerializeMessage` was not satisfied
[INFO] [stdout]    --> src/crate_serde.rs:59:8
[INFO] [stdout]     |
[INFO] [stdout] 56  | impl<Q, A> TCPClient<Q, A>
[INFO] [stdout]     |            ---------------
[INFO] [stdout] ...
[INFO] [stdout] 59  |     A: SerializeMessage,
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^ unsatisfied trait bound introduced here
[INFO] [stdout] note: the trait `SerializeMessage` must be implemented
[INFO] [stdout]    --> src/crate_serde.rs:19:1
[INFO] [stdout]     |
[INFO] [stdout] 19  | pub trait SerializeMessage: Sized + Send + Sync + 'static {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `Response: SerializeMessage` is not satisfied
[INFO] [stdout]    --> src/crate_serde.rs:302:30
[INFO] [stdout]     |
[INFO] [stdout] 302 |             let mut client = TCPClient::<_, Response>::connect(HOST, PORT).await.unwrap();
[INFO] [stdout]     |                              ^^^^^^^^^^^^^^^^^^^^^^^^ the trait `SerializeMessage` is not implemented for `Response`
[INFO] [stdout]     |
[INFO] [stdout] help: this trait has no implementations, consider adding one
[INFO] [stdout]    --> src/crate_serde.rs:19:1
[INFO] [stdout]     |
[INFO] [stdout] 19  | pub trait SerializeMessage: Sized + Send + Sync + 'static {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: required by a bound in `crate_serde::TCPClient`
[INFO] [stdout]    --> src/crate_serde.rs:49:8
[INFO] [stdout]     |
[INFO] [stdout] 45  | pub struct TCPClient<Q, A>
[INFO] [stdout]     |            --------- required by a bound in this struct
[INFO] [stdout] ...
[INFO] [stdout] 49  |     A: SerializeMessage,
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^ required by this bound in `TCPClient`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: the function or associated item `connect` exists for struct `TCPClient<_, Response>`, but its trait bounds were not satisfied
[INFO] [stdout]    --> src/crate_serde.rs:333:56
[INFO] [stdout]     |
[INFO] [stdout] 45  | pub struct TCPClient<Q, A>
[INFO] [stdout]     | -------------------------- function or associated item `connect` not found for this struct
[INFO] [stdout] ...
[INFO] [stdout] 255 |     enum Response {
[INFO] [stdout]     |     ------------- doesn't satisfy `Response: SerializeMessage`
[INFO] [stdout] ...
[INFO] [stdout] 333 |             let mut client = TCPClient::<_, Response>::connect(HOST, PORT).await.unwrap();
[INFO] [stdout]     |                                                        ^^^^^^^ function or associated item cannot be called on `TCPClient<_, Response>` due to unsatisfied trait bounds
[INFO] [stdout]     |
[INFO] [stdout] note: trait bound `Response: SerializeMessage` was not satisfied
[INFO] [stdout]    --> src/crate_serde.rs:59:8
[INFO] [stdout]     |
[INFO] [stdout] 56  | impl<Q, A> TCPClient<Q, A>
[INFO] [stdout]     |            ---------------
[INFO] [stdout] ...
[INFO] [stdout] 59  |     A: SerializeMessage,
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^ unsatisfied trait bound introduced here
[INFO] [stdout] note: the trait `SerializeMessage` must be implemented
[INFO] [stdout]    --> src/crate_serde.rs:19:1
[INFO] [stdout]     |
[INFO] [stdout] 19  | pub trait SerializeMessage: Sized + Send + Sync + 'static {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `Response: SerializeMessage` is not satisfied
[INFO] [stdout]    --> src/crate_serde.rs:333:30
[INFO] [stdout]     |
[INFO] [stdout] 333 |             let mut client = TCPClient::<_, Response>::connect(HOST, PORT).await.unwrap();
[INFO] [stdout]     |                              ^^^^^^^^^^^^^^^^^^^^^^^^ the trait `SerializeMessage` is not implemented for `Response`
[INFO] [stdout]     |
[INFO] [stdout] help: this trait has no implementations, consider adding one
[INFO] [stdout]    --> src/crate_serde.rs:19:1
[INFO] [stdout]     |
[INFO] [stdout] 19  | pub trait SerializeMessage: Sized + Send + Sync + 'static {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: required by a bound in `crate_serde::TCPClient`
[INFO] [stdout]    --> src/crate_serde.rs:49:8
[INFO] [stdout]     |
[INFO] [stdout] 45  | pub struct TCPClient<Q, A>
[INFO] [stdout]     |            --------- required by a bound in this struct
[INFO] [stdout] ...
[INFO] [stdout] 49  |     A: SerializeMessage,
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^ required by this bound in `TCPClient`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: the function or associated item `connect` exists for struct `TCPClient<_, Response>`, but its trait bounds were not satisfied
[INFO] [stdout]    --> src/crate_serde.rs:348:56
[INFO] [stdout]     |
[INFO] [stdout] 45  | pub struct TCPClient<Q, A>
[INFO] [stdout]     | -------------------------- function or associated item `connect` not found for this struct
[INFO] [stdout] ...
[INFO] [stdout] 255 |     enum Response {
[INFO] [stdout]     |     ------------- doesn't satisfy `Response: SerializeMessage`
[INFO] [stdout] ...
[INFO] [stdout] 348 |             let mut client = TCPClient::<_, Response>::connect(HOST, PORT).await.unwrap();
[INFO] [stdout]     |                                                        ^^^^^^^ function or associated item cannot be called on `TCPClient<_, Response>` due to unsatisfied trait bounds
[INFO] [stdout]     |
[INFO] [stdout] note: trait bound `Response: SerializeMessage` was not satisfied
[INFO] [stdout]    --> src/crate_serde.rs:59:8
[INFO] [stdout]     |
[INFO] [stdout] 56  | impl<Q, A> TCPClient<Q, A>
[INFO] [stdout]     |            ---------------
[INFO] [stdout] ...
[INFO] [stdout] 59  |     A: SerializeMessage,
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^ unsatisfied trait bound introduced here
[INFO] [stdout] note: the trait `SerializeMessage` must be implemented
[INFO] [stdout]    --> src/crate_serde.rs:19:1
[INFO] [stdout]     |
[INFO] [stdout] 19  | pub trait SerializeMessage: Sized + Send + Sync + 'static {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `Response: SerializeMessage` is not satisfied
[INFO] [stdout]    --> src/crate_serde.rs:348:30
[INFO] [stdout]     |
[INFO] [stdout] 348 |             let mut client = TCPClient::<_, Response>::connect(HOST, PORT).await.unwrap();
[INFO] [stdout]     |                              ^^^^^^^^^^^^^^^^^^^^^^^^ the trait `SerializeMessage` is not implemented for `Response`
[INFO] [stdout]     |
[INFO] [stdout] help: this trait has no implementations, consider adding one
[INFO] [stdout]    --> src/crate_serde.rs:19:1
[INFO] [stdout]     |
[INFO] [stdout] 19  | pub trait SerializeMessage: Sized + Send + Sync + 'static {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: required by a bound in `crate_serde::TCPClient`
[INFO] [stdout]    --> src/crate_serde.rs:49:8
[INFO] [stdout]     |
[INFO] [stdout] 45  | pub struct TCPClient<Q, A>
[INFO] [stdout]     |            --------- required by a bound in this struct
[INFO] [stdout] ...
[INFO] [stdout] 49  |     A: SerializeMessage,
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^ required by this bound in `TCPClient`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: the function or associated item `connect` exists for struct `TCPClient<_, Response>`, but its trait bounds were not satisfied
[INFO] [stdout]    --> src/crate_serde.rs:365:56
[INFO] [stdout]     |
[INFO] [stdout] 45  | pub struct TCPClient<Q, A>
[INFO] [stdout]     | -------------------------- function or associated item `connect` not found for this struct
[INFO] [stdout] ...
[INFO] [stdout] 255 |     enum Response {
[INFO] [stdout]     |     ------------- doesn't satisfy `Response: SerializeMessage`
[INFO] [stdout] ...
[INFO] [stdout] 365 |             let mut client = TCPClient::<_, Response>::connect(HOST, PORT).await.unwrap();
[INFO] [stdout]     |                                                        ^^^^^^^ function or associated item cannot be called on `TCPClient<_, Response>` due to unsatisfied trait bounds
[INFO] [stdout]     |
[INFO] [stdout] note: trait bound `Response: SerializeMessage` was not satisfied
[INFO] [stdout]    --> src/crate_serde.rs:59:8
[INFO] [stdout]     |
[INFO] [stdout] 56  | impl<Q, A> TCPClient<Q, A>
[INFO] [stdout]     |            ---------------
[INFO] [stdout] ...
[INFO] [stdout] 59  |     A: SerializeMessage,
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^ unsatisfied trait bound introduced here
[INFO] [stdout] note: the trait `SerializeMessage` must be implemented
[INFO] [stdout]    --> src/crate_serde.rs:19:1
[INFO] [stdout]     |
[INFO] [stdout] 19  | pub trait SerializeMessage: Sized + Send + Sync + 'static {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `Response: SerializeMessage` is not satisfied
[INFO] [stdout]    --> src/crate_serde.rs:365:30
[INFO] [stdout]     |
[INFO] [stdout] 365 |             let mut client = TCPClient::<_, Response>::connect(HOST, PORT).await.unwrap();
[INFO] [stdout]     |                              ^^^^^^^^^^^^^^^^^^^^^^^^ the trait `SerializeMessage` is not implemented for `Response`
[INFO] [stdout]     |
[INFO] [stdout] help: this trait has no implementations, consider adding one
[INFO] [stdout]    --> src/crate_serde.rs:19:1
[INFO] [stdout]     |
[INFO] [stdout] 19  | pub trait SerializeMessage: Sized + Send + Sync + 'static {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: required by a bound in `crate_serde::TCPClient`
[INFO] [stdout]    --> src/crate_serde.rs:49:8
[INFO] [stdout]     |
[INFO] [stdout] 45  | pub struct TCPClient<Q, A>
[INFO] [stdout]     |            --------- required by a bound in this struct
[INFO] [stdout] ...
[INFO] [stdout] 49  |     A: SerializeMessage,
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^ required by this bound in `TCPClient`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: the function or associated item `connect` exists for struct `TCPClient<_, Response>`, but its trait bounds were not satisfied
[INFO] [stdout]    --> src/crate_serde.rs:384:57
[INFO] [stdout]     |
[INFO] [stdout] 45  | pub struct TCPClient<Q, A>
[INFO] [stdout]     | -------------------------- function or associated item `connect` not found for this struct
[INFO] [stdout] ...
[INFO] [stdout] 255 |     enum Response {
[INFO] [stdout]     |     ------------- doesn't satisfy `Response: SerializeMessage`
[INFO] [stdout] ...
[INFO] [stdout] 384 |             let mut client1 = TCPClient::<_, Response>::connect(HOST, PORT).await.unwrap();
[INFO] [stdout]     |                                                         ^^^^^^^ function or associated item cannot be called on `TCPClient<_, Response>` due to unsatisfied trait bounds
[INFO] [stdout]     |
[INFO] [stdout] note: trait bound `Response: SerializeMessage` was not satisfied
[INFO] [stdout]    --> src/crate_serde.rs:59:8
[INFO] [stdout]     |
[INFO] [stdout] 56  | impl<Q, A> TCPClient<Q, A>
[INFO] [stdout]     |            ---------------
[INFO] [stdout] ...
[INFO] [stdout] 59  |     A: SerializeMessage,
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^ unsatisfied trait bound introduced here
[INFO] [stdout] note: the trait `SerializeMessage` must be implemented
[INFO] [stdout]    --> src/crate_serde.rs:19:1
[INFO] [stdout]     |
[INFO] [stdout] 19  | pub trait SerializeMessage: Sized + Send + Sync + 'static {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `Response: SerializeMessage` is not satisfied
[INFO] [stdout]    --> src/crate_serde.rs:384:31
[INFO] [stdout]     |
[INFO] [stdout] 384 |             let mut client1 = TCPClient::<_, Response>::connect(HOST, PORT).await.unwrap();
[INFO] [stdout]     |                               ^^^^^^^^^^^^^^^^^^^^^^^^ the trait `SerializeMessage` is not implemented for `Response`
[INFO] [stdout]     |
[INFO] [stdout] help: this trait has no implementations, consider adding one
[INFO] [stdout]    --> src/crate_serde.rs:19:1
[INFO] [stdout]     |
[INFO] [stdout] 19  | pub trait SerializeMessage: Sized + Send + Sync + 'static {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: required by a bound in `crate_serde::TCPClient`
[INFO] [stdout]    --> src/crate_serde.rs:49:8
[INFO] [stdout]     |
[INFO] [stdout] 45  | pub struct TCPClient<Q, A>
[INFO] [stdout]     |            --------- required by a bound in this struct
[INFO] [stdout] ...
[INFO] [stdout] 49  |     A: SerializeMessage,
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^ required by this bound in `TCPClient`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: the function or associated item `connect` exists for struct `TCPClient<_, Response>`, but its trait bounds were not satisfied
[INFO] [stdout]    --> src/crate_serde.rs:385:57
[INFO] [stdout]     |
[INFO] [stdout] 45  | pub struct TCPClient<Q, A>
[INFO] [stdout]     | -------------------------- function or associated item `connect` not found for this struct
[INFO] [stdout] ...
[INFO] [stdout] 255 |     enum Response {
[INFO] [stdout]     |     ------------- doesn't satisfy `Response: SerializeMessage`
[INFO] [stdout] ...
[INFO] [stdout] 385 |             let mut client2 = TCPClient::<_, Response>::connect(HOST, PORT).await.unwrap();
[INFO] [stdout]     |                                                         ^^^^^^^ function or associated item cannot be called on `TCPClient<_, Response>` due to unsatisfied trait bounds
[INFO] [stdout]     |
[INFO] [stdout] note: trait bound `Response: SerializeMessage` was not satisfied
[INFO] [stdout]    --> src/crate_serde.rs:59:8
[INFO] [stdout]     |
[INFO] [stdout] 56  | impl<Q, A> TCPClient<Q, A>
[INFO] [stdout]     |            ---------------
[INFO] [stdout] ...
[INFO] [stdout] 59  |     A: SerializeMessage,
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^ unsatisfied trait bound introduced here
[INFO] [stdout] note: the trait `SerializeMessage` must be implemented
[INFO] [stdout]    --> src/crate_serde.rs:19:1
[INFO] [stdout]     |
[INFO] [stdout] 19  | pub trait SerializeMessage: Sized + Send + Sync + 'static {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `Response: SerializeMessage` is not satisfied
[INFO] [stdout]    --> src/crate_serde.rs:385:31
[INFO] [stdout]     |
[INFO] [stdout] 385 |             let mut client2 = TCPClient::<_, Response>::connect(HOST, PORT).await.unwrap();
[INFO] [stdout]     |                               ^^^^^^^^^^^^^^^^^^^^^^^^ the trait `SerializeMessage` is not implemented for `Response`
[INFO] [stdout]     |
[INFO] [stdout] help: this trait has no implementations, consider adding one
[INFO] [stdout]    --> src/crate_serde.rs:19:1
[INFO] [stdout]     |
[INFO] [stdout] 19  | pub trait SerializeMessage: Sized + Send + Sync + 'static {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: required by a bound in `crate_serde::TCPClient`
[INFO] [stdout]    --> src/crate_serde.rs:49:8
[INFO] [stdout]     |
[INFO] [stdout] 45  | pub struct TCPClient<Q, A>
[INFO] [stdout]     |            --------- required by a bound in this struct
[INFO] [stdout] ...
[INFO] [stdout] 49  |     A: SerializeMessage,
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^ required by this bound in `TCPClient`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `Response: SerializeMessage` is not satisfied
[INFO] [stdout]    --> src/crate_serde.rs:410:13
[INFO] [stdout]     |
[INFO] [stdout] 410 |             TCPServer::new(HOST, PORT, handle_requests)
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `SerializeMessage` is not implemented for `Response`
[INFO] [stdout]     |
[INFO] [stdout] help: this trait has no implementations, consider adding one
[INFO] [stdout]    --> src/crate_serde.rs:19:1
[INFO] [stdout]     |
[INFO] [stdout] 19  | pub trait SerializeMessage: Sized + Send + Sync + 'static {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: required by a bound in `crate_serde::TCPServer::<Q, A, H, F>::new`
[INFO] [stdout]    --> src/crate_serde.rs:138:8
[INFO] [stdout]     |
[INFO] [stdout] 138 |     A: SerializeMessage,
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^ required by this bound in `TCPServer::<Q, A, H, F>::new`
[INFO] [stdout] ...
[INFO] [stdout] 149 |     pub fn new(host: impl Into<String>, port: u16, handler: H) -> Arc<Self> {
[INFO] [stdout]     |            --- required by a bound in this associated function
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `crate_serde::tests::Request: SerializeMessage` is not satisfied
[INFO] [stdout]    --> src/crate_serde.rs:410:13
[INFO] [stdout]     |
[INFO] [stdout] 410 |             TCPServer::new(HOST, PORT, handle_requests)
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `SerializeMessage` is not implemented for `crate_serde::tests::Request`
[INFO] [stdout]     |
[INFO] [stdout] help: this trait has no implementations, consider adding one
[INFO] [stdout]    --> src/crate_serde.rs:19:1
[INFO] [stdout]     |
[INFO] [stdout] 19  | pub trait SerializeMessage: Sized + Send + Sync + 'static {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: required by a bound in `crate_serde::TCPServer::<Q, A, H, F>::new`
[INFO] [stdout]    --> src/crate_serde.rs:139:8
[INFO] [stdout]     |
[INFO] [stdout] 139 |     Q: SerializeMessage,
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^ required by this bound in `TCPServer::<Q, A, H, F>::new`
[INFO] [stdout] ...
[INFO] [stdout] 149 |     pub fn new(host: impl Into<String>, port: u16, handler: H) -> Arc<Self> {
[INFO] [stdout]     |            --- required by a bound in this associated function
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `crate_serde::tests::Request: SerializeMessage` is not satisfied
[INFO] [stdout]    --> src/crate_serde.rs:410:13
[INFO] [stdout]     |
[INFO] [stdout] 410 |             TCPServer::new(HOST, PORT, handle_requests)
[INFO] [stdout]     |             ^^^^^^^^^ the trait `SerializeMessage` is not implemented for `crate_serde::tests::Request`
[INFO] [stdout]     |
[INFO] [stdout] help: this trait has no implementations, consider adding one
[INFO] [stdout]    --> src/crate_serde.rs:19:1
[INFO] [stdout]     |
[INFO] [stdout] 19  | pub trait SerializeMessage: Sized + Send + Sync + 'static {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: required by a bound in `crate_serde::TCPServer`
[INFO] [stdout]    --> src/crate_serde.rs:123:8
[INFO] [stdout]     |
[INFO] [stdout] 121 | pub struct TCPServer<Q, A, H, F>
[INFO] [stdout]     |            --------- required by a bound in this struct
[INFO] [stdout] 122 | where
[INFO] [stdout] 123 |     Q: SerializeMessage,
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^ required by this bound in `TCPServer`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `Response: SerializeMessage` is not satisfied
[INFO] [stdout]    --> src/crate_serde.rs:410:13
[INFO] [stdout]     |
[INFO] [stdout] 410 |             TCPServer::new(HOST, PORT, handle_requests)
[INFO] [stdout]     |             ^^^^^^^^^ the trait `SerializeMessage` is not implemented for `Response`
[INFO] [stdout]     |
[INFO] [stdout] help: this trait has no implementations, consider adding one
[INFO] [stdout]    --> src/crate_serde.rs:19:1
[INFO] [stdout]     |
[INFO] [stdout] 19  | pub trait SerializeMessage: Sized + Send + Sync + 'static {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: required by a bound in `crate_serde::TCPServer`
[INFO] [stdout]    --> src/crate_serde.rs:124:8
[INFO] [stdout]     |
[INFO] [stdout] 121 | pub struct TCPServer<Q, A, H, F>
[INFO] [stdout]     |            --------- required by a bound in this struct
[INFO] [stdout] ...
[INFO] [stdout] 124 |     A: SerializeMessage,
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^ required by this bound in `TCPServer`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: the method `with_inactivity_timeout` exists for struct `Arc<TCPServer<Request, Response, fn(Request) -> impl Future<Output = ...> {handle_requests}, ...>>`, but its trait bounds were not satisfied
[INFO] [stdout]    --> src/crate_serde.rs:411:18
[INFO] [stdout]     |
[INFO] [stdout] 231 |       enum Request {
[INFO] [stdout]     |       ------------ doesn't satisfy `crate_serde::tests::Request: SerializeMessage`
[INFO] [stdout] ...
[INFO] [stdout] 255 |       enum Response {
[INFO] [stdout]     |       ------------- doesn't satisfy `Response: SerializeMessage`
[INFO] [stdout] ...
[INFO] [stdout] 410 | /             TCPServer::new(HOST, PORT, handle_requests)
[INFO] [stdout] 411 | |                 .with_inactivity_timeout(15)
[INFO] [stdout]     | |                 -^^^^^^^^^^^^^^^^^^^^^^^ method cannot be called due to unsatisfied trait bounds
[INFO] [stdout]     | |_________________|
[INFO] [stdout]     |
[INFO] [stdout]     |
[INFO] [stdout]     = note: the full type name has been written to '/opt/rustwide/target/debug/deps/tcp_message_io-9fed402937dbd42a.long-type-14683381456657241510.txt'
[INFO] [stdout]     = note: consider using `--verbose` to print the full type name to the console
[INFO] [stdout] note: the following trait bounds were not satisfied:
[INFO] [stdout]       `Response: SerializeMessage`
[INFO] [stdout]       `crate_serde::tests::Request: SerializeMessage`
[INFO] [stdout]    --> src/crate_serde.rs:138:8
[INFO] [stdout]     |
[INFO] [stdout] 136 | impl<Q, A, H, F> TCPServer<Q, A, H, F>
[INFO] [stdout]     |                  ---------------------
[INFO] [stdout] 137 | where
[INFO] [stdout] 138 |     A: SerializeMessage,
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^ unsatisfied trait bound introduced here
[INFO] [stdout] 139 |     Q: SerializeMessage,
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^ unsatisfied trait bound introduced here
[INFO] [stdout] note: the trait `SerializeMessage` must be implemented
[INFO] [stdout]    --> src/crate_serde.rs:19:1
[INFO] [stdout]     |
[INFO] [stdout] 19  | pub trait SerializeMessage: Sized + Send + Sync + 'static {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] Some errors have detailed explanations: E0277, E0432, E0599.
[INFO] [stdout] 
[INFO] [stdout] For more information about an error, try `rustc --explain E0277`.
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `tcp_message_io` (lib test) due to 42 previous errors
[INFO] running `Command { std: "docker" "inspect" "4217f17ef6b728a808c764688e9edea3be0cbed87e8698f46df2b5de7bf246a7", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "4217f17ef6b728a808c764688e9edea3be0cbed87e8698f46df2b5de7bf246a7", kill_on_drop: false }`
[INFO] [stdout] 4217f17ef6b728a808c764688e9edea3be0cbed87e8698f46df2b5de7bf246a7
