[INFO] fetching crate netem-trace 0.4.3... [INFO] testing netem-trace-0.4.3 against master#cdb45c87e2cd43495379f7e867e3cc15dcee9f93 for pr-145838-1 [INFO] extracting crate netem-trace 0.4.3 into /workspace/builds/worker-2-tc1/source [INFO] started tweaking crates.io crate netem-trace 0.4.3 [INFO] finished tweaking crates.io crate netem-trace 0.4.3 [INFO] tweaked toml for crates.io crate netem-trace 0.4.3 written to /workspace/builds/worker-2-tc1/source/Cargo.toml [INFO] validating manifest of crates.io crate netem-trace 0.4.3 on toolchain cdb45c87e2cd43495379f7e867e3cc15dcee9f93 [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+cdb45c87e2cd43495379f7e867e3cc15dcee9f93" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] crate crates.io crate netem-trace 0.4.3 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" "+cdb45c87e2cd43495379f7e867e3cc15dcee9f93" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] [stderr] Updating crates.io index [INFO] [stderr] Downloading crates ... [INFO] [stderr] Downloaded bandwidth v0.3.0 [INFO] [stderr] Downloaded human-bandwidth v0.1.4 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-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:7ad1b28ee6f5f7f699f6cf7015098d6ccdd96d6f2d78dd06228f5b4c9faf309c" "/opt/rustwide/cargo-home/bin/cargo" "+cdb45c87e2cd43495379f7e867e3cc15dcee9f93" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] 04d499e6316866ea0b366c9a02b877af28fd98bb7d13c058771b63d1b7d5a3f7 [INFO] running `Command { std: "docker" "start" "-a" "04d499e6316866ea0b366c9a02b877af28fd98bb7d13c058771b63d1b7d5a3f7", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "04d499e6316866ea0b366c9a02b877af28fd98bb7d13c058771b63d1b7d5a3f7", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "04d499e6316866ea0b366c9a02b877af28fd98bb7d13c058771b63d1b7d5a3f7", kill_on_drop: false }` [INFO] [stdout] 04d499e6316866ea0b366c9a02b877af28fd98bb7d13c058771b63d1b7d5a3f7 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:7ad1b28ee6f5f7f699f6cf7015098d6ccdd96d6f2d78dd06228f5b4c9faf309c" "/opt/rustwide/cargo-home/bin/cargo" "+cdb45c87e2cd43495379f7e867e3cc15dcee9f93" "build" "--frozen" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] fab2a7ee92c3d33cfaa134acde15b981ce7e5832b673aa52aeb7c64de5bca530 [INFO] running `Command { std: "docker" "start" "-a" "fab2a7ee92c3d33cfaa134acde15b981ce7e5832b673aa52aeb7c64de5bca530", kill_on_drop: false }` [INFO] [stderr] Compiling libc v0.2.173 [INFO] [stderr] Compiling zerocopy v0.8.25 [INFO] [stderr] Compiling cfg-if v1.0.1 [INFO] [stderr] Compiling rustversion v1.0.21 [INFO] [stderr] Compiling dyn-clone v1.0.19 [INFO] [stderr] Compiling num-traits v0.2.19 [INFO] [stderr] Compiling bandwidth v0.3.0 [INFO] [stderr] Compiling getrandom v0.3.3 [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.1 [INFO] [stderr] Compiling rand_distr v0.5.1 [INFO] [stderr] Compiling netem-trace v0.4.3 (/opt/rustwide/workdir) [INFO] [stderr] Finished `dev` profile [unoptimized + debuginfo] target(s) in 4.32s [INFO] running `Command { std: "docker" "inspect" "fab2a7ee92c3d33cfaa134acde15b981ce7e5832b673aa52aeb7c64de5bca530", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "fab2a7ee92c3d33cfaa134acde15b981ce7e5832b673aa52aeb7c64de5bca530", kill_on_drop: false }` [INFO] [stdout] fab2a7ee92c3d33cfaa134acde15b981ce7e5832b673aa52aeb7c64de5bca530 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:7ad1b28ee6f5f7f699f6cf7015098d6ccdd96d6f2d78dd06228f5b4c9faf309c" "/opt/rustwide/cargo-home/bin/cargo" "+cdb45c87e2cd43495379f7e867e3cc15dcee9f93" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] e9c27d1e9bff7c1d936fa883d16a00c46817732a200ad1a5ed4d54fd0a2bb3c0 [INFO] running `Command { std: "docker" "start" "-a" "e9c27d1e9bff7c1d936fa883d16a00c46817732a200ad1a5ed4d54fd0a2bb3c0", kill_on_drop: false }` [INFO] [stderr] Compiling serde_json v1.0.140 [INFO] [stderr] Compiling serde v1.0.219 [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.1 [INFO] [stderr] Compiling rand_distr v0.5.1 [INFO] [stderr] Compiling netem-trace v0.4.3 (/opt/rustwide/workdir) [INFO] [stderr] Finished `test` profile [unoptimized + debuginfo] target(s) in 6.92s [INFO] running `Command { std: "docker" "inspect" "e9c27d1e9bff7c1d936fa883d16a00c46817732a200ad1a5ed4d54fd0a2bb3c0", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "e9c27d1e9bff7c1d936fa883d16a00c46817732a200ad1a5ed4d54fd0a2bb3c0", kill_on_drop: false }` [INFO] [stdout] e9c27d1e9bff7c1d936fa883d16a00c46817732a200ad1a5ed4d54fd0a2bb3c0 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:7ad1b28ee6f5f7f699f6cf7015098d6ccdd96d6f2d78dd06228f5b4c9faf309c" "/opt/rustwide/cargo-home/bin/cargo" "+cdb45c87e2cd43495379f7e867e3cc15dcee9f93" "test" "--frozen", kill_on_drop: false }` [INFO] [stdout] 3cc39d84416d65cd12f4a090b339fc2fd74f80f4c4b60a2e585c08aa77b29ab0 [INFO] running `Command { std: "docker" "start" "-a" "3cc39d84416d65cd12f4a090b339fc2fd74f80f4c4b60a2e585c08aa77b29ab0", kill_on_drop: false }` [INFO] [stderr] Finished `test` profile [unoptimized + debuginfo] target(s) in 0.05s [INFO] [stderr] Running unittests src/lib.rs (/opt/rustwide/target/debug/deps/netem_trace-d99e73efd31c2b44) [INFO] [stdout] [INFO] [stdout] running 9 tests [INFO] [stdout] test model::delay::test::test_static_delay_model ... ok [INFO] [stdout] test model::duplicate::test::test_static_loss_model ... ok [INFO] [stdout] test model::loss::test::test_static_loss_model ... ok [INFO] [stdout] test test::test_normalized_bw_model ... ok [INFO] [stdout] test test::test_forever ... ok [INFO] [stdout] test test::test_trace_bw ... ok [INFO] [stdout] test test::test_static_bw_model ... ok [INFO] [stdout] test test::test_sawtooth_bw_model ... ok [INFO] [stdout] test model::delay_per_packet::test::test_static_delay_model ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 9 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s [INFO] [stdout] [INFO] [stderr] Doc-tests netem_trace [INFO] [stdout] [INFO] [stdout] running 41 tests [INFO] [stdout] test src/model/bw.rs - model::bw::RepeatedBwPattern (line 445) ... FAILED [INFO] [stdout] test src/model/bw.rs - model::bw::RepeatedBwPattern (line 413) ... FAILED [INFO] [stdout] test src/model/bw.rs - model::bw (line 29) ... FAILED [INFO] [stdout] test src/model/delay.rs - model::delay (line 27) ... FAILED [INFO] [stdout] test src/model/delay.rs - model::delay::RepeatedDelayPattern (line 127) ... FAILED [INFO] [stdout] test src/model/bw.rs - model::bw::TraceBw (line 494) ... FAILED [INFO] [stdout] test src/lib.rs - (line 25) ... FAILED [INFO] [stdout] test src/model/delay.rs - model::delay (line 14) ... ok [INFO] [stdout] test src/lib.rs - (line 59) ... ok [INFO] [stdout] test src/model/delay_per_packet.rs - model::delay_per_packet::LogNormalizedDelayPerPacket (line 316) ... ok [INFO] [stdout] test src/model/delay.rs - model::delay::RepeatedDelayPattern (line 159) ... FAILED [INFO] [stdout] test src/model/bw.rs - model::bw::SawtoothBw (line 239) ... ok [INFO] [stdout] test src/model/delay_per_packet.rs - model::delay_per_packet (line 29) ... FAILED [INFO] [stdout] test src/model/bw.rs - model::bw::NormalizedBw (line 148) ... ok [INFO] [stdout] test src/model/bw.rs - model::bw::SawtoothBw (line 290) ... ok [INFO] [stdout] test src/lib.rs - (line 12) ... ok [INFO] [stdout] test src/model/bw.rs - model::bw::NormalizedBwConfig::build_with_rng (line 1012) ... ok [INFO] [stdout] test src/model/bw.rs - model::bw (line 16) ... ok [INFO] [stdout] test src/model/delay.rs - model::delay::StaticDelay (line 79) ... ok [INFO] [stdout] test src/model/bw.rs - model::bw::StaticBw (line 88) ... ok [INFO] [stdout] test src/model/bw.rs - model::bw::NormalizedBw (line 132) ... ok [INFO] [stdout] test src/model/delay_per_packet.rs - model::delay_per_packet (line 15) ... 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 137) ... FAILED [INFO] [stdout] test src/model/duplicate.rs - model::duplicate::RepeatedDuplicatePattern (line 123) ... FAILED [INFO] [stdout] test src/model/duplicate.rs - model::duplicate (line 27) ... FAILED [INFO] [stdout] test src/model/loss.rs - model::loss (line 27) ... FAILED [INFO] [stdout] test src/model/loss.rs - model::loss::RepeatedLossPattern (line 155) ... FAILED [INFO] [stdout] test src/model/bw.rs - model::bw::SawtoothBwConfig::build_with_rng (line 1251) ... 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::RepeatedDelayPerPacketPattern (line 169) ... FAILED [INFO] [stdout] test src/model/duplicate.rs - model::duplicate::RepeatedDuplicatePattern (line 155) ... FAILED [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::LogNormalizedDelayPerPacketConfig::build_with_rng (line 823) ... ok [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::StaticDuplicate (line 79) ... ok [INFO] [stdout] test src/model/loss.rs - model::loss::RepeatedLossPattern (line 123) ... FAILED [INFO] [stdout] test src/model/loss.rs - model::loss (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/delay_per_packet.rs - model::delay_per_packet::StaticDelayPerPacket (line 92) ... ok [INFO] [stdout] test src/model/loss.rs - model::loss::StaticLoss (line 79) ... ok [INFO] [stdout] [INFO] [stdout] failures: [INFO] [stdout] [INFO] [stdout] ---- src/model/bw.rs - model::bw::RepeatedBwPattern (line 445) stdout ---- [INFO] [stdout] error[E0277]: the trait bound `dyn BwTraceConfig: serde::ser::Serialize` is not satisfied [INFO] [stdout] --> src/model/bw.rs:462:37 [INFO] [stdout] | [INFO] [stdout] 20 | let ser_str = serde_json::to_string(&ser).unwrap(); [INFO] [stdout] | --------------------- ^^^^ the trait `serde::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::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 131 others [INFO] [stdout] = note: required for `Box` to implement `serde::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.140/src/ser.rs:2239:17 [INFO] [stdout] | [INFO] [stdout] 2237 | pub fn to_string(value: &T) -> Result [INFO] [stdout] | --------- required by a bound in this function [INFO] [stdout] 2238 | where [INFO] [stdout] 2239 | 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/bw.rs - model::bw::RepeatedBwPattern (line 413) stdout ---- [INFO] [stdout] error[E0277]: the trait bound `dyn BwTraceConfig: serde::de::Deserialize<'_>` is not satisfied [INFO] [stdout] --> src/model/bw.rs:423:35 [INFO] [stdout] | [INFO] [stdout] 13 | let des: Box = serde_json::from_str(config_file_content).unwrap(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `serde::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::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 142 others [INFO] [stdout] = note: required for `Box` to implement `serde::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.140/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 (line 29) stdout ---- [INFO] [stdout] error[E0277]: the trait bound `dyn BwTraceConfig: serde::de::Deserialize<'_>` is not satisfied [INFO] [stdout] --> src/model/bw.rs:39:35 [INFO] [stdout] | [INFO] [stdout] 13 | let des: Box = serde_json::from_str(config_file_content).unwrap(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `serde::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::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 142 others [INFO] [stdout] = note: required for `Box` to implement `serde::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.140/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::de::Deserialize<'_>` is not satisfied [INFO] [stdout] --> src/model/delay.rs:37:38 [INFO] [stdout] | [INFO] [stdout] 13 | let des: Box = serde_json::from_str(config_file_content).unwrap(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `serde::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::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 142 others [INFO] [stdout] = note: required for `Box` to implement `serde::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.140/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 127) stdout ---- [INFO] [stdout] error[E0277]: the trait bound `dyn DelayTraceConfig: serde::de::Deserialize<'_>` is not satisfied [INFO] [stdout] --> src/model/delay.rs:137:38 [INFO] [stdout] | [INFO] [stdout] 13 | let des: Box = serde_json::from_str(config_file_content).unwrap(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `serde::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::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 142 others [INFO] [stdout] = note: required for `Box` to implement `serde::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.140/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::ser::Serialize` is not satisfied [INFO] [stdout] --> src/model/bw.rs:537:37 [INFO] [stdout] | [INFO] [stdout] 46 | let ser_str = serde_json::to_string(&ser).unwrap(); [INFO] [stdout] | --------------------- ^^^^ the trait `serde::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::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 131 others [INFO] [stdout] = note: required for `Box` to implement `serde::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.140/src/ser.rs:2239:17 [INFO] [stdout] | [INFO] [stdout] 2237 | pub fn to_string(value: &T) -> Result [INFO] [stdout] | --------- required by a bound in this function [INFO] [stdout] 2238 | where [INFO] [stdout] 2239 | T: ?Sized + Serialize, [INFO] [stdout] | ^^^^^^^^^ required by this bound in `to_string` [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `dyn BwTraceConfig: serde::de::Deserialize<'_>` is not satisfied [INFO] [stdout] --> src/model/bw.rs:547:35 [INFO] [stdout] | [INFO] [stdout] 56 | let des: Box = serde_json::from_str(json_str).unwrap(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `serde::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::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 142 others [INFO] [stdout] = note: required for `Box` to implement `serde::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.140/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/lib.rs - (line 25) stdout ---- [INFO] [stdout] error[E0277]: the trait bound `dyn BwTraceConfig: serde::de::Deserialize<'_>` is not satisfied [INFO] [stdout] --> src/lib.rs:35:35 [INFO] [stdout] | [INFO] [stdout] 13 | let des: Box = serde_json::from_str(config_file_content).unwrap(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `serde::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::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 142 others [INFO] [stdout] = note: required for `Box` to implement `serde::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.140/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::ser::Serialize` is not satisfied [INFO] [stdout] --> src/model/delay.rs:176:37 [INFO] [stdout] | [INFO] [stdout] 20 | let ser_str = serde_json::to_string(&ser).unwrap(); [INFO] [stdout] | --------------------- ^^^^ the trait `serde::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::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 131 others [INFO] [stdout] = note: required for `Box` to implement `serde::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.140/src/ser.rs:2239:17 [INFO] [stdout] | [INFO] [stdout] 2237 | pub fn to_string(value: &T) -> Result [INFO] [stdout] | --------- required by a bound in this function [INFO] [stdout] 2238 | where [INFO] [stdout] 2239 | 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 (line 29) stdout ---- [INFO] [stdout] error[E0277]: the trait bound `dyn DelayPerPacketTraceConfig: serde::de::Deserialize<'_>` is not satisfied [INFO] [stdout] --> src/model/delay_per_packet.rs:39:47 [INFO] [stdout] | [INFO] [stdout] 13 | let des: Box = serde_json::from_str(config_file_content).unwrap(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `serde::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::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 142 others [INFO] [stdout] = note: required for `Box` to implement `serde::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.140/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 137) stdout ---- [INFO] [stdout] error[E0277]: the trait bound `dyn DelayPerPacketTraceConfig: serde::de::Deserialize<'_>` is not satisfied [INFO] [stdout] --> src/model/delay_per_packet.rs:147:47 [INFO] [stdout] | [INFO] [stdout] 13 | let des: Box = serde_json::from_str(config_file_content).unwrap(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `serde::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::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 142 others [INFO] [stdout] = note: required for `Box` to implement `serde::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.140/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::de::Deserialize<'_>` is not satisfied [INFO] [stdout] --> src/model/duplicate.rs:133:42 [INFO] [stdout] | [INFO] [stdout] 13 | let des: Box = serde_json::from_str(config_file_content).unwrap(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `serde::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::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 142 others [INFO] [stdout] = note: required for `Box` to implement `serde::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.140/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 (line 27) stdout ---- [INFO] [stdout] error[E0277]: the trait bound `dyn DuplicateTraceConfig: serde::de::Deserialize<'_>` is not satisfied [INFO] [stdout] --> src/model/duplicate.rs:37:42 [INFO] [stdout] | [INFO] [stdout] 13 | let des: Box = serde_json::from_str(config_file_content).unwrap(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `serde::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::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 142 others [INFO] [stdout] = note: required for `Box` to implement `serde::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.140/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 (line 27) stdout ---- [INFO] [stdout] error[E0277]: the trait bound `dyn LossTraceConfig: serde::de::Deserialize<'_>` is not satisfied [INFO] [stdout] --> src/model/loss.rs:37:37 [INFO] [stdout] | [INFO] [stdout] 13 | let des: Box = serde_json::from_str(config_file_content).unwrap(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `serde::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::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 142 others [INFO] [stdout] = note: required for `Box` to implement `serde::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.140/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::ser::Serialize` is not satisfied [INFO] [stdout] --> src/model/loss.rs:172:37 [INFO] [stdout] | [INFO] [stdout] 20 | let ser_str = serde_json::to_string(&ser).unwrap(); [INFO] [stdout] | --------------------- ^^^^ the trait `serde::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::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 131 others [INFO] [stdout] = note: required for `Box` to implement `serde::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.140/src/ser.rs:2239:17 [INFO] [stdout] | [INFO] [stdout] 2237 | pub fn to_string(value: &T) -> Result [INFO] [stdout] | --------- required by a bound in this function [INFO] [stdout] 2238 | where [INFO] [stdout] 2239 | 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 169) stdout ---- [INFO] [stdout] error[E0277]: the trait bound `dyn DelayPerPacketTraceConfig: serde::ser::Serialize` is not satisfied [INFO] [stdout] --> src/model/delay_per_packet.rs:186:37 [INFO] [stdout] | [INFO] [stdout] 20 | let ser_str = serde_json::to_string(&ser).unwrap(); [INFO] [stdout] | --------------------- ^^^^ the trait `serde::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::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 131 others [INFO] [stdout] = note: required for `Box` to implement `serde::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.140/src/ser.rs:2239:17 [INFO] [stdout] | [INFO] [stdout] 2237 | pub fn to_string(value: &T) -> Result [INFO] [stdout] | --------- required by a bound in this function [INFO] [stdout] 2238 | where [INFO] [stdout] 2239 | 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::RepeatedDuplicatePattern (line 155) stdout ---- [INFO] [stdout] error[E0277]: the trait bound `dyn DuplicateTraceConfig: serde::ser::Serialize` is not satisfied [INFO] [stdout] --> src/model/duplicate.rs:172:37 [INFO] [stdout] | [INFO] [stdout] 20 | let ser_str = serde_json::to_string(&ser).unwrap(); [INFO] [stdout] | --------------------- ^^^^ the trait `serde::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::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 131 others [INFO] [stdout] = note: required for `Box` to implement `serde::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.140/src/ser.rs:2239:17 [INFO] [stdout] | [INFO] [stdout] 2237 | pub fn to_string(value: &T) -> Result [INFO] [stdout] | --------- required by a bound in this function [INFO] [stdout] 2238 | where [INFO] [stdout] 2239 | 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] [stderr] error: doctest failed, to rerun pass `--doc` [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::de::Deserialize<'_>` is not satisfied [INFO] [stdout] --> src/model/loss.rs:133:37 [INFO] [stdout] | [INFO] [stdout] 13 | let des: Box = serde_json::from_str(config_file_content).unwrap(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `serde::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::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 142 others [INFO] [stdout] = note: required for `Box` to implement `serde::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.140/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] [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.35s [INFO] [stdout] [INFO] running `Command { std: "docker" "inspect" "3cc39d84416d65cd12f4a090b339fc2fd74f80f4c4b60a2e585c08aa77b29ab0", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "3cc39d84416d65cd12f4a090b339fc2fd74f80f4c4b60a2e585c08aa77b29ab0", kill_on_drop: false }` [INFO] [stdout] 3cc39d84416d65cd12f4a090b339fc2fd74f80f4c4b60a2e585c08aa77b29ab0