[INFO] fetching crate netem-trace 0.4.4... [INFO] testing netem-trace-0.4.4 against try#dec9417b8611e34e787a3e4c37686b5131f9e5c5 for pr-154210-2 [INFO] extracting crate netem-trace 0.4.4 into /workspace/builds/worker-5-tc2/source [INFO] started tweaking crates.io crate netem-trace 0.4.4 [INFO] removed 0 missing examples [INFO] finished tweaking crates.io crate netem-trace 0.4.4 [INFO] tweaked toml for crates.io crate netem-trace 0.4.4 written to /workspace/builds/worker-5-tc2/source/Cargo.toml [INFO] validating manifest of crates.io crate netem-trace 0.4.4 on toolchain dec9417b8611e34e787a3e4c37686b5131f9e5c5 [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+dec9417b8611e34e787a3e4c37686b5131f9e5c5" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] crate crates.io crate netem-trace 0.4.4 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" "+dec9417b8611e34e787a3e4c37686b5131f9e5c5" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+dec9417b8611e34e787a3e4c37686b5131f9e5c5" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] 97dda637f710d769a020411683ec47b4a12759a2a8765e82208866709bab5807 [INFO] running `Command { std: "docker" "start" "-a" "97dda637f710d769a020411683ec47b4a12759a2a8765e82208866709bab5807", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "97dda637f710d769a020411683ec47b4a12759a2a8765e82208866709bab5807", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "97dda637f710d769a020411683ec47b4a12759a2a8765e82208866709bab5807", kill_on_drop: false }` [INFO] [stdout] 97dda637f710d769a020411683ec47b4a12759a2a8765e82208866709bab5807 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+dec9417b8611e34e787a3e4c37686b5131f9e5c5" "build" "--frozen" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] 18b228ee9db2d30e1d96919ae28d2d7cd4b89abbcd2b02df9eadba067b5e409d [INFO] running `Command { std: "docker" "start" "-a" "18b228ee9db2d30e1d96919ae28d2d7cd4b89abbcd2b02df9eadba067b5e409d", kill_on_drop: false }` [INFO] [stderr] Compiling libc v0.2.177 [INFO] [stderr] Compiling zerocopy v0.8.27 [INFO] [stderr] Compiling getrandom v0.3.4 [INFO] [stderr] Compiling libm v0.2.15 [INFO] [stderr] Compiling num-traits v0.2.19 [INFO] [stderr] Compiling bandwidth v0.3.0 [INFO] [stderr] Compiling rand_core v0.9.3 [INFO] [stderr] Compiling ppv-lite86 v0.2.21 [INFO] [stderr] Compiling rand_chacha v0.9.0 [INFO] [stderr] Compiling rand v0.9.2 [INFO] [stderr] Compiling rand_distr v0.5.1 [INFO] [stderr] Compiling netem-trace v0.4.4 (/opt/rustwide/workdir) [INFO] [stderr] Finished `dev` profile [unoptimized + debuginfo] target(s) in 5.85s [INFO] running `Command { std: "docker" "inspect" "18b228ee9db2d30e1d96919ae28d2d7cd4b89abbcd2b02df9eadba067b5e409d", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "18b228ee9db2d30e1d96919ae28d2d7cd4b89abbcd2b02df9eadba067b5e409d", kill_on_drop: false }` [INFO] [stdout] 18b228ee9db2d30e1d96919ae28d2d7cd4b89abbcd2b02df9eadba067b5e409d [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+dec9417b8611e34e787a3e4c37686b5131f9e5c5" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] e65c59259fce74a1e21d762a83cef56cf7924b84b46635ab118a6a86df456022 [INFO] running `Command { std: "docker" "start" "-a" "e65c59259fce74a1e21d762a83cef56cf7924b84b46635ab118a6a86df456022", kill_on_drop: false }` [INFO] [stderr] Compiling serde_json v1.0.145 [INFO] [stderr] Compiling memchr v2.7.6 [INFO] [stderr] Compiling uncased v0.9.10 [INFO] [stderr] Compiling figment v0.10.19 [INFO] [stderr] Compiling rand_chacha v0.9.0 [INFO] [stderr] Compiling rand v0.9.2 [INFO] [stderr] Compiling rand_distr v0.5.1 [INFO] [stderr] Compiling netem-trace v0.4.4 (/opt/rustwide/workdir) [INFO] [stderr] Finished `test` profile [unoptimized + debuginfo] target(s) in 4.24s [INFO] running `Command { std: "docker" "inspect" "e65c59259fce74a1e21d762a83cef56cf7924b84b46635ab118a6a86df456022", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "e65c59259fce74a1e21d762a83cef56cf7924b84b46635ab118a6a86df456022", kill_on_drop: false }` [INFO] [stdout] e65c59259fce74a1e21d762a83cef56cf7924b84b46635ab118a6a86df456022 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+dec9417b8611e34e787a3e4c37686b5131f9e5c5" "test" "--frozen", kill_on_drop: false }` [INFO] [stdout] f10d3c724e6ad73c0d2a014a2f372abaf1f39a418356fc6c8dde16f89668aa35 [INFO] running `Command { std: "docker" "start" "-a" "f10d3c724e6ad73c0d2a014a2f372abaf1f39a418356fc6c8dde16f89668aa35", kill_on_drop: false }` [INFO] [stderr] Finished `test` profile [unoptimized + debuginfo] target(s) in 0.08s [INFO] [stderr] Running unittests src/lib.rs (/opt/rustwide/target/debug/deps/netem_trace-73fe60966f56f055) [INFO] [stdout] [INFO] [stdout] running 9 tests [INFO] [stdout] test model::delay_per_packet::test::test_static_delay_model ... ok [INFO] [stdout] test model::delay::test::test_static_delay_model ... ok [INFO] [stdout] test model::loss::test::test_static_loss_model ... ok [INFO] [stdout] test model::duplicate::test::test_static_loss_model ... ok [INFO] [stdout] test test::test_normalized_bw_model ... ok [INFO] [stdout] test test::test_sawtooth_bw_model ... ok [INFO] [stdout] test test::test_trace_bw ... ok [INFO] [stdout] test test::test_forever ... ok [INFO] [stderr] Doc-tests netem_trace [INFO] [stdout] test test::test_static_bw_model ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 9 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.01s [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] running 41 tests [INFO] [stdout] test src/lib.rs - (line 25) ... FAILED [INFO] [stdout] test src/model/bw.rs - model::bw::TraceBw (line 494) ... FAILED [INFO] [stdout] test src/model/bw.rs - model::bw (line 29) ... FAILED [INFO] [stdout] test src/model/bw.rs - model::bw::RepeatedBwPattern (line 413) ... FAILED [INFO] [stdout] test src/model/bw.rs - model::bw::RepeatedBwPattern (line 445) ... FAILED [INFO] [stdout] test src/lib.rs - (line 59) ... ok [INFO] [stdout] test src/model/delay.rs - model::delay::RepeatedDelayPattern (line 127) ... FAILED [INFO] [stdout] test src/model/delay.rs - model::delay (line 27) ... FAILED [INFO] [stdout] test src/model/bw.rs - model::bw::NormalizedBw (line 132) ... ok [INFO] [stdout] test src/model/delay.rs - model::delay (line 14) ... ok [INFO] [stdout] test src/model/delay_per_packet.rs - model::delay_per_packet (line 29) ... FAILED [INFO] [stdout] test src/lib.rs - (line 12) ... ok [INFO] [stdout] test src/model/bw.rs - model::bw::NormalizedBw (line 148) ... ok [INFO] [stdout] test src/model/delay.rs - model::delay::RepeatedDelayPattern (line 159) ... FAILED [INFO] [stdout] test src/model/bw.rs - model::bw::SawtoothBwConfig::build_with_rng (line 1251) ... ok [INFO] [stdout] test src/model/delay.rs - model::delay::StaticDelay (line 79) ... ok [INFO] [stdout] test src/model/bw.rs - model::bw (line 16) ... ok [INFO] [stdout] test src/model/delay_per_packet.rs - model::delay_per_packet::RepeatedDelayPerPacketPattern (line 137) ... FAILED [INFO] [stdout] test src/model/bw.rs - model::bw::SawtoothBw (line 239) ... ok [INFO] [stdout] test src/model/bw.rs - model::bw::SawtoothBw (line 290) ... ok [INFO] [stdout] test src/model/delay_per_packet.rs - model::delay_per_packet::LogNormalizedDelayPerPacket (line 332) ... ok [INFO] [stdout] test src/model/delay_per_packet.rs - model::delay_per_packet::RepeatedDelayPerPacketPattern (line 169) ... FAILED [INFO] [stdout] test src/model/bw.rs - model::bw::NormalizedBwConfig::build_with_rng (line 1012) ... ok [INFO] [stdout] test src/model/delay_per_packet.rs - model::delay_per_packet (line 15) ... ok [INFO] [stdout] test src/model/duplicate.rs - model::duplicate (line 27) ... FAILED [INFO] [stdout] test src/model/duplicate.rs - model::duplicate::RepeatedDuplicatePattern (line 155) ... FAILED [INFO] [stdout] test src/model/delay_per_packet.rs - model::delay_per_packet::StaticDelayPerPacket (line 92) ... ok [INFO] [stdout] test src/model/delay_per_packet.rs - model::delay_per_packet::NormalizedDelayPerPacket (line 239) ... ok [INFO] [stdout] test src/model/delay_per_packet.rs - model::delay_per_packet::LogNormalizedDelayPerPacket (line 316) ... ok [INFO] [stdout] test src/model/loss.rs - model::loss (line 27) ... FAILED [INFO] [stdout] test src/model/delay_per_packet.rs - model::delay_per_packet::NormalizedDelayPerPacketConfig::build_with_rng (line 612) ... ok [INFO] [stdout] test src/model/duplicate.rs - model::duplicate (line 14) ... ok [INFO] [stdout] test src/model/delay_per_packet.rs - model::delay_per_packet::NormalizedDelayPerPacket (line 223) ... ok [INFO] [stdout] test src/model/loss.rs - model::loss::RepeatedLossPattern (line 123) ... FAILED [INFO] [stdout] test src/model/duplicate.rs - model::duplicate::RepeatedDuplicatePattern (line 123) ... FAILED [INFO] [stdout] test src/model/loss.rs - model::loss::RepeatedLossPattern (line 155) ... FAILED [INFO] [stdout] test src/model/bw.rs - model::bw::StaticBw (line 88) ... ok [INFO] [stdout] test src/model/delay_per_packet.rs - model::delay_per_packet::LogNormalizedDelayPerPacketConfig::build_with_rng (line 823) ... ok [INFO] [stdout] test src/model/loss.rs - model::loss (line 14) ... ok [INFO] [stdout] test src/model/duplicate.rs - model::duplicate::StaticDuplicate (line 79) ... ok [INFO] [stdout] test src/model/loss.rs - model::loss::StaticLoss (line 79) ... ok [INFO] [stdout] [INFO] [stdout] failures: [INFO] [stdout] [INFO] [stdout] ---- src/lib.rs - (line 25) stdout ---- [INFO] [stdout] error[E0277]: the trait bound `dyn BwTraceConfig: serde::Deserialize<'de>` is not satisfied [INFO] [stdout] --> src/lib.rs:35:35 [INFO] [stdout] | [INFO] [stdout] 35 | let des: Box = serde_json::from_str(config_file_content).unwrap(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `serde_core::de::Deserialize<'_>` is not implemented for `dyn BwTraceConfig` [INFO] [stdout] | [INFO] [stdout] = note: for local types consider adding `#[derive(serde::Deserialize)]` to your `dyn BwTraceConfig` type [INFO] [stdout] = note: for types from other crates check whether the crate offers a `serde` feature flag [INFO] [stdout] = help: the following other types implement trait `serde_core::de::Deserialize<'de>`: [INFO] [stdout] &'a Path [INFO] [stdout] &'a [u8] [INFO] [stdout] &'a str [INFO] [stdout] () [INFO] [stdout] (T,) [INFO] [stdout] (T0, T1) [INFO] [stdout] (T0, T1, T2) [INFO] [stdout] (T0, T1, T2, T3) [INFO] [stdout] and 141 others [INFO] [stdout] = note: required for `Box` to implement `serde_core::de::Deserialize<'_>` [INFO] [stdout] note: required by a bound in `serde_json::from_str` [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/serde_json-1.0.145/src/de.rs:2699:8 [INFO] [stdout] | [INFO] [stdout] 2697 | pub fn from_str<'a, T>(s: &'a str) -> Result [INFO] [stdout] | -------- required by a bound in this function [INFO] [stdout] 2698 | where [INFO] [stdout] 2699 | T: de::Deserialize<'a>, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ required by this bound in `from_str` [INFO] [stdout] [INFO] [stdout] error: aborting due to 1 previous error [INFO] [stdout] [INFO] [stdout] For more information about this error, try `rustc --explain E0277`. [INFO] [stdout] Couldn't compile the test. [INFO] [stdout] ---- src/model/bw.rs - model::bw::TraceBw (line 494) stdout ---- [INFO] [stdout] error[E0277]: the trait bound `dyn BwTraceConfig: serde::Serialize` is not satisfied [INFO] [stdout] --> src/model/bw.rs:537:37 [INFO] [stdout] | [INFO] [stdout] 537 | let ser_str = serde_json::to_string(&ser).unwrap(); [INFO] [stdout] | --------------------- ^^^^ the trait `serde_core::ser::Serialize` is not implemented for `dyn BwTraceConfig` [INFO] [stdout] | | [INFO] [stdout] | required by a bound introduced by this call [INFO] [stdout] | [INFO] [stdout] = note: for local types consider adding `#[derive(serde::Serialize)]` to your `dyn BwTraceConfig` type [INFO] [stdout] = note: for types from other crates check whether the crate offers a `serde` feature flag [INFO] [stdout] = help: the following other types implement trait `serde_core::ser::Serialize`: [INFO] [stdout] &'a T [INFO] [stdout] &'a mut T [INFO] [stdout] () [INFO] [stdout] (T,) [INFO] [stdout] (T0, T1) [INFO] [stdout] (T0, T1, T2) [INFO] [stdout] (T0, T1, T2, T3) [INFO] [stdout] (T0, T1, T2, T3, T4) [INFO] [stdout] and 129 others [INFO] [stdout] = note: required for `Box` to implement `serde_core::ser::Serialize` [INFO] [stdout] note: required by a bound in `serde_json::to_string` [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/serde_json-1.0.145/src/ser.rs:2247:17 [INFO] [stdout] | [INFO] [stdout] 2245 | pub fn to_string(value: &T) -> Result [INFO] [stdout] | --------- required by a bound in this function [INFO] [stdout] 2246 | where [INFO] [stdout] 2247 | T: ?Sized + Serialize, [INFO] [stdout] | ^^^^^^^^^ required by this bound in `to_string` [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `dyn BwTraceConfig: serde::Deserialize<'de>` is not satisfied [INFO] [stdout] --> src/model/bw.rs:547:35 [INFO] [stdout] | [INFO] [stdout] 547 | let des: Box = serde_json::from_str(json_str).unwrap(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `serde_core::de::Deserialize<'_>` is not implemented for `dyn BwTraceConfig` [INFO] [stdout] | [INFO] [stdout] = note: for local types consider adding `#[derive(serde::Deserialize)]` to your `dyn BwTraceConfig` type [INFO] [stdout] = note: for types from other crates check whether the crate offers a `serde` feature flag [INFO] [stdout] = help: the following other types implement trait `serde_core::de::Deserialize<'de>`: [INFO] [stdout] &'a Path [INFO] [stdout] &'a [u8] [INFO] [stdout] &'a str [INFO] [stdout] () [INFO] [stdout] (T,) [INFO] [stdout] (T0, T1) [INFO] [stdout] (T0, T1, T2) [INFO] [stdout] (T0, T1, T2, T3) [INFO] [stdout] and 141 others [INFO] [stdout] = note: required for `Box` to implement `serde_core::de::Deserialize<'_>` [INFO] [stdout] note: required by a bound in `serde_json::from_str` [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/serde_json-1.0.145/src/de.rs:2699:8 [INFO] [stdout] | [INFO] [stdout] 2697 | pub fn from_str<'a, T>(s: &'a str) -> Result [INFO] [stdout] | -------- required by a bound in this function [INFO] [stdout] 2698 | where [INFO] [stdout] 2699 | T: de::Deserialize<'a>, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ required by this bound in `from_str` [INFO] [stdout] [INFO] [stdout] error: aborting due to 2 previous errors [INFO] [stdout] [INFO] [stdout] For more information about this error, try `rustc --explain E0277`. [INFO] [stdout] Couldn't compile the test. [INFO] [stdout] ---- src/model/bw.rs - model::bw (line 29) stdout ---- [INFO] [stdout] error[E0277]: the trait bound `dyn BwTraceConfig: serde::Deserialize<'de>` is not satisfied [INFO] [stdout] --> src/model/bw.rs:39:35 [INFO] [stdout] | [INFO] [stdout] 39 | let des: Box = serde_json::from_str(config_file_content).unwrap(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `serde_core::de::Deserialize<'_>` is not implemented for `dyn BwTraceConfig` [INFO] [stdout] | [INFO] [stdout] = note: for local types consider adding `#[derive(serde::Deserialize)]` to your `dyn BwTraceConfig` type [INFO] [stdout] = note: for types from other crates check whether the crate offers a `serde` feature flag [INFO] [stdout] = help: the following other types implement trait `serde_core::de::Deserialize<'de>`: [INFO] [stdout] &'a Path [INFO] [stdout] &'a [u8] [INFO] [stdout] &'a str [INFO] [stdout] () [INFO] [stdout] (T,) [INFO] [stdout] (T0, T1) [INFO] [stdout] (T0, T1, T2) [INFO] [stdout] (T0, T1, T2, T3) [INFO] [stdout] and 141 others [INFO] [stdout] = note: required for `Box` to implement `serde_core::de::Deserialize<'_>` [INFO] [stdout] note: required by a bound in `serde_json::from_str` [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/serde_json-1.0.145/src/de.rs:2699:8 [INFO] [stdout] | [INFO] [stdout] 2697 | pub fn from_str<'a, T>(s: &'a str) -> Result [INFO] [stdout] | -------- required by a bound in this function [INFO] [stdout] 2698 | where [INFO] [stdout] 2699 | T: de::Deserialize<'a>, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ required by this bound in `from_str` [INFO] [stdout] [INFO] [stdout] error: aborting due to 1 previous error [INFO] [stdout] [INFO] [stdout] For more information about this error, try `rustc --explain E0277`. [INFO] [stdout] Couldn't compile the test. [INFO] [stdout] ---- src/model/bw.rs - model::bw::RepeatedBwPattern (line 413) stdout ---- [INFO] [stdout] error[E0277]: the trait bound `dyn BwTraceConfig: serde::Deserialize<'de>` is not satisfied [INFO] [stdout] --> src/model/bw.rs:423:35 [INFO] [stdout] | [INFO] [stdout] 423 | let des: Box = serde_json::from_str(config_file_content).unwrap(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `serde_core::de::Deserialize<'_>` is not implemented for `dyn BwTraceConfig` [INFO] [stdout] | [INFO] [stdout] = note: for local types consider adding `#[derive(serde::Deserialize)]` to your `dyn BwTraceConfig` type [INFO] [stdout] = note: for types from other crates check whether the crate offers a `serde` feature flag [INFO] [stdout] = help: the following other types implement trait `serde_core::de::Deserialize<'de>`: [INFO] [stdout] &'a Path [INFO] [stdout] &'a [u8] [INFO] [stdout] &'a str [INFO] [stdout] () [INFO] [stdout] (T,) [INFO] [stdout] (T0, T1) [INFO] [stdout] (T0, T1, T2) [INFO] [stdout] (T0, T1, T2, T3) [INFO] [stdout] and 141 others [INFO] [stdout] = note: required for `Box` to implement `serde_core::de::Deserialize<'_>` [INFO] [stdout] note: required by a bound in `serde_json::from_str` [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/serde_json-1.0.145/src/de.rs:2699:8 [INFO] [stdout] | [INFO] [stdout] 2697 | pub fn from_str<'a, T>(s: &'a str) -> Result [INFO] [stdout] | -------- required by a bound in this function [INFO] [stdout] 2698 | where [INFO] [stdout] 2699 | T: de::Deserialize<'a>, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ required by this bound in `from_str` [INFO] [stdout] [INFO] [stdout] error: aborting due to 1 previous error [INFO] [stdout] [INFO] [stdout] For more information about this error, try `rustc --explain E0277`. [INFO] [stdout] Couldn't compile the test. [INFO] [stdout] ---- src/model/bw.rs - model::bw::RepeatedBwPattern (line 445) stdout ---- [INFO] [stdout] error[E0277]: the trait bound `dyn BwTraceConfig: serde::Serialize` is not satisfied [INFO] [stdout] --> src/model/bw.rs:462:37 [INFO] [stdout] | [INFO] [stdout] 462 | let ser_str = serde_json::to_string(&ser).unwrap(); [INFO] [stdout] | --------------------- ^^^^ the trait `serde_core::ser::Serialize` is not implemented for `dyn BwTraceConfig` [INFO] [stdout] | | [INFO] [stdout] | required by a bound introduced by this call [INFO] [stdout] | [INFO] [stdout] = note: for local types consider adding `#[derive(serde::Serialize)]` to your `dyn BwTraceConfig` type [INFO] [stdout] = note: for types from other crates check whether the crate offers a `serde` feature flag [INFO] [stdout] = help: the following other types implement trait `serde_core::ser::Serialize`: [INFO] [stdout] &'a T [INFO] [stdout] &'a mut T [INFO] [stdout] () [INFO] [stdout] (T,) [INFO] [stdout] (T0, T1) [INFO] [stdout] (T0, T1, T2) [INFO] [stdout] (T0, T1, T2, T3) [INFO] [stdout] (T0, T1, T2, T3, T4) [INFO] [stdout] and 129 others [INFO] [stdout] = note: required for `Box` to implement `serde_core::ser::Serialize` [INFO] [stdout] note: required by a bound in `serde_json::to_string` [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/serde_json-1.0.145/src/ser.rs:2247:17 [INFO] [stdout] | [INFO] [stdout] 2245 | pub fn to_string(value: &T) -> Result [INFO] [stdout] | --------- required by a bound in this function [INFO] [stdout] 2246 | where [INFO] [stdout] 2247 | T: ?Sized + Serialize, [INFO] [stdout] | ^^^^^^^^^ required by this bound in `to_string` [INFO] [stdout] [INFO] [stdout] error: aborting due to 1 previous error [INFO] [stdout] [INFO] [stdout] For more information about this error, try `rustc --explain E0277`. [INFO] [stdout] Couldn't compile the test. [INFO] [stdout] ---- src/model/delay.rs - model::delay::RepeatedDelayPattern (line 127) stdout ---- [INFO] [stdout] error[E0277]: the trait bound `dyn DelayTraceConfig: serde::Deserialize<'de>` is not satisfied [INFO] [stdout] --> src/model/delay.rs:137:38 [INFO] [stdout] | [INFO] [stdout] 137 | let des: Box = serde_json::from_str(config_file_content).unwrap(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `serde_core::de::Deserialize<'_>` is not implemented for `dyn DelayTraceConfig` [INFO] [stdout] | [INFO] [stdout] = note: for local types consider adding `#[derive(serde::Deserialize)]` to your `dyn DelayTraceConfig` type [INFO] [stdout] = note: for types from other crates check whether the crate offers a `serde` feature flag [INFO] [stdout] = help: the following other types implement trait `serde_core::de::Deserialize<'de>`: [INFO] [stdout] &'a Path [INFO] [stdout] &'a [u8] [INFO] [stdout] &'a str [INFO] [stdout] () [INFO] [stdout] (T,) [INFO] [stdout] (T0, T1) [INFO] [stdout] (T0, T1, T2) [INFO] [stdout] (T0, T1, T2, T3) [INFO] [stdout] and 141 others [INFO] [stdout] = note: required for `Box` to implement `serde_core::de::Deserialize<'_>` [INFO] [stdout] note: required by a bound in `serde_json::from_str` [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/serde_json-1.0.145/src/de.rs:2699:8 [INFO] [stdout] | [INFO] [stdout] 2697 | pub fn from_str<'a, T>(s: &'a str) -> Result [INFO] [stdout] | -------- required by a bound in this function [INFO] [stdout] 2698 | where [INFO] [stdout] 2699 | T: de::Deserialize<'a>, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ required by this bound in `from_str` [INFO] [stdout] [INFO] [stdout] error: aborting due to 1 previous error [INFO] [stdout] [INFO] [stdout] For more information about this error, try `rustc --explain E0277`. [INFO] [stdout] Couldn't compile the test. [INFO] [stdout] ---- src/model/delay.rs - model::delay (line 27) stdout ---- [INFO] [stdout] error[E0277]: the trait bound `dyn DelayTraceConfig: serde::Deserialize<'de>` is not satisfied [INFO] [stdout] --> src/model/delay.rs:37:38 [INFO] [stdout] | [INFO] [stdout] 37 | let des: Box = serde_json::from_str(config_file_content).unwrap(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `serde_core::de::Deserialize<'_>` is not implemented for `dyn DelayTraceConfig` [INFO] [stdout] | [INFO] [stdout] = note: for local types consider adding `#[derive(serde::Deserialize)]` to your `dyn DelayTraceConfig` type [INFO] [stdout] = note: for types from other crates check whether the crate offers a `serde` feature flag [INFO] [stdout] = help: the following other types implement trait `serde_core::de::Deserialize<'de>`: [INFO] [stdout] &'a Path [INFO] [stdout] &'a [u8] [INFO] [stdout] &'a str [INFO] [stdout] () [INFO] [stdout] (T,) [INFO] [stdout] (T0, T1) [INFO] [stdout] (T0, T1, T2) [INFO] [stdout] (T0, T1, T2, T3) [INFO] [stdout] and 141 others [INFO] [stdout] = note: required for `Box` to implement `serde_core::de::Deserialize<'_>` [INFO] [stdout] note: required by a bound in `serde_json::from_str` [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/serde_json-1.0.145/src/de.rs:2699:8 [INFO] [stdout] | [INFO] [stdout] 2697 | pub fn from_str<'a, T>(s: &'a str) -> Result [INFO] [stdout] | -------- required by a bound in this function [INFO] [stdout] 2698 | where [INFO] [stdout] 2699 | T: de::Deserialize<'a>, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ required by this bound in `from_str` [INFO] [stdout] [INFO] [stdout] error: aborting due to 1 previous error [INFO] [stdout] [INFO] [stdout] For more information about this error, try `rustc --explain E0277`. [INFO] [stdout] Couldn't compile the test. [INFO] [stdout] ---- src/model/delay_per_packet.rs - model::delay_per_packet (line 29) stdout ---- [INFO] [stdout] error[E0277]: the trait bound `dyn DelayPerPacketTraceConfig: serde::Deserialize<'de>` is not satisfied [INFO] [stdout] --> src/model/delay_per_packet.rs:39:47 [INFO] [stdout] | [INFO] [stdout] 39 | let des: Box = serde_json::from_str(config_file_content).unwrap(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `serde_core::de::Deserialize<'_>` is not implemented for `dyn DelayPerPacketTraceConfig` [INFO] [stdout] | [INFO] [stdout] = note: for local types consider adding `#[derive(serde::Deserialize)]` to your `dyn DelayPerPacketTraceConfig` type [INFO] [stdout] = note: for types from other crates check whether the crate offers a `serde` feature flag [INFO] [stdout] = help: the following other types implement trait `serde_core::de::Deserialize<'de>`: [INFO] [stdout] &'a Path [INFO] [stdout] &'a [u8] [INFO] [stdout] &'a str [INFO] [stdout] () [INFO] [stdout] (T,) [INFO] [stdout] (T0, T1) [INFO] [stdout] (T0, T1, T2) [INFO] [stdout] (T0, T1, T2, T3) [INFO] [stdout] and 141 others [INFO] [stdout] = note: required for `Box` to implement `serde_core::de::Deserialize<'_>` [INFO] [stdout] note: required by a bound in `serde_json::from_str` [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/serde_json-1.0.145/src/de.rs:2699:8 [INFO] [stdout] | [INFO] [stdout] 2697 | pub fn from_str<'a, T>(s: &'a str) -> Result [INFO] [stdout] | -------- required by a bound in this function [INFO] [stdout] 2698 | where [INFO] [stdout] 2699 | T: de::Deserialize<'a>, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ required by this bound in `from_str` [INFO] [stdout] [INFO] [stdout] error: aborting due to 1 previous error [INFO] [stdout] [INFO] [stdout] For more information about this error, try `rustc --explain E0277`. [INFO] [stdout] Couldn't compile the test. [INFO] [stdout] ---- src/model/delay.rs - model::delay::RepeatedDelayPattern (line 159) stdout ---- [INFO] [stdout] error[E0277]: the trait bound `dyn DelayTraceConfig: serde::Serialize` is not satisfied [INFO] [stdout] --> src/model/delay.rs:176:37 [INFO] [stdout] | [INFO] [stdout] 176 | let ser_str = serde_json::to_string(&ser).unwrap(); [INFO] [stdout] | --------------------- ^^^^ the trait `serde_core::ser::Serialize` is not implemented for `dyn DelayTraceConfig` [INFO] [stdout] | | [INFO] [stdout] | required by a bound introduced by this call [INFO] [stdout] | [INFO] [stdout] = note: for local types consider adding `#[derive(serde::Serialize)]` to your `dyn DelayTraceConfig` type [INFO] [stdout] = note: for types from other crates check whether the crate offers a `serde` feature flag [INFO] [stdout] = help: the following other types implement trait `serde_core::ser::Serialize`: [INFO] [stdout] &'a T [INFO] [stdout] &'a mut T [INFO] [stdout] () [INFO] [stdout] (T,) [INFO] [stdout] (T0, T1) [INFO] [stdout] (T0, T1, T2) [INFO] [stdout] (T0, T1, T2, T3) [INFO] [stdout] (T0, T1, T2, T3, T4) [INFO] [stdout] and 129 others [INFO] [stdout] = note: required for `Box` to implement `serde_core::ser::Serialize` [INFO] [stdout] note: required by a bound in `serde_json::to_string` [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/serde_json-1.0.145/src/ser.rs:2247:17 [INFO] [stdout] | [INFO] [stdout] 2245 | pub fn to_string(value: &T) -> Result [INFO] [stdout] | --------- required by a bound in this function [INFO] [stdout] 2246 | where [INFO] [stdout] 2247 | T: ?Sized + Serialize, [INFO] [stdout] | ^^^^^^^^^ required by this bound in `to_string` [INFO] [stdout] [INFO] [stdout] error: aborting due to 1 previous error [INFO] [stdout] [INFO] [stdout] For more information about this error, try `rustc --explain E0277`. [INFO] [stdout] Couldn't compile the test. [INFO] [stdout] ---- src/model/delay_per_packet.rs - model::delay_per_packet::RepeatedDelayPerPacketPattern (line 137) stdout ---- [INFO] [stdout] error[E0277]: the trait bound `dyn DelayPerPacketTraceConfig: serde::Deserialize<'de>` is not satisfied [INFO] [stdout] --> src/model/delay_per_packet.rs:147:47 [INFO] [stdout] | [INFO] [stdout] 147 | let des: Box = serde_json::from_str(config_file_content).unwrap(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `serde_core::de::Deserialize<'_>` is not implemented for `dyn DelayPerPacketTraceConfig` [INFO] [stdout] | [INFO] [stdout] = note: for local types consider adding `#[derive(serde::Deserialize)]` to your `dyn DelayPerPacketTraceConfig` type [INFO] [stdout] = note: for types from other crates check whether the crate offers a `serde` feature flag [INFO] [stdout] = help: the following other types implement trait `serde_core::de::Deserialize<'de>`: [INFO] [stdout] &'a Path [INFO] [stdout] &'a [u8] [INFO] [stdout] &'a str [INFO] [stdout] () [INFO] [stdout] (T,) [INFO] [stdout] (T0, T1) [INFO] [stdout] (T0, T1, T2) [INFO] [stdout] (T0, T1, T2, T3) [INFO] [stdout] and 141 others [INFO] [stdout] = note: required for `Box` to implement `serde_core::de::Deserialize<'_>` [INFO] [stdout] note: required by a bound in `serde_json::from_str` [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/serde_json-1.0.145/src/de.rs:2699:8 [INFO] [stdout] | [INFO] [stdout] 2697 | pub fn from_str<'a, T>(s: &'a str) -> Result [INFO] [stdout] | -------- required by a bound in this function [INFO] [stdout] 2698 | where [INFO] [stdout] 2699 | T: de::Deserialize<'a>, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ required by this bound in `from_str` [INFO] [stdout] [INFO] [stdout] error: aborting due to 1 previous error [INFO] [stdout] [INFO] [stdout] For more information about this error, try `rustc --explain E0277`. [INFO] [stdout] Couldn't compile the test. [INFO] [stdout] ---- src/model/delay_per_packet.rs - model::delay_per_packet::RepeatedDelayPerPacketPattern (line 169) stdout ---- [INFO] [stdout] error[E0277]: the trait bound `dyn DelayPerPacketTraceConfig: serde::Serialize` is not satisfied [INFO] [stdout] --> src/model/delay_per_packet.rs:186:37 [INFO] [stdout] | [INFO] [stdout] 186 | let ser_str = serde_json::to_string(&ser).unwrap(); [INFO] [stdout] | --------------------- ^^^^ the trait `serde_core::ser::Serialize` is not implemented for `dyn DelayPerPacketTraceConfig` [INFO] [stdout] | | [INFO] [stdout] | required by a bound introduced by this call [INFO] [stdout] | [INFO] [stdout] = note: for local types consider adding `#[derive(serde::Serialize)]` to your `dyn DelayPerPacketTraceConfig` type [INFO] [stdout] = note: for types from other crates check whether the crate offers a `serde` feature flag [INFO] [stdout] = help: the following other types implement trait `serde_core::ser::Serialize`: [INFO] [stdout] &'a T [INFO] [stdout] &'a mut T [INFO] [stdout] () [INFO] [stdout] (T,) [INFO] [stdout] (T0, T1) [INFO] [stdout] (T0, T1, T2) [INFO] [stdout] (T0, T1, T2, T3) [INFO] [stdout] (T0, T1, T2, T3, T4) [INFO] [stdout] and 129 others [INFO] [stdout] = note: required for `Box` to implement `serde_core::ser::Serialize` [INFO] [stdout] note: required by a bound in `serde_json::to_string` [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/serde_json-1.0.145/src/ser.rs:2247:17 [INFO] [stdout] | [INFO] [stdout] 2245 | pub fn to_string(value: &T) -> Result [INFO] [stdout] | --------- required by a bound in this function [INFO] [stdout] 2246 | where [INFO] [stdout] 2247 | T: ?Sized + Serialize, [INFO] [stdout] | ^^^^^^^^^ required by this bound in `to_string` [INFO] [stdout] [INFO] [stdout] error: aborting due to 1 previous error [INFO] [stdout] [INFO] [stdout] For more information about this error, try `rustc --explain E0277`. [INFO] [stdout] Couldn't compile the test. [INFO] [stdout] ---- src/model/duplicate.rs - model::duplicate (line 27) stdout ---- [INFO] [stdout] error[E0277]: the trait bound `dyn DuplicateTraceConfig: serde::Deserialize<'de>` is not satisfied [INFO] [stdout] --> src/model/duplicate.rs:37:42 [INFO] [stdout] | [INFO] [stdout] 37 | let des: Box = serde_json::from_str(config_file_content).unwrap(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `serde_core::de::Deserialize<'_>` is not implemented for `dyn DuplicateTraceConfig` [INFO] [stdout] | [INFO] [stdout] = note: for local types consider adding `#[derive(serde::Deserialize)]` to your `dyn DuplicateTraceConfig` type [INFO] [stdout] = note: for types from other crates check whether the crate offers a `serde` feature flag [INFO] [stdout] = help: the following other types implement trait `serde_core::de::Deserialize<'de>`: [INFO] [stdout] &'a Path [INFO] [stdout] &'a [u8] [INFO] [stdout] &'a str [INFO] [stdout] () [INFO] [stdout] (T,) [INFO] [stdout] (T0, T1) [INFO] [stdout] (T0, T1, T2) [INFO] [stdout] (T0, T1, T2, T3) [INFO] [stdout] and 141 others [INFO] [stdout] = note: required for `Box` to implement `serde_core::de::Deserialize<'_>` [INFO] [stdout] note: required by a bound in `serde_json::from_str` [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/serde_json-1.0.145/src/de.rs:2699:8 [INFO] [stdout] | [INFO] [stdout] 2697 | pub fn from_str<'a, T>(s: &'a str) -> Result [INFO] [stdout] | -------- required by a bound in this function [INFO] [stdout] 2698 | where [INFO] [stdout] 2699 | T: de::Deserialize<'a>, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ required by this bound in `from_str` [INFO] [stdout] [INFO] [stdout] error: aborting due to 1 previous error [INFO] [stdout] [INFO] [stdout] For more information about this error, try `rustc --explain E0277`. [INFO] [stdout] Couldn't compile the test. [INFO] [stdout] ---- src/model/duplicate.rs - model::duplicate::RepeatedDuplicatePattern (line 155) stdout ---- [INFO] [stdout] error[E0277]: the trait bound `dyn DuplicateTraceConfig: serde::Serialize` is not satisfied [INFO] [stdout] --> src/model/duplicate.rs:172:37 [INFO] [stdout] | [INFO] [stdout] 172 | let ser_str = serde_json::to_string(&ser).unwrap(); [INFO] [stdout] | --------------------- ^^^^ the trait `serde_core::ser::Serialize` is not implemented for `dyn DuplicateTraceConfig` [INFO] [stdout] | | [INFO] [stdout] | required by a bound introduced by this call [INFO] [stdout] | [INFO] [stdout] = note: for local types consider adding `#[derive(serde::Serialize)]` to your `dyn DuplicateTraceConfig` type [INFO] [stdout] = note: for types from other crates check whether the crate offers a `serde` feature flag [INFO] [stdout] = help: the following other types implement trait `serde_core::ser::Serialize`: [INFO] [stdout] &'a T [INFO] [stdout] &'a mut T [INFO] [stdout] () [INFO] [stdout] (T,) [INFO] [stdout] (T0, T1) [INFO] [stdout] (T0, T1, T2) [INFO] [stdout] (T0, T1, T2, T3) [INFO] [stdout] (T0, T1, T2, T3, T4) [INFO] [stdout] and 129 others [INFO] [stdout] = note: required for `Box` to implement `serde_core::ser::Serialize` [INFO] [stdout] note: required by a bound in `serde_json::to_string` [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/serde_json-1.0.145/src/ser.rs:2247:17 [INFO] [stdout] | [INFO] [stdout] 2245 | pub fn to_string(value: &T) -> Result [INFO] [stdout] | --------- required by a bound in this function [INFO] [stdout] 2246 | where [INFO] [stdout] 2247 | T: ?Sized + Serialize, [INFO] [stdout] | ^^^^^^^^^ required by this bound in `to_string` [INFO] [stdout] [INFO] [stdout] error: aborting due to 1 previous error [INFO] [stdout] [INFO] [stdout] For more information about this error, try `rustc --explain E0277`. [INFO] [stdout] Couldn't compile the test. [INFO] [stdout] ---- src/model/loss.rs - model::loss (line 27) stdout ---- [INFO] [stdout] error[E0277]: the trait bound `dyn LossTraceConfig: serde::Deserialize<'de>` is not satisfied [INFO] [stdout] --> src/model/loss.rs:37:37 [INFO] [stdout] | [INFO] [stdout] 37 | let des: Box = serde_json::from_str(config_file_content).unwrap(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `serde_core::de::Deserialize<'_>` is not implemented for `dyn LossTraceConfig` [INFO] [stdout] | [INFO] [stdout] = note: for local types consider adding `#[derive(serde::Deserialize)]` to your `dyn LossTraceConfig` type [INFO] [stdout] = note: for types from other crates check whether the crate offers a `serde` feature flag [INFO] [stdout] = help: the following other types implement trait `serde_core::de::Deserialize<'de>`: [INFO] [stdout] &'a Path [INFO] [stdout] &'a [u8] [INFO] [stdout] &'a str [INFO] [stdout] () [INFO] [stdout] (T,) [INFO] [stdout] (T0, T1) [INFO] [stdout] (T0, T1, T2) [INFO] [stdout] (T0, T1, T2, T3) [INFO] [stdout] and 141 others [INFO] [stdout] = note: required for `Box` to implement `serde_core::de::Deserialize<'_>` [INFO] [stdout] note: required by a bound in `serde_json::from_str` [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/serde_json-1.0.145/src/de.rs:2699:8 [INFO] [stdout] | [INFO] [stdout] 2697 | pub fn from_str<'a, T>(s: &'a str) -> Result [INFO] [stdout] | -------- required by a bound in this function [INFO] [stdout] 2698 | where [INFO] [stdout] 2699 | T: de::Deserialize<'a>, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ required by this bound in `from_str` [INFO] [stdout] [INFO] [stdout] error: aborting due to 1 previous error [INFO] [stdout] [INFO] [stdout] For more information about this error, try `rustc --explain E0277`. [INFO] [stdout] Couldn't compile the test. [INFO] [stdout] ---- src/model/loss.rs - model::loss::RepeatedLossPattern (line 123) stdout ---- [INFO] [stdout] error[E0277]: the trait bound `dyn LossTraceConfig: serde::Deserialize<'de>` is not satisfied [INFO] [stdout] --> src/model/loss.rs:133:37 [INFO] [stdout] | [INFO] [stdout] 133 | let des: Box = serde_json::from_str(config_file_content).unwrap(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `serde_core::de::Deserialize<'_>` is not implemented for `dyn LossTraceConfig` [INFO] [stdout] | [INFO] [stdout] = note: for local types consider adding `#[derive(serde::Deserialize)]` to your `dyn LossTraceConfig` type [INFO] [stdout] = note: for types from other crates check whether the crate offers a `serde` feature flag [INFO] [stdout] = help: the following other types implement trait `serde_core::de::Deserialize<'de>`: [INFO] [stdout] &'a Path [INFO] [stdout] &'a [u8] [INFO] [stdout] &'a str [INFO] [stdout] () [INFO] [stdout] (T,) [INFO] [stdout] (T0, T1) [INFO] [stdout] (T0, T1, T2) [INFO] [stdout] (T0, T1, T2, T3) [INFO] [stdout] and 141 others [INFO] [stdout] = note: required for `Box` to implement `serde_core::de::Deserialize<'_>` [INFO] [stdout] note: required by a bound in `serde_json::from_str` [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/serde_json-1.0.145/src/de.rs:2699:8 [INFO] [stdout] | [INFO] [stdout] 2697 | pub fn from_str<'a, T>(s: &'a str) -> Result [INFO] [stdout] | -------- required by a bound in this function [INFO] [stdout] 2698 | where [INFO] [stdout] 2699 | T: de::Deserialize<'a>, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ required by this bound in `from_str` [INFO] [stdout] [INFO] [stdout] error: aborting due to 1 previous error [INFO] [stdout] [INFO] [stdout] For more information about this error, try `rustc --explain E0277`. [INFO] [stdout] Couldn't compile the test. [INFO] [stdout] ---- src/model/duplicate.rs - model::duplicate::RepeatedDuplicatePattern (line 123) stdout ---- [INFO] [stdout] error[E0277]: the trait bound `dyn DuplicateTraceConfig: serde::Deserialize<'de>` is not satisfied [INFO] [stdout] --> src/model/duplicate.rs:133:42 [INFO] [stdout] | [INFO] [stdout] 133 | let des: Box = serde_json::from_str(config_file_content).unwrap(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `serde_core::de::Deserialize<'_>` is not implemented for `dyn DuplicateTraceConfig` [INFO] [stdout] | [INFO] [stdout] = note: for local types consider adding `#[derive(serde::Deserialize)]` to your `dyn DuplicateTraceConfig` type [INFO] [stdout] = note: for types from other crates check whether the crate offers a `serde` feature flag [INFO] [stdout] = help: the following other types implement trait `serde_core::de::Deserialize<'de>`: [INFO] [stdout] &'a Path [INFO] [stdout] &'a [u8] [INFO] [stdout] &'a str [INFO] [stdout] () [INFO] [stdout] (T,) [INFO] [stdout] (T0, T1) [INFO] [stdout] (T0, T1, T2) [INFO] [stdout] (T0, T1, T2, T3) [INFO] [stdout] and 141 others [INFO] [stdout] = note: required for `Box` to implement `serde_core::de::Deserialize<'_>` [INFO] [stdout] note: required by a bound in `serde_json::from_str` [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/serde_json-1.0.145/src/de.rs:2699:8 [INFO] [stdout] | [INFO] [stdout] 2697 | pub fn from_str<'a, T>(s: &'a str) -> Result [INFO] [stdout] | -------- required by a bound in this function [INFO] [stdout] 2698 | where [INFO] [stdout] 2699 | T: de::Deserialize<'a>, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ required by this bound in `from_str` [INFO] [stdout] [INFO] [stdout] error: aborting due to 1 previous error [INFO] [stdout] [INFO] [stdout] For more information about this error, try `rustc --explain E0277`. [INFO] [stdout] Couldn't compile the test. [INFO] [stdout] ---- src/model/loss.rs - model::loss::RepeatedLossPattern (line 155) stdout ---- [INFO] [stdout] error[E0277]: the trait bound `dyn LossTraceConfig: serde::Serialize` is not satisfied [INFO] [stdout] --> src/model/loss.rs:172:37 [INFO] [stdout] | [INFO] [stdout] 172 | let ser_str = serde_json::to_string(&ser).unwrap(); [INFO] [stdout] | --------------------- ^^^^ the trait `serde_core::ser::Serialize` is not implemented for `dyn LossTraceConfig` [INFO] [stdout] | | [INFO] [stdout] | required by a bound introduced by this call [INFO] [stdout] | [INFO] [stdout] = note: for local types consider adding `#[derive(serde::Serialize)]` to your `dyn LossTraceConfig` type [INFO] [stdout] = note: for types from other crates check whether the crate offers a `serde` feature flag [INFO] [stdout] = help: the following other types implement trait `serde_core::ser::Serialize`: [INFO] [stdout] &'a T [INFO] [stdout] &'a mut T [INFO] [stdout] () [INFO] [stdout] (T,) [INFO] [stdout] (T0, T1) [INFO] [stdout] (T0, T1, T2) [INFO] [stdout] (T0, T1, T2, T3) [INFO] [stdout] (T0, T1, T2, T3, T4) [INFO] [stdout] and 129 others [INFO] [stdout] = note: required for `Box` to implement `serde_core::ser::Serialize` [INFO] [stdout] note: required by a bound in `serde_json::to_string` [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/serde_json-1.0.145/src/ser.rs:2247:17 [INFO] [stdout] | [INFO] [stdout] 2245 | pub fn to_string(value: &T) -> Result [INFO] [stdout] | --------- required by a bound in this function [INFO] [stdout] 2246 | where [INFO] [stdout] 2247 | T: ?Sized + Serialize, [INFO] [stdout] | ^^^^^^^^^ required by this bound in `to_string` [INFO] [stdout] [INFO] [stdout] error: aborting due to 1 previous error [INFO] [stdout] [INFO] [stdout] For more information about this error, try `rustc --explain E0277`. [INFO] [stdout] Couldn't compile the test. [INFO] [stdout] [INFO] [stdout] failures: [INFO] [stdout] src/lib.rs - (line 25) [INFO] [stdout] src/model/bw.rs - model::bw (line 29) [INFO] [stdout] src/model/bw.rs - model::bw::RepeatedBwPattern (line 413) [INFO] [stdout] src/model/bw.rs - model::bw::RepeatedBwPattern (line 445) [INFO] [stdout] src/model/bw.rs - model::bw::TraceBw (line 494) [INFO] [stdout] src/model/delay.rs - model::delay (line 27) [INFO] [stdout] src/model/delay.rs - model::delay::RepeatedDelayPattern (line 127) [INFO] [stdout] src/model/delay.rs - model::delay::RepeatedDelayPattern (line 159) [INFO] [stdout] src/model/delay_per_packet.rs - model::delay_per_packet (line 29) [INFO] [stdout] src/model/delay_per_packet.rs - model::delay_per_packet::RepeatedDelayPerPacketPattern (line 137) [INFO] [stdout] src/model/delay_per_packet.rs - model::delay_per_packet::RepeatedDelayPerPacketPattern (line 169) [INFO] [stdout] src/model/duplicate.rs - model::duplicate (line 27) [INFO] [stdout] src/model/duplicate.rs - model::duplicate::RepeatedDuplicatePattern (line 123) [INFO] [stdout] src/model/duplicate.rs - model::duplicate::RepeatedDuplicatePattern (line 155) [INFO] [stdout] src/model/loss.rs - model::loss (line 27) [INFO] [stdout] src/model/loss.rs - model::loss::RepeatedLossPattern (line 123) [INFO] [stdout] src/model/loss.rs - model::loss::RepeatedLossPattern (line 155) [INFO] [stdout] [INFO] [stdout] test result: FAILED. 24 passed; 17 failed; 0 ignored; 0 measured; 0 filtered out; finished in 1.76s [INFO] [stdout] [INFO] [stderr] error: doctest failed, to rerun pass `--doc` [INFO] running `Command { std: "docker" "inspect" "f10d3c724e6ad73c0d2a014a2f372abaf1f39a418356fc6c8dde16f89668aa35", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "f10d3c724e6ad73c0d2a014a2f372abaf1f39a418356fc6c8dde16f89668aa35", kill_on_drop: false }` [INFO] [stdout] f10d3c724e6ad73c0d2a014a2f372abaf1f39a418356fc6c8dde16f89668aa35