[INFO] fetching crate serial2 0.2.12...
[INFO] testing serial2-0.2.12 against 1.75.0 for beta-1.76-1
[INFO] extracting crate serial2 0.2.12 into /workspace/builds/worker-0-tc1/source
[INFO] validating manifest of crates.io crate serial2 0.2.12 on toolchain 1.75.0
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+1.75.0" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] started tweaking crates.io crate serial2 0.2.12
[INFO] finished tweaking crates.io crate serial2 0.2.12
[INFO] tweaked toml for crates.io crate serial2 0.2.12 written to /workspace/builds/worker-0-tc1/source/Cargo.toml
[INFO] crate crates.io crate serial2 0.2.12 already has a lockfile, it will not be regenerated
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+1.75.0" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Updating crates.io index
[INFO] [stderr]  Downloading crates ...
[INFO] [stderr]   Downloaded assert2 v0.3.11
[INFO] [stderr]   Downloaded assert2-macros v0.3.11
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-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" "+1.75.0" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] 216b3fb04766935094a9858ea30d41878d54956a993e8e854af92c4c80a43067
[INFO] running `Command { std: "docker" "start" "-a" "216b3fb04766935094a9858ea30d41878d54956a993e8e854af92c4c80a43067", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "216b3fb04766935094a9858ea30d41878d54956a993e8e854af92c4c80a43067", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "216b3fb04766935094a9858ea30d41878d54956a993e8e854af92c4c80a43067", kill_on_drop: false }`
[INFO] [stdout] 216b3fb04766935094a9858ea30d41878d54956a993e8e854af92c4c80a43067
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-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=warn" "-e" "RUSTDOCFLAGS=--cap-lints=warn" "-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" "+1.75.0" "build" "--frozen" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 5e9ac20f13ce772d778b342ea226b8fb5592683050dc89291ccf37088c9c1faa
[INFO] running `Command { std: "docker" "start" "-a" "5e9ac20f13ce772d778b342ea226b8fb5592683050dc89291ccf37088c9c1faa", kill_on_drop: false }`
[INFO] [stderr]    Compiling serial2 v0.2.12 (/opt/rustwide/workdir)
[INFO] [stderr]     Finished dev [unoptimized + debuginfo] target(s) in 0.18s
[INFO] running `Command { std: "docker" "inspect" "5e9ac20f13ce772d778b342ea226b8fb5592683050dc89291ccf37088c9c1faa", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "5e9ac20f13ce772d778b342ea226b8fb5592683050dc89291ccf37088c9c1faa", kill_on_drop: false }`
[INFO] [stdout] 5e9ac20f13ce772d778b342ea226b8fb5592683050dc89291ccf37088c9c1faa
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-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=warn" "-e" "RUSTDOCFLAGS=--cap-lints=warn" "-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" "+1.75.0" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 615f7c0275a0f9dfcf1af464b3225264041d4faa441b0db86dce706eb3bc840e
[INFO] running `Command { std: "docker" "start" "-a" "615f7c0275a0f9dfcf1af464b3225264041d4faa441b0db86dce706eb3bc840e", kill_on_drop: false }`
[INFO] [stderr]    Compiling semver v1.0.20
[INFO] [stderr]    Compiling rustix v0.38.26
[INFO] [stderr]    Compiling syn v1.0.109
[INFO] [stderr]    Compiling serde v1.0.193
[INFO] [stderr]    Compiling yansi v0.5.1
[INFO] [stderr]    Compiling rustc_version v0.4.0
[INFO] [stderr]    Compiling assert2-macros v0.3.11
[INFO] [stderr]    Compiling is-terminal v0.4.9
[INFO] [stderr]    Compiling serde_json v1.0.108
[INFO] [stderr]    Compiling assert2 v0.3.11
[INFO] [stderr]    Compiling serial2 v0.2.12 (/opt/rustwide/workdir)
[INFO] [stdout] error[E0277]: the trait bound `CharSize: serde::ser::Serialize` is not satisfied
[INFO] [stdout]     --> tests/serde.rs:5:46
[INFO] [stdout]      |
[INFO] [stdout] 5    |     assert!(let Ok("5") = serde_json::to_string(&serial2::CharSize::Bits5).as_deref());
[INFO] [stdout]      |                           --------------------- ^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `serde::ser::Serialize` is not implemented for `CharSize`
[INFO] [stdout]      |                           |
[INFO] [stdout]      |                           required by a bound introduced by this call
[INFO] [stdout]      |
[INFO] [stdout]      = help: the following other types implement trait `serde::ser::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 130 others
[INFO] [stdout] note: required by a bound in `serde_json::to_string`
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-6f17d22bba15001f/serde_json-1.0.108/src/ser.rs:2209:17
[INFO] [stdout]      |
[INFO] [stdout] 2207 | pub fn to_string<T>(value: &T) -> Result<String>
[INFO] [stdout]      |        --------- required by a bound in this function
[INFO] [stdout] 2208 | where
[INFO] [stdout] 2209 |     T: ?Sized + Serialize,
[INFO] [stdout]      |                 ^^^^^^^^^ required by this bound in `to_string`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `CharSize: serde::ser::Serialize` is not satisfied
[INFO] [stdout]     --> tests/serde.rs:6:46
[INFO] [stdout]      |
[INFO] [stdout] 6    |     assert!(let Ok("6") = serde_json::to_string(&serial2::CharSize::Bits6).as_deref());
[INFO] [stdout]      |                           --------------------- ^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `serde::ser::Serialize` is not implemented for `CharSize`
[INFO] [stdout]      |                           |
[INFO] [stdout]      |                           required by a bound introduced by this call
[INFO] [stdout]      |
[INFO] [stdout]      = help: the following other types implement trait `serde::ser::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 130 others
[INFO] [stdout] note: required by a bound in `serde_json::to_string`
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-6f17d22bba15001f/serde_json-1.0.108/src/ser.rs:2209:17
[INFO] [stdout]      |
[INFO] [stdout] 2207 | pub fn to_string<T>(value: &T) -> Result<String>
[INFO] [stdout]      |        --------- required by a bound in this function
[INFO] [stdout] 2208 | where
[INFO] [stdout] 2209 |     T: ?Sized + Serialize,
[INFO] [stdout]      |                 ^^^^^^^^^ required by this bound in `to_string`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `CharSize: serde::ser::Serialize` is not satisfied
[INFO] [stdout]     --> tests/serde.rs:7:46
[INFO] [stdout]      |
[INFO] [stdout] 7    |     assert!(let Ok("7") = serde_json::to_string(&serial2::CharSize::Bits7).as_deref());
[INFO] [stdout]      |                           --------------------- ^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `serde::ser::Serialize` is not implemented for `CharSize`
[INFO] [stdout]      |                           |
[INFO] [stdout]      |                           required by a bound introduced by this call
[INFO] [stdout]      |
[INFO] [stdout]      = help: the following other types implement trait `serde::ser::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 130 others
[INFO] [stdout] note: required by a bound in `serde_json::to_string`
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-6f17d22bba15001f/serde_json-1.0.108/src/ser.rs:2209:17
[INFO] [stdout]      |
[INFO] [stdout] 2207 | pub fn to_string<T>(value: &T) -> Result<String>
[INFO] [stdout]      |        --------- required by a bound in this function
[INFO] [stdout] 2208 | where
[INFO] [stdout] 2209 |     T: ?Sized + Serialize,
[INFO] [stdout]      |                 ^^^^^^^^^ required by this bound in `to_string`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `CharSize: serde::ser::Serialize` is not satisfied
[INFO] [stdout]     --> tests/serde.rs:8:46
[INFO] [stdout]      |
[INFO] [stdout] 8    |     assert!(let Ok("8") = serde_json::to_string(&serial2::CharSize::Bits8).as_deref());
[INFO] [stdout]      |                           --------------------- ^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `serde::ser::Serialize` is not implemented for `CharSize`
[INFO] [stdout]      |                           |
[INFO] [stdout]      |                           required by a bound introduced by this call
[INFO] [stdout]      |
[INFO] [stdout]      = help: the following other types implement trait `serde::ser::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 130 others
[INFO] [stdout] note: required by a bound in `serde_json::to_string`
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-6f17d22bba15001f/serde_json-1.0.108/src/ser.rs:2209:17
[INFO] [stdout]      |
[INFO] [stdout] 2207 | pub fn to_string<T>(value: &T) -> Result<String>
[INFO] [stdout]      |        --------- required by a bound in this function
[INFO] [stdout] 2208 | where
[INFO] [stdout] 2209 |     T: ?Sized + Serialize,
[INFO] [stdout]      |                 ^^^^^^^^^ required by this bound in `to_string`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `CharSize: serde::de::Deserialize<'_>` is not satisfied
[INFO] [stdout]     --> tests/serde.rs:10:45
[INFO] [stdout]      |
[INFO] [stdout] 10   |     assert!(let Ok(serial2::CharSize::Bits5) = serde_json::from_str::<serial2::CharSize>("5"));
[INFO] [stdout]      |                                                ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `serde::de::Deserialize<'_>` is not implemented for `CharSize`
[INFO] [stdout]      |
[INFO] [stdout]      = help: the following other types implement trait `serde::de::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 130 others
[INFO] [stdout] note: required by a bound in `serde_json::from_str`
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-6f17d22bba15001f/serde_json-1.0.108/src/de.rs:2675:8
[INFO] [stdout]      |
[INFO] [stdout] 2673 | pub fn from_str<'a, T>(s: &'a str) -> Result<T>
[INFO] [stdout]      |        -------- required by a bound in this function
[INFO] [stdout] 2674 | where
[INFO] [stdout] 2675 |     T: de::Deserialize<'a>,
[INFO] [stdout]      |        ^^^^^^^^^^^^^^^^^^^ required by this bound in `from_str`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `CharSize: serde::de::Deserialize<'_>` is not satisfied
[INFO] [stdout]     --> tests/serde.rs:11:45
[INFO] [stdout]      |
[INFO] [stdout] 11   |     assert!(let Ok(serial2::CharSize::Bits6) = serde_json::from_str::<serial2::CharSize>("6"));
[INFO] [stdout]      |                                                ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `serde::de::Deserialize<'_>` is not implemented for `CharSize`
[INFO] [stdout]      |
[INFO] [stdout]      = help: the following other types implement trait `serde::de::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 130 others
[INFO] [stdout] note: required by a bound in `serde_json::from_str`
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-6f17d22bba15001f/serde_json-1.0.108/src/de.rs:2675:8
[INFO] [stdout]      |
[INFO] [stdout] 2673 | pub fn from_str<'a, T>(s: &'a str) -> Result<T>
[INFO] [stdout]      |        -------- required by a bound in this function
[INFO] [stdout] 2674 | where
[INFO] [stdout] 2675 |     T: de::Deserialize<'a>,
[INFO] [stdout]      |        ^^^^^^^^^^^^^^^^^^^ required by this bound in `from_str`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `CharSize: serde::de::Deserialize<'_>` is not satisfied
[INFO] [stdout]     --> tests/serde.rs:12:45
[INFO] [stdout]      |
[INFO] [stdout] 12   |     assert!(let Ok(serial2::CharSize::Bits7) = serde_json::from_str::<serial2::CharSize>("7"));
[INFO] [stdout]      |                                                ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `serde::de::Deserialize<'_>` is not implemented for `CharSize`
[INFO] [stdout]      |
[INFO] [stdout]      = help: the following other types implement trait `serde::de::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 130 others
[INFO] [stdout] note: required by a bound in `serde_json::from_str`
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-6f17d22bba15001f/serde_json-1.0.108/src/de.rs:2675:8
[INFO] [stdout]      |
[INFO] [stdout] 2673 | pub fn from_str<'a, T>(s: &'a str) -> Result<T>
[INFO] [stdout]      |        -------- required by a bound in this function
[INFO] [stdout] 2674 | where
[INFO] [stdout] 2675 |     T: de::Deserialize<'a>,
[INFO] [stdout]      |        ^^^^^^^^^^^^^^^^^^^ required by this bound in `from_str`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `CharSize: serde::de::Deserialize<'_>` is not satisfied
[INFO] [stdout]     --> tests/serde.rs:13:45
[INFO] [stdout]      |
[INFO] [stdout] 13   |     assert!(let Ok(serial2::CharSize::Bits8) = serde_json::from_str::<serial2::CharSize>("8"));
[INFO] [stdout]      |                                                ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `serde::de::Deserialize<'_>` is not implemented for `CharSize`
[INFO] [stdout]      |
[INFO] [stdout]      = help: the following other types implement trait `serde::de::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 130 others
[INFO] [stdout] note: required by a bound in `serde_json::from_str`
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-6f17d22bba15001f/serde_json-1.0.108/src/de.rs:2675:8
[INFO] [stdout]      |
[INFO] [stdout] 2673 | pub fn from_str<'a, T>(s: &'a str) -> Result<T>
[INFO] [stdout]      |        -------- required by a bound in this function
[INFO] [stdout] 2674 | where
[INFO] [stdout] 2675 |     T: de::Deserialize<'a>,
[INFO] [stdout]      |        ^^^^^^^^^^^^^^^^^^^ required by this bound in `from_str`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `CharSize: serde::de::Deserialize<'_>` is not satisfied
[INFO] [stdout]     --> tests/serde.rs:15:23
[INFO] [stdout]      |
[INFO] [stdout] 15   |     let_assert!(Err(e) = serde_json::from_str::<serial2::CharSize>("4"));
[INFO] [stdout]      |                          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `serde::de::Deserialize<'_>` is not implemented for `CharSize`
[INFO] [stdout]      |
[INFO] [stdout]      = help: the following other types implement trait `serde::de::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 130 others
[INFO] [stdout] note: required by a bound in `serde_json::from_str`
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-6f17d22bba15001f/serde_json-1.0.108/src/de.rs:2675:8
[INFO] [stdout]      |
[INFO] [stdout] 2673 | pub fn from_str<'a, T>(s: &'a str) -> Result<T>
[INFO] [stdout]      |        -------- required by a bound in this function
[INFO] [stdout] 2674 | where
[INFO] [stdout] 2675 |     T: de::Deserialize<'a>,
[INFO] [stdout]      |        ^^^^^^^^^^^^^^^^^^^ required by this bound in `from_str`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `CharSize: serde::de::Deserialize<'_>` is not satisfied
[INFO] [stdout]     --> tests/serde.rs:18:23
[INFO] [stdout]      |
[INFO] [stdout] 18   |     let_assert!(Err(e) = serde_json::from_str::<serial2::CharSize>("9"));
[INFO] [stdout]      |                          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `serde::de::Deserialize<'_>` is not implemented for `CharSize`
[INFO] [stdout]      |
[INFO] [stdout]      = help: the following other types implement trait `serde::de::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 130 others
[INFO] [stdout] note: required by a bound in `serde_json::from_str`
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-6f17d22bba15001f/serde_json-1.0.108/src/de.rs:2675:8
[INFO] [stdout]      |
[INFO] [stdout] 2673 | pub fn from_str<'a, T>(s: &'a str) -> Result<T>
[INFO] [stdout]      |        -------- required by a bound in this function
[INFO] [stdout] 2674 | where
[INFO] [stdout] 2675 |     T: de::Deserialize<'a>,
[INFO] [stdout]      |        ^^^^^^^^^^^^^^^^^^^ required by this bound in `from_str`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `CharSize: serde::de::Deserialize<'_>` is not satisfied
[INFO] [stdout]     --> tests/serde.rs:21:23
[INFO] [stdout]      |
[INFO] [stdout] 21   |     let_assert!(Err(e) = serde_json::from_str::<serial2::CharSize>("\"5\""));
[INFO] [stdout]      |                          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `serde::de::Deserialize<'_>` is not implemented for `CharSize`
[INFO] [stdout]      |
[INFO] [stdout]      = help: the following other types implement trait `serde::de::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 130 others
[INFO] [stdout] note: required by a bound in `serde_json::from_str`
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-6f17d22bba15001f/serde_json-1.0.108/src/de.rs:2675:8
[INFO] [stdout]      |
[INFO] [stdout] 2673 | pub fn from_str<'a, T>(s: &'a str) -> Result<T>
[INFO] [stdout]      |        -------- required by a bound in this function
[INFO] [stdout] 2674 | where
[INFO] [stdout] 2675 |     T: de::Deserialize<'a>,
[INFO] [stdout]      |        ^^^^^^^^^^^^^^^^^^^ required by this bound in `from_str`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `StopBits: serde::ser::Serialize` is not satisfied
[INFO] [stdout]     --> tests/serde.rs:27:46
[INFO] [stdout]      |
[INFO] [stdout] 27   |     assert!(let Ok("1") = serde_json::to_string(&serial2::StopBits::One).as_deref());
[INFO] [stdout]      |                           --------------------- ^^^^^^^^^^^^^^^^^^^^^^^ the trait `serde::ser::Serialize` is not implemented for `StopBits`
[INFO] [stdout]      |                           |
[INFO] [stdout]      |                           required by a bound introduced by this call
[INFO] [stdout]      |
[INFO] [stdout]      = help: the following other types implement trait `serde::ser::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 130 others
[INFO] [stdout] note: required by a bound in `serde_json::to_string`
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-6f17d22bba15001f/serde_json-1.0.108/src/ser.rs:2209:17
[INFO] [stdout]      |
[INFO] [stdout] 2207 | pub fn to_string<T>(value: &T) -> Result<String>
[INFO] [stdout]      |        --------- required by a bound in this function
[INFO] [stdout] 2208 | where
[INFO] [stdout] 2209 |     T: ?Sized + Serialize,
[INFO] [stdout]      |                 ^^^^^^^^^ required by this bound in `to_string`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `StopBits: serde::ser::Serialize` is not satisfied
[INFO] [stdout]     --> tests/serde.rs:28:46
[INFO] [stdout]      |
[INFO] [stdout] 28   |     assert!(let Ok("2") = serde_json::to_string(&serial2::StopBits::Two).as_deref());
[INFO] [stdout]      |                           --------------------- ^^^^^^^^^^^^^^^^^^^^^^^ the trait `serde::ser::Serialize` is not implemented for `StopBits`
[INFO] [stdout]      |                           |
[INFO] [stdout]      |                           required by a bound introduced by this call
[INFO] [stdout]      |
[INFO] [stdout]      = help: the following other types implement trait `serde::ser::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 130 others
[INFO] [stdout] note: required by a bound in `serde_json::to_string`
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-6f17d22bba15001f/serde_json-1.0.108/src/ser.rs:2209:17
[INFO] [stdout]      |
[INFO] [stdout] 2207 | pub fn to_string<T>(value: &T) -> Result<String>
[INFO] [stdout]      |        --------- required by a bound in this function
[INFO] [stdout] 2208 | where
[INFO] [stdout] 2209 |     T: ?Sized + Serialize,
[INFO] [stdout]      |                 ^^^^^^^^^ required by this bound in `to_string`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `StopBits: serde::de::Deserialize<'_>` is not satisfied
[INFO] [stdout]     --> tests/serde.rs:30:43
[INFO] [stdout]      |
[INFO] [stdout] 30   |     assert!(let Ok(serial2::StopBits::One) = serde_json::from_str::<serial2::StopBits>("1"));
[INFO] [stdout]      |                                              ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `serde::de::Deserialize<'_>` is not implemented for `StopBits`
[INFO] [stdout]      |
[INFO] [stdout]      = help: the following other types implement trait `serde::de::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 130 others
[INFO] [stdout] note: required by a bound in `serde_json::from_str`
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-6f17d22bba15001f/serde_json-1.0.108/src/de.rs:2675:8
[INFO] [stdout]      |
[INFO] [stdout] 2673 | pub fn from_str<'a, T>(s: &'a str) -> Result<T>
[INFO] [stdout]      |        -------- required by a bound in this function
[INFO] [stdout] 2674 | where
[INFO] [stdout] 2675 |     T: de::Deserialize<'a>,
[INFO] [stdout]      |        ^^^^^^^^^^^^^^^^^^^ required by this bound in `from_str`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `StopBits: serde::de::Deserialize<'_>` is not satisfied
[INFO] [stdout]     --> tests/serde.rs:31:43
[INFO] [stdout]      |
[INFO] [stdout] 31   |     assert!(let Ok(serial2::StopBits::Two) = serde_json::from_str::<serial2::StopBits>("2"));
[INFO] [stdout]      |                                              ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `serde::de::Deserialize<'_>` is not implemented for `StopBits`
[INFO] [stdout]      |
[INFO] [stdout]      = help: the following other types implement trait `serde::de::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 130 others
[INFO] [stdout] note: required by a bound in `serde_json::from_str`
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-6f17d22bba15001f/serde_json-1.0.108/src/de.rs:2675:8
[INFO] [stdout]      |
[INFO] [stdout] 2673 | pub fn from_str<'a, T>(s: &'a str) -> Result<T>
[INFO] [stdout]      |        -------- required by a bound in this function
[INFO] [stdout] 2674 | where
[INFO] [stdout] 2675 |     T: de::Deserialize<'a>,
[INFO] [stdout]      |        ^^^^^^^^^^^^^^^^^^^ required by this bound in `from_str`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `StopBits: serde::de::Deserialize<'_>` is not satisfied
[INFO] [stdout]     --> tests/serde.rs:33:23
[INFO] [stdout]      |
[INFO] [stdout] 33   |     let_assert!(Err(e) = serde_json::from_str::<serial2::StopBits>("0"));
[INFO] [stdout]      |                          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `serde::de::Deserialize<'_>` is not implemented for `StopBits`
[INFO] [stdout]      |
[INFO] [stdout]      = help: the following other types implement trait `serde::de::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 130 others
[INFO] [stdout] note: required by a bound in `serde_json::from_str`
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-6f17d22bba15001f/serde_json-1.0.108/src/de.rs:2675:8
[INFO] [stdout]      |
[INFO] [stdout] 2673 | pub fn from_str<'a, T>(s: &'a str) -> Result<T>
[INFO] [stdout]      |        -------- required by a bound in this function
[INFO] [stdout] 2674 | where
[INFO] [stdout] 2675 |     T: de::Deserialize<'a>,
[INFO] [stdout]      |        ^^^^^^^^^^^^^^^^^^^ required by this bound in `from_str`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `StopBits: serde::de::Deserialize<'_>` is not satisfied
[INFO] [stdout]     --> tests/serde.rs:36:23
[INFO] [stdout]      |
[INFO] [stdout] 36   |     let_assert!(Err(e) = serde_json::from_str::<serial2::StopBits>("3"));
[INFO] [stdout]      |                          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `serde::de::Deserialize<'_>` is not implemented for `StopBits`
[INFO] [stdout]      |
[INFO] [stdout]      = help: the following other types implement trait `serde::de::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 130 others
[INFO] [stdout] note: required by a bound in `serde_json::from_str`
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-6f17d22bba15001f/serde_json-1.0.108/src/de.rs:2675:8
[INFO] [stdout]      |
[INFO] [stdout] 2673 | pub fn from_str<'a, T>(s: &'a str) -> Result<T>
[INFO] [stdout]      |        -------- required by a bound in this function
[INFO] [stdout] 2674 | where
[INFO] [stdout] 2675 |     T: de::Deserialize<'a>,
[INFO] [stdout]      |        ^^^^^^^^^^^^^^^^^^^ required by this bound in `from_str`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `StopBits: serde::de::Deserialize<'_>` is not satisfied
[INFO] [stdout]     --> tests/serde.rs:39:23
[INFO] [stdout]      |
[INFO] [stdout] 39   |     let_assert!(Err(e) = serde_json::from_str::<serial2::StopBits>("\"1\""));
[INFO] [stdout]      |                          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `serde::de::Deserialize<'_>` is not implemented for `StopBits`
[INFO] [stdout]      |
[INFO] [stdout]      = help: the following other types implement trait `serde::de::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 130 others
[INFO] [stdout] note: required by a bound in `serde_json::from_str`
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-6f17d22bba15001f/serde_json-1.0.108/src/de.rs:2675:8
[INFO] [stdout]      |
[INFO] [stdout] 2673 | pub fn from_str<'a, T>(s: &'a str) -> Result<T>
[INFO] [stdout]      |        -------- required by a bound in this function
[INFO] [stdout] 2674 | where
[INFO] [stdout] 2675 |     T: de::Deserialize<'a>,
[INFO] [stdout]      |        ^^^^^^^^^^^^^^^^^^^ required by this bound in `from_str`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `Parity: serde::ser::Serialize` is not satisfied
[INFO] [stdout]     --> tests/serde.rs:45:53
[INFO] [stdout]      |
[INFO] [stdout] 45   |     assert!(let Ok("\"none\"") = serde_json::to_string(&serial2::Parity::None).as_deref());
[INFO] [stdout]      |                                  --------------------- ^^^^^^^^^^^^^^^^^^^^^^ the trait `serde::ser::Serialize` is not implemented for `Parity`
[INFO] [stdout]      |                                  |
[INFO] [stdout]      |                                  required by a bound introduced by this call
[INFO] [stdout]      |
[INFO] [stdout]      = help: the following other types implement trait `serde::ser::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 130 others
[INFO] [stdout] note: required by a bound in `serde_json::to_string`
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-6f17d22bba15001f/serde_json-1.0.108/src/ser.rs:2209:17
[INFO] [stdout]      |
[INFO] [stdout] 2207 | pub fn to_string<T>(value: &T) -> Result<String>
[INFO] [stdout]      |        --------- required by a bound in this function
[INFO] [stdout] 2208 | where
[INFO] [stdout] 2209 |     T: ?Sized + Serialize,
[INFO] [stdout]      |                 ^^^^^^^^^ required by this bound in `to_string`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `Parity: serde::ser::Serialize` is not satisfied
[INFO] [stdout]     --> tests/serde.rs:46:53
[INFO] [stdout]      |
[INFO] [stdout] 46   |     assert!(let Ok("\"even\"") = serde_json::to_string(&serial2::Parity::Even).as_deref());
[INFO] [stdout]      |                                  --------------------- ^^^^^^^^^^^^^^^^^^^^^^ the trait `serde::ser::Serialize` is not implemented for `Parity`
[INFO] [stdout]      |                                  |
[INFO] [stdout]      |                                  required by a bound introduced by this call
[INFO] [stdout]      |
[INFO] [stdout]      = help: the following other types implement trait `serde::ser::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 130 others
[INFO] [stdout] note: required by a bound in `serde_json::to_string`
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-6f17d22bba15001f/serde_json-1.0.108/src/ser.rs:2209:17
[INFO] [stdout]      |
[INFO] [stdout] 2207 | pub fn to_string<T>(value: &T) -> Result<String>
[INFO] [stdout]      |        --------- required by a bound in this function
[INFO] [stdout] 2208 | where
[INFO] [stdout] 2209 |     T: ?Sized + Serialize,
[INFO] [stdout]      |                 ^^^^^^^^^ required by this bound in `to_string`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `Parity: serde::ser::Serialize` is not satisfied
[INFO] [stdout]     --> tests/serde.rs:47:52
[INFO] [stdout]      |
[INFO] [stdout] 47   |     assert!(let Ok("\"odd\"") = serde_json::to_string(&serial2::Parity::Odd).as_deref());
[INFO] [stdout]      |                                 --------------------- ^^^^^^^^^^^^^^^^^^^^^ the trait `serde::ser::Serialize` is not implemented for `Parity`
[INFO] [stdout]      |                                 |
[INFO] [stdout]      |                                 required by a bound introduced by this call
[INFO] [stdout]      |
[INFO] [stdout]      = help: the following other types implement trait `serde::ser::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 130 others
[INFO] [stdout] note: required by a bound in `serde_json::to_string`
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-6f17d22bba15001f/serde_json-1.0.108/src/ser.rs:2209:17
[INFO] [stdout]      |
[INFO] [stdout] 2207 | pub fn to_string<T>(value: &T) -> Result<String>
[INFO] [stdout]      |        --------- required by a bound in this function
[INFO] [stdout] 2208 | where
[INFO] [stdout] 2209 |     T: ?Sized + Serialize,
[INFO] [stdout]      |                 ^^^^^^^^^ required by this bound in `to_string`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `Parity: serde::de::Deserialize<'_>` is not satisfied
[INFO] [stdout]     --> tests/serde.rs:49:42
[INFO] [stdout]      |
[INFO] [stdout] 49   |     assert!(let Ok(serial2::Parity::None) = serde_json::from_str::<serial2::Parity>("\"none\""));
[INFO] [stdout]      |                                             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `serde::de::Deserialize<'_>` is not implemented for `Parity`
[INFO] [stdout]      |
[INFO] [stdout]      = help: the following other types implement trait `serde::de::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 130 others
[INFO] [stdout] note: required by a bound in `serde_json::from_str`
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-6f17d22bba15001f/serde_json-1.0.108/src/de.rs:2675:8
[INFO] [stdout]      |
[INFO] [stdout] 2673 | pub fn from_str<'a, T>(s: &'a str) -> Result<T>
[INFO] [stdout]      |        -------- required by a bound in this function
[INFO] [stdout] 2674 | where
[INFO] [stdout] 2675 |     T: de::Deserialize<'a>,
[INFO] [stdout]      |        ^^^^^^^^^^^^^^^^^^^ required by this bound in `from_str`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `Parity: serde::de::Deserialize<'_>` is not satisfied
[INFO] [stdout]     --> tests/serde.rs:50:42
[INFO] [stdout]      |
[INFO] [stdout] 50   |     assert!(let Ok(serial2::Parity::Even) = serde_json::from_str::<serial2::Parity>("\"even\""));
[INFO] [stdout]      |                                             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `serde::de::Deserialize<'_>` is not implemented for `Parity`
[INFO] [stdout]      |
[INFO] [stdout]      = help: the following other types implement trait `serde::de::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 130 others
[INFO] [stdout] note: required by a bound in `serde_json::from_str`
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-6f17d22bba15001f/serde_json-1.0.108/src/de.rs:2675:8
[INFO] [stdout]      |
[INFO] [stdout] 2673 | pub fn from_str<'a, T>(s: &'a str) -> Result<T>
[INFO] [stdout]      |        -------- required by a bound in this function
[INFO] [stdout] 2674 | where
[INFO] [stdout] 2675 |     T: de::Deserialize<'a>,
[INFO] [stdout]      |        ^^^^^^^^^^^^^^^^^^^ required by this bound in `from_str`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `Parity: serde::de::Deserialize<'_>` is not satisfied
[INFO] [stdout]     --> tests/serde.rs:51:41
[INFO] [stdout]      |
[INFO] [stdout] 51   |     assert!(let Ok(serial2::Parity::Odd) = serde_json::from_str::<serial2::Parity>("\"odd\""));
[INFO] [stdout]      |                                            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `serde::de::Deserialize<'_>` is not implemented for `Parity`
[INFO] [stdout]      |
[INFO] [stdout]      = help: the following other types implement trait `serde::de::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 130 others
[INFO] [stdout] note: required by a bound in `serde_json::from_str`
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-6f17d22bba15001f/serde_json-1.0.108/src/de.rs:2675:8
[INFO] [stdout]      |
[INFO] [stdout] 2673 | pub fn from_str<'a, T>(s: &'a str) -> Result<T>
[INFO] [stdout]      |        -------- required by a bound in this function
[INFO] [stdout] 2674 | where
[INFO] [stdout] 2675 |     T: de::Deserialize<'a>,
[INFO] [stdout]      |        ^^^^^^^^^^^^^^^^^^^ required by this bound in `from_str`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `Parity: serde::de::Deserialize<'_>` is not satisfied
[INFO] [stdout]     --> tests/serde.rs:53:23
[INFO] [stdout]      |
[INFO] [stdout] 53   |     let_assert!(Err(e) = serde_json::from_str::<serial2::Parity>("\"even-then-odd\""));
[INFO] [stdout]      |                          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `serde::de::Deserialize<'_>` is not implemented for `Parity`
[INFO] [stdout]      |
[INFO] [stdout]      = help: the following other types implement trait `serde::de::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 130 others
[INFO] [stdout] note: required by a bound in `serde_json::from_str`
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-6f17d22bba15001f/serde_json-1.0.108/src/de.rs:2675:8
[INFO] [stdout]      |
[INFO] [stdout] 2673 | pub fn from_str<'a, T>(s: &'a str) -> Result<T>
[INFO] [stdout]      |        -------- required by a bound in this function
[INFO] [stdout] 2674 | where
[INFO] [stdout] 2675 |     T: de::Deserialize<'a>,
[INFO] [stdout]      |        ^^^^^^^^^^^^^^^^^^^ required by this bound in `from_str`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `FlowControl: serde::ser::Serialize` is not satisfied
[INFO] [stdout]     --> tests/serde.rs:59:53
[INFO] [stdout]      |
[INFO] [stdout] 59   |     assert!(let Ok("\"none\"") = serde_json::to_string(&serial2::FlowControl::None).as_deref());
[INFO] [stdout]      |                                  --------------------- ^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `serde::ser::Serialize` is not implemented for `FlowControl`
[INFO] [stdout]      |                                  |
[INFO] [stdout]      |                                  required by a bound introduced by this call
[INFO] [stdout]      |
[INFO] [stdout]      = help: the following other types implement trait `serde::ser::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 130 others
[INFO] [stdout] note: required by a bound in `serde_json::to_string`
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-6f17d22bba15001f/serde_json-1.0.108/src/ser.rs:2209:17
[INFO] [stdout]      |
[INFO] [stdout] 2207 | pub fn to_string<T>(value: &T) -> Result<String>
[INFO] [stdout]      |        --------- required by a bound in this function
[INFO] [stdout] 2208 | where
[INFO] [stdout] 2209 |     T: ?Sized + Serialize,
[INFO] [stdout]      |                 ^^^^^^^^^ required by this bound in `to_string`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `FlowControl: serde::ser::Serialize` is not satisfied
[INFO] [stdout]     --> tests/serde.rs:60:57
[INFO] [stdout]      |
[INFO] [stdout] 60   |     assert!(let Ok("\"xon/xoff\"") = serde_json::to_string(&serial2::FlowControl::XonXoff).as_deref());
[INFO] [stdout]      |                                      --------------------- ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `serde::ser::Serialize` is not implemented for `FlowControl`
[INFO] [stdout]      |                                      |
[INFO] [stdout]      |                                      required by a bound introduced by this call
[INFO] [stdout]      |
[INFO] [stdout]      = help: the following other types implement trait `serde::ser::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 130 others
[INFO] [stdout] note: required by a bound in `serde_json::to_string`
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-6f17d22bba15001f/serde_json-1.0.108/src/ser.rs:2209:17
[INFO] [stdout]      |
[INFO] [stdout] 2207 | pub fn to_string<T>(value: &T) -> Result<String>
[INFO] [stdout]      |        --------- required by a bound in this function
[INFO] [stdout] 2208 | where
[INFO] [stdout] 2209 |     T: ?Sized + Serialize,
[INFO] [stdout]      |                 ^^^^^^^^^ required by this bound in `to_string`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `FlowControl: serde::ser::Serialize` is not satisfied
[INFO] [stdout]     --> tests/serde.rs:61:56
[INFO] [stdout]      |
[INFO] [stdout] 61   |     assert!(let Ok("\"rts/cts\"") = serde_json::to_string(&serial2::FlowControl::RtsCts).as_deref());
[INFO] [stdout]      |                                     --------------------- ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `serde::ser::Serialize` is not implemented for `FlowControl`
[INFO] [stdout]      |                                     |
[INFO] [stdout]      |                                     required by a bound introduced by this call
[INFO] [stdout]      |
[INFO] [stdout]      = help: the following other types implement trait `serde::ser::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 130 others
[INFO] [stdout] note: required by a bound in `serde_json::to_string`
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-6f17d22bba15001f/serde_json-1.0.108/src/ser.rs:2209:17
[INFO] [stdout]      |
[INFO] [stdout] 2207 | pub fn to_string<T>(value: &T) -> Result<String>
[INFO] [stdout]      |        --------- required by a bound in this function
[INFO] [stdout] 2208 | where
[INFO] [stdout] 2209 |     T: ?Sized + Serialize,
[INFO] [stdout]      |                 ^^^^^^^^^ required by this bound in `to_string`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `FlowControl: serde::de::Deserialize<'_>` is not satisfied
[INFO] [stdout]     --> tests/serde.rs:63:47
[INFO] [stdout]      |
[INFO] [stdout] 63   |     assert!(let Ok(serial2::FlowControl::None) = serde_json::from_str::<serial2::FlowControl>("\"none\""));
[INFO] [stdout]      |                                                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `serde::de::Deserialize<'_>` is not implemented for `FlowControl`
[INFO] [stdout]      |
[INFO] [stdout]      = help: the following other types implement trait `serde::de::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 130 others
[INFO] [stdout] note: required by a bound in `serde_json::from_str`
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-6f17d22bba15001f/serde_json-1.0.108/src/de.rs:2675:8
[INFO] [stdout]      |
[INFO] [stdout] 2673 | pub fn from_str<'a, T>(s: &'a str) -> Result<T>
[INFO] [stdout]      |        -------- required by a bound in this function
[INFO] [stdout] 2674 | where
[INFO] [stdout] 2675 |     T: de::Deserialize<'a>,
[INFO] [stdout]      |        ^^^^^^^^^^^^^^^^^^^ required by this bound in `from_str`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `FlowControl: serde::de::Deserialize<'_>` is not satisfied
[INFO] [stdout]     --> tests/serde.rs:64:50
[INFO] [stdout]      |
[INFO] [stdout] 64   |     assert!(let Ok(serial2::FlowControl::XonXoff) = serde_json::from_str::<serial2::FlowControl>("\"xon/xoff\""));
[INFO] [stdout]      |                                                     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `serde::de::Deserialize<'_>` is not implemented for `FlowControl`
[INFO] [stdout]      |
[INFO] [stdout]      = help: the following other types implement trait `serde::de::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 130 others
[INFO] [stdout] note: required by a bound in `serde_json::from_str`
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-6f17d22bba15001f/serde_json-1.0.108/src/de.rs:2675:8
[INFO] [stdout]      |
[INFO] [stdout] 2673 | pub fn from_str<'a, T>(s: &'a str) -> Result<T>
[INFO] [stdout]      |        -------- required by a bound in this function
[INFO] [stdout] 2674 | where
[INFO] [stdout] 2675 |     T: de::Deserialize<'a>,
[INFO] [stdout]      |        ^^^^^^^^^^^^^^^^^^^ required by this bound in `from_str`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `FlowControl: serde::de::Deserialize<'_>` is not satisfied
[INFO] [stdout]     --> tests/serde.rs:65:49
[INFO] [stdout]      |
[INFO] [stdout] 65   |     assert!(let Ok(serial2::FlowControl::RtsCts) = serde_json::from_str::<serial2::FlowControl>("\"rts/cts\""));
[INFO] [stdout]      |                                                    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `serde::de::Deserialize<'_>` is not implemented for `FlowControl`
[INFO] [stdout]      |
[INFO] [stdout]      = help: the following other types implement trait `serde::de::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 130 others
[INFO] [stdout] note: required by a bound in `serde_json::from_str`
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-6f17d22bba15001f/serde_json-1.0.108/src/de.rs:2675:8
[INFO] [stdout]      |
[INFO] [stdout] 2673 | pub fn from_str<'a, T>(s: &'a str) -> Result<T>
[INFO] [stdout]      |        -------- required by a bound in this function
[INFO] [stdout] 2674 | where
[INFO] [stdout] 2675 |     T: de::Deserialize<'a>,
[INFO] [stdout]      |        ^^^^^^^^^^^^^^^^^^^ required by this bound in `from_str`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `FlowControl: serde::de::Deserialize<'_>` is not satisfied
[INFO] [stdout]     --> tests/serde.rs:67:23
[INFO] [stdout]      |
[INFO] [stdout] 67   |     let_assert!(Err(e) = serde_json::from_str::<serial2::FlowControl>("\"plug-in/plug-out\""));
[INFO] [stdout]      |                          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `serde::de::Deserialize<'_>` is not implemented for `FlowControl`
[INFO] [stdout]      |
[INFO] [stdout]      = help: the following other types implement trait `serde::de::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 130 others
[INFO] [stdout] note: required by a bound in `serde_json::from_str`
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-6f17d22bba15001f/serde_json-1.0.108/src/de.rs:2675:8
[INFO] [stdout]      |
[INFO] [stdout] 2673 | pub fn from_str<'a, T>(s: &'a str) -> Result<T>
[INFO] [stdout]      |        -------- required by a bound in this function
[INFO] [stdout] 2674 | where
[INFO] [stdout] 2675 |     T: de::Deserialize<'a>,
[INFO] [stdout]      |        ^^^^^^^^^^^^^^^^^^^ required by this bound in `from_str`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: aborting due to 32 previous errors
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] For more information about this error, try `rustc --explain E0277`.
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `serial2` (test "serde") due to 33 previous errors
[INFO] [stderr] warning: build failed, waiting for other jobs to finish...
[INFO] running `Command { std: "docker" "inspect" "615f7c0275a0f9dfcf1af464b3225264041d4faa441b0db86dce706eb3bc840e", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "615f7c0275a0f9dfcf1af464b3225264041d4faa441b0db86dce706eb3bc840e", kill_on_drop: false }`
[INFO] [stdout] 615f7c0275a0f9dfcf1af464b3225264041d4faa441b0db86dce706eb3bc840e
[INFO] testing serial2-0.2.12 against beta-2023-12-22 for beta-1.76-1
[INFO] extracting crate serial2 0.2.12 into /workspace/builds/worker-0-tc2/source
[INFO] validating manifest of crates.io crate serial2 0.2.12 on toolchain beta-2023-12-22
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+beta-2023-12-22" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] started tweaking crates.io crate serial2 0.2.12
[INFO] finished tweaking crates.io crate serial2 0.2.12
[INFO] tweaked toml for crates.io crate serial2 0.2.12 written to /workspace/builds/worker-0-tc2/source/Cargo.toml
[INFO] crate crates.io crate serial2 0.2.12 already has a lockfile, it will not be regenerated
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+beta-2023-12-22" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-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" "+beta-2023-12-22" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] c1364fded93939dcb2111678aeca5f3ece7e90101d3f96b9937a452d1c6d30ab
[INFO] running `Command { std: "docker" "start" "-a" "c1364fded93939dcb2111678aeca5f3ece7e90101d3f96b9937a452d1c6d30ab", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "c1364fded93939dcb2111678aeca5f3ece7e90101d3f96b9937a452d1c6d30ab", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "c1364fded93939dcb2111678aeca5f3ece7e90101d3f96b9937a452d1c6d30ab", kill_on_drop: false }`
[INFO] [stdout] c1364fded93939dcb2111678aeca5f3ece7e90101d3f96b9937a452d1c6d30ab
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-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=warn" "-e" "RUSTDOCFLAGS=--cap-lints=warn" "-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" "+beta-2023-12-22" "build" "--frozen" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] ff1424b0bf7bcaa4c45cfc90d29740c7692e1f4482c47cd54495d2ad11914aec
[INFO] running `Command { std: "docker" "start" "-a" "ff1424b0bf7bcaa4c45cfc90d29740c7692e1f4482c47cd54495d2ad11914aec", kill_on_drop: false }`
[INFO] [stderr]    Compiling serial2 v0.2.12 (/opt/rustwide/workdir)
[INFO] [stderr]     Finished dev [unoptimized + debuginfo] target(s) in 0.18s
[INFO] running `Command { std: "docker" "inspect" "ff1424b0bf7bcaa4c45cfc90d29740c7692e1f4482c47cd54495d2ad11914aec", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "ff1424b0bf7bcaa4c45cfc90d29740c7692e1f4482c47cd54495d2ad11914aec", kill_on_drop: false }`
[INFO] [stdout] ff1424b0bf7bcaa4c45cfc90d29740c7692e1f4482c47cd54495d2ad11914aec
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-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=warn" "-e" "RUSTDOCFLAGS=--cap-lints=warn" "-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" "+beta-2023-12-22" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] f627e23195eb174b6184595f461319e2960b740342c1453f11309a679121f290
[INFO] running `Command { std: "docker" "start" "-a" "f627e23195eb174b6184595f461319e2960b740342c1453f11309a679121f290", kill_on_drop: false }`
[INFO] [stderr]    Compiling semver v1.0.20
[INFO] [stderr]    Compiling syn v1.0.109
[INFO] [stderr]    Compiling rustix v0.38.26
[INFO] [stderr]    Compiling serde v1.0.193
[INFO] [stderr]    Compiling yansi v0.5.1
[INFO] [stderr]    Compiling rustc_version v0.4.0
[INFO] [stderr]    Compiling assert2-macros v0.3.11
[INFO] [stderr]    Compiling is-terminal v0.4.9
[INFO] [stderr]    Compiling serde_json v1.0.108
[INFO] [stderr]    Compiling assert2 v0.3.11
[INFO] [stderr]    Compiling serial2 v0.2.12 (/opt/rustwide/workdir)
[INFO] [stdout] error[E0277]: the trait bound `CharSize: serde::ser::Serialize` is not satisfied
[INFO] [stdout]     --> tests/serde.rs:5:46
[INFO] [stdout]      |
[INFO] [stdout] 5    |     assert!(let Ok("5") = serde_json::to_string(&serial2::CharSize::Bits5).as_deref());
[INFO] [stdout]      |                           --------------------- ^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `serde::ser::Serialize` is not implemented for `CharSize`
[INFO] [stdout]      |                           |
[INFO] [stdout]      |                           required by a bound introduced by this call
[INFO] [stdout]      |
[INFO] [stdout]      = help: the following other types implement trait `serde::ser::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 130 others
[INFO] [stdout] note: required by a bound in `serde_json::to_string`
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-6f17d22bba15001f/serde_json-1.0.108/src/ser.rs:2209:17
[INFO] [stdout]      |
[INFO] [stdout] 2207 | pub fn to_string<T>(value: &T) -> Result<String>
[INFO] [stdout]      |        --------- required by a bound in this function
[INFO] [stdout] 2208 | where
[INFO] [stdout] 2209 |     T: ?Sized + Serialize,
[INFO] [stdout]      |                 ^^^^^^^^^ required by this bound in `to_string`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `CharSize: serde::ser::Serialize` is not satisfied
[INFO] [stdout]     --> tests/serde.rs:6:46
[INFO] [stdout]      |
[INFO] [stdout] 6    |     assert!(let Ok("6") = serde_json::to_string(&serial2::CharSize::Bits6).as_deref());
[INFO] [stdout]      |                           --------------------- ^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `serde::ser::Serialize` is not implemented for `CharSize`
[INFO] [stdout]      |                           |
[INFO] [stdout]      |                           required by a bound introduced by this call
[INFO] [stdout]      |
[INFO] [stdout]      = help: the following other types implement trait `serde::ser::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 130 others
[INFO] [stdout] note: required by a bound in `serde_json::to_string`
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-6f17d22bba15001f/serde_json-1.0.108/src/ser.rs:2209:17
[INFO] [stdout]      |
[INFO] [stdout] 2207 | pub fn to_string<T>(value: &T) -> Result<String>
[INFO] [stdout]      |        --------- required by a bound in this function
[INFO] [stdout] 2208 | where
[INFO] [stdout] 2209 |     T: ?Sized + Serialize,
[INFO] [stdout]      |                 ^^^^^^^^^ required by this bound in `to_string`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `CharSize: serde::ser::Serialize` is not satisfied
[INFO] [stdout]     --> tests/serde.rs:7:46
[INFO] [stdout]      |
[INFO] [stdout] 7    |     assert!(let Ok("7") = serde_json::to_string(&serial2::CharSize::Bits7).as_deref());
[INFO] [stdout]      |                           --------------------- ^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `serde::ser::Serialize` is not implemented for `CharSize`
[INFO] [stdout]      |                           |
[INFO] [stdout]      |                           required by a bound introduced by this call
[INFO] [stdout]      |
[INFO] [stdout]      = help: the following other types implement trait `serde::ser::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 130 others
[INFO] [stdout] note: required by a bound in `serde_json::to_string`
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-6f17d22bba15001f/serde_json-1.0.108/src/ser.rs:2209:17
[INFO] [stdout]      |
[INFO] [stdout] 2207 | pub fn to_string<T>(value: &T) -> Result<String>
[INFO] [stdout]      |        --------- required by a bound in this function
[INFO] [stdout] 2208 | where
[INFO] [stdout] 2209 |     T: ?Sized + Serialize,
[INFO] [stdout]      |                 ^^^^^^^^^ required by this bound in `to_string`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `CharSize: serde::ser::Serialize` is not satisfied
[INFO] [stdout]     --> tests/serde.rs:8:46
[INFO] [stdout]      |
[INFO] [stdout] 8    |     assert!(let Ok("8") = serde_json::to_string(&serial2::CharSize::Bits8).as_deref());
[INFO] [stdout]      |                           --------------------- ^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `serde::ser::Serialize` is not implemented for `CharSize`
[INFO] [stdout]      |                           |
[INFO] [stdout]      |                           required by a bound introduced by this call
[INFO] [stdout]      |
[INFO] [stdout]      = help: the following other types implement trait `serde::ser::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 130 others
[INFO] [stdout] note: required by a bound in `serde_json::to_string`
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-6f17d22bba15001f/serde_json-1.0.108/src/ser.rs:2209:17
[INFO] [stdout]      |
[INFO] [stdout] 2207 | pub fn to_string<T>(value: &T) -> Result<String>
[INFO] [stdout]      |        --------- required by a bound in this function
[INFO] [stdout] 2208 | where
[INFO] [stdout] 2209 |     T: ?Sized + Serialize,
[INFO] [stdout]      |                 ^^^^^^^^^ required by this bound in `to_string`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `CharSize: serde::de::Deserialize<'_>` is not satisfied
[INFO] [stdout]     --> tests/serde.rs:10:45
[INFO] [stdout]      |
[INFO] [stdout] 10   |     assert!(let Ok(serial2::CharSize::Bits5) = serde_json::from_str::<serial2::CharSize>("5"));
[INFO] [stdout]      |                                                ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `serde::de::Deserialize<'_>` is not implemented for `CharSize`
[INFO] [stdout]      |
[INFO] [stdout]      = help: the following other types implement trait `serde::de::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 130 others
[INFO] [stdout] note: required by a bound in `serde_json::from_str`
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-6f17d22bba15001f/serde_json-1.0.108/src/de.rs:2675:8
[INFO] [stdout]      |
[INFO] [stdout] 2673 | pub fn from_str<'a, T>(s: &'a str) -> Result<T>
[INFO] [stdout]      |        -------- required by a bound in this function
[INFO] [stdout] 2674 | where
[INFO] [stdout] 2675 |     T: de::Deserialize<'a>,
[INFO] [stdout]      |        ^^^^^^^^^^^^^^^^^^^ required by this bound in `from_str`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `CharSize: serde::de::Deserialize<'_>` is not satisfied
[INFO] [stdout]     --> tests/serde.rs:11:45
[INFO] [stdout]      |
[INFO] [stdout] 11   |     assert!(let Ok(serial2::CharSize::Bits6) = serde_json::from_str::<serial2::CharSize>("6"));
[INFO] [stdout]      |                                                ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `serde::de::Deserialize<'_>` is not implemented for `CharSize`
[INFO] [stdout]      |
[INFO] [stdout]      = help: the following other types implement trait `serde::de::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 130 others
[INFO] [stdout] note: required by a bound in `serde_json::from_str`
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-6f17d22bba15001f/serde_json-1.0.108/src/de.rs:2675:8
[INFO] [stdout]      |
[INFO] [stdout] 2673 | pub fn from_str<'a, T>(s: &'a str) -> Result<T>
[INFO] [stdout]      |        -------- required by a bound in this function
[INFO] [stdout] 2674 | where
[INFO] [stdout] 2675 |     T: de::Deserialize<'a>,
[INFO] [stdout]      |        ^^^^^^^^^^^^^^^^^^^ required by this bound in `from_str`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `CharSize: serde::de::Deserialize<'_>` is not satisfied
[INFO] [stdout]     --> tests/serde.rs:12:45
[INFO] [stdout]      |
[INFO] [stdout] 12   |     assert!(let Ok(serial2::CharSize::Bits7) = serde_json::from_str::<serial2::CharSize>("7"));
[INFO] [stdout]      |                                                ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `serde::de::Deserialize<'_>` is not implemented for `CharSize`
[INFO] [stdout]      |
[INFO] [stdout]      = help: the following other types implement trait `serde::de::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 130 others
[INFO] [stdout] note: required by a bound in `serde_json::from_str`
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-6f17d22bba15001f/serde_json-1.0.108/src/de.rs:2675:8
[INFO] [stdout]      |
[INFO] [stdout] 2673 | pub fn from_str<'a, T>(s: &'a str) -> Result<T>
[INFO] [stdout]      |        -------- required by a bound in this function
[INFO] [stdout] 2674 | where
[INFO] [stdout] 2675 |     T: de::Deserialize<'a>,
[INFO] [stdout]      |        ^^^^^^^^^^^^^^^^^^^ required by this bound in `from_str`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `CharSize: serde::de::Deserialize<'_>` is not satisfied
[INFO] [stdout]     --> tests/serde.rs:13:45
[INFO] [stdout]      |
[INFO] [stdout] 13   |     assert!(let Ok(serial2::CharSize::Bits8) = serde_json::from_str::<serial2::CharSize>("8"));
[INFO] [stdout]      |                                                ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `serde::de::Deserialize<'_>` is not implemented for `CharSize`
[INFO] [stdout]      |
[INFO] [stdout]      = help: the following other types implement trait `serde::de::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 130 others
[INFO] [stdout] note: required by a bound in `serde_json::from_str`
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-6f17d22bba15001f/serde_json-1.0.108/src/de.rs:2675:8
[INFO] [stdout]      |
[INFO] [stdout] 2673 | pub fn from_str<'a, T>(s: &'a str) -> Result<T>
[INFO] [stdout]      |        -------- required by a bound in this function
[INFO] [stdout] 2674 | where
[INFO] [stdout] 2675 |     T: de::Deserialize<'a>,
[INFO] [stdout]      |        ^^^^^^^^^^^^^^^^^^^ required by this bound in `from_str`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `CharSize: serde::de::Deserialize<'_>` is not satisfied
[INFO] [stdout]     --> tests/serde.rs:15:23
[INFO] [stdout]      |
[INFO] [stdout] 15   |     let_assert!(Err(e) = serde_json::from_str::<serial2::CharSize>("4"));
[INFO] [stdout]      |                          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `serde::de::Deserialize<'_>` is not implemented for `CharSize`
[INFO] [stdout]      |
[INFO] [stdout]      = help: the following other types implement trait `serde::de::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 130 others
[INFO] [stdout] note: required by a bound in `serde_json::from_str`
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-6f17d22bba15001f/serde_json-1.0.108/src/de.rs:2675:8
[INFO] [stdout]      |
[INFO] [stdout] 2673 | pub fn from_str<'a, T>(s: &'a str) -> Result<T>
[INFO] [stdout]      |        -------- required by a bound in this function
[INFO] [stdout] 2674 | where
[INFO] [stdout] 2675 |     T: de::Deserialize<'a>,
[INFO] [stdout]      |        ^^^^^^^^^^^^^^^^^^^ required by this bound in `from_str`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `CharSize: serde::de::Deserialize<'_>` is not satisfied
[INFO] [stdout]     --> tests/serde.rs:18:23
[INFO] [stdout]      |
[INFO] [stdout] 18   |     let_assert!(Err(e) = serde_json::from_str::<serial2::CharSize>("9"));
[INFO] [stdout]      |                          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `serde::de::Deserialize<'_>` is not implemented for `CharSize`
[INFO] [stdout]      |
[INFO] [stdout]      = help: the following other types implement trait `serde::de::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 130 others
[INFO] [stdout] note: required by a bound in `serde_json::from_str`
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-6f17d22bba15001f/serde_json-1.0.108/src/de.rs:2675:8
[INFO] [stdout]      |
[INFO] [stdout] 2673 | pub fn from_str<'a, T>(s: &'a str) -> Result<T>
[INFO] [stdout]      |        -------- required by a bound in this function
[INFO] [stdout] 2674 | where
[INFO] [stdout] 2675 |     T: de::Deserialize<'a>,
[INFO] [stdout]      |        ^^^^^^^^^^^^^^^^^^^ required by this bound in `from_str`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `CharSize: serde::de::Deserialize<'_>` is not satisfied
[INFO] [stdout]     --> tests/serde.rs:21:23
[INFO] [stdout]      |
[INFO] [stdout] 21   |     let_assert!(Err(e) = serde_json::from_str::<serial2::CharSize>("\"5\""));
[INFO] [stdout]      |                          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `serde::de::Deserialize<'_>` is not implemented for `CharSize`
[INFO] [stdout]      |
[INFO] [stdout]      = help: the following other types implement trait `serde::de::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 130 others
[INFO] [stdout] note: required by a bound in `serde_json::from_str`
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-6f17d22bba15001f/serde_json-1.0.108/src/de.rs:2675:8
[INFO] [stdout]      |
[INFO] [stdout] 2673 | pub fn from_str<'a, T>(s: &'a str) -> Result<T>
[INFO] [stdout]      |        -------- required by a bound in this function
[INFO] [stdout] 2674 | where
[INFO] [stdout] 2675 |     T: de::Deserialize<'a>,
[INFO] [stdout]      |        ^^^^^^^^^^^^^^^^^^^ required by this bound in `from_str`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `StopBits: serde::ser::Serialize` is not satisfied
[INFO] [stdout]     --> tests/serde.rs:27:46
[INFO] [stdout]      |
[INFO] [stdout] 27   |     assert!(let Ok("1") = serde_json::to_string(&serial2::StopBits::One).as_deref());
[INFO] [stdout]      |                           --------------------- ^^^^^^^^^^^^^^^^^^^^^^^ the trait `serde::ser::Serialize` is not implemented for `StopBits`
[INFO] [stdout]      |                           |
[INFO] [stdout]      |                           required by a bound introduced by this call
[INFO] [stdout]      |
[INFO] [stdout]      = help: the following other types implement trait `serde::ser::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 130 others
[INFO] [stdout] note: required by a bound in `serde_json::to_string`
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-6f17d22bba15001f/serde_json-1.0.108/src/ser.rs:2209:17
[INFO] [stdout]      |
[INFO] [stdout] 2207 | pub fn to_string<T>(value: &T) -> Result<String>
[INFO] [stdout]      |        --------- required by a bound in this function
[INFO] [stdout] 2208 | where
[INFO] [stdout] 2209 |     T: ?Sized + Serialize,
[INFO] [stdout]      |                 ^^^^^^^^^ required by this bound in `to_string`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `StopBits: serde::ser::Serialize` is not satisfied
[INFO] [stdout]     --> tests/serde.rs:28:46
[INFO] [stdout]      |
[INFO] [stdout] 28   |     assert!(let Ok("2") = serde_json::to_string(&serial2::StopBits::Two).as_deref());
[INFO] [stdout]      |                           --------------------- ^^^^^^^^^^^^^^^^^^^^^^^ the trait `serde::ser::Serialize` is not implemented for `StopBits`
[INFO] [stdout]      |                           |
[INFO] [stdout]      |                           required by a bound introduced by this call
[INFO] [stdout]      |
[INFO] [stdout]      = help: the following other types implement trait `serde::ser::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 130 others
[INFO] [stdout] note: required by a bound in `serde_json::to_string`
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-6f17d22bba15001f/serde_json-1.0.108/src/ser.rs:2209:17
[INFO] [stdout]      |
[INFO] [stdout] 2207 | pub fn to_string<T>(value: &T) -> Result<String>
[INFO] [stdout]      |        --------- required by a bound in this function
[INFO] [stdout] 2208 | where
[INFO] [stdout] 2209 |     T: ?Sized + Serialize,
[INFO] [stdout]      |                 ^^^^^^^^^ required by this bound in `to_string`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `StopBits: serde::de::Deserialize<'_>` is not satisfied
[INFO] [stdout]     --> tests/serde.rs:30:43
[INFO] [stdout]      |
[INFO] [stdout] 30   |     assert!(let Ok(serial2::StopBits::One) = serde_json::from_str::<serial2::StopBits>("1"));
[INFO] [stdout]      |                                              ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `serde::de::Deserialize<'_>` is not implemented for `StopBits`
[INFO] [stdout]      |
[INFO] [stdout]      = help: the following other types implement trait `serde::de::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 130 others
[INFO] [stdout] note: required by a bound in `serde_json::from_str`
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-6f17d22bba15001f/serde_json-1.0.108/src/de.rs:2675:8
[INFO] [stdout]      |
[INFO] [stdout] 2673 | pub fn from_str<'a, T>(s: &'a str) -> Result<T>
[INFO] [stdout]      |        -------- required by a bound in this function
[INFO] [stdout] 2674 | where
[INFO] [stdout] 2675 |     T: de::Deserialize<'a>,
[INFO] [stdout]      |        ^^^^^^^^^^^^^^^^^^^ required by this bound in `from_str`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `StopBits: serde::de::Deserialize<'_>` is not satisfied
[INFO] [stdout]     --> tests/serde.rs:31:43
[INFO] [stdout]      |
[INFO] [stdout] 31   |     assert!(let Ok(serial2::StopBits::Two) = serde_json::from_str::<serial2::StopBits>("2"));
[INFO] [stdout]      |                                              ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `serde::de::Deserialize<'_>` is not implemented for `StopBits`
[INFO] [stdout]      |
[INFO] [stdout]      = help: the following other types implement trait `serde::de::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 130 others
[INFO] [stdout] note: required by a bound in `serde_json::from_str`
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-6f17d22bba15001f/serde_json-1.0.108/src/de.rs:2675:8
[INFO] [stdout]      |
[INFO] [stdout] 2673 | pub fn from_str<'a, T>(s: &'a str) -> Result<T>
[INFO] [stdout]      |        -------- required by a bound in this function
[INFO] [stdout] 2674 | where
[INFO] [stdout] 2675 |     T: de::Deserialize<'a>,
[INFO] [stdout]      |        ^^^^^^^^^^^^^^^^^^^ required by this bound in `from_str`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `StopBits: serde::de::Deserialize<'_>` is not satisfied
[INFO] [stdout]     --> tests/serde.rs:33:23
[INFO] [stdout]      |
[INFO] [stdout] 33   |     let_assert!(Err(e) = serde_json::from_str::<serial2::StopBits>("0"));
[INFO] [stdout]      |                          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `serde::de::Deserialize<'_>` is not implemented for `StopBits`
[INFO] [stdout]      |
[INFO] [stdout]      = help: the following other types implement trait `serde::de::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 130 others
[INFO] [stdout] note: required by a bound in `serde_json::from_str`
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-6f17d22bba15001f/serde_json-1.0.108/src/de.rs:2675:8
[INFO] [stdout]      |
[INFO] [stdout] 2673 | pub fn from_str<'a, T>(s: &'a str) -> Result<T>
[INFO] [stdout]      |        -------- required by a bound in this function
[INFO] [stdout] 2674 | where
[INFO] [stdout] 2675 |     T: de::Deserialize<'a>,
[INFO] [stdout]      |        ^^^^^^^^^^^^^^^^^^^ required by this bound in `from_str`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `StopBits: serde::de::Deserialize<'_>` is not satisfied
[INFO] [stdout]     --> tests/serde.rs:36:23
[INFO] [stdout]      |
[INFO] [stdout] 36   |     let_assert!(Err(e) = serde_json::from_str::<serial2::StopBits>("3"));
[INFO] [stdout]      |                          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `serde::de::Deserialize<'_>` is not implemented for `StopBits`
[INFO] [stdout]      |
[INFO] [stdout]      = help: the following other types implement trait `serde::de::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 130 others
[INFO] [stdout] note: required by a bound in `serde_json::from_str`
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-6f17d22bba15001f/serde_json-1.0.108/src/de.rs:2675:8
[INFO] [stdout]      |
[INFO] [stdout] 2673 | pub fn from_str<'a, T>(s: &'a str) -> Result<T>
[INFO] [stdout]      |        -------- required by a bound in this function
[INFO] [stdout] 2674 | where
[INFO] [stdout] 2675 |     T: de::Deserialize<'a>,
[INFO] [stdout]      |        ^^^^^^^^^^^^^^^^^^^ required by this bound in `from_str`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `StopBits: serde::de::Deserialize<'_>` is not satisfied
[INFO] [stdout]     --> tests/serde.rs:39:23
[INFO] [stdout]      |
[INFO] [stdout] 39   |     let_assert!(Err(e) = serde_json::from_str::<serial2::StopBits>("\"1\""));
[INFO] [stdout]      |                          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `serde::de::Deserialize<'_>` is not implemented for `StopBits`
[INFO] [stdout]      |
[INFO] [stdout]      = help: the following other types implement trait `serde::de::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 130 others
[INFO] [stdout] note: required by a bound in `serde_json::from_str`
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-6f17d22bba15001f/serde_json-1.0.108/src/de.rs:2675:8
[INFO] [stdout]      |
[INFO] [stdout] 2673 | pub fn from_str<'a, T>(s: &'a str) -> Result<T>
[INFO] [stdout]      |        -------- required by a bound in this function
[INFO] [stdout] 2674 | where
[INFO] [stdout] 2675 |     T: de::Deserialize<'a>,
[INFO] [stdout]      |        ^^^^^^^^^^^^^^^^^^^ required by this bound in `from_str`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `Parity: serde::ser::Serialize` is not satisfied
[INFO] [stdout]     --> tests/serde.rs:45:53
[INFO] [stdout]      |
[INFO] [stdout] 45   |     assert!(let Ok("\"none\"") = serde_json::to_string(&serial2::Parity::None).as_deref());
[INFO] [stdout]      |                                  --------------------- ^^^^^^^^^^^^^^^^^^^^^^ the trait `serde::ser::Serialize` is not implemented for `Parity`
[INFO] [stdout]      |                                  |
[INFO] [stdout]      |                                  required by a bound introduced by this call
[INFO] [stdout]      |
[INFO] [stdout]      = help: the following other types implement trait `serde::ser::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 130 others
[INFO] [stdout] note: required by a bound in `serde_json::to_string`
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-6f17d22bba15001f/serde_json-1.0.108/src/ser.rs:2209:17
[INFO] [stdout]      |
[INFO] [stdout] 2207 | pub fn to_string<T>(value: &T) -> Result<String>
[INFO] [stdout]      |        --------- required by a bound in this function
[INFO] [stdout] 2208 | where
[INFO] [stdout] 2209 |     T: ?Sized + Serialize,
[INFO] [stdout]      |                 ^^^^^^^^^ required by this bound in `to_string`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `Parity: serde::ser::Serialize` is not satisfied
[INFO] [stdout]     --> tests/serde.rs:46:53
[INFO] [stdout]      |
[INFO] [stdout] 46   |     assert!(let Ok("\"even\"") = serde_json::to_string(&serial2::Parity::Even).as_deref());
[INFO] [stdout]      |                                  --------------------- ^^^^^^^^^^^^^^^^^^^^^^ the trait `serde::ser::Serialize` is not implemented for `Parity`
[INFO] [stdout]      |                                  |
[INFO] [stdout]      |                                  required by a bound introduced by this call
[INFO] [stdout]      |
[INFO] [stdout]      = help: the following other types implement trait `serde::ser::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 130 others
[INFO] [stdout] note: required by a bound in `serde_json::to_string`
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-6f17d22bba15001f/serde_json-1.0.108/src/ser.rs:2209:17
[INFO] [stdout]      |
[INFO] [stdout] 2207 | pub fn to_string<T>(value: &T) -> Result<String>
[INFO] [stdout]      |        --------- required by a bound in this function
[INFO] [stdout] 2208 | where
[INFO] [stdout] 2209 |     T: ?Sized + Serialize,
[INFO] [stdout]      |                 ^^^^^^^^^ required by this bound in `to_string`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `Parity: serde::ser::Serialize` is not satisfied
[INFO] [stdout]     --> tests/serde.rs:47:52
[INFO] [stdout]      |
[INFO] [stdout] 47   |     assert!(let Ok("\"odd\"") = serde_json::to_string(&serial2::Parity::Odd).as_deref());
[INFO] [stdout]      |                                 --------------------- ^^^^^^^^^^^^^^^^^^^^^ the trait `serde::ser::Serialize` is not implemented for `Parity`
[INFO] [stdout]      |                                 |
[INFO] [stdout]      |                                 required by a bound introduced by this call
[INFO] [stdout]      |
[INFO] [stdout]      = help: the following other types implement trait `serde::ser::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 130 others
[INFO] [stdout] note: required by a bound in `serde_json::to_string`
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-6f17d22bba15001f/serde_json-1.0.108/src/ser.rs:2209:17
[INFO] [stdout]      |
[INFO] [stdout] 2207 | pub fn to_string<T>(value: &T) -> Result<String>
[INFO] [stdout]      |        --------- required by a bound in this function
[INFO] [stdout] 2208 | where
[INFO] [stdout] 2209 |     T: ?Sized + Serialize,
[INFO] [stdout]      |                 ^^^^^^^^^ required by this bound in `to_string`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `Parity: serde::de::Deserialize<'_>` is not satisfied
[INFO] [stdout]     --> tests/serde.rs:49:42
[INFO] [stdout]      |
[INFO] [stdout] 49   |     assert!(let Ok(serial2::Parity::None) = serde_json::from_str::<serial2::Parity>("\"none\""));
[INFO] [stdout]      |                                             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `serde::de::Deserialize<'_>` is not implemented for `Parity`
[INFO] [stdout]      |
[INFO] [stdout]      = help: the following other types implement trait `serde::de::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 130 others
[INFO] [stdout] note: required by a bound in `serde_json::from_str`
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-6f17d22bba15001f/serde_json-1.0.108/src/de.rs:2675:8
[INFO] [stdout]      |
[INFO] [stdout] 2673 | pub fn from_str<'a, T>(s: &'a str) -> Result<T>
[INFO] [stdout]      |        -------- required by a bound in this function
[INFO] [stdout] 2674 | where
[INFO] [stdout] 2675 |     T: de::Deserialize<'a>,
[INFO] [stdout]      |        ^^^^^^^^^^^^^^^^^^^ required by this bound in `from_str`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `Parity: serde::de::Deserialize<'_>` is not satisfied
[INFO] [stdout]     --> tests/serde.rs:50:42
[INFO] [stdout]      |
[INFO] [stdout] 50   |     assert!(let Ok(serial2::Parity::Even) = serde_json::from_str::<serial2::Parity>("\"even\""));
[INFO] [stdout]      |                                             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `serde::de::Deserialize<'_>` is not implemented for `Parity`
[INFO] [stdout]      |
[INFO] [stdout]      = help: the following other types implement trait `serde::de::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 130 others
[INFO] [stdout] note: required by a bound in `serde_json::from_str`
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-6f17d22bba15001f/serde_json-1.0.108/src/de.rs:2675:8
[INFO] [stdout]      |
[INFO] [stdout] 2673 | pub fn from_str<'a, T>(s: &'a str) -> Result<T>
[INFO] [stdout]      |        -------- required by a bound in this function
[INFO] [stdout] 2674 | where
[INFO] [stdout] 2675 |     T: de::Deserialize<'a>,
[INFO] [stdout]      |        ^^^^^^^^^^^^^^^^^^^ required by this bound in `from_str`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `Parity: serde::de::Deserialize<'_>` is not satisfied
[INFO] [stdout]     --> tests/serde.rs:51:41
[INFO] [stdout]      |
[INFO] [stdout] 51   |     assert!(let Ok(serial2::Parity::Odd) = serde_json::from_str::<serial2::Parity>("\"odd\""));
[INFO] [stdout]      |                                            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `serde::de::Deserialize<'_>` is not implemented for `Parity`
[INFO] [stdout]      |
[INFO] [stdout]      = help: the following other types implement trait `serde::de::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 130 others
[INFO] [stdout] note: required by a bound in `serde_json::from_str`
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-6f17d22bba15001f/serde_json-1.0.108/src/de.rs:2675:8
[INFO] [stdout]      |
[INFO] [stdout] 2673 | pub fn from_str<'a, T>(s: &'a str) -> Result<T>
[INFO] [stdout]      |        -------- required by a bound in this function
[INFO] [stdout] 2674 | where
[INFO] [stdout] 2675 |     T: de::Deserialize<'a>,
[INFO] [stdout]      |        ^^^^^^^^^^^^^^^^^^^ required by this bound in `from_str`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `Parity: serde::de::Deserialize<'_>` is not satisfied
[INFO] [stdout]     --> tests/serde.rs:53:23
[INFO] [stdout]      |
[INFO] [stdout] 53   |     let_assert!(Err(e) = serde_json::from_str::<serial2::Parity>("\"even-then-odd\""));
[INFO] [stdout]      |                          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `serde::de::Deserialize<'_>` is not implemented for `Parity`
[INFO] [stdout]      |
[INFO] [stdout]      = help: the following other types implement trait `serde::de::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 130 others
[INFO] [stdout] note: required by a bound in `serde_json::from_str`
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-6f17d22bba15001f/serde_json-1.0.108/src/de.rs:2675:8
[INFO] [stdout]      |
[INFO] [stdout] 2673 | pub fn from_str<'a, T>(s: &'a str) -> Result<T>
[INFO] [stdout]      |        -------- required by a bound in this function
[INFO] [stdout] 2674 | where
[INFO] [stdout] 2675 |     T: de::Deserialize<'a>,
[INFO] [stdout]      |        ^^^^^^^^^^^^^^^^^^^ required by this bound in `from_str`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `FlowControl: serde::ser::Serialize` is not satisfied
[INFO] [stdout]     --> tests/serde.rs:59:53
[INFO] [stdout]      |
[INFO] [stdout] 59   |     assert!(let Ok("\"none\"") = serde_json::to_string(&serial2::FlowControl::None).as_deref());
[INFO] [stdout]      |                                  --------------------- ^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `serde::ser::Serialize` is not implemented for `FlowControl`
[INFO] [stdout]      |                                  |
[INFO] [stdout]      |                                  required by a bound introduced by this call
[INFO] [stdout]      |
[INFO] [stdout]      = help: the following other types implement trait `serde::ser::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 130 others
[INFO] [stdout] note: required by a bound in `serde_json::to_string`
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-6f17d22bba15001f/serde_json-1.0.108/src/ser.rs:2209:17
[INFO] [stdout]      |
[INFO] [stdout] 2207 | pub fn to_string<T>(value: &T) -> Result<String>
[INFO] [stdout]      |        --------- required by a bound in this function
[INFO] [stdout] 2208 | where
[INFO] [stdout] 2209 |     T: ?Sized + Serialize,
[INFO] [stdout]      |                 ^^^^^^^^^ required by this bound in `to_string`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `FlowControl: serde::ser::Serialize` is not satisfied
[INFO] [stdout]     --> tests/serde.rs:60:57
[INFO] [stdout]      |
[INFO] [stdout] 60   |     assert!(let Ok("\"xon/xoff\"") = serde_json::to_string(&serial2::FlowControl::XonXoff).as_deref());
[INFO] [stdout]      |                                      --------------------- ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `serde::ser::Serialize` is not implemented for `FlowControl`
[INFO] [stdout]      |                                      |
[INFO] [stdout]      |                                      required by a bound introduced by this call
[INFO] [stdout]      |
[INFO] [stdout]      = help: the following other types implement trait `serde::ser::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 130 others
[INFO] [stdout] note: required by a bound in `serde_json::to_string`
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-6f17d22bba15001f/serde_json-1.0.108/src/ser.rs:2209:17
[INFO] [stdout]      |
[INFO] [stdout] 2207 | pub fn to_string<T>(value: &T) -> Result<String>
[INFO] [stdout]      |        --------- required by a bound in this function
[INFO] [stdout] 2208 | where
[INFO] [stdout] 2209 |     T: ?Sized + Serialize,
[INFO] [stdout]      |                 ^^^^^^^^^ required by this bound in `to_string`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `FlowControl: serde::ser::Serialize` is not satisfied
[INFO] [stdout]     --> tests/serde.rs:61:56
[INFO] [stdout]      |
[INFO] [stdout] 61   |     assert!(let Ok("\"rts/cts\"") = serde_json::to_string(&serial2::FlowControl::RtsCts).as_deref());
[INFO] [stdout]      |                                     --------------------- ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `serde::ser::Serialize` is not implemented for `FlowControl`
[INFO] [stdout]      |                                     |
[INFO] [stdout]      |                                     required by a bound introduced by this call
[INFO] [stdout]      |
[INFO] [stdout]      = help: the following other types implement trait `serde::ser::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 130 others
[INFO] [stdout] note: required by a bound in `serde_json::to_string`
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-6f17d22bba15001f/serde_json-1.0.108/src/ser.rs:2209:17
[INFO] [stdout]      |
[INFO] [stdout] 2207 | pub fn to_string<T>(value: &T) -> Result<String>
[INFO] [stdout]      |        --------- required by a bound in this function
[INFO] [stdout] 2208 | where
[INFO] [stdout] 2209 |     T: ?Sized + Serialize,
[INFO] [stdout]      |                 ^^^^^^^^^ required by this bound in `to_string`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `FlowControl: serde::de::Deserialize<'_>` is not satisfied
[INFO] [stdout]     --> tests/serde.rs:63:47
[INFO] [stdout]      |
[INFO] [stdout] 63   |     assert!(let Ok(serial2::FlowControl::None) = serde_json::from_str::<serial2::FlowControl>("\"none\""));
[INFO] [stdout]      |                                                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `serde::de::Deserialize<'_>` is not implemented for `FlowControl`
[INFO] [stdout]      |
[INFO] [stdout]      = help: the following other types implement trait `serde::de::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 130 others
[INFO] [stdout] note: required by a bound in `serde_json::from_str`
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-6f17d22bba15001f/serde_json-1.0.108/src/de.rs:2675:8
[INFO] [stdout]      |
[INFO] [stdout] 2673 | pub fn from_str<'a, T>(s: &'a str) -> Result<T>
[INFO] [stdout]      |        -------- required by a bound in this function
[INFO] [stdout] 2674 | where
[INFO] [stdout] 2675 |     T: de::Deserialize<'a>,
[INFO] [stdout]      |        ^^^^^^^^^^^^^^^^^^^ required by this bound in `from_str`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `FlowControl: serde::de::Deserialize<'_>` is not satisfied
[INFO] [stdout]     --> tests/serde.rs:64:50
[INFO] [stdout]      |
[INFO] [stdout] 64   |     assert!(let Ok(serial2::FlowControl::XonXoff) = serde_json::from_str::<serial2::FlowControl>("\"xon/xoff\""));
[INFO] [stdout]      |                                                     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `serde::de::Deserialize<'_>` is not implemented for `FlowControl`
[INFO] [stdout]      |
[INFO] [stdout]      = help: the following other types implement trait `serde::de::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 130 others
[INFO] [stdout] note: required by a bound in `serde_json::from_str`
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-6f17d22bba15001f/serde_json-1.0.108/src/de.rs:2675:8
[INFO] [stdout]      |
[INFO] [stdout] 2673 | pub fn from_str<'a, T>(s: &'a str) -> Result<T>
[INFO] [stdout]      |        -------- required by a bound in this function
[INFO] [stdout] 2674 | where
[INFO] [stdout] 2675 |     T: de::Deserialize<'a>,
[INFO] [stdout]      |        ^^^^^^^^^^^^^^^^^^^ required by this bound in `from_str`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `FlowControl: serde::de::Deserialize<'_>` is not satisfied
[INFO] [stdout]     --> tests/serde.rs:65:49
[INFO] [stdout]      |
[INFO] [stdout] 65   |     assert!(let Ok(serial2::FlowControl::RtsCts) = serde_json::from_str::<serial2::FlowControl>("\"rts/cts\""));
[INFO] [stdout]      |                                                    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `serde::de::Deserialize<'_>` is not implemented for `FlowControl`
[INFO] [stdout]      |
[INFO] [stdout]      = help: the following other types implement trait `serde::de::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 130 others
[INFO] [stdout] note: required by a bound in `serde_json::from_str`
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-6f17d22bba15001f/serde_json-1.0.108/src/de.rs:2675:8
[INFO] [stdout]      |
[INFO] [stdout] 2673 | pub fn from_str<'a, T>(s: &'a str) -> Result<T>
[INFO] [stdout]      |        -------- required by a bound in this function
[INFO] [stdout] 2674 | where
[INFO] [stdout] 2675 |     T: de::Deserialize<'a>,
[INFO] [stdout]      |        ^^^^^^^^^^^^^^^^^^^ required by this bound in `from_str`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `FlowControl: serde::de::Deserialize<'_>` is not satisfied
[INFO] [stdout]     --> tests/serde.rs:67:23
[INFO] [stdout]      |
[INFO] [stdout] 67   |     let_assert!(Err(e) = serde_json::from_str::<serial2::FlowControl>("\"plug-in/plug-out\""));
[INFO] [stdout]      |                          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `serde::de::Deserialize<'_>` is not implemented for `FlowControl`
[INFO] [stdout]      |
[INFO] [stdout]      = help: the following other types implement trait `serde::de::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 130 others
[INFO] [stdout] note: required by a bound in `serde_json::from_str`
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-6f17d22bba15001f/serde_json-1.0.108/src/de.rs:2675:8
[INFO] [stdout]      |
[INFO] [stdout] 2673 | pub fn from_str<'a, T>(s: &'a str) -> Result<T>
[INFO] [stdout]      |        -------- required by a bound in this function
[INFO] [stdout] 2674 | where
[INFO] [stdout] 2675 |     T: de::Deserialize<'a>,
[INFO] [stdout]      |        ^^^^^^^^^^^^^^^^^^^ required by this bound in `from_str`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: aborting due to 32 previous errors
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] For more information about this error, try `rustc --explain E0277`.
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `serial2` (test "serde") due to 33 previous errors
[INFO] [stderr] warning: build failed, waiting for other jobs to finish...
[INFO] running `Command { std: "docker" "inspect" "f627e23195eb174b6184595f461319e2960b740342c1453f11309a679121f290", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "f627e23195eb174b6184595f461319e2960b740342c1453f11309a679121f290", kill_on_drop: false }`
[INFO] [stdout] f627e23195eb174b6184595f461319e2960b740342c1453f11309a679121f290
