[INFO] fetching crate diffmetrik 0.3.0... [INFO] checking diffmetrik-0.3.0 against master#38352b01ae4af9300be03b805d6db68c45e51068 for pr-129864 [INFO] extracting crate diffmetrik 0.3.0 into /workspace/builds/worker-4-tc1/source [INFO] validating manifest of crates.io crate diffmetrik 0.3.0 on toolchain 38352b01ae4af9300be03b805d6db68c45e51068 [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+38352b01ae4af9300be03b805d6db68c45e51068" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] started tweaking crates.io crate diffmetrik 0.3.0 [INFO] finished tweaking crates.io crate diffmetrik 0.3.0 [INFO] tweaked toml for crates.io crate diffmetrik 0.3.0 written to /workspace/builds/worker-4-tc1/source/Cargo.toml [INFO] crate crates.io crate diffmetrik 0.3.0 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" "+38352b01ae4af9300be03b805d6db68c45e51068" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] [stderr] Updating crates.io index [INFO] [stderr] Downloading crates ... [INFO] [stderr] Downloaded failure_derive v0.1.6 [INFO] [stderr] Downloaded winapi-util v0.1.3 [INFO] [stderr] Downloaded hermit-abi v0.1.6 [INFO] [stderr] Downloaded quote v1.0.2 [INFO] [stderr] Downloaded proc-macro-error-attr v0.4.3 [INFO] [stderr] Downloaded human_format v1.0.3 [INFO] [stderr] Downloaded proc-macro-error v0.4.4 [INFO] [stderr] Downloaded itoa v0.4.4 [INFO] [stderr] Downloaded syn-mid v0.4.0 [INFO] [stderr] Downloaded serde_derive v1.0.104 [INFO] [stderr] Downloaded ryu v1.0.2 [INFO] [stderr] Downloaded serde v1.0.104 [INFO] [stderr] Downloaded backtrace v0.3.41 [INFO] [stderr] Downloaded unicode-segmentation v1.6.0 [INFO] [stderr] Downloaded serde_json v1.0.44 [INFO] [stderr] Downloaded heck v0.3.1 [INFO] [stderr] Downloaded structopt v0.3.7 [INFO] [stderr] Downloaded clap v2.33.0 [INFO] [stderr] Downloaded syn v1.0.13 [INFO] [stderr] Downloaded structopt-derive v0.4.0 [INFO] [stderr] Downloaded proc-macro2 v1.0.7 [INFO] [stderr] Downloaded failure v0.1.6 [INFO] [stderr] Downloaded rustversion v1.0.1 [INFO] [stderr] Downloaded unicode-width v0.1.7 [INFO] [stderr] Downloaded rustc-demangle v0.1.16 [INFO] [stderr] Downloaded synstructure v0.12.3 [INFO] [stderr] Downloaded libc v0.2.66 [INFO] [stderr] Downloaded backtrace-sys v0.1.32 [INFO] [stderr] Downloaded sysctl v0.4.0 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-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:ceb6ea022f8a89cebbe621bb4987e73a935bd40dfbb726f832cfff4742a5b95a" "/opt/rustwide/cargo-home/bin/cargo" "+38352b01ae4af9300be03b805d6db68c45e51068" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] d7d1a6b3a7ce550c571baedc975211397f05958b0433874583096d689ae40e90 [INFO] running `Command { std: "docker" "start" "-a" "d7d1a6b3a7ce550c571baedc975211397f05958b0433874583096d689ae40e90", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "d7d1a6b3a7ce550c571baedc975211397f05958b0433874583096d689ae40e90", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "d7d1a6b3a7ce550c571baedc975211397f05958b0433874583096d689ae40e90", kill_on_drop: false }` [INFO] [stdout] d7d1a6b3a7ce550c571baedc975211397f05958b0433874583096d689ae40e90 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-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:ceb6ea022f8a89cebbe621bb4987e73a935bd40dfbb726f832cfff4742a5b95a" "/opt/rustwide/cargo-home/bin/cargo" "+38352b01ae4af9300be03b805d6db68c45e51068" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] 936592ce025afde03f81806eebff80f8fa08fcd772c82416956856e51b7c0dc9 [INFO] running `Command { std: "docker" "start" "-a" "936592ce025afde03f81806eebff80f8fa08fcd772c82416956856e51b7c0dc9", kill_on_drop: false }` [INFO] [stderr] Compiling proc-macro2 v1.0.7 [INFO] [stderr] Compiling unicode-xid v0.2.0 [INFO] [stderr] Compiling syn v1.0.13 [INFO] [stderr] Compiling libc v0.2.66 [INFO] [stderr] Compiling cc v1.0.50 [INFO] [stderr] Compiling bitflags v1.2.1 [INFO] [stderr] Compiling failure_derive v0.1.6 [INFO] [stderr] Compiling byteorder v1.3.2 [INFO] [stderr] Compiling ryu v1.0.2 [INFO] [stderr] Checking cfg-if v0.1.10 [INFO] [stderr] Checking rustc-demangle v0.1.16 [INFO] [stderr] Checking unicode-width v0.1.7 [INFO] [stderr] Compiling serde v1.0.104 [INFO] [stderr] Compiling unicode-segmentation v1.6.0 [INFO] [stderr] Checking textwrap v0.11.0 [INFO] [stderr] Checking strsim v0.8.0 [INFO] [stderr] Checking same-file v1.0.6 [INFO] [stderr] Checking ansi_term v0.11.0 [INFO] [stderr] Checking vec_map v0.8.1 [INFO] [stderr] Checking walkdir v2.3.1 [INFO] [stderr] Checking itoa v0.4.4 [INFO] [stderr] Compiling heck v0.3.1 [INFO] [stderr] Checking human_format v1.0.3 [INFO] [stderr] Checking atty v0.2.14 [INFO] [stderr] Checking fs2 v0.4.3 [INFO] [stderr] Compiling quote v1.0.2 [INFO] [stderr] Compiling backtrace-sys v0.1.32 [INFO] [stderr] Checking clap v2.33.0 [INFO] [stderr] Checking backtrace v0.3.41 [INFO] [stderr] Compiling syn-mid v0.4.0 [INFO] [stderr] Compiling synstructure v0.12.3 [INFO] [stderr] Compiling rustversion v1.0.1 [INFO] [stderr] Compiling serde_derive v1.0.104 [INFO] [stderr] Compiling proc-macro-error v0.4.4 [INFO] [stderr] Compiling proc-macro-error-attr v0.4.3 [INFO] [stderr] Checking failure v0.1.6 [INFO] [stderr] Checking sysctl v0.4.0 [INFO] [stderr] Compiling structopt-derive v0.4.0 [INFO] [stderr] Checking structopt v0.3.7 [INFO] [stderr] Checking serde_json v1.0.44 [INFO] [stderr] Checking diffmetrik v0.3.0 (/opt/rustwide/workdir) [INFO] [stdout] warning: unnecessary braces around method argument [INFO] [stdout] --> src/metrics/network.rs:260:14 [INFO] [stdout] | [INFO] [stdout] 260 | .map({ |line| LinuxProcNetDevLine::new(line) }) [INFO] [stdout] | ^^ ^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_braces)]` on by default [INFO] [stdout] help: remove these braces [INFO] [stdout] | [INFO] [stdout] 260 - .map({ |line| LinuxProcNetDevLine::new(line) }) [INFO] [stdout] 260 + .map(|line| LinuxProcNetDevLine::new(line)) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary braces around method argument [INFO] [stdout] --> src/metrics/network.rs:259:17 [INFO] [stdout] | [INFO] [stdout] 259 | .filter({ |line| line.starts_with("eth") }) [INFO] [stdout] | ^^ ^^ [INFO] [stdout] | [INFO] [stdout] help: remove these braces [INFO] [stdout] | [INFO] [stdout] 259 - .filter({ |line| line.starts_with("eth") }) [INFO] [stdout] 259 + .filter(|line| line.starts_with("eth")) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary braces around method argument [INFO] [stdout] --> src/metrics/network.rs:258:14 [INFO] [stdout] | [INFO] [stdout] 258 | .map({ |line| line.trim() }) [INFO] [stdout] | ^^ ^^ [INFO] [stdout] | [INFO] [stdout] help: remove these braces [INFO] [stdout] | [INFO] [stdout] 258 - .map({ |line| line.trim() }) [INFO] [stdout] 258 + .map(|line| line.trim()) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary braces around method argument [INFO] [stdout] --> src/metrics/mod.rs:63:38 [INFO] [stdout] | [INFO] [stdout] 63 | metrics.sort_unstable_by_key({ |a| a.time }); [INFO] [stdout] | ^^ ^^ [INFO] [stdout] | [INFO] [stdout] help: remove these braces [INFO] [stdout] | [INFO] [stdout] 63 - metrics.sort_unstable_by_key({ |a| a.time }); [INFO] [stdout] 63 + metrics.sort_unstable_by_key(|a| a.time); [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary braces around method argument [INFO] [stdout] --> src/metrics/network.rs:260:14 [INFO] [stdout] | [INFO] [stdout] 260 | .map({ |line| LinuxProcNetDevLine::new(line) }) [INFO] [stdout] | ^^ ^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_braces)]` on by default [INFO] [stdout] help: remove these braces [INFO] [stdout] | [INFO] [stdout] 260 - .map({ |line| LinuxProcNetDevLine::new(line) }) [INFO] [stdout] 260 + .map(|line| LinuxProcNetDevLine::new(line)) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary braces around method argument [INFO] [stdout] --> src/metrics/network.rs:259:17 [INFO] [stdout] | [INFO] [stdout] 259 | .filter({ |line| line.starts_with("eth") }) [INFO] [stdout] | ^^ ^^ [INFO] [stdout] | [INFO] [stdout] help: remove these braces [INFO] [stdout] | [INFO] [stdout] 259 - .filter({ |line| line.starts_with("eth") }) [INFO] [stdout] 259 + .filter(|line| line.starts_with("eth")) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary braces around method argument [INFO] [stdout] --> src/metrics/network.rs:258:14 [INFO] [stdout] | [INFO] [stdout] 258 | .map({ |line| line.trim() }) [INFO] [stdout] | ^^ ^^ [INFO] [stdout] | [INFO] [stdout] help: remove these braces [INFO] [stdout] | [INFO] [stdout] 258 - .map({ |line| line.trim() }) [INFO] [stdout] 258 + .map(|line| line.trim()) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary braces around method argument [INFO] [stdout] --> src/metrics/mod.rs:63:38 [INFO] [stdout] | [INFO] [stdout] 63 | metrics.sort_unstable_by_key({ |a| a.time }); [INFO] [stdout] | ^^ ^^ [INFO] [stdout] | [INFO] [stdout] help: remove these braces [INFO] [stdout] | [INFO] [stdout] 63 - metrics.sort_unstable_by_key({ |a| a.time }); [INFO] [stdout] 63 + metrics.sort_unstable_by_key(|a| a.time); [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `daemon` is never read [INFO] [stdout] --> src/cli/mod.rs:23:9 [INFO] [stdout] | [INFO] [stdout] 15 | pub struct Opt { [INFO] [stdout] | --- field in this struct [INFO] [stdout] ... [INFO] [stdout] 23 | pub daemon: bool, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `Opt` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: multiple fields are never read [INFO] [stdout] --> src/metrics/network.rs:201:5 [INFO] [stdout] | [INFO] [stdout] 200 | struct LinuxProcNetDevLine { [INFO] [stdout] | ------------------- fields in this struct [INFO] [stdout] 201 | iface: String, [INFO] [stdout] | ^^^^^ [INFO] [stdout] 202 | rx_bytes: u64, [INFO] [stdout] 203 | rx_packets: u64, [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] 204 | rx_errors: u64, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] 205 | rx_dropped_missed: u64, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] 206 | rx_fifo_errors: u64, [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] 207 | rx_length_over_ctc_frame_errors: u64, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 208 | rx_compressed: u64, [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] 209 | multicast: u64, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] 210 | tx_bytes: u64, [INFO] [stdout] 211 | tx_packets: u64, [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] 212 | tx_errors: u64, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] 213 | tx_dropped: u64, [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] 214 | tx_fifo_errors: u64, [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] 215 | collisions: u64, [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] 216 | tx_carrier_aborted_window_heartbeat_errors: u64, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 217 | tx_compressed: u64, [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `LinuxProcNetDevLine` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `path` is never read [INFO] [stdout] --> src/storage/mod.rs:20:9 [INFO] [stdout] | [INFO] [stdout] 18 | IO { [INFO] [stdout] | -- field in this variant [INFO] [stdout] 19 | source: std::io::Error, [INFO] [stdout] 20 | path: String, [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `StorageError` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item [INFO] [stdout] --> src/metrics/mod.rs:37:10 [INFO] [stdout] | [INFO] [stdout] 37 | #[derive(Serialize, Deserialize, Debug)] [INFO] [stdout] | ^-------- [INFO] [stdout] | | [INFO] [stdout] | `Serialize` is not local [INFO] [stdout] | move the `impl` block outside of this constant `_IMPL_SERIALIZE_FOR_TimeTaggedMetric` [INFO] [stdout] 38 | pub struct TimeTaggedMetric { [INFO] [stdout] | ---------------- `TimeTaggedMetric` is not local [INFO] [stdout] | [INFO] [stdout] = note: the derive macro `Serialize` defines the non-local `impl`, and may need to be changed [INFO] [stdout] = note: the derive macro `Serialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_derive` [INFO] [stdout] = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stdout] = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint [INFO] [stdout] = note: this lint may become deny-by-default in the edition 2024 and higher, see the tracking issue [INFO] [stdout] = note: `#[warn(non_local_definitions)]` on by default [INFO] [stdout] = note: this warning originates in the derive macro `Serialize` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item [INFO] [stdout] --> src/metrics/mod.rs:37:21 [INFO] [stdout] | [INFO] [stdout] 37 | #[derive(Serialize, Deserialize, Debug)] [INFO] [stdout] | ^---------- [INFO] [stdout] | | [INFO] [stdout] | `Deserialize` is not local [INFO] [stdout] | move the `impl` block outside of this constant `_IMPL_DESERIALIZE_FOR_TimeTaggedMetric` [INFO] [stdout] 38 | pub struct TimeTaggedMetric { [INFO] [stdout] | ---------------- `TimeTaggedMetric` is not local [INFO] [stdout] | [INFO] [stdout] = note: the derive macro `Deserialize` defines the non-local `impl`, and may need to be changed [INFO] [stdout] = note: the derive macro `Deserialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_derive` [INFO] [stdout] = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stdout] = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint [INFO] [stdout] = note: this lint may become deny-by-default in the edition 2024 and higher, see the tracking issue [INFO] [stdout] = note: this warning originates in the derive macro `Deserialize` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item [INFO] [stdout] --> src/metrics/mod.rs:45:10 [INFO] [stdout] | [INFO] [stdout] 45 | #[derive(Serialize, Deserialize, Debug)] [INFO] [stdout] | ^-------- [INFO] [stdout] | | [INFO] [stdout] | `Serialize` is not local [INFO] [stdout] | move the `impl` block outside of this constant `_IMPL_SERIALIZE_FOR_Metrics` [INFO] [stdout] 46 | pub struct Metrics { [INFO] [stdout] | ------- `Metrics` is not local [INFO] [stdout] | [INFO] [stdout] = note: the derive macro `Serialize` defines the non-local `impl`, and may need to be changed [INFO] [stdout] = note: the derive macro `Serialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_derive` [INFO] [stdout] = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stdout] = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint [INFO] [stdout] = note: this lint may become deny-by-default in the edition 2024 and higher, see the tracking issue [INFO] [stdout] = note: this warning originates in the derive macro `Serialize` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item [INFO] [stdout] --> src/metrics/mod.rs:45:21 [INFO] [stdout] | [INFO] [stdout] 45 | #[derive(Serialize, Deserialize, Debug)] [INFO] [stdout] | ^---------- [INFO] [stdout] | | [INFO] [stdout] | `Deserialize` is not local [INFO] [stdout] | move the `impl` block outside of this constant `_IMPL_DESERIALIZE_FOR_Metrics` [INFO] [stdout] 46 | pub struct Metrics { [INFO] [stdout] | ------- `Metrics` is not local [INFO] [stdout] | [INFO] [stdout] = note: the derive macro `Deserialize` defines the non-local `impl`, and may need to be changed [INFO] [stdout] = note: the derive macro `Deserialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_derive` [INFO] [stdout] = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stdout] = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint [INFO] [stdout] = note: this lint may become deny-by-default in the edition 2024 and higher, see the tracking issue [INFO] [stdout] = note: this warning originates in the derive macro `Deserialize` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item [INFO] [stdout] --> src/metrics/cpu/mod.rs:3:30 [INFO] [stdout] | [INFO] [stdout] 3 | #[derive(Debug, Clone, Copy, Serialize, Deserialize)] [INFO] [stdout] | ^-------- [INFO] [stdout] | | [INFO] [stdout] | `Serialize` is not local [INFO] [stdout] | move the `impl` block outside of this constant `_IMPL_SERIALIZE_FOR_CPUMetrics` [INFO] [stdout] 4 | pub struct CPUMetrics { [INFO] [stdout] | ---------- `CPUMetrics` is not local [INFO] [stdout] | [INFO] [stdout] = note: the derive macro `Serialize` defines the non-local `impl`, and may need to be changed [INFO] [stdout] = note: the derive macro `Serialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_derive` [INFO] [stdout] = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stdout] = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint [INFO] [stdout] = note: this lint may become deny-by-default in the edition 2024 and higher, see the tracking issue [INFO] [stdout] = note: this warning originates in the derive macro `Serialize` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item [INFO] [stdout] --> src/metrics/cpu/mod.rs:3:41 [INFO] [stdout] | [INFO] [stdout] 3 | #[derive(Debug, Clone, Copy, Serialize, Deserialize)] [INFO] [stdout] | ^---------- [INFO] [stdout] | | [INFO] [stdout] | `Deserialize` is not local [INFO] [stdout] | move the `impl` block outside of this constant `_IMPL_DESERIALIZE_FOR_CPUMetrics` [INFO] [stdout] 4 | pub struct CPUMetrics { [INFO] [stdout] | ---------- `CPUMetrics` is not local [INFO] [stdout] | [INFO] [stdout] = note: the derive macro `Deserialize` defines the non-local `impl`, and may need to be changed [INFO] [stdout] = note: the derive macro `Deserialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_derive` [INFO] [stdout] = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stdout] = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint [INFO] [stdout] = note: this lint may become deny-by-default in the edition 2024 and higher, see the tracking issue [INFO] [stdout] = note: this warning originates in the derive macro `Deserialize` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item [INFO] [stdout] --> src/metrics/network.rs:132:10 [INFO] [stdout] | [INFO] [stdout] 132 | #[derive(Serialize, Deserialize, Debug)] [INFO] [stdout] | ^-------- [INFO] [stdout] | | [INFO] [stdout] | `Serialize` is not local [INFO] [stdout] | move the `impl` block outside of this constant `_IMPL_SERIALIZE_FOR_NetworkMetrics` [INFO] [stdout] 133 | pub struct NetworkMetrics { [INFO] [stdout] | -------------- `NetworkMetrics` is not local [INFO] [stdout] | [INFO] [stdout] = note: the derive macro `Serialize` defines the non-local `impl`, and may need to be changed [INFO] [stdout] = note: the derive macro `Serialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_derive` [INFO] [stdout] = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stdout] = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint [INFO] [stdout] = note: this lint may become deny-by-default in the edition 2024 and higher, see the tracking issue [INFO] [stdout] = note: this warning originates in the derive macro `Serialize` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item [INFO] [stdout] --> src/metrics/network.rs:132:21 [INFO] [stdout] | [INFO] [stdout] 132 | #[derive(Serialize, Deserialize, Debug)] [INFO] [stdout] | ^---------- [INFO] [stdout] | | [INFO] [stdout] | `Deserialize` is not local [INFO] [stdout] | move the `impl` block outside of this constant `_IMPL_DESERIALIZE_FOR_NetworkMetrics` [INFO] [stdout] 133 | pub struct NetworkMetrics { [INFO] [stdout] | -------------- `NetworkMetrics` is not local [INFO] [stdout] | [INFO] [stdout] = note: the derive macro `Deserialize` defines the non-local `impl`, and may need to be changed [INFO] [stdout] = note: the derive macro `Deserialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_derive` [INFO] [stdout] = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stdout] = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint [INFO] [stdout] = note: this lint may become deny-by-default in the edition 2024 and higher, see the tracking issue [INFO] [stdout] = note: this warning originates in the derive macro `Deserialize` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item [INFO] [stdout] --> src/storage/mod.rs:49:17 [INFO] [stdout] | [INFO] [stdout] 49 | #[derive(Debug, Serialize, Deserialize)] [INFO] [stdout] | ^-------- [INFO] [stdout] | | [INFO] [stdout] | `Serialize` is not local [INFO] [stdout] | move the `impl` block outside of this constant `_IMPL_SERIALIZE_FOR_TimeTagged` [INFO] [stdout] 50 | struct TimeTagged { [INFO] [stdout] | ---------- `TimeTagged` is not local [INFO] [stdout] | [INFO] [stdout] = note: the derive macro `Serialize` defines the non-local `impl`, and may need to be changed [INFO] [stdout] = note: the derive macro `Serialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_derive` [INFO] [stdout] = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stdout] = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint [INFO] [stdout] = note: this lint may become deny-by-default in the edition 2024 and higher, see the tracking issue [INFO] [stdout] = note: this warning originates in the derive macro `Serialize` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item [INFO] [stdout] --> src/storage/mod.rs:49:28 [INFO] [stdout] | [INFO] [stdout] 49 | #[derive(Debug, Serialize, Deserialize)] [INFO] [stdout] | ^---------- [INFO] [stdout] | | [INFO] [stdout] | `Deserialize` is not local [INFO] [stdout] | move the `impl` block outside of this constant `_IMPL_DESERIALIZE_FOR_TimeTagged` [INFO] [stdout] 50 | struct TimeTagged { [INFO] [stdout] | ---------- `TimeTagged` is not local [INFO] [stdout] | [INFO] [stdout] = note: the derive macro `Deserialize` defines the non-local `impl`, and may need to be changed [INFO] [stdout] = note: the derive macro `Deserialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_derive` [INFO] [stdout] = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stdout] = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint [INFO] [stdout] = note: this lint may become deny-by-default in the edition 2024 and higher, see the tracking issue [INFO] [stdout] = note: this warning originates in the derive macro `Deserialize` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 17 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `daemon` is never read [INFO] [stdout] --> src/cli/mod.rs:23:9 [INFO] [stdout] | [INFO] [stdout] 15 | pub struct Opt { [INFO] [stdout] | --- field in this struct [INFO] [stdout] ... [INFO] [stdout] 23 | pub daemon: bool, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `Opt` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: multiple fields are never read [INFO] [stdout] --> src/metrics/network.rs:201:5 [INFO] [stdout] | [INFO] [stdout] 200 | struct LinuxProcNetDevLine { [INFO] [stdout] | ------------------- fields in this struct [INFO] [stdout] 201 | iface: String, [INFO] [stdout] | ^^^^^ [INFO] [stdout] 202 | rx_bytes: u64, [INFO] [stdout] 203 | rx_packets: u64, [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] 204 | rx_errors: u64, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] 205 | rx_dropped_missed: u64, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] 206 | rx_fifo_errors: u64, [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] 207 | rx_length_over_ctc_frame_errors: u64, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 208 | rx_compressed: u64, [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] 209 | multicast: u64, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] 210 | tx_bytes: u64, [INFO] [stdout] 211 | tx_packets: u64, [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] 212 | tx_errors: u64, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] 213 | tx_dropped: u64, [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] 214 | tx_fifo_errors: u64, [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] 215 | collisions: u64, [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] 216 | tx_carrier_aborted_window_heartbeat_errors: u64, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 217 | tx_compressed: u64, [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `LinuxProcNetDevLine` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `path` is never read [INFO] [stdout] --> src/storage/mod.rs:20:9 [INFO] [stdout] | [INFO] [stdout] 18 | IO { [INFO] [stdout] | -- field in this variant [INFO] [stdout] 19 | source: std::io::Error, [INFO] [stdout] 20 | path: String, [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `StorageError` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item [INFO] [stdout] --> src/metrics/mod.rs:37:10 [INFO] [stdout] | [INFO] [stdout] 37 | #[derive(Serialize, Deserialize, Debug)] [INFO] [stdout] | ^-------- [INFO] [stdout] | | [INFO] [stdout] | `Serialize` is not local [INFO] [stdout] | move the `impl` block outside of this constant `_IMPL_SERIALIZE_FOR_TimeTaggedMetric` [INFO] [stdout] 38 | pub struct TimeTaggedMetric { [INFO] [stdout] | ---------------- `TimeTaggedMetric` is not local [INFO] [stdout] | [INFO] [stdout] = note: the derive macro `Serialize` defines the non-local `impl`, and may need to be changed [INFO] [stdout] = note: the derive macro `Serialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_derive` [INFO] [stdout] = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stdout] = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint [INFO] [stdout] = note: this lint may become deny-by-default in the edition 2024 and higher, see the tracking issue [INFO] [stdout] = note: `#[warn(non_local_definitions)]` on by default [INFO] [stdout] = note: this warning originates in the derive macro `Serialize` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item [INFO] [stdout] --> src/metrics/mod.rs:37:21 [INFO] [stdout] | [INFO] [stdout] 37 | #[derive(Serialize, Deserialize, Debug)] [INFO] [stdout] | ^---------- [INFO] [stdout] | | [INFO] [stdout] | `Deserialize` is not local [INFO] [stdout] | move the `impl` block outside of this constant `_IMPL_DESERIALIZE_FOR_TimeTaggedMetric` [INFO] [stdout] 38 | pub struct TimeTaggedMetric { [INFO] [stdout] | ---------------- `TimeTaggedMetric` is not local [INFO] [stdout] | [INFO] [stdout] = note: the derive macro `Deserialize` defines the non-local `impl`, and may need to be changed [INFO] [stdout] = note: the derive macro `Deserialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_derive` [INFO] [stdout] = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stdout] = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint [INFO] [stdout] = note: this lint may become deny-by-default in the edition 2024 and higher, see the tracking issue [INFO] [stdout] = note: this warning originates in the derive macro `Deserialize` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item [INFO] [stdout] --> src/metrics/mod.rs:45:10 [INFO] [stdout] | [INFO] [stdout] 45 | #[derive(Serialize, Deserialize, Debug)] [INFO] [stdout] | ^-------- [INFO] [stdout] | | [INFO] [stdout] | `Serialize` is not local [INFO] [stdout] | move the `impl` block outside of this constant `_IMPL_SERIALIZE_FOR_Metrics` [INFO] [stdout] 46 | pub struct Metrics { [INFO] [stdout] | ------- `Metrics` is not local [INFO] [stdout] | [INFO] [stdout] = note: the derive macro `Serialize` defines the non-local `impl`, and may need to be changed [INFO] [stdout] = note: the derive macro `Serialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_derive` [INFO] [stdout] = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stdout] = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint [INFO] [stdout] = note: this lint may become deny-by-default in the edition 2024 and higher, see the tracking issue [INFO] [stdout] = note: this warning originates in the derive macro `Serialize` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item [INFO] [stdout] --> src/metrics/mod.rs:45:21 [INFO] [stdout] | [INFO] [stdout] 45 | #[derive(Serialize, Deserialize, Debug)] [INFO] [stdout] | ^---------- [INFO] [stdout] | | [INFO] [stdout] | `Deserialize` is not local [INFO] [stdout] | move the `impl` block outside of this constant `_IMPL_DESERIALIZE_FOR_Metrics` [INFO] [stdout] 46 | pub struct Metrics { [INFO] [stdout] | ------- `Metrics` is not local [INFO] [stdout] | [INFO] [stdout] = note: the derive macro `Deserialize` defines the non-local `impl`, and may need to be changed [INFO] [stdout] = note: the derive macro `Deserialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_derive` [INFO] [stdout] = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stdout] = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint [INFO] [stdout] = note: this lint may become deny-by-default in the edition 2024 and higher, see the tracking issue [INFO] [stdout] = note: this warning originates in the derive macro `Deserialize` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item [INFO] [stdout] --> src/metrics/cpu/mod.rs:3:30 [INFO] [stdout] | [INFO] [stdout] 3 | #[derive(Debug, Clone, Copy, Serialize, Deserialize)] [INFO] [stdout] | ^-------- [INFO] [stdout] | | [INFO] [stdout] | `Serialize` is not local [INFO] [stdout] | move the `impl` block outside of this constant `_IMPL_SERIALIZE_FOR_CPUMetrics` [INFO] [stdout] 4 | pub struct CPUMetrics { [INFO] [stdout] | ---------- `CPUMetrics` is not local [INFO] [stdout] | [INFO] [stdout] = note: the derive macro `Serialize` defines the non-local `impl`, and may need to be changed [INFO] [stdout] = note: the derive macro `Serialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_derive` [INFO] [stdout] = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stdout] = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint [INFO] [stdout] = note: this lint may become deny-by-default in the edition 2024 and higher, see the tracking issue [INFO] [stdout] = note: this warning originates in the derive macro `Serialize` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item [INFO] [stdout] --> src/metrics/cpu/mod.rs:3:41 [INFO] [stdout] | [INFO] [stdout] 3 | #[derive(Debug, Clone, Copy, Serialize, Deserialize)] [INFO] [stdout] | ^---------- [INFO] [stdout] | | [INFO] [stdout] | `Deserialize` is not local [INFO] [stdout] | move the `impl` block outside of this constant `_IMPL_DESERIALIZE_FOR_CPUMetrics` [INFO] [stdout] 4 | pub struct CPUMetrics { [INFO] [stdout] | ---------- `CPUMetrics` is not local [INFO] [stdout] | [INFO] [stdout] = note: the derive macro `Deserialize` defines the non-local `impl`, and may need to be changed [INFO] [stdout] = note: the derive macro `Deserialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_derive` [INFO] [stdout] = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stdout] = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint [INFO] [stdout] = note: this lint may become deny-by-default in the edition 2024 and higher, see the tracking issue [INFO] [stdout] = note: this warning originates in the derive macro `Deserialize` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item [INFO] [stdout] --> src/metrics/network.rs:132:10 [INFO] [stdout] | [INFO] [stdout] 132 | #[derive(Serialize, Deserialize, Debug)] [INFO] [stdout] | ^-------- [INFO] [stdout] | | [INFO] [stdout] | `Serialize` is not local [INFO] [stdout] | move the `impl` block outside of this constant `_IMPL_SERIALIZE_FOR_NetworkMetrics` [INFO] [stdout] 133 | pub struct NetworkMetrics { [INFO] [stdout] | -------------- `NetworkMetrics` is not local [INFO] [stdout] | [INFO] [stdout] = note: the derive macro `Serialize` defines the non-local `impl`, and may need to be changed [INFO] [stdout] = note: the derive macro `Serialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_derive` [INFO] [stdout] = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stdout] = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint [INFO] [stdout] = note: this lint may become deny-by-default in the edition 2024 and higher, see the tracking issue [INFO] [stdout] = note: this warning originates in the derive macro `Serialize` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item [INFO] [stdout] --> src/metrics/network.rs:132:21 [INFO] [stdout] | [INFO] [stdout] 132 | #[derive(Serialize, Deserialize, Debug)] [INFO] [stdout] | ^---------- [INFO] [stdout] | | [INFO] [stdout] | `Deserialize` is not local [INFO] [stdout] | move the `impl` block outside of this constant `_IMPL_DESERIALIZE_FOR_NetworkMetrics` [INFO] [stdout] 133 | pub struct NetworkMetrics { [INFO] [stdout] | -------------- `NetworkMetrics` is not local [INFO] [stdout] | [INFO] [stdout] = note: the derive macro `Deserialize` defines the non-local `impl`, and may need to be changed [INFO] [stdout] = note: the derive macro `Deserialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_derive` [INFO] [stdout] = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stdout] = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint [INFO] [stdout] = note: this lint may become deny-by-default in the edition 2024 and higher, see the tracking issue [INFO] [stdout] = note: this warning originates in the derive macro `Deserialize` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item [INFO] [stdout] --> src/storage/mod.rs:49:17 [INFO] [stdout] | [INFO] [stdout] 49 | #[derive(Debug, Serialize, Deserialize)] [INFO] [stdout] | ^-------- [INFO] [stdout] | | [INFO] [stdout] | `Serialize` is not local [INFO] [stdout] | move the `impl` block outside of this constant `_IMPL_SERIALIZE_FOR_TimeTagged` [INFO] [stdout] 50 | struct TimeTagged { [INFO] [stdout] | ---------- `TimeTagged` is not local [INFO] [stdout] | [INFO] [stdout] = note: the derive macro `Serialize` defines the non-local `impl`, and may need to be changed [INFO] [stdout] = note: the derive macro `Serialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_derive` [INFO] [stdout] = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stdout] = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint [INFO] [stdout] = note: this lint may become deny-by-default in the edition 2024 and higher, see the tracking issue [INFO] [stdout] = note: this warning originates in the derive macro `Serialize` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item [INFO] [stdout] --> src/storage/mod.rs:49:28 [INFO] [stdout] | [INFO] [stdout] 49 | #[derive(Debug, Serialize, Deserialize)] [INFO] [stdout] | ^---------- [INFO] [stdout] | | [INFO] [stdout] | `Deserialize` is not local [INFO] [stdout] | move the `impl` block outside of this constant `_IMPL_DESERIALIZE_FOR_TimeTagged` [INFO] [stdout] 50 | struct TimeTagged { [INFO] [stdout] | ---------- `TimeTagged` is not local [INFO] [stdout] | [INFO] [stdout] = note: the derive macro `Deserialize` defines the non-local `impl`, and may need to be changed [INFO] [stdout] = note: the derive macro `Deserialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_derive` [INFO] [stdout] = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stdout] = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint [INFO] [stdout] = note: this lint may become deny-by-default in the edition 2024 and higher, see the tracking issue [INFO] [stdout] = note: this warning originates in the derive macro `Deserialize` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item [INFO] [stdout] --> src/storage/mod.rs:201:21 [INFO] [stdout] | [INFO] [stdout] 201 | #[derive(Debug, Serialize, Deserialize)] [INFO] [stdout] | ^-------- [INFO] [stdout] | | [INFO] [stdout] | `Serialize` is not local [INFO] [stdout] | move the `impl` block outside of this constant `_IMPL_SERIALIZE_FOR_TestStruct` [INFO] [stdout] 202 | struct TestStruct { [INFO] [stdout] | ---------- `TestStruct` is not local [INFO] [stdout] | [INFO] [stdout] = note: the derive macro `Serialize` defines the non-local `impl`, and may need to be changed [INFO] [stdout] = note: the derive macro `Serialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_derive` [INFO] [stdout] = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stdout] = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint [INFO] [stdout] = note: this lint may become deny-by-default in the edition 2024 and higher, see the tracking issue [INFO] [stdout] = note: this warning originates in the derive macro `Serialize` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item [INFO] [stdout] --> src/storage/mod.rs:201:32 [INFO] [stdout] | [INFO] [stdout] 201 | #[derive(Debug, Serialize, Deserialize)] [INFO] [stdout] | ^---------- [INFO] [stdout] | | [INFO] [stdout] | `Deserialize` is not local [INFO] [stdout] | move the `impl` block outside of this constant `_IMPL_DESERIALIZE_FOR_TestStruct` [INFO] [stdout] 202 | struct TestStruct { [INFO] [stdout] | ---------- `TestStruct` is not local [INFO] [stdout] | [INFO] [stdout] = note: the derive macro `Deserialize` defines the non-local `impl`, and may need to be changed [INFO] [stdout] = note: the derive macro `Deserialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_derive` [INFO] [stdout] = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stdout] = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint [INFO] [stdout] = note: this lint may become deny-by-default in the edition 2024 and higher, see the tracking issue [INFO] [stdout] = note: this warning originates in the derive macro `Deserialize` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: panic message is not a string literal [INFO] [stdout] --> src/storage/mod.rs:226:38 [INFO] [stdout] | [INFO] [stdout] 226 | Err(e) => assert!(false, format!("error resetting file: {}", e)), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this usage of `assert!()` is deprecated; it will be a hard error in Rust 2021 [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: the `assert!()` macro supports formatting, so there's no need for the `format!()` macro here [INFO] [stdout] = note: `#[warn(non_fmt_panics)]` on by default [INFO] [stdout] help: remove the `format!(..)` macro call [INFO] [stdout] | [INFO] [stdout] 226 - Err(e) => assert!(false, format!("error resetting file: {}", e)), [INFO] [stdout] 226 + Err(e) => assert!(false, "error resetting file: {}", e), [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: panic message is not a string literal [INFO] [stdout] --> src/storage/mod.rs:249:38 [INFO] [stdout] | [INFO] [stdout] 249 | Err(e) => assert!(false, format!("writing failed with {}", e)), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this usage of `assert!()` is deprecated; it will be a hard error in Rust 2021 [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: the `assert!()` macro supports formatting, so there's no need for the `format!()` macro here [INFO] [stdout] help: remove the `format!(..)` macro call [INFO] [stdout] | [INFO] [stdout] 249 - Err(e) => assert!(false, format!("writing failed with {}", e)), [INFO] [stdout] 249 + Err(e) => assert!(false, "writing failed with {}", e), [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: panic message is not a string literal [INFO] [stdout] --> src/storage/mod.rs:296:38 [INFO] [stdout] | [INFO] [stdout] 296 | Err(e) => assert!(false, format!("error reading: {}", e)), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this usage of `assert!()` is deprecated; it will be a hard error in Rust 2021 [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: the `assert!()` macro supports formatting, so there's no need for the `format!()` macro here [INFO] [stdout] help: remove the `format!(..)` macro call [INFO] [stdout] | [INFO] [stdout] 296 - Err(e) => assert!(false, format!("error reading: {}", e)), [INFO] [stdout] 296 + Err(e) => assert!(false, "error reading: {}", e), [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 22 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished `dev` profile [unoptimized + debuginfo] target(s) in 29.79s [INFO] running `Command { std: "docker" "inspect" "936592ce025afde03f81806eebff80f8fa08fcd772c82416956856e51b7c0dc9", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "936592ce025afde03f81806eebff80f8fa08fcd772c82416956856e51b7c0dc9", kill_on_drop: false }` [INFO] [stdout] 936592ce025afde03f81806eebff80f8fa08fcd772c82416956856e51b7c0dc9