[INFO] fetching crate libzmq 0.2.5...
[INFO] testing libzmq-0.2.5 against 1.90.0 for beta-1.91-2
[INFO] extracting crate libzmq 0.2.5 into /workspace/builds/worker-6-tc1/source
[INFO] started tweaking crates.io crate libzmq 0.2.5
[INFO] removed 0 missing examples
[INFO] finished tweaking crates.io crate libzmq 0.2.5
[INFO] tweaked toml for crates.io crate libzmq 0.2.5 written to /workspace/builds/worker-6-tc1/source/Cargo.toml
[INFO] validating manifest of crates.io crate libzmq 0.2.5 on toolchain 1.90.0
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+1.90.0" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate crates.io crate libzmq 0.2.5 already has a lockfile, it will not be regenerated
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+1.90.0" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Updating crates.io index
[INFO] [stderr]  Downloading crates ...
[INFO] [stderr]   Downloaded version-sync v0.9.0
[INFO] [stderr]   Downloaded smallvec v1.4.0
[INFO] [stderr]   Downloaded quote v1.0.4
[INFO] [stderr]   Downloaded toml v0.5.6
[INFO] [stderr]   Downloaded walkdir v2.3.1
[INFO] [stderr]   Downloaded serde_with v1.4.0
[INFO] [stderr]   Downloaded bincode v1.2.1
[INFO] [stderr]   Downloaded filetime v0.2.10
[INFO] [stderr]   Downloaded cast v0.2.3
[INFO] [stderr]   Downloaded hermit-abi v0.1.12
[INFO] [stderr]   Downloaded libflate v0.1.27
[INFO] [stderr]   Downloaded anyhow v1.0.28
[INFO] [stderr]   Downloaded serde_yaml v0.8.11
[INFO] [stderr]   Downloaded ryu v1.0.4
[INFO] [stderr]   Downloaded syn v1.0.19
[INFO] [stderr]   Downloaded regex-automata v0.1.9
[INFO] [stderr]   Downloaded wasm-bindgen v0.2.62
[INFO] [stderr]   Downloaded tinytemplate v1.0.4
[INFO] [stderr]   Downloaded js-sys v0.3.39
[INFO] [stderr]   Downloaded bumpalo v3.2.1
[INFO] [stderr]   Downloaded serde_json v1.0.52
[INFO] [stderr]   Downloaded regex-syntax v0.6.17
[INFO] [stderr]   Downloaded criterion v0.3.2
[INFO] [stderr]   Downloaded bstr v0.2.12
[INFO] [stderr]   Downloaded tar v0.4.26
[INFO] [stderr]   Downloaded cc v1.0.52
[INFO] [stderr]   Downloaded regex v1.3.7
[INFO] [stderr]   Downloaded pulldown-cmark v0.7.1
[INFO] [stderr]   Downloaded aho-corasick v0.7.10
[INFO] [stderr]   Downloaded criterion-plot v0.4.2
[INFO] [stderr]   Downloaded csv-core v0.1.10
[INFO] [stderr]   Downloaded oorandom v11.1.1
[INFO] [stderr]   Downloaded wasm-bindgen-macro v0.2.62
[INFO] [stderr]   Downloaded humantime v2.0.0
[INFO] [stderr]   Downloaded rand_isaac v0.2.0
[INFO] [stderr]   Downloaded semver-parser v0.9.0
[INFO] [stderr]   Downloaded web-sys v0.3.39
[INFO] [stderr]   Downloaded proc-macro2 v1.0.12
[INFO] [stderr]   Downloaded serde_with_macros v1.1.0
[INFO] [stderr]   Downloaded dtoa v0.4.5
[INFO] [stderr]   Downloaded linked-hash-map v0.5.3
[INFO] [stderr]   Downloaded yaml-rust v0.4.3
[INFO] [stderr]   Downloaded thiserror-impl v1.0.16
[INFO] [stderr]   Downloaded uuid v0.8.1
[INFO] [stderr]   Downloaded zeromq-src v0.1.10+4.3.2
[INFO] [stderr]   Downloaded unicode-normalization v0.1.12
[INFO] [stderr]   Downloaded wasm-bindgen-backend v0.2.62
[INFO] [stderr]   Downloaded wasm-bindgen-shared v0.2.62
[INFO] [stderr]   Downloaded wasm-bindgen-macro-support v0.2.62
[INFO] [stderr]   Downloaded itoa v0.4.5
[INFO] [stderr]   Downloaded humantime-serde v1.0.0
[INFO] [stderr]   Downloaded rle-decode-fast v1.0.1
[INFO] [stderr]   Downloaded csv v1.1.3
[INFO] [stderr]   Downloaded libzmq-sys v0.1.8+4.3.2
[INFO] [stderr]   Downloaded thiserror v1.0.16
[INFO] [stderr]   Downloaded serde_derive v1.0.107
[INFO] [stderr]   Downloaded serde v1.0.107
[INFO] [stderr]   Downloaded url v2.1.1
[INFO] [stderr]   Downloaded cmake v0.1.42
[INFO] [stderr]   Downloaded plotters v0.2.14
[INFO] [stderr]   Downloaded flatc-rust v0.1.2
[INFO] [stderr]   Downloaded libsodium-sys v0.2.5
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-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:e90291280db7d1fac5b66fc6dad9f9662629e7365a55743daf9bdf73ebc4ea79" "/opt/rustwide/cargo-home/bin/cargo" "+1.90.0" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] d88a6dc28169d57535ff88e2c7ce179985b6cf391fe3e29c5dfa3db6ae2fcc4b
[INFO] running `Command { std: "docker" "start" "-a" "d88a6dc28169d57535ff88e2c7ce179985b6cf391fe3e29c5dfa3db6ae2fcc4b", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "d88a6dc28169d57535ff88e2c7ce179985b6cf391fe3e29c5dfa3db6ae2fcc4b", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "d88a6dc28169d57535ff88e2c7ce179985b6cf391fe3e29c5dfa3db6ae2fcc4b", kill_on_drop: false }`
[INFO] [stdout] d88a6dc28169d57535ff88e2c7ce179985b6cf391fe3e29c5dfa3db6ae2fcc4b
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=warn" "-e" "RUSTDOCFLAGS=--cap-lints=warn" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:e90291280db7d1fac5b66fc6dad9f9662629e7365a55743daf9bdf73ebc4ea79" "/opt/rustwide/cargo-home/bin/cargo" "+1.90.0" "build" "--frozen" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] ee0f61401c995d852e796f1e6c98cc644e794deb70b84ec265193a7ebe4b3bc7
[INFO] running `Command { std: "docker" "start" "-a" "ee0f61401c995d852e796f1e6c98cc644e794deb70b84ec265193a7ebe4b3bc7", kill_on_drop: false }`
[INFO] [stderr]    Compiling proc-macro2 v1.0.12
[INFO] [stderr]    Compiling unicode-xid v0.2.0
[INFO] [stderr]    Compiling syn v1.0.19
[INFO] [stderr]    Compiling libc v0.2.69
[INFO] [stderr]    Compiling getrandom v0.1.14
[INFO] [stderr]    Compiling serde v1.0.107
[INFO] [stderr]    Compiling cc v1.0.52
[INFO] [stderr]    Compiling byteorder v1.3.4
[INFO] [stderr]    Compiling ppv-lite86 v0.2.6
[INFO] [stderr]    Compiling log v0.4.8
[INFO] [stderr]    Compiling bitflags v1.2.1
[INFO] [stderr]    Compiling humantime v2.0.0
[INFO] [stderr]    Compiling cmake v0.1.42
[INFO] [stderr]    Compiling quote v1.0.4
[INFO] [stderr]    Compiling zeromq-src v0.1.10+4.3.2
[INFO] [stderr]    Compiling libzmq-sys v0.1.8+4.3.2
[INFO] [stderr]    Compiling rand_core v0.5.1
[INFO] [stderr]    Compiling rand_chacha v0.2.2
[INFO] [stderr]    Compiling rand v0.7.3
[INFO] [stderr]    Compiling uuid v0.8.1
[INFO] [stderr]    Compiling serde_derive v1.0.107
[INFO] [stderr]    Compiling serde_with_macros v1.1.0
[INFO] [stderr]    Compiling thiserror-impl v1.0.16
[INFO] [stderr]    Compiling thiserror v1.0.16
[INFO] [stderr]    Compiling bincode v1.2.1
[INFO] [stderr]    Compiling serde_with v1.4.0
[INFO] [stderr]    Compiling humantime-serde v1.0.0
[INFO] [stderr]    Compiling libzmq v0.2.5 (/opt/rustwide/workdir)
[INFO] [stdout] warning: fields `version`, `domain`, and `identity` are never read
[INFO] [stdout]   --> src/auth/server.rs:95:5
[INFO] [stdout]    |
[INFO] [stdout] 94 | struct ZapRequest {
[INFO] [stdout]    |        ---------- fields in this struct
[INFO] [stdout] 95 |     version: String,
[INFO] [stdout]    |     ^^^^^^^
[INFO] [stdout] 96 |     request_id: Msg,
[INFO] [stdout] 97 |     domain: String,
[INFO] [stdout]    |     ^^^^^^
[INFO] [stdout] 98 |     addr: Ipv6Addr,
[INFO] [stdout] 99 |     identity: Msg,
[INFO] [stdout]    |     ^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `ZapRequest` has derived impls for the traits `Debug` and `Clone`, but these are intentionally ignored during dead code analysis
[INFO] [stdout]    = note: `#[warn(dead_code)]` on by default
[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/core/mod.rs:60:51
[INFO] [stdout]    |
[INFO] [stdout] 60 | #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash, 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_HighWaterMark`
[INFO] [stdout] ...
[INFO] [stdout] 63 | pub(crate) struct HighWaterMark(i32);
[INFO] [stdout]    |                   ------------- `HighWaterMark` 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: `#[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/core/mod.rs:60:62
[INFO] [stdout]    |
[INFO] [stdout] 60 | #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash, 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_HighWaterMark`
[INFO] [stdout] ...
[INFO] [stdout] 63 | pub(crate) struct HighWaterMark(i32);
[INFO] [stdout]    |                   ------------- `HighWaterMark` 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 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/core/mod.rs:98:51
[INFO] [stdout]     |
[INFO] [stdout]  98 | #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash, Deserialize, Serialize)]
[INFO] [stdout]     |                                                   ^----------
[INFO] [stdout]     |                                                   |
[INFO] [stdout]     |                                                   `Deserialize` is not local
[INFO] [stdout]     |                                                   move the `impl` block outside of this constant `_IMPL_DESERIALIZE_FOR_BatchSize`
[INFO] [stdout] ...
[INFO] [stdout] 101 | pub(crate) struct BatchSize(i32);
[INFO] [stdout]     |                   --------- `BatchSize` 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 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/core/mod.rs:98:64
[INFO] [stdout]     |
[INFO] [stdout]  98 | #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash, Deserialize, Serialize)]
[INFO] [stdout]     |                                                                ^--------
[INFO] [stdout]     |                                                                |
[INFO] [stdout]     |                                                                `Serialize` is not local
[INFO] [stdout]     |                                                                move the `impl` block outside of this constant `_IMPL_SERIALIZE_FOR_BatchSize`
[INFO] [stdout] ...
[INFO] [stdout] 101 | pub(crate) struct BatchSize(i32);
[INFO] [stdout]     |                   --------- `BatchSize` 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 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/core/mod.rs:137:51
[INFO] [stdout]     |
[INFO] [stdout] 137 | #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash, 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_Period`
[INFO] [stdout] ...
[INFO] [stdout] 140 | pub enum Period {
[INFO] [stdout]     |          ------ `Period` 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 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/core/mod.rs:137:62
[INFO] [stdout]     |
[INFO] [stdout] 137 | #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash, 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_Period`
[INFO] [stdout] ...
[INFO] [stdout] 140 | pub enum Period {
[INFO] [stdout]     |          ------ `Period` 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 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/core/heartbeat.rs:48:45
[INFO] [stdout]    |
[INFO] [stdout] 48 | #[derive(Debug, Clone, PartialEq, Eq, Hash, 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_Heartbeat`
[INFO] [stdout] 49 | pub struct Heartbeat {
[INFO] [stdout]    |            --------- `Heartbeat` 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 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/core/heartbeat.rs:48:56
[INFO] [stdout]    |
[INFO] [stdout] 48 | #[derive(Debug, Clone, PartialEq, Eq, Hash, 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_Heartbeat`
[INFO] [stdout] 49 | pub struct Heartbeat {
[INFO] [stdout]    |            --------- `Heartbeat` 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 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/core/raw.rs:77:25
[INFO] [stdout]    |
[INFO] [stdout] 77 |             _ => panic!(msg_from_errno(errno)),
[INFO] [stdout]    |                         ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this usage of `panic!()` is deprecated; it will be a hard error in Rust 2021
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/panic-macro-consistency.html>
[INFO] [stdout]    = note: `#[warn(non_fmt_panics)]` on by default
[INFO] [stdout] help: add a "{}" format string to `Display` the message
[INFO] [stdout]    |
[INFO] [stdout] 77 |             _ => panic!("{}", msg_from_errno(errno)),
[INFO] [stdout]    |                         +++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: panic message is not a string literal
[INFO] [stdout]    --> src/core/raw.rs:107:25
[INFO] [stdout]     |
[INFO] [stdout] 107 |             _ => panic!(msg_from_errno(errno)),
[INFO] [stdout]     |                         ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this usage of `panic!()` is deprecated; it will be a hard error in Rust 2021
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/panic-macro-consistency.html>
[INFO] [stdout] help: add a "{}" format string to `Display` the message
[INFO] [stdout]     |
[INFO] [stdout] 107 |             _ => panic!("{}", msg_from_errno(errno)),
[INFO] [stdout]     |                         +++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: panic message is not a string literal
[INFO] [stdout]    --> src/core/raw.rs:130:25
[INFO] [stdout]     |
[INFO] [stdout] 130 |             _ => panic!(msg_from_errno(errno)),
[INFO] [stdout]     |                         ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this usage of `panic!()` is deprecated; it will be a hard error in Rust 2021
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/panic-macro-consistency.html>
[INFO] [stdout] help: add a "{}" format string to `Display` the message
[INFO] [stdout]     |
[INFO] [stdout] 130 |             _ => panic!("{}", msg_from_errno(errno)),
[INFO] [stdout]     |                         +++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: panic message is not a string literal
[INFO] [stdout]    --> src/core/raw.rs:153:25
[INFO] [stdout]     |
[INFO] [stdout] 153 |             _ => panic!(msg_from_errno(errno)),
[INFO] [stdout]     |                         ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this usage of `panic!()` is deprecated; it will be a hard error in Rust 2021
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/panic-macro-consistency.html>
[INFO] [stdout] help: add a "{}" format string to `Display` the message
[INFO] [stdout]     |
[INFO] [stdout] 153 |             _ => panic!("{}", msg_from_errno(errno)),
[INFO] [stdout]     |                         +++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: panic message is not a string literal
[INFO] [stdout]    --> src/core/raw.rs:201:29
[INFO] [stdout]     |
[INFO] [stdout] 201 |                 _ => panic!(msg_from_errno(errno)),
[INFO] [stdout]     |                             ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this usage of `panic!()` is deprecated; it will be a hard error in Rust 2021
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/panic-macro-consistency.html>
[INFO] [stdout] help: add a "{}" format string to `Display` the message
[INFO] [stdout]     |
[INFO] [stdout] 201 |                 _ => panic!("{}", msg_from_errno(errno)),
[INFO] [stdout]     |                             +++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: panic message is not a string literal
[INFO] [stdout]   --> src/core/recv.rs:35:25
[INFO] [stdout]    |
[INFO] [stdout] 35 |             _ => panic!(msg_from_errno(errno)),
[INFO] [stdout]    |                         ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this usage of `panic!()` is deprecated; it will be a hard error in Rust 2021
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/panic-macro-consistency.html>
[INFO] [stdout] help: add a "{}" format string to `Display` the message
[INFO] [stdout]    |
[INFO] [stdout] 35 |             _ => panic!("{}", msg_from_errno(errno)),
[INFO] [stdout]    |                         +++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: panic message is not a string literal
[INFO] [stdout]   --> src/core/send.rs:41:25
[INFO] [stdout]    |
[INFO] [stdout] 41 |             _ => panic!(msg_from_errno(errno)),
[INFO] [stdout]    |                         ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this usage of `panic!()` is deprecated; it will be a hard error in Rust 2021
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/panic-macro-consistency.html>
[INFO] [stdout] help: add a "{}" format string to `Display` the message
[INFO] [stdout]    |
[INFO] [stdout] 41 |             _ => panic!("{}", msg_from_errno(errno)),
[INFO] [stdout]    |                         +++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: panic message is not a string literal
[INFO] [stdout]    --> src/core/sockopt.rs:117:25
[INFO] [stdout]     |
[INFO] [stdout] 117 |             _ => panic!(msg_from_errno(errno)),
[INFO] [stdout]     |                         ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this usage of `panic!()` is deprecated; it will be a hard error in Rust 2021
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/panic-macro-consistency.html>
[INFO] [stdout] help: add a "{}" format string to `Display` the message
[INFO] [stdout]     |
[INFO] [stdout] 117 |             _ => panic!("{}", msg_from_errno(errno)),
[INFO] [stdout]     |                         +++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: panic message is not a string literal
[INFO] [stdout]    --> src/core/sockopt.rs:223:25
[INFO] [stdout]     |
[INFO] [stdout] 223 |             _ => panic!(msg_from_errno(errno)),
[INFO] [stdout]     |                         ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this usage of `panic!()` is deprecated; it will be a hard error in Rust 2021
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/panic-macro-consistency.html>
[INFO] [stdout] help: add a "{}" format string to `Display` the message
[INFO] [stdout]     |
[INFO] [stdout] 223 |             _ => panic!("{}", msg_from_errno(errno)),
[INFO] [stdout]     |                         +++++
[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/auth/mod.rs:35:45
[INFO] [stdout]    |
[INFO] [stdout] 35 | #[derive(Debug, Clone, PartialEq, Eq, Hash, 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_PlainClientCreds`
[INFO] [stdout] 36 | pub struct PlainClientCreds {
[INFO] [stdout]    |            ---------------- `PlainClientCreds` 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 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/auth/mod.rs:35:56
[INFO] [stdout]    |
[INFO] [stdout] 35 | #[derive(Debug, Clone, PartialEq, Eq, Hash, 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_PlainClientCreds`
[INFO] [stdout] 36 | pub struct PlainClientCreds {
[INFO] [stdout]    |            ---------------- `PlainClientCreds` 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 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/auth/mod.rs:108:45
[INFO] [stdout]     |
[INFO] [stdout] 108 | #[derive(Debug, Clone, PartialEq, Eq, Hash, 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_Mechanism`
[INFO] [stdout] 109 | #[serde(rename_all = "snake_case")]
[INFO] [stdout] 110 | pub enum Mechanism {
[INFO] [stdout]     |          --------- `Mechanism` 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 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/auth/mod.rs:108:56
[INFO] [stdout]     |
[INFO] [stdout] 108 | #[derive(Debug, Clone, PartialEq, Eq, Hash, 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_Mechanism`
[INFO] [stdout] 109 | #[serde(rename_all = "snake_case")]
[INFO] [stdout] 110 | pub enum Mechanism {
[INFO] [stdout]     |          --------- `Mechanism` 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 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/auth/client.rs:8:24
[INFO] [stdout]   |
[INFO] [stdout] 8 | #[derive(Debug, Clone, Serialize, Deserialize, PartialEq, Eq)]
[INFO] [stdout]   |                        ^--------
[INFO] [stdout]   |                        |
[INFO] [stdout]   |                        `Serialize` is not local
[INFO] [stdout]   |                        move the `impl` block outside of this constant `_IMPL_SERIALIZE_FOR_AuthRequest`
[INFO] [stdout] 9 | pub(crate) enum AuthRequest {
[INFO] [stdout]   |                 ----------- `AuthRequest` 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 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/auth/client.rs:8:35
[INFO] [stdout]   |
[INFO] [stdout] 8 | #[derive(Debug, Clone, Serialize, Deserialize, PartialEq, Eq)]
[INFO] [stdout]   |                                   ^----------
[INFO] [stdout]   |                                   |
[INFO] [stdout]   |                                   `Deserialize` is not local
[INFO] [stdout]   |                                   move the `impl` block outside of this constant `_IMPL_DESERIALIZE_FOR_AuthRequest`
[INFO] [stdout] 9 | pub(crate) enum AuthRequest {
[INFO] [stdout]   |                 ----------- `AuthRequest` 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 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/auth/client.rs:25:24
[INFO] [stdout]    |
[INFO] [stdout] 25 | #[derive(Debug, Clone, Serialize, Deserialize, PartialEq, Eq)]
[INFO] [stdout]    |                        ^--------
[INFO] [stdout]    |                        |
[INFO] [stdout]    |                        `Serialize` is not local
[INFO] [stdout]    |                        move the `impl` block outside of this constant `_IMPL_SERIALIZE_FOR_AuthReply`
[INFO] [stdout] 26 | pub(crate) enum AuthReply {
[INFO] [stdout]    |                 --------- `AuthReply` 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 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/auth/client.rs:25:35
[INFO] [stdout]    |
[INFO] [stdout] 25 | #[derive(Debug, Clone, Serialize, Deserialize, PartialEq, Eq)]
[INFO] [stdout]    |                                   ^----------
[INFO] [stdout]    |                                   |
[INFO] [stdout]    |                                   `Deserialize` is not local
[INFO] [stdout]    |                                   move the `impl` block outside of this constant `_IMPL_DESERIALIZE_FOR_AuthReply`
[INFO] [stdout] 26 | pub(crate) enum AuthReply {
[INFO] [stdout]    |                 --------- `AuthReply` 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 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/auth/client.rs:338:54
[INFO] [stdout]     |
[INFO] [stdout] 338 | #[derive(Debug, Default, Clone, PartialEq, Eq, Hash, 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_AuthConfig`
[INFO] [stdout] 339 | pub struct AuthConfig {
[INFO] [stdout]     |            ---------- `AuthConfig` 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 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/auth/client.rs:338:65
[INFO] [stdout]     |
[INFO] [stdout] 338 | #[derive(Debug, Default, Clone, PartialEq, Eq, Hash, 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_AuthConfig`
[INFO] [stdout] 339 | pub struct AuthConfig {
[INFO] [stdout]     |            ---------- `AuthConfig` 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 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/auth/client.rs:438:54
[INFO] [stdout]     |
[INFO] [stdout] 438 | #[derive(Debug, Default, Clone, PartialEq, Eq, Hash, 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_AuthBuilder`
[INFO] [stdout] 439 | pub struct AuthBuilder {
[INFO] [stdout]     |            ----------- `AuthBuilder` 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 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/auth/client.rs:438:65
[INFO] [stdout]     |
[INFO] [stdout] 438 | #[derive(Debug, Default, Clone, PartialEq, Eq, Hash, 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_AuthBuilder`
[INFO] [stdout] 439 | pub struct AuthBuilder {
[INFO] [stdout]     |            ----------- `AuthBuilder` 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 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/auth/curve.rs:142:38
[INFO] [stdout]     |
[INFO] [stdout] 142 | #[derive(Clone, PartialEq, Eq, Hash, 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_CurvePublicKey`
[INFO] [stdout] 143 | #[serde(transparent)]
[INFO] [stdout] 144 | pub struct CurvePublicKey {
[INFO] [stdout]     |            -------------- `CurvePublicKey` 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 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/auth/curve.rs:142:49
[INFO] [stdout]     |
[INFO] [stdout] 142 | #[derive(Clone, PartialEq, Eq, Hash, 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_CurvePublicKey`
[INFO] [stdout] 143 | #[serde(transparent)]
[INFO] [stdout] 144 | pub struct CurvePublicKey {
[INFO] [stdout]     |            -------------- `CurvePublicKey` 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 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/auth/curve.rs:268:38
[INFO] [stdout]     |
[INFO] [stdout] 268 | #[derive(Clone, PartialEq, Eq, Hash, 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_CurveSecretKey`
[INFO] [stdout] 269 | #[serde(transparent)]
[INFO] [stdout] 270 | pub struct CurveSecretKey {
[INFO] [stdout]     |            -------------- `CurveSecretKey` 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 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/auth/curve.rs:268:49
[INFO] [stdout]     |
[INFO] [stdout] 268 | #[derive(Clone, PartialEq, Eq, Hash, 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_CurveSecretKey`
[INFO] [stdout] 269 | #[serde(transparent)]
[INFO] [stdout] 270 | pub struct CurveSecretKey {
[INFO] [stdout]     |            -------------- `CurveSecretKey` 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 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/auth/curve.rs:517:45
[INFO] [stdout]     |
[INFO] [stdout] 517 | #[derive(Debug, Clone, PartialEq, Eq, Hash, 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_CurveCert`
[INFO] [stdout] 518 | pub struct CurveCert {
[INFO] [stdout]     |            --------- `CurveCert` 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 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/auth/curve.rs:517:56
[INFO] [stdout]     |
[INFO] [stdout] 517 | #[derive(Debug, Clone, PartialEq, Eq, Hash, 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_CurveCert`
[INFO] [stdout] 518 | pub struct CurveCert {
[INFO] [stdout]     |            --------- `CurveCert` 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 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/auth/curve.rs:645:45
[INFO] [stdout]     |
[INFO] [stdout] 645 | #[derive(Debug, Clone, PartialEq, Eq, Hash, 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_CurveClientCreds`
[INFO] [stdout] 646 | pub struct CurveClientCreds {
[INFO] [stdout]     |            ---------------- `CurveClientCreds` 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 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/auth/curve.rs:645:56
[INFO] [stdout]     |
[INFO] [stdout] 645 | #[derive(Debug, Clone, PartialEq, Eq, Hash, 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_CurveClientCreds`
[INFO] [stdout] 646 | pub struct CurveClientCreds {
[INFO] [stdout]     |            ---------------- `CurveClientCreds` 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 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/auth/curve.rs:710:45
[INFO] [stdout]     |
[INFO] [stdout] 710 | #[derive(Debug, Clone, PartialEq, Eq, Hash, 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_CurveServerCreds`
[INFO] [stdout] 711 | pub struct CurveServerCreds {
[INFO] [stdout]     |            ---------------- `CurveServerCreds` 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 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/auth/curve.rs:710:56
[INFO] [stdout]     |
[INFO] [stdout] 710 | #[derive(Debug, Clone, PartialEq, Eq, Hash, 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_CurveServerCreds`
[INFO] [stdout] 711 | pub struct CurveServerCreds {
[INFO] [stdout]     |            ---------------- `CurveServerCreds` 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 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/ctx.rs:53:20
[INFO] [stdout]    |
[INFO] [stdout] 53 |             panic!(msg_from_errno(unsafe { sys::zmq_errno() }));
[INFO] [stdout]    |                    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this usage of `panic!()` is deprecated; it will be a hard error in Rust 2021
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/panic-macro-consistency.html>
[INFO] [stdout] help: add a "{}" format string to `Display` the message
[INFO] [stdout]    |
[INFO] [stdout] 53 |             panic!("{}", msg_from_errno(unsafe { sys::zmq_errno() }));
[INFO] [stdout]    |                    +++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: panic message is not a string literal
[INFO] [stdout]   --> src/ctx.rs:72:29
[INFO] [stdout]    |
[INFO] [stdout] 72 |                 _ => panic!(msg_from_errno(errno)),
[INFO] [stdout]    |                             ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this usage of `panic!()` is deprecated; it will be a hard error in Rust 2021
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/panic-macro-consistency.html>
[INFO] [stdout] help: add a "{}" format string to `Display` the message
[INFO] [stdout]    |
[INFO] [stdout] 72 |                 _ => panic!("{}", msg_from_errno(errno)),
[INFO] [stdout]    |                             +++++
[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/ctx.rs:115:47
[INFO] [stdout]     |
[INFO] [stdout] 115 | #[derive(Default, Clone, PartialEq, Eq, Hash, 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_CtxConfig`
[INFO] [stdout] 116 | pub struct CtxConfig {
[INFO] [stdout]     |            --------- `CtxConfig` 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 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/ctx.rs:115:58
[INFO] [stdout]     |
[INFO] [stdout] 115 | #[derive(Default, Clone, PartialEq, Eq, Hash, 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_CtxConfig`
[INFO] [stdout] 116 | pub struct CtxConfig {
[INFO] [stdout]     |            --------- `CtxConfig` 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 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/ctx.rs:166:47
[INFO] [stdout]     |
[INFO] [stdout] 166 | #[derive(Default, Clone, PartialEq, Eq, Hash, 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_CtxBuilder`
[INFO] [stdout] 167 | pub struct CtxBuilder {
[INFO] [stdout]     |            ---------- `CtxBuilder` 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 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/ctx.rs:166:58
[INFO] [stdout]     |
[INFO] [stdout] 166 | #[derive(Default, Clone, PartialEq, Eq, Hash, 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_CtxBuilder`
[INFO] [stdout] 167 | pub struct CtxBuilder {
[INFO] [stdout]     |            ---------- `CtxBuilder` 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 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/endpoint.rs:1212:45
[INFO] [stdout]      |
[INFO] [stdout] 1212 | #[derive(Debug, Clone, Eq, PartialEq, Hash, 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_Endpoint`
[INFO] [stdout] 1213 | #[serde(rename_all = "snake_case")]
[INFO] [stdout] 1214 | pub enum Endpoint {
[INFO] [stdout]      |          -------- `Endpoint` 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 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/endpoint.rs:1212:56
[INFO] [stdout]      |
[INFO] [stdout] 1212 | #[derive(Debug, Clone, Eq, PartialEq, Hash, 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_Endpoint`
[INFO] [stdout] 1213 | #[serde(rename_all = "snake_case")]
[INFO] [stdout] 1214 | pub enum Endpoint {
[INFO] [stdout]      |          -------- `Endpoint` 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 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: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/group.rs:62:28
[INFO] [stdout]    |
[INFO] [stdout] 62 |     pub fn to_string_lossy(&self) -> Cow<str> {
[INFO] [stdout]    |                            ^^^^^     -------- the same lifetime is hidden here
[INFO] [stdout]    |                            |
[INFO] [stdout]    |                            the lifetime is elided here
[INFO] [stdout]    |
[INFO] [stdout]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout]    = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]    |
[INFO] [stdout] 62 |     pub fn to_string_lossy(&self) -> Cow<'_, str> {
[INFO] [stdout]    |                                          +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/group.rs:199:28
[INFO] [stdout]     |
[INFO] [stdout] 199 |     pub fn to_string_lossy(&self) -> Cow<str> {
[INFO] [stdout]     |                            ^^^^^     -------- the same lifetime is hidden here
[INFO] [stdout]     |                            |
[INFO] [stdout]     |                            the lifetime is elided here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 199 |     pub fn to_string_lossy(&self) -> Cow<'_, str> {
[INFO] [stdout]     |                                          +++
[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/msg.rs:52:45
[INFO] [stdout]    |
[INFO] [stdout] 52 | #[derive(Debug, Copy, Clone, PartialEq, Eq, Serialize, Deserialize, Hash)]
[INFO] [stdout]    |                                             ^--------
[INFO] [stdout]    |                                             |
[INFO] [stdout]    |                                             `Serialize` is not local
[INFO] [stdout]    |                                             move the `impl` block outside of this constant `_IMPL_SERIALIZE_FOR_RoutingId`
[INFO] [stdout] 53 | pub struct RoutingId(pub u32);
[INFO] [stdout]    |            --------- `RoutingId` 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 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/msg.rs:52:56
[INFO] [stdout]    |
[INFO] [stdout] 52 | #[derive(Debug, Copy, Clone, PartialEq, Eq, Serialize, Deserialize, Hash)]
[INFO] [stdout]    |                                                        ^----------
[INFO] [stdout]    |                                                        |
[INFO] [stdout]    |                                                        `Deserialize` is not local
[INFO] [stdout]    |                                                        move the `impl` block outside of this constant `_IMPL_DESERIALIZE_FOR_RoutingId`
[INFO] [stdout] 53 | pub struct RoutingId(pub u32);
[INFO] [stdout]    |            --------- `RoutingId` 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 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/msg.rs:219:20
[INFO] [stdout]     |
[INFO] [stdout] 219 |             panic!(msg_from_errno(errno));
[INFO] [stdout]     |                    ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this usage of `panic!()` is deprecated; it will be a hard error in Rust 2021
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/panic-macro-consistency.html>
[INFO] [stdout] help: add a "{}" format string to `Display` the message
[INFO] [stdout]     |
[INFO] [stdout] 219 |             panic!("{}", msg_from_errno(errno));
[INFO] [stdout]     |                    +++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: panic message is not a string literal
[INFO] [stdout]    --> src/msg.rs:272:20
[INFO] [stdout]     |
[INFO] [stdout] 272 |             panic!(msg_from_errno(errno));
[INFO] [stdout]     |                    ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this usage of `panic!()` is deprecated; it will be a hard error in Rust 2021
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/panic-macro-consistency.html>
[INFO] [stdout] help: add a "{}" format string to `Display` the message
[INFO] [stdout]     |
[INFO] [stdout] 272 |             panic!("{}", msg_from_errno(errno));
[INFO] [stdout]     |                    +++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: panic message is not a string literal
[INFO] [stdout]    --> src/msg.rs:289:20
[INFO] [stdout]     |
[INFO] [stdout] 289 |             panic!(msg_from_errno(sys::zmq_errno()));
[INFO] [stdout]     |                    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this usage of `panic!()` is deprecated; it will be a hard error in Rust 2021
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/panic-macro-consistency.html>
[INFO] [stdout] help: add a "{}" format string to `Display` the message
[INFO] [stdout]     |
[INFO] [stdout] 289 |             panic!("{}", msg_from_errno(sys::zmq_errno()));
[INFO] [stdout]     |                    +++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: panic message is not a string literal
[INFO] [stdout]    --> src/msg.rs:356:29
[INFO] [stdout]     |
[INFO] [stdout] 356 |                 _ => panic!(msg_from_errno(errno)),
[INFO] [stdout]     |                             ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this usage of `panic!()` is deprecated; it will be a hard error in Rust 2021
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/panic-macro-consistency.html>
[INFO] [stdout] help: add a "{}" format string to `Display` the message
[INFO] [stdout]     |
[INFO] [stdout] 356 |                 _ => panic!("{}", msg_from_errno(errno)),
[INFO] [stdout]     |                             +++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused return value of `Box::<T>::from_raw` that must be used
[INFO] [stdout]    --> src/msg.rs:388:13
[INFO] [stdout]     |
[INFO] [stdout] 388 |             Box::from_raw(data as *mut u8);
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: call `drop(Box::from_raw(ptr))` if you intend to drop the `Box`
[INFO] [stdout]     = note: `#[warn(unused_must_use)]` on by default
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 388 |             let _ = Box::from_raw(data as *mut u8);
[INFO] [stdout]     |             +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: panic message is not a string literal
[INFO] [stdout]   --> src/old.rs:30:25
[INFO] [stdout]    |
[INFO] [stdout] 30 |             _ => panic!(msg_from_errno(errno)),
[INFO] [stdout]    |                         ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this usage of `panic!()` is deprecated; it will be a hard error in Rust 2021
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/panic-macro-consistency.html>
[INFO] [stdout] help: add a "{}" format string to `Display` the message
[INFO] [stdout]    |
[INFO] [stdout] 30 |             _ => panic!("{}", msg_from_errno(errno)),
[INFO] [stdout]    |                         +++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: panic message is not a string literal
[INFO] [stdout]   --> src/old.rs:48:25
[INFO] [stdout]    |
[INFO] [stdout] 48 |             _ => panic!(msg_from_errno(errno)),
[INFO] [stdout]    |                         ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this usage of `panic!()` is deprecated; it will be a hard error in Rust 2021
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/panic-macro-consistency.html>
[INFO] [stdout] help: add a "{}" format string to `Display` the message
[INFO] [stdout]    |
[INFO] [stdout] 48 |             _ => panic!("{}", msg_from_errno(errno)),
[INFO] [stdout]    |                         +++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/poll.rs:334:17
[INFO] [stdout]     |
[INFO] [stdout] 334 |     pub fn iter(&self) -> Iter {
[INFO] [stdout]     |                 ^^^^^     ---- the same lifetime is hidden here
[INFO] [stdout]     |                 |
[INFO] [stdout]     |                 the lifetime is elided here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 334 |     pub fn iter(&self) -> Iter<'_> {
[INFO] [stdout]     |                               ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: panic message is not a string literal
[INFO] [stdout]    --> src/poll.rs:514:29
[INFO] [stdout]     |
[INFO] [stdout] 514 |                 _ => panic!(msg_from_errno(errno)),
[INFO] [stdout]     |                             ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this usage of `panic!()` is deprecated; it will be a hard error in Rust 2021
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/panic-macro-consistency.html>
[INFO] [stdout] help: add a "{}" format string to `Display` the message
[INFO] [stdout]     |
[INFO] [stdout] 514 |                 _ => panic!("{}", msg_from_errno(errno)),
[INFO] [stdout]     |                             +++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: panic message is not a string literal
[INFO] [stdout]    --> src/poll.rs:551:29
[INFO] [stdout]     |
[INFO] [stdout] 551 |                 _ => panic!(msg_from_errno(errno)),
[INFO] [stdout]     |                             ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this usage of `panic!()` is deprecated; it will be a hard error in Rust 2021
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/panic-macro-consistency.html>
[INFO] [stdout] help: add a "{}" format string to `Display` the message
[INFO] [stdout]     |
[INFO] [stdout] 551 |                 _ => panic!("{}", msg_from_errno(errno)),
[INFO] [stdout]     |                             +++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: panic message is not a string literal
[INFO] [stdout]    --> src/poll.rs:612:29
[INFO] [stdout]     |
[INFO] [stdout] 612 |                 _ => panic!(msg_from_errno(errno)),
[INFO] [stdout]     |                             ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this usage of `panic!()` is deprecated; it will be a hard error in Rust 2021
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/panic-macro-consistency.html>
[INFO] [stdout] help: add a "{}" format string to `Display` the message
[INFO] [stdout]     |
[INFO] [stdout] 612 |                 _ => panic!("{}", msg_from_errno(errno)),
[INFO] [stdout]     |                             +++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: panic message is not a string literal
[INFO] [stdout]    --> src/poll.rs:638:29
[INFO] [stdout]     |
[INFO] [stdout] 638 |                 _ => panic!(msg_from_errno(errno)),
[INFO] [stdout]     |                             ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this usage of `panic!()` is deprecated; it will be a hard error in Rust 2021
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/panic-macro-consistency.html>
[INFO] [stdout] help: add a "{}" format string to `Display` the message
[INFO] [stdout]     |
[INFO] [stdout] 638 |                 _ => panic!("{}", msg_from_errno(errno)),
[INFO] [stdout]     |                             +++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: panic message is not a string literal
[INFO] [stdout]    --> src/poll.rs:688:29
[INFO] [stdout]     |
[INFO] [stdout] 688 |                 _ => panic!(msg_from_errno(errno)),
[INFO] [stdout]     |                             ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this usage of `panic!()` is deprecated; it will be a hard error in Rust 2021
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/panic-macro-consistency.html>
[INFO] [stdout] help: add a "{}" format string to `Display` the message
[INFO] [stdout]     |
[INFO] [stdout] 688 |                 _ => panic!("{}", msg_from_errno(errno)),
[INFO] [stdout]     |                             +++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: panic message is not a string literal
[INFO] [stdout]    --> src/poll.rs:716:29
[INFO] [stdout]     |
[INFO] [stdout] 716 |                 _ => panic!(msg_from_errno(errno)),
[INFO] [stdout]     |                             ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this usage of `panic!()` is deprecated; it will be a hard error in Rust 2021
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/panic-macro-consistency.html>
[INFO] [stdout] help: add a "{}" format string to `Display` the message
[INFO] [stdout]     |
[INFO] [stdout] 716 |                 _ => panic!("{}", msg_from_errno(errno)),
[INFO] [stdout]     |                             +++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: panic message is not a string literal
[INFO] [stdout]    --> src/poll.rs:746:29
[INFO] [stdout]     |
[INFO] [stdout] 746 |                 _ => panic!(msg_from_errno(errno)),
[INFO] [stdout]     |                             ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this usage of `panic!()` is deprecated; it will be a hard error in Rust 2021
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/panic-macro-consistency.html>
[INFO] [stdout] help: add a "{}" format string to `Display` the message
[INFO] [stdout]     |
[INFO] [stdout] 746 |                 _ => panic!("{}", msg_from_errno(errno)),
[INFO] [stdout]     |                             +++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: panic message is not a string literal
[INFO] [stdout]    --> src/poll.rs:812:20
[INFO] [stdout]     |
[INFO] [stdout] 812 |             panic!(msg_from_errno(unsafe { sys::zmq_errno() }));
[INFO] [stdout]     |                    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this usage of `panic!()` is deprecated; it will be a hard error in Rust 2021
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/panic-macro-consistency.html>
[INFO] [stdout] help: add a "{}" format string to `Display` the message
[INFO] [stdout]     |
[INFO] [stdout] 812 |             panic!("{}", msg_from_errno(unsafe { sys::zmq_errno() }));
[INFO] [stdout]     |                    +++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: panic message is not a string literal
[INFO] [stdout]    --> src/poll.rs:828:29
[INFO] [stdout]     |
[INFO] [stdout] 828 |                 _ => panic!(msg_from_errno(errno)),
[INFO] [stdout]     |                             ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this usage of `panic!()` is deprecated; it will be a hard error in Rust 2021
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/panic-macro-consistency.html>
[INFO] [stdout] help: add a "{}" format string to `Display` the message
[INFO] [stdout]     |
[INFO] [stdout] 828 |                 _ => panic!("{}", msg_from_errno(errno)),
[INFO] [stdout]     |                             +++++
[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/socket/mod.rs:61:45
[INFO] [stdout]    |
[INFO] [stdout] 61 | #[derive(Debug, Clone, PartialEq, Eq, Hash, 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_ConfigType`
[INFO] [stdout] 62 | #[serde(rename_all = "snake_case")]
[INFO] [stdout] 63 | pub enum ConfigType {
[INFO] [stdout]    |          ---------- `ConfigType` 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 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/socket/mod.rs:61:56
[INFO] [stdout]    |
[INFO] [stdout] 61 | #[derive(Debug, Clone, PartialEq, Eq, Hash, 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_ConfigType`
[INFO] [stdout] 62 | #[serde(rename_all = "snake_case")]
[INFO] [stdout] 63 | pub enum ConfigType {
[INFO] [stdout]    |          ---------- `ConfigType` 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 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/socket/client.rs:138:54
[INFO] [stdout]     |
[INFO] [stdout] 138 | #[derive(Debug, Default, Clone, PartialEq, Eq, Hash, 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_ClientConfig`
[INFO] [stdout] ...
[INFO] [stdout] 141 | pub struct ClientConfig {
[INFO] [stdout]     |            ------------ `ClientConfig` 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 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/socket/client.rs:138:65
[INFO] [stdout]     |
[INFO] [stdout] 138 | #[derive(Debug, Default, Clone, PartialEq, Eq, Hash, 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_ClientConfig`
[INFO] [stdout] ...
[INFO] [stdout] 141 | pub struct ClientConfig {
[INFO] [stdout]     |            ------------ `ClientConfig` 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 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/socket/client.rs:174:17
[INFO] [stdout]     |
[INFO] [stdout] 174 | #[derive(Clone, 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_FlatClientConfig`
[INFO] [stdout] 175 | struct FlatClientConfig {
[INFO] [stdout]     |        ---------------- `FlatClientConfig` 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 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/socket/client.rs:174:28
[INFO] [stdout]     |
[INFO] [stdout] 174 | #[derive(Clone, 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_FlatClientConfig`
[INFO] [stdout] 175 | struct FlatClientConfig {
[INFO] [stdout]     |        ---------------- `FlatClientConfig` 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 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/socket/client.rs:283:54
[INFO] [stdout]     |
[INFO] [stdout] 283 | #[derive(Debug, Default, Clone, PartialEq, Eq, Hash, 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_ClientBuilder`
[INFO] [stdout] 284 | pub struct ClientBuilder {
[INFO] [stdout]     |            ------------- `ClientBuilder` 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 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/socket/client.rs:283:65
[INFO] [stdout]     |
[INFO] [stdout] 283 | #[derive(Debug, Default, Clone, PartialEq, Eq, Hash, 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_ClientBuilder`
[INFO] [stdout] 284 | pub struct ClientBuilder {
[INFO] [stdout]     |            ------------- `ClientBuilder` 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 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/socket/dish.rs:30:25
[INFO] [stdout]    |
[INFO] [stdout] 30 |             _ => panic!(msg_from_errno(errno)),
[INFO] [stdout]    |                         ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this usage of `panic!()` is deprecated; it will be a hard error in Rust 2021
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/panic-macro-consistency.html>
[INFO] [stdout] help: add a "{}" format string to `Display` the message
[INFO] [stdout]    |
[INFO] [stdout] 30 |             _ => panic!("{}", msg_from_errno(errno)),
[INFO] [stdout]    |                         +++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: panic message is not a string literal
[INFO] [stdout]   --> src/socket/dish.rs:53:25
[INFO] [stdout]    |
[INFO] [stdout] 53 |             _ => panic!(msg_from_errno(errno)),
[INFO] [stdout]    |                         ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this usage of `panic!()` is deprecated; it will be a hard error in Rust 2021
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/panic-macro-consistency.html>
[INFO] [stdout] help: add a "{}" format string to `Display` the message
[INFO] [stdout]    |
[INFO] [stdout] 53 |             _ => panic!("{}", msg_from_errno(errno)),
[INFO] [stdout]    |                         +++++
[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/socket/dish.rs:312:54
[INFO] [stdout]     |
[INFO] [stdout] 312 | #[derive(Debug, Default, Clone, PartialEq, Eq, Hash, 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_DishConfig`
[INFO] [stdout] ...
[INFO] [stdout] 315 | pub struct DishConfig {
[INFO] [stdout]     |            ---------- `DishConfig` 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 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/socket/dish.rs:312:65
[INFO] [stdout]     |
[INFO] [stdout] 312 | #[derive(Debug, Default, Clone, PartialEq, Eq, Hash, 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_DishConfig`
[INFO] [stdout] ...
[INFO] [stdout] 315 | pub struct DishConfig {
[INFO] [stdout]     |            ---------- `DishConfig` 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 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/socket/dish.rs:362:17
[INFO] [stdout]     |
[INFO] [stdout] 362 | #[derive(Clone, 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_FlatDishConfig`
[INFO] [stdout] 363 | struct FlatDishConfig {
[INFO] [stdout]     |        -------------- `FlatDishConfig` 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 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/socket/dish.rs:362:28
[INFO] [stdout]     |
[INFO] [stdout] 362 | #[derive(Clone, 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_FlatDishConfig`
[INFO] [stdout] 363 | struct FlatDishConfig {
[INFO] [stdout]     |        -------------- `FlatDishConfig` 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 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/socket/dish.rs:432:54
[INFO] [stdout]     |
[INFO] [stdout] 432 | #[derive(Debug, Default, Clone, PartialEq, Eq, Hash, 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_DishBuilder`
[INFO] [stdout] 433 | pub struct DishBuilder {
[INFO] [stdout]     |            ----------- `DishBuilder` 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 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/socket/dish.rs:432:65
[INFO] [stdout]     |
[INFO] [stdout] 432 | #[derive(Debug, Default, Clone, PartialEq, Eq, Hash, 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_DishBuilder`
[INFO] [stdout] 433 | pub struct DishBuilder {
[INFO] [stdout]     |            ----------- `DishBuilder` 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 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/socket/gather.rs:136:54
[INFO] [stdout]     |
[INFO] [stdout] 136 | #[derive(Debug, Default, Clone, PartialEq, Eq, Hash, 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_GatherConfig`
[INFO] [stdout] ...
[INFO] [stdout] 139 | pub struct GatherConfig {
[INFO] [stdout]     |            ------------ `GatherConfig` 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 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/socket/gather.rs:136:65
[INFO] [stdout]     |
[INFO] [stdout] 136 | #[derive(Debug, Default, Clone, PartialEq, Eq, Hash, 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_GatherConfig`
[INFO] [stdout] ...
[INFO] [stdout] 139 | pub struct GatherConfig {
[INFO] [stdout]     |            ------------ `GatherConfig` 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 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/socket/gather.rs:169:17
[INFO] [stdout]     |
[INFO] [stdout] 169 | #[derive(Clone, 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_FlatGatherConfig`
[INFO] [stdout] 170 | struct FlatGatherConfig {
[INFO] [stdout]     |        ---------------- `FlatGatherConfig` 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 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/socket/gather.rs:169:28
[INFO] [stdout]     |
[INFO] [stdout] 169 | #[derive(Clone, 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_FlatGatherConfig`
[INFO] [stdout] 170 | struct FlatGatherConfig {
[INFO] [stdout]     |        ---------------- `FlatGatherConfig` 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 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/socket/gather.rs:255:54
[INFO] [stdout]     |
[INFO] [stdout] 255 | #[derive(Debug, Default, Clone, PartialEq, Eq, Hash, 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_GatherBuilder`
[INFO] [stdout] 256 | pub struct GatherBuilder {
[INFO] [stdout]     |            ------------- `GatherBuilder` 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 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/socket/gather.rs:255:65
[INFO] [stdout]     |
[INFO] [stdout] 255 | #[derive(Debug, Default, Clone, PartialEq, Eq, Hash, 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_GatherBuilder`
[INFO] [stdout] 256 | pub struct GatherBuilder {
[INFO] [stdout]     |            ------------- `GatherBuilder` 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 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/socket/radio.rs:203:54
[INFO] [stdout]     |
[INFO] [stdout] 203 | #[derive(Debug, Default, Clone, PartialEq, Eq, Hash, 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_RadioConfig`
[INFO] [stdout] ...
[INFO] [stdout] 206 | pub struct RadioConfig {
[INFO] [stdout]     |            ----------- `RadioConfig` 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 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/socket/radio.rs:203:65
[INFO] [stdout]     |
[INFO] [stdout] 203 | #[derive(Debug, Default, Clone, PartialEq, Eq, Hash, 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_RadioConfig`
[INFO] [stdout] ...
[INFO] [stdout] 206 | pub struct RadioConfig {
[INFO] [stdout]     |            ----------- `RadioConfig` 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 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/socket/radio.rs:252:10
[INFO] [stdout]     |
[INFO] [stdout] 252 | #[derive(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_FlatRadioConfig`
[INFO] [stdout] 253 | struct FlatRadioConfig {
[INFO] [stdout]     |        --------------- `FlatRadioConfig` 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 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/socket/radio.rs:252:21
[INFO] [stdout]     |
[INFO] [stdout] 252 | #[derive(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_FlatRadioConfig`
[INFO] [stdout] 253 | struct FlatRadioConfig {
[INFO] [stdout]     |        --------------- `FlatRadioConfig` 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 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/socket/scatter.rs:127:54
[INFO] [stdout]     |
[INFO] [stdout] 127 | #[derive(Debug, Default, Clone, PartialEq, Eq, Hash, 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_ScatterConfig`
[INFO] [stdout] ...
[INFO] [stdout] 130 | pub struct ScatterConfig {
[INFO] [stdout]     |            ------------- `ScatterConfig` 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 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/socket/scatter.rs:127:65
[INFO] [stdout]     |
[INFO] [stdout] 127 | #[derive(Debug, Default, Clone, PartialEq, Eq, Hash, 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_ScatterConfig`
[INFO] [stdout] ...
[INFO] [stdout] 130 | pub struct ScatterConfig {
[INFO] [stdout]     |            ------------- `ScatterConfig` 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 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/socket/scatter.rs:160:17
[INFO] [stdout]     |
[INFO] [stdout] 160 | #[derive(Clone, 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_FlatScatterConfig`
[INFO] [stdout] 161 | struct FlatScatterConfig {
[INFO] [stdout]     |        ----------------- `FlatScatterConfig` 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 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/socket/scatter.rs:160:28
[INFO] [stdout]     |
[INFO] [stdout] 160 | #[derive(Clone, 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_FlatScatterConfig`
[INFO] [stdout] 161 | struct FlatScatterConfig {
[INFO] [stdout]     |        ----------------- `FlatScatterConfig` 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 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/socket/scatter.rs:246:54
[INFO] [stdout]     |
[INFO] [stdout] 246 | #[derive(Debug, Default, Clone, PartialEq, Eq, Hash, 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_ScatterBuilder`
[INFO] [stdout] 247 | pub struct ScatterBuilder {
[INFO] [stdout]     |            -------------- `ScatterBuilder` 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 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/socket/scatter.rs:246:65
[INFO] [stdout]     |
[INFO] [stdout] 246 | #[derive(Debug, Default, Clone, PartialEq, Eq, Hash, 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_ScatterBuilder`
[INFO] [stdout] 247 | pub struct ScatterBuilder {
[INFO] [stdout]     |            -------------- `ScatterBuilder` 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 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/socket/server.rs:176:54
[INFO] [stdout]     |
[INFO] [stdout] 176 | #[derive(Debug, Default, Clone, PartialEq, Eq, Hash, 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_ServerConfig`
[INFO] [stdout] ...
[INFO] [stdout] 179 | pub struct ServerConfig {
[INFO] [stdout]     |            ------------ `ServerConfig` 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 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/socket/server.rs:176:65
[INFO] [stdout]     |
[INFO] [stdout] 176 | #[derive(Debug, Default, Clone, PartialEq, Eq, Hash, 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_ServerConfig`
[INFO] [stdout] ...
[INFO] [stdout] 179 | pub struct ServerConfig {
[INFO] [stdout]     |            ------------ `ServerConfig` 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 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/socket/server.rs:215:17
[INFO] [stdout]     |
[INFO] [stdout] 215 | #[derive(Clone, 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_FlatServerConfig`
[INFO] [stdout] 216 | struct FlatServerConfig {
[INFO] [stdout]     |        ---------------- `FlatServerConfig` 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 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/socket/server.rs:215:28
[INFO] [stdout]     |
[INFO] [stdout] 215 | #[derive(Clone, 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_FlatServerConfig`
[INFO] [stdout] 216 | struct FlatServerConfig {
[INFO] [stdout]     |        ---------------- `FlatServerConfig` 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 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/utils.rs:107:21
[INFO] [stdout]     |
[INFO] [stdout] 107 |         _ => panic!(msg_from_errno(errno)),
[INFO] [stdout]     |                     ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this usage of `panic!()` is deprecated; it will be a hard error in Rust 2021
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/panic-macro-consistency.html>
[INFO] [stdout] help: add a "{}" format string to `Display` the message
[INFO] [stdout]     |
[INFO] [stdout] 107 |         _ => panic!("{}", msg_from_errno(errno)),
[INFO] [stdout]     |                     +++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 1m 20s
[INFO] running `Command { std: "docker" "inspect" "ee0f61401c995d852e796f1e6c98cc644e794deb70b84ec265193a7ebe4b3bc7", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "ee0f61401c995d852e796f1e6c98cc644e794deb70b84ec265193a7ebe4b3bc7", kill_on_drop: false }`
[INFO] [stdout] ee0f61401c995d852e796f1e6c98cc644e794deb70b84ec265193a7ebe4b3bc7
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=warn" "-e" "RUSTDOCFLAGS=--cap-lints=warn" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:e90291280db7d1fac5b66fc6dad9f9662629e7365a55743daf9bdf73ebc4ea79" "/opt/rustwide/cargo-home/bin/cargo" "+1.90.0" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] ca23512d31641647e03998694ac309b1f5737c639603124d4b1df581b03f4116
[INFO] running `Command { std: "docker" "start" "-a" "ca23512d31641647e03998694ac309b1f5737c639603124d4b1df581b03f4116", kill_on_drop: false }`
[INFO] [stderr]    Compiling proc-macro2 v1.0.12
[INFO] [stderr]    Compiling unicode-xid v0.2.0
[INFO] [stderr]    Compiling autocfg v1.0.0
[INFO] [stderr]    Compiling syn v1.0.19
[INFO] [stderr]    Compiling memchr v2.3.3
[INFO] [stderr]    Compiling ryu v1.0.4
[INFO] [stderr]    Compiling thread_local v1.0.1
[INFO] [stderr]    Compiling regex-syntax v0.6.17
[INFO] [stderr]    Compiling version_check v0.9.1
[INFO] [stderr]    Compiling either v1.5.3
[INFO] [stderr]    Compiling cast v0.2.3
[INFO] [stderr]    Compiling unicase v2.6.0
[INFO] [stderr]    Compiling crossbeam-utils v0.7.2
[INFO] [stderr]    Compiling memoffset v0.5.4
[INFO] [stderr]    Compiling crossbeam-epoch v0.8.2
[INFO] [stderr]    Compiling num-traits v0.2.11
[INFO] [stderr]    Compiling smallvec v1.4.0
[INFO] [stderr]    Compiling aho-corasick v0.7.10
[INFO] [stderr]    Compiling itoa v0.4.5
[INFO] [stderr]    Compiling matches v0.1.8
[INFO] [stderr]    Compiling rayon-core v1.7.0
[INFO] [stderr]    Compiling unicode-bidi v0.3.4
[INFO] [stderr]    Compiling unicode-normalization v0.1.12
[INFO] [stderr]    Compiling itertools v0.9.0
[INFO] [stderr]    Compiling regex-automata v0.1.9
[INFO] [stderr]    Compiling quote v1.0.4
[INFO] [stderr]    Compiling crossbeam-deque v0.7.3
[INFO] [stderr]    Compiling crossbeam-queue v0.2.1
[INFO] [stderr]    Compiling num_cpus v1.13.0
[INFO] [stderr]    Compiling pulldown-cmark v0.7.1
[INFO] [stderr]    Compiling unicode-width v0.1.7
[INFO] [stderr]    Compiling textwrap v0.11.0
[INFO] [stderr]    Compiling idna v0.2.0
[INFO] [stderr]    Compiling csv-core v0.1.10
[INFO] [stderr]    Compiling anyhow v1.0.28
[INFO] [stderr]    Compiling linked-hash-map v0.5.3
[INFO] [stderr]    Compiling url v2.1.1
[INFO] [stderr]    Compiling walkdir v2.3.1
[INFO] [stderr]    Compiling yaml-rust v0.4.3
[INFO] [stderr]    Compiling rayon v1.3.0
[INFO] [stderr]    Compiling plotters v0.2.14
[INFO] [stderr]    Compiling criterion-plot v0.4.2
[INFO] [stderr]    Compiling regex v1.3.7
[INFO] [stderr]    Compiling clap v2.33.0
[INFO] [stderr]    Compiling atty v0.2.14
[INFO] [stderr]    Compiling oorandom v11.1.1
[INFO] [stderr]    Compiling semver-parser v0.9.0
[INFO] [stderr]    Compiling dtoa v0.4.5
[INFO] [stderr]    Compiling env_logger v0.7.1
[INFO] [stderr]    Compiling rand_isaac v0.2.0
[INFO] [stderr]    Compiling quickcheck v0.9.2
[INFO] [stderr]    Compiling serde_derive v1.0.107
[INFO] [stderr]    Compiling serde_with_macros v1.1.0
[INFO] [stderr]    Compiling thiserror-impl v1.0.16
[INFO] [stderr]    Compiling thiserror v1.0.16
[INFO] [stderr]    Compiling serde v1.0.107
[INFO] [stderr]    Compiling bstr v0.2.12
[INFO] [stderr]    Compiling serde_json v1.0.52
[INFO] [stderr]    Compiling bincode v1.2.1
[INFO] [stderr]    Compiling humantime-serde v1.0.0
[INFO] [stderr]    Compiling toml v0.5.6
[INFO] [stderr]    Compiling serde_with v1.4.0
[INFO] [stderr]    Compiling serde_yaml v0.8.11
[INFO] [stderr]    Compiling libzmq v0.2.5 (/opt/rustwide/workdir)
[INFO] [stderr]    Compiling csv v1.1.3
[INFO] [stderr]    Compiling tinytemplate v1.0.4
[INFO] [stderr]    Compiling version-sync v0.9.0
[INFO] [stderr]    Compiling criterion v0.3.2
[INFO] [stdout] warning: fields `version`, `domain`, and `identity` are never read
[INFO] [stdout]   --> src/auth/server.rs:95:5
[INFO] [stdout]    |
[INFO] [stdout] 94 | struct ZapRequest {
[INFO] [stdout]    |        ---------- fields in this struct
[INFO] [stdout] 95 |     version: String,
[INFO] [stdout]    |     ^^^^^^^
[INFO] [stdout] 96 |     request_id: Msg,
[INFO] [stdout] 97 |     domain: String,
[INFO] [stdout]    |     ^^^^^^
[INFO] [stdout] 98 |     addr: Ipv6Addr,
[INFO] [stdout] 99 |     identity: Msg,
[INFO] [stdout]    |     ^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `ZapRequest` has derived impls for the traits `Debug` and `Clone`, but these are intentionally ignored during dead code analysis
[INFO] [stdout]    = note: `#[warn(dead_code)]` on by default
[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/core/mod.rs:60:51
[INFO] [stdout]    |
[INFO] [stdout] 60 | #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash, 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_HighWaterMark`
[INFO] [stdout] ...
[INFO] [stdout] 63 | pub(crate) struct HighWaterMark(i32);
[INFO] [stdout]    |                   ------------- `HighWaterMark` 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: `#[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/core/mod.rs:60:62
[INFO] [stdout]    |
[INFO] [stdout] 60 | #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash, 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_HighWaterMark`
[INFO] [stdout] ...
[INFO] [stdout] 63 | pub(crate) struct HighWaterMark(i32);
[INFO] [stdout]    |                   ------------- `HighWaterMark` 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 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/core/mod.rs:98:51
[INFO] [stdout]     |
[INFO] [stdout]  98 | #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash, Deserialize, Serialize)]
[INFO] [stdout]     |                                                   ^----------
[INFO] [stdout]     |                                                   |
[INFO] [stdout]     |                                                   `Deserialize` is not local
[INFO] [stdout]     |                                                   move the `impl` block outside of this constant `_IMPL_DESERIALIZE_FOR_BatchSize`
[INFO] [stdout] ...
[INFO] [stdout] 101 | pub(crate) struct BatchSize(i32);
[INFO] [stdout]     |                   --------- `BatchSize` 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 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/core/mod.rs:98:64
[INFO] [stdout]     |
[INFO] [stdout]  98 | #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash, Deserialize, Serialize)]
[INFO] [stdout]     |                                                                ^--------
[INFO] [stdout]     |                                                                |
[INFO] [stdout]     |                                                                `Serialize` is not local
[INFO] [stdout]     |                                                                move the `impl` block outside of this constant `_IMPL_SERIALIZE_FOR_BatchSize`
[INFO] [stdout] ...
[INFO] [stdout] 101 | pub(crate) struct BatchSize(i32);
[INFO] [stdout]     |                   --------- `BatchSize` 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 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/core/mod.rs:137:51
[INFO] [stdout]     |
[INFO] [stdout] 137 | #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash, 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_Period`
[INFO] [stdout] ...
[INFO] [stdout] 140 | pub enum Period {
[INFO] [stdout]     |          ------ `Period` 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 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/core/mod.rs:137:62
[INFO] [stdout]     |
[INFO] [stdout] 137 | #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash, 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_Period`
[INFO] [stdout] ...
[INFO] [stdout] 140 | pub enum Period {
[INFO] [stdout]     |          ------ `Period` 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 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/core/heartbeat.rs:48:45
[INFO] [stdout]    |
[INFO] [stdout] 48 | #[derive(Debug, Clone, PartialEq, Eq, Hash, 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_Heartbeat`
[INFO] [stdout] 49 | pub struct Heartbeat {
[INFO] [stdout]    |            --------- `Heartbeat` 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 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/core/heartbeat.rs:48:56
[INFO] [stdout]    |
[INFO] [stdout] 48 | #[derive(Debug, Clone, PartialEq, Eq, Hash, 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_Heartbeat`
[INFO] [stdout] 49 | pub struct Heartbeat {
[INFO] [stdout]    |            --------- `Heartbeat` 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 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/core/raw.rs:77:25
[INFO] [stdout]    |
[INFO] [stdout] 77 |             _ => panic!(msg_from_errno(errno)),
[INFO] [stdout]    |                         ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this usage of `panic!()` is deprecated; it will be a hard error in Rust 2021
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/panic-macro-consistency.html>
[INFO] [stdout]    = note: `#[warn(non_fmt_panics)]` on by default
[INFO] [stdout] help: add a "{}" format string to `Display` the message
[INFO] [stdout]    |
[INFO] [stdout] 77 |             _ => panic!("{}", msg_from_errno(errno)),
[INFO] [stdout]    |                         +++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: panic message is not a string literal
[INFO] [stdout]    --> src/core/raw.rs:107:25
[INFO] [stdout]     |
[INFO] [stdout] 107 |             _ => panic!(msg_from_errno(errno)),
[INFO] [stdout]     |                         ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this usage of `panic!()` is deprecated; it will be a hard error in Rust 2021
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/panic-macro-consistency.html>
[INFO] [stdout] help: add a "{}" format string to `Display` the message
[INFO] [stdout]     |
[INFO] [stdout] 107 |             _ => panic!("{}", msg_from_errno(errno)),
[INFO] [stdout]     |                         +++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: panic message is not a string literal
[INFO] [stdout]    --> src/core/raw.rs:130:25
[INFO] [stdout]     |
[INFO] [stdout] 130 |             _ => panic!(msg_from_errno(errno)),
[INFO] [stdout]     |                         ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this usage of `panic!()` is deprecated; it will be a hard error in Rust 2021
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/panic-macro-consistency.html>
[INFO] [stdout] help: add a "{}" format string to `Display` the message
[INFO] [stdout]     |
[INFO] [stdout] 130 |             _ => panic!("{}", msg_from_errno(errno)),
[INFO] [stdout]     |                         +++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: panic message is not a string literal
[INFO] [stdout]    --> src/core/raw.rs:153:25
[INFO] [stdout]     |
[INFO] [stdout] 153 |             _ => panic!(msg_from_errno(errno)),
[INFO] [stdout]     |                         ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this usage of `panic!()` is deprecated; it will be a hard error in Rust 2021
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/panic-macro-consistency.html>
[INFO] [stdout] help: add a "{}" format string to `Display` the message
[INFO] [stdout]     |
[INFO] [stdout] 153 |             _ => panic!("{}", msg_from_errno(errno)),
[INFO] [stdout]     |                         +++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: panic message is not a string literal
[INFO] [stdout]    --> src/core/raw.rs:201:29
[INFO] [stdout]     |
[INFO] [stdout] 201 |                 _ => panic!(msg_from_errno(errno)),
[INFO] [stdout]     |                             ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this usage of `panic!()` is deprecated; it will be a hard error in Rust 2021
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/panic-macro-consistency.html>
[INFO] [stdout] help: add a "{}" format string to `Display` the message
[INFO] [stdout]     |
[INFO] [stdout] 201 |                 _ => panic!("{}", msg_from_errno(errno)),
[INFO] [stdout]     |                             +++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: panic message is not a string literal
[INFO] [stdout]   --> src/core/recv.rs:35:25
[INFO] [stdout]    |
[INFO] [stdout] 35 |             _ => panic!(msg_from_errno(errno)),
[INFO] [stdout]    |                         ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this usage of `panic!()` is deprecated; it will be a hard error in Rust 2021
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/panic-macro-consistency.html>
[INFO] [stdout] help: add a "{}" format string to `Display` the message
[INFO] [stdout]    |
[INFO] [stdout] 35 |             _ => panic!("{}", msg_from_errno(errno)),
[INFO] [stdout]    |                         +++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: panic message is not a string literal
[INFO] [stdout]   --> src/core/send.rs:41:25
[INFO] [stdout]    |
[INFO] [stdout] 41 |             _ => panic!(msg_from_errno(errno)),
[INFO] [stdout]    |                         ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this usage of `panic!()` is deprecated; it will be a hard error in Rust 2021
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/panic-macro-consistency.html>
[INFO] [stdout] help: add a "{}" format string to `Display` the message
[INFO] [stdout]    |
[INFO] [stdout] 41 |             _ => panic!("{}", msg_from_errno(errno)),
[INFO] [stdout]    |                         +++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: panic message is not a string literal
[INFO] [stdout]    --> src/core/sockopt.rs:117:25
[INFO] [stdout]     |
[INFO] [stdout] 117 |             _ => panic!(msg_from_errno(errno)),
[INFO] [stdout]     |                         ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this usage of `panic!()` is deprecated; it will be a hard error in Rust 2021
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/panic-macro-consistency.html>
[INFO] [stdout] help: add a "{}" format string to `Display` the message
[INFO] [stdout]     |
[INFO] [stdout] 117 |             _ => panic!("{}", msg_from_errno(errno)),
[INFO] [stdout]     |                         +++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: panic message is not a string literal
[INFO] [stdout]    --> src/core/sockopt.rs:223:25
[INFO] [stdout]     |
[INFO] [stdout] 223 |             _ => panic!(msg_from_errno(errno)),
[INFO] [stdout]     |                         ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this usage of `panic!()` is deprecated; it will be a hard error in Rust 2021
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/panic-macro-consistency.html>
[INFO] [stdout] help: add a "{}" format string to `Display` the message
[INFO] [stdout]     |
[INFO] [stdout] 223 |             _ => panic!("{}", msg_from_errno(errno)),
[INFO] [stdout]     |                         +++++
[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/auth/mod.rs:35:45
[INFO] [stdout]    |
[INFO] [stdout] 35 | #[derive(Debug, Clone, PartialEq, Eq, Hash, 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_PlainClientCreds`
[INFO] [stdout] 36 | pub struct PlainClientCreds {
[INFO] [stdout]    |            ---------------- `PlainClientCreds` 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 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/auth/mod.rs:35:56
[INFO] [stdout]    |
[INFO] [stdout] 35 | #[derive(Debug, Clone, PartialEq, Eq, Hash, 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_PlainClientCreds`
[INFO] [stdout] 36 | pub struct PlainClientCreds {
[INFO] [stdout]    |            ---------------- `PlainClientCreds` 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 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/auth/mod.rs:108:45
[INFO] [stdout]     |
[INFO] [stdout] 108 | #[derive(Debug, Clone, PartialEq, Eq, Hash, 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_Mechanism`
[INFO] [stdout] 109 | #[serde(rename_all = "snake_case")]
[INFO] [stdout] 110 | pub enum Mechanism {
[INFO] [stdout]     |          --------- `Mechanism` 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 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/auth/mod.rs:108:56
[INFO] [stdout]     |
[INFO] [stdout] 108 | #[derive(Debug, Clone, PartialEq, Eq, Hash, 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_Mechanism`
[INFO] [stdout] 109 | #[serde(rename_all = "snake_case")]
[INFO] [stdout] 110 | pub enum Mechanism {
[INFO] [stdout]     |          --------- `Mechanism` 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 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/auth/client.rs:8:24
[INFO] [stdout]   |
[INFO] [stdout] 8 | #[derive(Debug, Clone, Serialize, Deserialize, PartialEq, Eq)]
[INFO] [stdout]   |                        ^--------
[INFO] [stdout]   |                        |
[INFO] [stdout]   |                        `Serialize` is not local
[INFO] [stdout]   |                        move the `impl` block outside of this constant `_IMPL_SERIALIZE_FOR_AuthRequest`
[INFO] [stdout] 9 | pub(crate) enum AuthRequest {
[INFO] [stdout]   |                 ----------- `AuthRequest` 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 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/auth/client.rs:8:35
[INFO] [stdout]   |
[INFO] [stdout] 8 | #[derive(Debug, Clone, Serialize, Deserialize, PartialEq, Eq)]
[INFO] [stdout]   |                                   ^----------
[INFO] [stdout]   |                                   |
[INFO] [stdout]   |                                   `Deserialize` is not local
[INFO] [stdout]   |                                   move the `impl` block outside of this constant `_IMPL_DESERIALIZE_FOR_AuthRequest`
[INFO] [stdout] 9 | pub(crate) enum AuthRequest {
[INFO] [stdout]   |                 ----------- `AuthRequest` 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 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/auth/client.rs:25:24
[INFO] [stdout]    |
[INFO] [stdout] 25 | #[derive(Debug, Clone, Serialize, Deserialize, PartialEq, Eq)]
[INFO] [stdout]    |                        ^--------
[INFO] [stdout]    |                        |
[INFO] [stdout]    |                        `Serialize` is not local
[INFO] [stdout]    |                        move the `impl` block outside of this constant `_IMPL_SERIALIZE_FOR_AuthReply`
[INFO] [stdout] 26 | pub(crate) enum AuthReply {
[INFO] [stdout]    |                 --------- `AuthReply` 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 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/auth/client.rs:25:35
[INFO] [stdout]    |
[INFO] [stdout] 25 | #[derive(Debug, Clone, Serialize, Deserialize, PartialEq, Eq)]
[INFO] [stdout]    |                                   ^----------
[INFO] [stdout]    |                                   |
[INFO] [stdout]    |                                   `Deserialize` is not local
[INFO] [stdout]    |                                   move the `impl` block outside of this constant `_IMPL_DESERIALIZE_FOR_AuthReply`
[INFO] [stdout] 26 | pub(crate) enum AuthReply {
[INFO] [stdout]    |                 --------- `AuthReply` 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 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/auth/client.rs:338:54
[INFO] [stdout]     |
[INFO] [stdout] 338 | #[derive(Debug, Default, Clone, PartialEq, Eq, Hash, 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_AuthConfig`
[INFO] [stdout] 339 | pub struct AuthConfig {
[INFO] [stdout]     |            ---------- `AuthConfig` 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 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/auth/client.rs:338:65
[INFO] [stdout]     |
[INFO] [stdout] 338 | #[derive(Debug, Default, Clone, PartialEq, Eq, Hash, 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_AuthConfig`
[INFO] [stdout] 339 | pub struct AuthConfig {
[INFO] [stdout]     |            ---------- `AuthConfig` 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 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/auth/client.rs:438:54
[INFO] [stdout]     |
[INFO] [stdout] 438 | #[derive(Debug, Default, Clone, PartialEq, Eq, Hash, 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_AuthBuilder`
[INFO] [stdout] 439 | pub struct AuthBuilder {
[INFO] [stdout]     |            ----------- `AuthBuilder` 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 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/auth/client.rs:438:65
[INFO] [stdout]     |
[INFO] [stdout] 438 | #[derive(Debug, Default, Clone, PartialEq, Eq, Hash, 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_AuthBuilder`
[INFO] [stdout] 439 | pub struct AuthBuilder {
[INFO] [stdout]     |            ----------- `AuthBuilder` 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 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/auth/curve.rs:142:38
[INFO] [stdout]     |
[INFO] [stdout] 142 | #[derive(Clone, PartialEq, Eq, Hash, 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_CurvePublicKey`
[INFO] [stdout] 143 | #[serde(transparent)]
[INFO] [stdout] 144 | pub struct CurvePublicKey {
[INFO] [stdout]     |            -------------- `CurvePublicKey` 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 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/auth/curve.rs:142:49
[INFO] [stdout]     |
[INFO] [stdout] 142 | #[derive(Clone, PartialEq, Eq, Hash, 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_CurvePublicKey`
[INFO] [stdout] 143 | #[serde(transparent)]
[INFO] [stdout] 144 | pub struct CurvePublicKey {
[INFO] [stdout]     |            -------------- `CurvePublicKey` 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 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/auth/curve.rs:268:38
[INFO] [stdout]     |
[INFO] [stdout] 268 | #[derive(Clone, PartialEq, Eq, Hash, 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_CurveSecretKey`
[INFO] [stdout] 269 | #[serde(transparent)]
[INFO] [stdout] 270 | pub struct CurveSecretKey {
[INFO] [stdout]     |            -------------- `CurveSecretKey` 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 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/auth/curve.rs:268:49
[INFO] [stdout]     |
[INFO] [stdout] 268 | #[derive(Clone, PartialEq, Eq, Hash, 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_CurveSecretKey`
[INFO] [stdout] 269 | #[serde(transparent)]
[INFO] [stdout] 270 | pub struct CurveSecretKey {
[INFO] [stdout]     |            -------------- `CurveSecretKey` 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 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/auth/curve.rs:517:45
[INFO] [stdout]     |
[INFO] [stdout] 517 | #[derive(Debug, Clone, PartialEq, Eq, Hash, 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_CurveCert`
[INFO] [stdout] 518 | pub struct CurveCert {
[INFO] [stdout]     |            --------- `CurveCert` 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 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/auth/curve.rs:517:56
[INFO] [stdout]     |
[INFO] [stdout] 517 | #[derive(Debug, Clone, PartialEq, Eq, Hash, 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_CurveCert`
[INFO] [stdout] 518 | pub struct CurveCert {
[INFO] [stdout]     |            --------- `CurveCert` 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 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/auth/curve.rs:645:45
[INFO] [stdout]     |
[INFO] [stdout] 645 | #[derive(Debug, Clone, PartialEq, Eq, Hash, 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_CurveClientCreds`
[INFO] [stdout] 646 | pub struct CurveClientCreds {
[INFO] [stdout]     |            ---------------- `CurveClientCreds` 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 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/auth/curve.rs:645:56
[INFO] [stdout]     |
[INFO] [stdout] 645 | #[derive(Debug, Clone, PartialEq, Eq, Hash, 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_CurveClientCreds`
[INFO] [stdout] 646 | pub struct CurveClientCreds {
[INFO] [stdout]     |            ---------------- `CurveClientCreds` 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 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/auth/curve.rs:710:45
[INFO] [stdout]     |
[INFO] [stdout] 710 | #[derive(Debug, Clone, PartialEq, Eq, Hash, 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_CurveServerCreds`
[INFO] [stdout] 711 | pub struct CurveServerCreds {
[INFO] [stdout]     |            ---------------- `CurveServerCreds` 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 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/auth/curve.rs:710:56
[INFO] [stdout]     |
[INFO] [stdout] 710 | #[derive(Debug, Clone, PartialEq, Eq, Hash, 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_CurveServerCreds`
[INFO] [stdout] 711 | pub struct CurveServerCreds {
[INFO] [stdout]     |            ---------------- `CurveServerCreds` 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 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/ctx.rs:53:20
[INFO] [stdout]    |
[INFO] [stdout] 53 |             panic!(msg_from_errno(unsafe { sys::zmq_errno() }));
[INFO] [stdout]    |                    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this usage of `panic!()` is deprecated; it will be a hard error in Rust 2021
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/panic-macro-consistency.html>
[INFO] [stdout] help: add a "{}" format string to `Display` the message
[INFO] [stdout]    |
[INFO] [stdout] 53 |             panic!("{}", msg_from_errno(unsafe { sys::zmq_errno() }));
[INFO] [stdout]    |                    +++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: panic message is not a string literal
[INFO] [stdout]   --> src/ctx.rs:72:29
[INFO] [stdout]    |
[INFO] [stdout] 72 |                 _ => panic!(msg_from_errno(errno)),
[INFO] [stdout]    |                             ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this usage of `panic!()` is deprecated; it will be a hard error in Rust 2021
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/panic-macro-consistency.html>
[INFO] [stdout] help: add a "{}" format string to `Display` the message
[INFO] [stdout]    |
[INFO] [stdout] 72 |                 _ => panic!("{}", msg_from_errno(errno)),
[INFO] [stdout]    |                             +++++
[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/ctx.rs:115:47
[INFO] [stdout]     |
[INFO] [stdout] 115 | #[derive(Default, Clone, PartialEq, Eq, Hash, 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_CtxConfig`
[INFO] [stdout] 116 | pub struct CtxConfig {
[INFO] [stdout]     |            --------- `CtxConfig` 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 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/ctx.rs:115:58
[INFO] [stdout]     |
[INFO] [stdout] 115 | #[derive(Default, Clone, PartialEq, Eq, Hash, 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_CtxConfig`
[INFO] [stdout] 116 | pub struct CtxConfig {
[INFO] [stdout]     |            --------- `CtxConfig` 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 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/ctx.rs:166:47
[INFO] [stdout]     |
[INFO] [stdout] 166 | #[derive(Default, Clone, PartialEq, Eq, Hash, 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_CtxBuilder`
[INFO] [stdout] 167 | pub struct CtxBuilder {
[INFO] [stdout]     |            ---------- `CtxBuilder` 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 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/ctx.rs:166:58
[INFO] [stdout]     |
[INFO] [stdout] 166 | #[derive(Default, Clone, PartialEq, Eq, Hash, 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_CtxBuilder`
[INFO] [stdout] 167 | pub struct CtxBuilder {
[INFO] [stdout]     |            ---------- `CtxBuilder` 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 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/endpoint.rs:1212:45
[INFO] [stdout]      |
[INFO] [stdout] 1212 | #[derive(Debug, Clone, Eq, PartialEq, Hash, 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_Endpoint`
[INFO] [stdout] 1213 | #[serde(rename_all = "snake_case")]
[INFO] [stdout] 1214 | pub enum Endpoint {
[INFO] [stdout]      |          -------- `Endpoint` 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 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/endpoint.rs:1212:56
[INFO] [stdout]      |
[INFO] [stdout] 1212 | #[derive(Debug, Clone, Eq, PartialEq, Hash, 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_Endpoint`
[INFO] [stdout] 1213 | #[serde(rename_all = "snake_case")]
[INFO] [stdout] 1214 | pub enum Endpoint {
[INFO] [stdout]      |          -------- `Endpoint` 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 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: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/group.rs:62:28
[INFO] [stdout]    |
[INFO] [stdout] 62 |     pub fn to_string_lossy(&self) -> Cow<str> {
[INFO] [stdout]    |                            ^^^^^     -------- the same lifetime is hidden here
[INFO] [stdout]    |                            |
[INFO] [stdout]    |                            the lifetime is elided here
[INFO] [stdout]    |
[INFO] [stdout]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout]    = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]    |
[INFO] [stdout] 62 |     pub fn to_string_lossy(&self) -> Cow<'_, str> {
[INFO] [stdout]    |                                          +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/group.rs:199:28
[INFO] [stdout]     |
[INFO] [stdout] 199 |     pub fn to_string_lossy(&self) -> Cow<str> {
[INFO] [stdout]     |                            ^^^^^     -------- the same lifetime is hidden here
[INFO] [stdout]     |                            |
[INFO] [stdout]     |                            the lifetime is elided here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 199 |     pub fn to_string_lossy(&self) -> Cow<'_, str> {
[INFO] [stdout]     |                                          +++
[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/msg.rs:52:45
[INFO] [stdout]    |
[INFO] [stdout] 52 | #[derive(Debug, Copy, Clone, PartialEq, Eq, Serialize, Deserialize, Hash)]
[INFO] [stdout]    |                                             ^--------
[INFO] [stdout]    |                                             |
[INFO] [stdout]    |                                             `Serialize` is not local
[INFO] [stdout]    |                                             move the `impl` block outside of this constant `_IMPL_SERIALIZE_FOR_RoutingId`
[INFO] [stdout] 53 | pub struct RoutingId(pub u32);
[INFO] [stdout]    |            --------- `RoutingId` 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 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/msg.rs:52:56
[INFO] [stdout]    |
[INFO] [stdout] 52 | #[derive(Debug, Copy, Clone, PartialEq, Eq, Serialize, Deserialize, Hash)]
[INFO] [stdout]    |                                                        ^----------
[INFO] [stdout]    |                                                        |
[INFO] [stdout]    |                                                        `Deserialize` is not local
[INFO] [stdout]    |                                                        move the `impl` block outside of this constant `_IMPL_DESERIALIZE_FOR_RoutingId`
[INFO] [stdout] 53 | pub struct RoutingId(pub u32);
[INFO] [stdout]    |            --------- `RoutingId` 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 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/msg.rs:219:20
[INFO] [stdout]     |
[INFO] [stdout] 219 |             panic!(msg_from_errno(errno));
[INFO] [stdout]     |                    ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this usage of `panic!()` is deprecated; it will be a hard error in Rust 2021
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/panic-macro-consistency.html>
[INFO] [stdout] help: add a "{}" format string to `Display` the message
[INFO] [stdout]     |
[INFO] [stdout] 219 |             panic!("{}", msg_from_errno(errno));
[INFO] [stdout]     |                    +++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: panic message is not a string literal
[INFO] [stdout]    --> src/msg.rs:272:20
[INFO] [stdout]     |
[INFO] [stdout] 272 |             panic!(msg_from_errno(errno));
[INFO] [stdout]     |                    ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this usage of `panic!()` is deprecated; it will be a hard error in Rust 2021
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/panic-macro-consistency.html>
[INFO] [stdout] help: add a "{}" format string to `Display` the message
[INFO] [stdout]     |
[INFO] [stdout] 272 |             panic!("{}", msg_from_errno(errno));
[INFO] [stdout]     |                    +++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: panic message is not a string literal
[INFO] [stdout]    --> src/msg.rs:289:20
[INFO] [stdout]     |
[INFO] [stdout] 289 |             panic!(msg_from_errno(sys::zmq_errno()));
[INFO] [stdout]     |                    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this usage of `panic!()` is deprecated; it will be a hard error in Rust 2021
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/panic-macro-consistency.html>
[INFO] [stdout] help: add a "{}" format string to `Display` the message
[INFO] [stdout]     |
[INFO] [stdout] 289 |             panic!("{}", msg_from_errno(sys::zmq_errno()));
[INFO] [stdout]     |                    +++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: panic message is not a string literal
[INFO] [stdout]    --> src/msg.rs:356:29
[INFO] [stdout]     |
[INFO] [stdout] 356 |                 _ => panic!(msg_from_errno(errno)),
[INFO] [stdout]     |                             ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this usage of `panic!()` is deprecated; it will be a hard error in Rust 2021
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/panic-macro-consistency.html>
[INFO] [stdout] help: add a "{}" format string to `Display` the message
[INFO] [stdout]     |
[INFO] [stdout] 356 |                 _ => panic!("{}", msg_from_errno(errno)),
[INFO] [stdout]     |                             +++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused return value of `Box::<T>::from_raw` that must be used
[INFO] [stdout]    --> src/msg.rs:388:13
[INFO] [stdout]     |
[INFO] [stdout] 388 |             Box::from_raw(data as *mut u8);
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: call `drop(Box::from_raw(ptr))` if you intend to drop the `Box`
[INFO] [stdout]     = note: `#[warn(unused_must_use)]` on by default
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 388 |             let _ = Box::from_raw(data as *mut u8);
[INFO] [stdout]     |             +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: panic message is not a string literal
[INFO] [stdout]   --> src/old.rs:30:25
[INFO] [stdout]    |
[INFO] [stdout] 30 |             _ => panic!(msg_from_errno(errno)),
[INFO] [stdout]    |                         ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this usage of `panic!()` is deprecated; it will be a hard error in Rust 2021
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/panic-macro-consistency.html>
[INFO] [stdout] help: add a "{}" format string to `Display` the message
[INFO] [stdout]    |
[INFO] [stdout] 30 |             _ => panic!("{}", msg_from_errno(errno)),
[INFO] [stdout]    |                         +++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: panic message is not a string literal
[INFO] [stdout]   --> src/old.rs:48:25
[INFO] [stdout]    |
[INFO] [stdout] 48 |             _ => panic!(msg_from_errno(errno)),
[INFO] [stdout]    |                         ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this usage of `panic!()` is deprecated; it will be a hard error in Rust 2021
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/panic-macro-consistency.html>
[INFO] [stdout] help: add a "{}" format string to `Display` the message
[INFO] [stdout]    |
[INFO] [stdout] 48 |             _ => panic!("{}", msg_from_errno(errno)),
[INFO] [stdout]    |                         +++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/poll.rs:334:17
[INFO] [stdout]     |
[INFO] [stdout] 334 |     pub fn iter(&self) -> Iter {
[INFO] [stdout]     |                 ^^^^^     ---- the same lifetime is hidden here
[INFO] [stdout]     |                 |
[INFO] [stdout]     |                 the lifetime is elided here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 334 |     pub fn iter(&self) -> Iter<'_> {
[INFO] [stdout]     |                               ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: panic message is not a string literal
[INFO] [stdout]    --> src/poll.rs:514:29
[INFO] [stdout]     |
[INFO] [stdout] 514 |                 _ => panic!(msg_from_errno(errno)),
[INFO] [stdout]     |                             ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this usage of `panic!()` is deprecated; it will be a hard error in Rust 2021
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/panic-macro-consistency.html>
[INFO] [stdout] help: add a "{}" format string to `Display` the message
[INFO] [stdout]     |
[INFO] [stdout] 514 |                 _ => panic!("{}", msg_from_errno(errno)),
[INFO] [stdout]     |                             +++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: panic message is not a string literal
[INFO] [stdout]    --> src/poll.rs:551:29
[INFO] [stdout]     |
[INFO] [stdout] 551 |                 _ => panic!(msg_from_errno(errno)),
[INFO] [stdout]     |                             ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this usage of `panic!()` is deprecated; it will be a hard error in Rust 2021
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/panic-macro-consistency.html>
[INFO] [stdout] help: add a "{}" format string to `Display` the message
[INFO] [stdout]     |
[INFO] [stdout] 551 |                 _ => panic!("{}", msg_from_errno(errno)),
[INFO] [stdout]     |                             +++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: panic message is not a string literal
[INFO] [stdout]    --> src/poll.rs:612:29
[INFO] [stdout]     |
[INFO] [stdout] 612 |                 _ => panic!(msg_from_errno(errno)),
[INFO] [stdout]     |                             ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this usage of `panic!()` is deprecated; it will be a hard error in Rust 2021
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/panic-macro-consistency.html>
[INFO] [stdout] help: add a "{}" format string to `Display` the message
[INFO] [stdout]     |
[INFO] [stdout] 612 |                 _ => panic!("{}", msg_from_errno(errno)),
[INFO] [stdout]     |                             +++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: panic message is not a string literal
[INFO] [stdout]    --> src/poll.rs:638:29
[INFO] [stdout]     |
[INFO] [stdout] 638 |                 _ => panic!(msg_from_errno(errno)),
[INFO] [stdout]     |                             ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this usage of `panic!()` is deprecated; it will be a hard error in Rust 2021
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/panic-macro-consistency.html>
[INFO] [stdout] help: add a "{}" format string to `Display` the message
[INFO] [stdout]     |
[INFO] [stdout] 638 |                 _ => panic!("{}", msg_from_errno(errno)),
[INFO] [stdout]     |                             +++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: panic message is not a string literal
[INFO] [stdout]    --> src/poll.rs:688:29
[INFO] [stdout]     |
[INFO] [stdout] 688 |                 _ => panic!(msg_from_errno(errno)),
[INFO] [stdout]     |                             ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this usage of `panic!()` is deprecated; it will be a hard error in Rust 2021
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/panic-macro-consistency.html>
[INFO] [stdout] help: add a "{}" format string to `Display` the message
[INFO] [stdout]     |
[INFO] [stdout] 688 |                 _ => panic!("{}", msg_from_errno(errno)),
[INFO] [stdout]     |                             +++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: panic message is not a string literal
[INFO] [stdout]    --> src/poll.rs:716:29
[INFO] [stdout]     |
[INFO] [stdout] 716 |                 _ => panic!(msg_from_errno(errno)),
[INFO] [stdout]     |                             ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this usage of `panic!()` is deprecated; it will be a hard error in Rust 2021
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/panic-macro-consistency.html>
[INFO] [stdout] help: add a "{}" format string to `Display` the message
[INFO] [stdout]     |
[INFO] [stdout] 716 |                 _ => panic!("{}", msg_from_errno(errno)),
[INFO] [stdout]     |                             +++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: panic message is not a string literal
[INFO] [stdout]    --> src/poll.rs:746:29
[INFO] [stdout]     |
[INFO] [stdout] 746 |                 _ => panic!(msg_from_errno(errno)),
[INFO] [stdout]     |                             ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this usage of `panic!()` is deprecated; it will be a hard error in Rust 2021
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/panic-macro-consistency.html>
[INFO] [stdout] help: add a "{}" format string to `Display` the message
[INFO] [stdout]     |
[INFO] [stdout] 746 |                 _ => panic!("{}", msg_from_errno(errno)),
[INFO] [stdout]     |                             +++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: panic message is not a string literal
[INFO] [stdout]    --> src/poll.rs:812:20
[INFO] [stdout]     |
[INFO] [stdout] 812 |             panic!(msg_from_errno(unsafe { sys::zmq_errno() }));
[INFO] [stdout]     |                    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this usage of `panic!()` is deprecated; it will be a hard error in Rust 2021
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/panic-macro-consistency.html>
[INFO] [stdout] help: add a "{}" format string to `Display` the message
[INFO] [stdout]     |
[INFO] [stdout] 812 |             panic!("{}", msg_from_errno(unsafe { sys::zmq_errno() }));
[INFO] [stdout]     |                    +++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: panic message is not a string literal
[INFO] [stdout]    --> src/poll.rs:828:29
[INFO] [stdout]     |
[INFO] [stdout] 828 |                 _ => panic!(msg_from_errno(errno)),
[INFO] [stdout]     |                             ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this usage of `panic!()` is deprecated; it will be a hard error in Rust 2021
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/panic-macro-consistency.html>
[INFO] [stdout] help: add a "{}" format string to `Display` the message
[INFO] [stdout]     |
[INFO] [stdout] 828 |                 _ => panic!("{}", msg_from_errno(errno)),
[INFO] [stdout]     |                             +++++
[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/socket/mod.rs:61:45
[INFO] [stdout]    |
[INFO] [stdout] 61 | #[derive(Debug, Clone, PartialEq, Eq, Hash, 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_ConfigType`
[INFO] [stdout] 62 | #[serde(rename_all = "snake_case")]
[INFO] [stdout] 63 | pub enum ConfigType {
[INFO] [stdout]    |          ---------- `ConfigType` 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 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/socket/mod.rs:61:56
[INFO] [stdout]    |
[INFO] [stdout] 61 | #[derive(Debug, Clone, PartialEq, Eq, Hash, 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_ConfigType`
[INFO] [stdout] 62 | #[serde(rename_all = "snake_case")]
[INFO] [stdout] 63 | pub enum ConfigType {
[INFO] [stdout]    |          ---------- `ConfigType` 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 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/socket/client.rs:138:54
[INFO] [stdout]     |
[INFO] [stdout] 138 | #[derive(Debug, Default, Clone, PartialEq, Eq, Hash, 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_ClientConfig`
[INFO] [stdout] ...
[INFO] [stdout] 141 | pub struct ClientConfig {
[INFO] [stdout]     |            ------------ `ClientConfig` 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 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/socket/client.rs:138:65
[INFO] [stdout]     |
[INFO] [stdout] 138 | #[derive(Debug, Default, Clone, PartialEq, Eq, Hash, 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_ClientConfig`
[INFO] [stdout] ...
[INFO] [stdout] 141 | pub struct ClientConfig {
[INFO] [stdout]     |            ------------ `ClientConfig` 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 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/socket/client.rs:174:17
[INFO] [stdout]     |
[INFO] [stdout] 174 | #[derive(Clone, 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_FlatClientConfig`
[INFO] [stdout] 175 | struct FlatClientConfig {
[INFO] [stdout]     |        ---------------- `FlatClientConfig` 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 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/socket/client.rs:174:28
[INFO] [stdout]     |
[INFO] [stdout] 174 | #[derive(Clone, 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_FlatClientConfig`
[INFO] [stdout] 175 | struct FlatClientConfig {
[INFO] [stdout]     |        ---------------- `FlatClientConfig` 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 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/socket/client.rs:283:54
[INFO] [stdout]     |
[INFO] [stdout] 283 | #[derive(Debug, Default, Clone, PartialEq, Eq, Hash, 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_ClientBuilder`
[INFO] [stdout] 284 | pub struct ClientBuilder {
[INFO] [stdout]     |            ------------- `ClientBuilder` 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 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/socket/client.rs:283:65
[INFO] [stdout]     |
[INFO] [stdout] 283 | #[derive(Debug, Default, Clone, PartialEq, Eq, Hash, 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_ClientBuilder`
[INFO] [stdout] 284 | pub struct ClientBuilder {
[INFO] [stdout]     |            ------------- `ClientBuilder` 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 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/socket/dish.rs:30:25
[INFO] [stdout]    |
[INFO] [stdout] 30 |             _ => panic!(msg_from_errno(errno)),
[INFO] [stdout]    |                         ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this usage of `panic!()` is deprecated; it will be a hard error in Rust 2021
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/panic-macro-consistency.html>
[INFO] [stdout] help: add a "{}" format string to `Display` the message
[INFO] [stdout]    |
[INFO] [stdout] 30 |             _ => panic!("{}", msg_from_errno(errno)),
[INFO] [stdout]    |                         +++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: panic message is not a string literal
[INFO] [stdout]   --> src/socket/dish.rs:53:25
[INFO] [stdout]    |
[INFO] [stdout] 53 |             _ => panic!(msg_from_errno(errno)),
[INFO] [stdout]    |                         ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this usage of `panic!()` is deprecated; it will be a hard error in Rust 2021
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/panic-macro-consistency.html>
[INFO] [stdout] help: add a "{}" format string to `Display` the message
[INFO] [stdout]    |
[INFO] [stdout] 53 |             _ => panic!("{}", msg_from_errno(errno)),
[INFO] [stdout]    |                         +++++
[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/socket/dish.rs:312:54
[INFO] [stdout]     |
[INFO] [stdout] 312 | #[derive(Debug, Default, Clone, PartialEq, Eq, Hash, 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_DishConfig`
[INFO] [stdout] ...
[INFO] [stdout] 315 | pub struct DishConfig {
[INFO] [stdout]     |            ---------- `DishConfig` 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 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/socket/dish.rs:312:65
[INFO] [stdout]     |
[INFO] [stdout] 312 | #[derive(Debug, Default, Clone, PartialEq, Eq, Hash, 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_DishConfig`
[INFO] [stdout] ...
[INFO] [stdout] 315 | pub struct DishConfig {
[INFO] [stdout]     |            ---------- `DishConfig` 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 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/socket/dish.rs:362:17
[INFO] [stdout]     |
[INFO] [stdout] 362 | #[derive(Clone, 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_FlatDishConfig`
[INFO] [stdout] 363 | struct FlatDishConfig {
[INFO] [stdout]     |        -------------- `FlatDishConfig` 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 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/socket/dish.rs:362:28
[INFO] [stdout]     |
[INFO] [stdout] 362 | #[derive(Clone, 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_FlatDishConfig`
[INFO] [stdout] 363 | struct FlatDishConfig {
[INFO] [stdout]     |        -------------- `FlatDishConfig` 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 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/socket/dish.rs:432:54
[INFO] [stdout]     |
[INFO] [stdout] 432 | #[derive(Debug, Default, Clone, PartialEq, Eq, Hash, 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_DishBuilder`
[INFO] [stdout] 433 | pub struct DishBuilder {
[INFO] [stdout]     |            ----------- `DishBuilder` 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 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/socket/dish.rs:432:65
[INFO] [stdout]     |
[INFO] [stdout] 432 | #[derive(Debug, Default, Clone, PartialEq, Eq, Hash, 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_DishBuilder`
[INFO] [stdout] 433 | pub struct DishBuilder {
[INFO] [stdout]     |            ----------- `DishBuilder` 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 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/socket/gather.rs:136:54
[INFO] [stdout]     |
[INFO] [stdout] 136 | #[derive(Debug, Default, Clone, PartialEq, Eq, Hash, 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_GatherConfig`
[INFO] [stdout] ...
[INFO] [stdout] 139 | pub struct GatherConfig {
[INFO] [stdout]     |            ------------ `GatherConfig` 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 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/socket/gather.rs:136:65
[INFO] [stdout]     |
[INFO] [stdout] 136 | #[derive(Debug, Default, Clone, PartialEq, Eq, Hash, 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_GatherConfig`
[INFO] [stdout] ...
[INFO] [stdout] 139 | pub struct GatherConfig {
[INFO] [stdout]     |            ------------ `GatherConfig` 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 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/socket/gather.rs:169:17
[INFO] [stdout]     |
[INFO] [stdout] 169 | #[derive(Clone, 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_FlatGatherConfig`
[INFO] [stdout] 170 | struct FlatGatherConfig {
[INFO] [stdout]     |        ---------------- `FlatGatherConfig` 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 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/socket/gather.rs:169:28
[INFO] [stdout]     |
[INFO] [stdout] 169 | #[derive(Clone, 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_FlatGatherConfig`
[INFO] [stdout] 170 | struct FlatGatherConfig {
[INFO] [stdout]     |        ---------------- `FlatGatherConfig` 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 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/socket/gather.rs:255:54
[INFO] [stdout]     |
[INFO] [stdout] 255 | #[derive(Debug, Default, Clone, PartialEq, Eq, Hash, 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_GatherBuilder`
[INFO] [stdout] 256 | pub struct GatherBuilder {
[INFO] [stdout]     |            ------------- `GatherBuilder` 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 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/socket/gather.rs:255:65
[INFO] [stdout]     |
[INFO] [stdout] 255 | #[derive(Debug, Default, Clone, PartialEq, Eq, Hash, 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_GatherBuilder`
[INFO] [stdout] 256 | pub struct GatherBuilder {
[INFO] [stdout]     |            ------------- `GatherBuilder` 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 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/socket/radio.rs:203:54
[INFO] [stdout]     |
[INFO] [stdout] 203 | #[derive(Debug, Default, Clone, PartialEq, Eq, Hash, 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_RadioConfig`
[INFO] [stdout] ...
[INFO] [stdout] 206 | pub struct RadioConfig {
[INFO] [stdout]     |            ----------- `RadioConfig` 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 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/socket/radio.rs:203:65
[INFO] [stdout]     |
[INFO] [stdout] 203 | #[derive(Debug, Default, Clone, PartialEq, Eq, Hash, 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_RadioConfig`
[INFO] [stdout] ...
[INFO] [stdout] 206 | pub struct RadioConfig {
[INFO] [stdout]     |            ----------- `RadioConfig` 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 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/socket/radio.rs:252:10
[INFO] [stdout]     |
[INFO] [stdout] 252 | #[derive(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_FlatRadioConfig`
[INFO] [stdout] 253 | struct FlatRadioConfig {
[INFO] [stdout]     |        --------------- `FlatRadioConfig` 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 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/socket/radio.rs:252:21
[INFO] [stdout]     |
[INFO] [stdout] 252 | #[derive(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_FlatRadioConfig`
[INFO] [stdout] 253 | struct FlatRadioConfig {
[INFO] [stdout]     |        --------------- `FlatRadioConfig` 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 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/socket/scatter.rs:127:54
[INFO] [stdout]     |
[INFO] [stdout] 127 | #[derive(Debug, Default, Clone, PartialEq, Eq, Hash, 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_ScatterConfig`
[INFO] [stdout] ...
[INFO] [stdout] 130 | pub struct ScatterConfig {
[INFO] [stdout]     |            ------------- `ScatterConfig` 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 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/socket/scatter.rs:127:65
[INFO] [stdout]     |
[INFO] [stdout] 127 | #[derive(Debug, Default, Clone, PartialEq, Eq, Hash, 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_ScatterConfig`
[INFO] [stdout] ...
[INFO] [stdout] 130 | pub struct ScatterConfig {
[INFO] [stdout]     |            ------------- `ScatterConfig` 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 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/socket/scatter.rs:160:17
[INFO] [stdout]     |
[INFO] [stdout] 160 | #[derive(Clone, 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_FlatScatterConfig`
[INFO] [stdout] 161 | struct FlatScatterConfig {
[INFO] [stdout]     |        ----------------- `FlatScatterConfig` 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 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/socket/scatter.rs:160:28
[INFO] [stdout]     |
[INFO] [stdout] 160 | #[derive(Clone, 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_FlatScatterConfig`
[INFO] [stdout] 161 | struct FlatScatterConfig {
[INFO] [stdout]     |        ----------------- `FlatScatterConfig` 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 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/socket/scatter.rs:246:54
[INFO] [stdout]     |
[INFO] [stdout] 246 | #[derive(Debug, Default, Clone, PartialEq, Eq, Hash, 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_ScatterBuilder`
[INFO] [stdout] 247 | pub struct ScatterBuilder {
[INFO] [stdout]     |            -------------- `ScatterBuilder` 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 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/socket/scatter.rs:246:65
[INFO] [stdout]     |
[INFO] [stdout] 246 | #[derive(Debug, Default, Clone, PartialEq, Eq, Hash, 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_ScatterBuilder`
[INFO] [stdout] 247 | pub struct ScatterBuilder {
[INFO] [stdout]     |            -------------- `ScatterBuilder` 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 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/socket/server.rs:176:54
[INFO] [stdout]     |
[INFO] [stdout] 176 | #[derive(Debug, Default, Clone, PartialEq, Eq, Hash, 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_ServerConfig`
[INFO] [stdout] ...
[INFO] [stdout] 179 | pub struct ServerConfig {
[INFO] [stdout]     |            ------------ `ServerConfig` 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 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/socket/server.rs:176:65
[INFO] [stdout]     |
[INFO] [stdout] 176 | #[derive(Debug, Default, Clone, PartialEq, Eq, Hash, 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_ServerConfig`
[INFO] [stdout] ...
[INFO] [stdout] 179 | pub struct ServerConfig {
[INFO] [stdout]     |            ------------ `ServerConfig` 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 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/socket/server.rs:215:17
[INFO] [stdout]     |
[INFO] [stdout] 215 | #[derive(Clone, 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_FlatServerConfig`
[INFO] [stdout] 216 | struct FlatServerConfig {
[INFO] [stdout]     |        ---------------- `FlatServerConfig` 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 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/socket/server.rs:215:28
[INFO] [stdout]     |
[INFO] [stdout] 215 | #[derive(Clone, 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_FlatServerConfig`
[INFO] [stdout] 216 | struct FlatServerConfig {
[INFO] [stdout]     |        ---------------- `FlatServerConfig` 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 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/utils.rs:107:21
[INFO] [stdout]     |
[INFO] [stdout] 107 |         _ => panic!(msg_from_errno(errno)),
[INFO] [stdout]     |                     ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this usage of `panic!()` is deprecated; it will be a hard error in Rust 2021
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/panic-macro-consistency.html>
[INFO] [stdout] help: add a "{}" format string to `Display` the message
[INFO] [stdout]     |
[INFO] [stdout] 107 |         _ => panic!("{}", msg_from_errno(errno)),
[INFO] [stdout]     |                     +++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `version`, `domain`, and `identity` are never read
[INFO] [stdout]   --> src/auth/server.rs:95:5
[INFO] [stdout]    |
[INFO] [stdout] 94 | struct ZapRequest {
[INFO] [stdout]    |        ---------- fields in this struct
[INFO] [stdout] 95 |     version: String,
[INFO] [stdout]    |     ^^^^^^^
[INFO] [stdout] 96 |     request_id: Msg,
[INFO] [stdout] 97 |     domain: String,
[INFO] [stdout]    |     ^^^^^^
[INFO] [stdout] 98 |     addr: Ipv6Addr,
[INFO] [stdout] 99 |     identity: Msg,
[INFO] [stdout]    |     ^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `ZapRequest` has derived impls for the traits `Debug` and `Clone`, but these are intentionally ignored during dead code analysis
[INFO] [stdout]    = note: `#[warn(dead_code)]` on by default
[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/core/mod.rs:60:51
[INFO] [stdout]    |
[INFO] [stdout] 60 | #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash, 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_HighWaterMark`
[INFO] [stdout] ...
[INFO] [stdout] 63 | pub(crate) struct HighWaterMark(i32);
[INFO] [stdout]    |                   ------------- `HighWaterMark` 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: `#[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/core/mod.rs:60:62
[INFO] [stdout]    |
[INFO] [stdout] 60 | #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash, 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_HighWaterMark`
[INFO] [stdout] ...
[INFO] [stdout] 63 | pub(crate) struct HighWaterMark(i32);
[INFO] [stdout]    |                   ------------- `HighWaterMark` 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 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/core/mod.rs:98:51
[INFO] [stdout]     |
[INFO] [stdout]  98 | #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash, Deserialize, Serialize)]
[INFO] [stdout]     |                                                   ^----------
[INFO] [stdout]     |                                                   |
[INFO] [stdout]     |                                                   `Deserialize` is not local
[INFO] [stdout]     |                                                   move the `impl` block outside of this constant `_IMPL_DESERIALIZE_FOR_BatchSize`
[INFO] [stdout] ...
[INFO] [stdout] 101 | pub(crate) struct BatchSize(i32);
[INFO] [stdout]     |                   --------- `BatchSize` 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 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/core/mod.rs:98:64
[INFO] [stdout]     |
[INFO] [stdout]  98 | #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash, Deserialize, Serialize)]
[INFO] [stdout]     |                                                                ^--------
[INFO] [stdout]     |                                                                |
[INFO] [stdout]     |                                                                `Serialize` is not local
[INFO] [stdout]     |                                                                move the `impl` block outside of this constant `_IMPL_SERIALIZE_FOR_BatchSize`
[INFO] [stdout] ...
[INFO] [stdout] 101 | pub(crate) struct BatchSize(i32);
[INFO] [stdout]     |                   --------- `BatchSize` 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 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/core/mod.rs:137:51
[INFO] [stdout]     |
[INFO] [stdout] 137 | #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash, 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_Period`
[INFO] [stdout] ...
[INFO] [stdout] 140 | pub enum Period {
[INFO] [stdout]     |          ------ `Period` 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 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/core/mod.rs:137:62
[INFO] [stdout]     |
[INFO] [stdout] 137 | #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash, 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_Period`
[INFO] [stdout] ...
[INFO] [stdout] 140 | pub enum Period {
[INFO] [stdout]     |          ------ `Period` 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 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/core/heartbeat.rs:48:45
[INFO] [stdout]    |
[INFO] [stdout] 48 | #[derive(Debug, Clone, PartialEq, Eq, Hash, 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_Heartbeat`
[INFO] [stdout] 49 | pub struct Heartbeat {
[INFO] [stdout]    |            --------- `Heartbeat` 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 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/core/heartbeat.rs:48:56
[INFO] [stdout]    |
[INFO] [stdout] 48 | #[derive(Debug, Clone, PartialEq, Eq, Hash, 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_Heartbeat`
[INFO] [stdout] 49 | pub struct Heartbeat {
[INFO] [stdout]    |            --------- `Heartbeat` 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 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/core/raw.rs:77:25
[INFO] [stdout]    |
[INFO] [stdout] 77 |             _ => panic!(msg_from_errno(errno)),
[INFO] [stdout]    |                         ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this usage of `panic!()` is deprecated; it will be a hard error in Rust 2021
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/panic-macro-consistency.html>
[INFO] [stdout]    = note: `#[warn(non_fmt_panics)]` on by default
[INFO] [stdout] help: add a "{}" format string to `Display` the message
[INFO] [stdout]    |
[INFO] [stdout] 77 |             _ => panic!("{}", msg_from_errno(errno)),
[INFO] [stdout]    |                         +++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: panic message is not a string literal
[INFO] [stdout]    --> src/core/raw.rs:107:25
[INFO] [stdout]     |
[INFO] [stdout] 107 |             _ => panic!(msg_from_errno(errno)),
[INFO] [stdout]     |                         ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this usage of `panic!()` is deprecated; it will be a hard error in Rust 2021
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/panic-macro-consistency.html>
[INFO] [stdout] help: add a "{}" format string to `Display` the message
[INFO] [stdout]     |
[INFO] [stdout] 107 |             _ => panic!("{}", msg_from_errno(errno)),
[INFO] [stdout]     |                         +++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: panic message is not a string literal
[INFO] [stdout]    --> src/core/raw.rs:130:25
[INFO] [stdout]     |
[INFO] [stdout] 130 |             _ => panic!(msg_from_errno(errno)),
[INFO] [stdout]     |                         ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this usage of `panic!()` is deprecated; it will be a hard error in Rust 2021
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/panic-macro-consistency.html>
[INFO] [stdout] help: add a "{}" format string to `Display` the message
[INFO] [stdout]     |
[INFO] [stdout] 130 |             _ => panic!("{}", msg_from_errno(errno)),
[INFO] [stdout]     |                         +++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: panic message is not a string literal
[INFO] [stdout]    --> src/core/raw.rs:153:25
[INFO] [stdout]     |
[INFO] [stdout] 153 |             _ => panic!(msg_from_errno(errno)),
[INFO] [stdout]     |                         ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this usage of `panic!()` is deprecated; it will be a hard error in Rust 2021
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/panic-macro-consistency.html>
[INFO] [stdout] help: add a "{}" format string to `Display` the message
[INFO] [stdout]     |
[INFO] [stdout] 153 |             _ => panic!("{}", msg_from_errno(errno)),
[INFO] [stdout]     |                         +++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: panic message is not a string literal
[INFO] [stdout]    --> src/core/raw.rs:201:29
[INFO] [stdout]     |
[INFO] [stdout] 201 |                 _ => panic!(msg_from_errno(errno)),
[INFO] [stdout]     |                             ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this usage of `panic!()` is deprecated; it will be a hard error in Rust 2021
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/panic-macro-consistency.html>
[INFO] [stdout] help: add a "{}" format string to `Display` the message
[INFO] [stdout]     |
[INFO] [stdout] 201 |                 _ => panic!("{}", msg_from_errno(errno)),
[INFO] [stdout]     |                             +++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: panic message is not a string literal
[INFO] [stdout]   --> src/core/recv.rs:35:25
[INFO] [stdout]    |
[INFO] [stdout] 35 |             _ => panic!(msg_from_errno(errno)),
[INFO] [stdout]    |                         ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this usage of `panic!()` is deprecated; it will be a hard error in Rust 2021
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/panic-macro-consistency.html>
[INFO] [stdout] help: add a "{}" format string to `Display` the message
[INFO] [stdout]    |
[INFO] [stdout] 35 |             _ => panic!("{}", msg_from_errno(errno)),
[INFO] [stdout]    |                         +++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: panic message is not a string literal
[INFO] [stdout]   --> src/core/send.rs:41:25
[INFO] [stdout]    |
[INFO] [stdout] 41 |             _ => panic!(msg_from_errno(errno)),
[INFO] [stdout]    |                         ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this usage of `panic!()` is deprecated; it will be a hard error in Rust 2021
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/panic-macro-consistency.html>
[INFO] [stdout] help: add a "{}" format string to `Display` the message
[INFO] [stdout]    |
[INFO] [stdout] 41 |             _ => panic!("{}", msg_from_errno(errno)),
[INFO] [stdout]    |                         +++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: panic message is not a string literal
[INFO] [stdout]    --> src/core/sockopt.rs:117:25
[INFO] [stdout]     |
[INFO] [stdout] 117 |             _ => panic!(msg_from_errno(errno)),
[INFO] [stdout]     |                         ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this usage of `panic!()` is deprecated; it will be a hard error in Rust 2021
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/panic-macro-consistency.html>
[INFO] [stdout] help: add a "{}" format string to `Display` the message
[INFO] [stdout]     |
[INFO] [stdout] 117 |             _ => panic!("{}", msg_from_errno(errno)),
[INFO] [stdout]     |                         +++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: panic message is not a string literal
[INFO] [stdout]    --> src/core/sockopt.rs:223:25
[INFO] [stdout]     |
[INFO] [stdout] 223 |             _ => panic!(msg_from_errno(errno)),
[INFO] [stdout]     |                         ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this usage of `panic!()` is deprecated; it will be a hard error in Rust 2021
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/panic-macro-consistency.html>
[INFO] [stdout] help: add a "{}" format string to `Display` the message
[INFO] [stdout]     |
[INFO] [stdout] 223 |             _ => panic!("{}", msg_from_errno(errno)),
[INFO] [stdout]     |                         +++++
[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/auth/mod.rs:35:45
[INFO] [stdout]    |
[INFO] [stdout] 35 | #[derive(Debug, Clone, PartialEq, Eq, Hash, 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_PlainClientCreds`
[INFO] [stdout] 36 | pub struct PlainClientCreds {
[INFO] [stdout]    |            ---------------- `PlainClientCreds` 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 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/auth/mod.rs:35:56
[INFO] [stdout]    |
[INFO] [stdout] 35 | #[derive(Debug, Clone, PartialEq, Eq, Hash, 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_PlainClientCreds`
[INFO] [stdout] 36 | pub struct PlainClientCreds {
[INFO] [stdout]    |            ---------------- `PlainClientCreds` 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 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/auth/mod.rs:108:45
[INFO] [stdout]     |
[INFO] [stdout] 108 | #[derive(Debug, Clone, PartialEq, Eq, Hash, 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_Mechanism`
[INFO] [stdout] 109 | #[serde(rename_all = "snake_case")]
[INFO] [stdout] 110 | pub enum Mechanism {
[INFO] [stdout]     |          --------- `Mechanism` 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 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/auth/mod.rs:108:56
[INFO] [stdout]     |
[INFO] [stdout] 108 | #[derive(Debug, Clone, PartialEq, Eq, Hash, 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_Mechanism`
[INFO] [stdout] 109 | #[serde(rename_all = "snake_case")]
[INFO] [stdout] 110 | pub enum Mechanism {
[INFO] [stdout]     |          --------- `Mechanism` 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 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/auth/client.rs:8:24
[INFO] [stdout]   |
[INFO] [stdout] 8 | #[derive(Debug, Clone, Serialize, Deserialize, PartialEq, Eq)]
[INFO] [stdout]   |                        ^--------
[INFO] [stdout]   |                        |
[INFO] [stdout]   |                        `Serialize` is not local
[INFO] [stdout]   |                        move the `impl` block outside of this constant `_IMPL_SERIALIZE_FOR_AuthRequest`
[INFO] [stdout] 9 | pub(crate) enum AuthRequest {
[INFO] [stdout]   |                 ----------- `AuthRequest` 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 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/auth/client.rs:8:35
[INFO] [stdout]   |
[INFO] [stdout] 8 | #[derive(Debug, Clone, Serialize, Deserialize, PartialEq, Eq)]
[INFO] [stdout]   |                                   ^----------
[INFO] [stdout]   |                                   |
[INFO] [stdout]   |                                   `Deserialize` is not local
[INFO] [stdout]   |                                   move the `impl` block outside of this constant `_IMPL_DESERIALIZE_FOR_AuthRequest`
[INFO] [stdout] 9 | pub(crate) enum AuthRequest {
[INFO] [stdout]   |                 ----------- `AuthRequest` 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 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/auth/client.rs:25:24
[INFO] [stdout]    |
[INFO] [stdout] 25 | #[derive(Debug, Clone, Serialize, Deserialize, PartialEq, Eq)]
[INFO] [stdout]    |                        ^--------
[INFO] [stdout]    |                        |
[INFO] [stdout]    |                        `Serialize` is not local
[INFO] [stdout]    |                        move the `impl` block outside of this constant `_IMPL_SERIALIZE_FOR_AuthReply`
[INFO] [stdout] 26 | pub(crate) enum AuthReply {
[INFO] [stdout]    |                 --------- `AuthReply` 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 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/auth/client.rs:25:35
[INFO] [stdout]    |
[INFO] [stdout] 25 | #[derive(Debug, Clone, Serialize, Deserialize, PartialEq, Eq)]
[INFO] [stdout]    |                                   ^----------
[INFO] [stdout]    |                                   |
[INFO] [stdout]    |                                   `Deserialize` is not local
[INFO] [stdout]    |                                   move the `impl` block outside of this constant `_IMPL_DESERIALIZE_FOR_AuthReply`
[INFO] [stdout] 26 | pub(crate) enum AuthReply {
[INFO] [stdout]    |                 --------- `AuthReply` 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 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/auth/client.rs:338:54
[INFO] [stdout]     |
[INFO] [stdout] 338 | #[derive(Debug, Default, Clone, PartialEq, Eq, Hash, 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_AuthConfig`
[INFO] [stdout] 339 | pub struct AuthConfig {
[INFO] [stdout]     |            ---------- `AuthConfig` 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 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/auth/client.rs:338:65
[INFO] [stdout]     |
[INFO] [stdout] 338 | #[derive(Debug, Default, Clone, PartialEq, Eq, Hash, 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_AuthConfig`
[INFO] [stdout] 339 | pub struct AuthConfig {
[INFO] [stdout]     |            ---------- `AuthConfig` 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 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/auth/client.rs:438:54
[INFO] [stdout]     |
[INFO] [stdout] 438 | #[derive(Debug, Default, Clone, PartialEq, Eq, Hash, 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_AuthBuilder`
[INFO] [stdout] 439 | pub struct AuthBuilder {
[INFO] [stdout]     |            ----------- `AuthBuilder` 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 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/auth/client.rs:438:65
[INFO] [stdout]     |
[INFO] [stdout] 438 | #[derive(Debug, Default, Clone, PartialEq, Eq, Hash, 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_AuthBuilder`
[INFO] [stdout] 439 | pub struct AuthBuilder {
[INFO] [stdout]     |            ----------- `AuthBuilder` 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 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/auth/curve.rs:142:38
[INFO] [stdout]     |
[INFO] [stdout] 142 | #[derive(Clone, PartialEq, Eq, Hash, 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_CurvePublicKey`
[INFO] [stdout] 143 | #[serde(transparent)]
[INFO] [stdout] 144 | pub struct CurvePublicKey {
[INFO] [stdout]     |            -------------- `CurvePublicKey` 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 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/auth/curve.rs:142:49
[INFO] [stdout]     |
[INFO] [stdout] 142 | #[derive(Clone, PartialEq, Eq, Hash, 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_CurvePublicKey`
[INFO] [stdout] 143 | #[serde(transparent)]
[INFO] [stdout] 144 | pub struct CurvePublicKey {
[INFO] [stdout]     |            -------------- `CurvePublicKey` 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 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/auth/curve.rs:268:38
[INFO] [stdout]     |
[INFO] [stdout] 268 | #[derive(Clone, PartialEq, Eq, Hash, 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_CurveSecretKey`
[INFO] [stdout] 269 | #[serde(transparent)]
[INFO] [stdout] 270 | pub struct CurveSecretKey {
[INFO] [stdout]     |            -------------- `CurveSecretKey` 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 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/auth/curve.rs:268:49
[INFO] [stdout]     |
[INFO] [stdout] 268 | #[derive(Clone, PartialEq, Eq, Hash, 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_CurveSecretKey`
[INFO] [stdout] 269 | #[serde(transparent)]
[INFO] [stdout] 270 | pub struct CurveSecretKey {
[INFO] [stdout]     |            -------------- `CurveSecretKey` 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 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/auth/curve.rs:517:45
[INFO] [stdout]     |
[INFO] [stdout] 517 | #[derive(Debug, Clone, PartialEq, Eq, Hash, 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_CurveCert`
[INFO] [stdout] 518 | pub struct CurveCert {
[INFO] [stdout]     |            --------- `CurveCert` 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 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/auth/curve.rs:517:56
[INFO] [stdout]     |
[INFO] [stdout] 517 | #[derive(Debug, Clone, PartialEq, Eq, Hash, 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_CurveCert`
[INFO] [stdout] 518 | pub struct CurveCert {
[INFO] [stdout]     |            --------- `CurveCert` 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 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/auth/curve.rs:645:45
[INFO] [stdout]     |
[INFO] [stdout] 645 | #[derive(Debug, Clone, PartialEq, Eq, Hash, 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_CurveClientCreds`
[INFO] [stdout] 646 | pub struct CurveClientCreds {
[INFO] [stdout]     |            ---------------- `CurveClientCreds` 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 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/auth/curve.rs:645:56
[INFO] [stdout]     |
[INFO] [stdout] 645 | #[derive(Debug, Clone, PartialEq, Eq, Hash, 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_CurveClientCreds`
[INFO] [stdout] 646 | pub struct CurveClientCreds {
[INFO] [stdout]     |            ---------------- `CurveClientCreds` 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 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/auth/curve.rs:710:45
[INFO] [stdout]     |
[INFO] [stdout] 710 | #[derive(Debug, Clone, PartialEq, Eq, Hash, 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_CurveServerCreds`
[INFO] [stdout] 711 | pub struct CurveServerCreds {
[INFO] [stdout]     |            ---------------- `CurveServerCreds` 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 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/auth/curve.rs:710:56
[INFO] [stdout]     |
[INFO] [stdout] 710 | #[derive(Debug, Clone, PartialEq, Eq, Hash, 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_CurveServerCreds`
[INFO] [stdout] 711 | pub struct CurveServerCreds {
[INFO] [stdout]     |            ---------------- `CurveServerCreds` 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 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/ctx.rs:53:20
[INFO] [stdout]    |
[INFO] [stdout] 53 |             panic!(msg_from_errno(unsafe { sys::zmq_errno() }));
[INFO] [stdout]    |                    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this usage of `panic!()` is deprecated; it will be a hard error in Rust 2021
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/panic-macro-consistency.html>
[INFO] [stdout] help: add a "{}" format string to `Display` the message
[INFO] [stdout]    |
[INFO] [stdout] 53 |             panic!("{}", msg_from_errno(unsafe { sys::zmq_errno() }));
[INFO] [stdout]    |                    +++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: panic message is not a string literal
[INFO] [stdout]   --> src/ctx.rs:72:29
[INFO] [stdout]    |
[INFO] [stdout] 72 |                 _ => panic!(msg_from_errno(errno)),
[INFO] [stdout]    |                             ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this usage of `panic!()` is deprecated; it will be a hard error in Rust 2021
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/panic-macro-consistency.html>
[INFO] [stdout] help: add a "{}" format string to `Display` the message
[INFO] [stdout]    |
[INFO] [stdout] 72 |                 _ => panic!("{}", msg_from_errno(errno)),
[INFO] [stdout]    |                             +++++
[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/ctx.rs:115:47
[INFO] [stdout]     |
[INFO] [stdout] 115 | #[derive(Default, Clone, PartialEq, Eq, Hash, 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_CtxConfig`
[INFO] [stdout] 116 | pub struct CtxConfig {
[INFO] [stdout]     |            --------- `CtxConfig` 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 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/ctx.rs:115:58
[INFO] [stdout]     |
[INFO] [stdout] 115 | #[derive(Default, Clone, PartialEq, Eq, Hash, 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_CtxConfig`
[INFO] [stdout] 116 | pub struct CtxConfig {
[INFO] [stdout]     |            --------- `CtxConfig` 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 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/ctx.rs:166:47
[INFO] [stdout]     |
[INFO] [stdout] 166 | #[derive(Default, Clone, PartialEq, Eq, Hash, 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_CtxBuilder`
[INFO] [stdout] 167 | pub struct CtxBuilder {
[INFO] [stdout]     |            ---------- `CtxBuilder` 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 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/ctx.rs:166:58
[INFO] [stdout]     |
[INFO] [stdout] 166 | #[derive(Default, Clone, PartialEq, Eq, Hash, 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_CtxBuilder`
[INFO] [stdout] 167 | pub struct CtxBuilder {
[INFO] [stdout]     |            ---------- `CtxBuilder` 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 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/endpoint.rs:1212:45
[INFO] [stdout]      |
[INFO] [stdout] 1212 | #[derive(Debug, Clone, Eq, PartialEq, Hash, 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_Endpoint`
[INFO] [stdout] 1213 | #[serde(rename_all = "snake_case")]
[INFO] [stdout] 1214 | pub enum Endpoint {
[INFO] [stdout]      |          -------- `Endpoint` 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 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/endpoint.rs:1212:56
[INFO] [stdout]      |
[INFO] [stdout] 1212 | #[derive(Debug, Clone, Eq, PartialEq, Hash, 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_Endpoint`
[INFO] [stdout] 1213 | #[serde(rename_all = "snake_case")]
[INFO] [stdout] 1214 | pub enum Endpoint {
[INFO] [stdout]      |          -------- `Endpoint` 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 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: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/group.rs:62:28
[INFO] [stdout]    |
[INFO] [stdout] 62 |     pub fn to_string_lossy(&self) -> Cow<str> {
[INFO] [stdout]    |                            ^^^^^     -------- the same lifetime is hidden here
[INFO] [stdout]    |                            |
[INFO] [stdout]    |                            the lifetime is elided here
[INFO] [stdout]    |
[INFO] [stdout]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout]    = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]    |
[INFO] [stdout] 62 |     pub fn to_string_lossy(&self) -> Cow<'_, str> {
[INFO] [stdout]    |                                          +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/group.rs:199:28
[INFO] [stdout]     |
[INFO] [stdout] 199 |     pub fn to_string_lossy(&self) -> Cow<str> {
[INFO] [stdout]     |                            ^^^^^     -------- the same lifetime is hidden here
[INFO] [stdout]     |                            |
[INFO] [stdout]     |                            the lifetime is elided here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 199 |     pub fn to_string_lossy(&self) -> Cow<'_, str> {
[INFO] [stdout]     |                                          +++
[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/msg.rs:52:45
[INFO] [stdout]    |
[INFO] [stdout] 52 | #[derive(Debug, Copy, Clone, PartialEq, Eq, Serialize, Deserialize, Hash)]
[INFO] [stdout]    |                                             ^--------
[INFO] [stdout]    |                                             |
[INFO] [stdout]    |                                             `Serialize` is not local
[INFO] [stdout]    |                                             move the `impl` block outside of this constant `_IMPL_SERIALIZE_FOR_RoutingId`
[INFO] [stdout] 53 | pub struct RoutingId(pub u32);
[INFO] [stdout]    |            --------- `RoutingId` 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 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/msg.rs:52:56
[INFO] [stdout]    |
[INFO] [stdout] 52 | #[derive(Debug, Copy, Clone, PartialEq, Eq, Serialize, Deserialize, Hash)]
[INFO] [stdout]    |                                                        ^----------
[INFO] [stdout]    |                                                        |
[INFO] [stdout]    |                                                        `Deserialize` is not local
[INFO] [stdout]    |                                                        move the `impl` block outside of this constant `_IMPL_DESERIALIZE_FOR_RoutingId`
[INFO] [stdout] 53 | pub struct RoutingId(pub u32);
[INFO] [stdout]    |            --------- `RoutingId` 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 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/msg.rs:219:20
[INFO] [stdout]     |
[INFO] [stdout] 219 |             panic!(msg_from_errno(errno));
[INFO] [stdout]     |                    ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this usage of `panic!()` is deprecated; it will be a hard error in Rust 2021
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/panic-macro-consistency.html>
[INFO] [stdout] help: add a "{}" format string to `Display` the message
[INFO] [stdout]     |
[INFO] [stdout] 219 |             panic!("{}", msg_from_errno(errno));
[INFO] [stdout]     |                    +++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: panic message is not a string literal
[INFO] [stdout]    --> src/msg.rs:272:20
[INFO] [stdout]     |
[INFO] [stdout] 272 |             panic!(msg_from_errno(errno));
[INFO] [stdout]     |                    ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this usage of `panic!()` is deprecated; it will be a hard error in Rust 2021
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/panic-macro-consistency.html>
[INFO] [stdout] help: add a "{}" format string to `Display` the message
[INFO] [stdout]     |
[INFO] [stdout] 272 |             panic!("{}", msg_from_errno(errno));
[INFO] [stdout]     |                    +++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: panic message is not a string literal
[INFO] [stdout]    --> src/msg.rs:289:20
[INFO] [stdout]     |
[INFO] [stdout] 289 |             panic!(msg_from_errno(sys::zmq_errno()));
[INFO] [stdout]     |                    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this usage of `panic!()` is deprecated; it will be a hard error in Rust 2021
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/panic-macro-consistency.html>
[INFO] [stdout] help: add a "{}" format string to `Display` the message
[INFO] [stdout]     |
[INFO] [stdout] 289 |             panic!("{}", msg_from_errno(sys::zmq_errno()));
[INFO] [stdout]     |                    +++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: panic message is not a string literal
[INFO] [stdout]    --> src/msg.rs:356:29
[INFO] [stdout]     |
[INFO] [stdout] 356 |                 _ => panic!(msg_from_errno(errno)),
[INFO] [stdout]     |                             ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this usage of `panic!()` is deprecated; it will be a hard error in Rust 2021
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/panic-macro-consistency.html>
[INFO] [stdout] help: add a "{}" format string to `Display` the message
[INFO] [stdout]     |
[INFO] [stdout] 356 |                 _ => panic!("{}", msg_from_errno(errno)),
[INFO] [stdout]     |                             +++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused return value of `Box::<T>::from_raw` that must be used
[INFO] [stdout]    --> src/msg.rs:388:13
[INFO] [stdout]     |
[INFO] [stdout] 388 |             Box::from_raw(data as *mut u8);
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: call `drop(Box::from_raw(ptr))` if you intend to drop the `Box`
[INFO] [stdout]     = note: `#[warn(unused_must_use)]` on by default
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 388 |             let _ = Box::from_raw(data as *mut u8);
[INFO] [stdout]     |             +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: panic message is not a string literal
[INFO] [stdout]   --> src/old.rs:30:25
[INFO] [stdout]    |
[INFO] [stdout] 30 |             _ => panic!(msg_from_errno(errno)),
[INFO] [stdout]    |                         ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this usage of `panic!()` is deprecated; it will be a hard error in Rust 2021
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/panic-macro-consistency.html>
[INFO] [stdout] help: add a "{}" format string to `Display` the message
[INFO] [stdout]    |
[INFO] [stdout] 30 |             _ => panic!("{}", msg_from_errno(errno)),
[INFO] [stdout]    |                         +++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: panic message is not a string literal
[INFO] [stdout]   --> src/old.rs:48:25
[INFO] [stdout]    |
[INFO] [stdout] 48 |             _ => panic!(msg_from_errno(errno)),
[INFO] [stdout]    |                         ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this usage of `panic!()` is deprecated; it will be a hard error in Rust 2021
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/panic-macro-consistency.html>
[INFO] [stdout] help: add a "{}" format string to `Display` the message
[INFO] [stdout]    |
[INFO] [stdout] 48 |             _ => panic!("{}", msg_from_errno(errno)),
[INFO] [stdout]    |                         +++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/poll.rs:334:17
[INFO] [stdout]     |
[INFO] [stdout] 334 |     pub fn iter(&self) -> Iter {
[INFO] [stdout]     |                 ^^^^^     ---- the same lifetime is hidden here
[INFO] [stdout]     |                 |
[INFO] [stdout]     |                 the lifetime is elided here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 334 |     pub fn iter(&self) -> Iter<'_> {
[INFO] [stdout]     |                               ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: panic message is not a string literal
[INFO] [stdout]    --> src/poll.rs:514:29
[INFO] [stdout]     |
[INFO] [stdout] 514 |                 _ => panic!(msg_from_errno(errno)),
[INFO] [stdout]     |                             ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this usage of `panic!()` is deprecated; it will be a hard error in Rust 2021
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/panic-macro-consistency.html>
[INFO] [stdout] help: add a "{}" format string to `Display` the message
[INFO] [stdout]     |
[INFO] [stdout] 514 |                 _ => panic!("{}", msg_from_errno(errno)),
[INFO] [stdout]     |                             +++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: panic message is not a string literal
[INFO] [stdout]    --> src/poll.rs:551:29
[INFO] [stdout]     |
[INFO] [stdout] 551 |                 _ => panic!(msg_from_errno(errno)),
[INFO] [stdout]     |                             ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this usage of `panic!()` is deprecated; it will be a hard error in Rust 2021
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/panic-macro-consistency.html>
[INFO] [stdout] help: add a "{}" format string to `Display` the message
[INFO] [stdout]     |
[INFO] [stdout] 551 |                 _ => panic!("{}", msg_from_errno(errno)),
[INFO] [stdout]     |                             +++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: panic message is not a string literal
[INFO] [stdout]    --> src/poll.rs:612:29
[INFO] [stdout]     |
[INFO] [stdout] 612 |                 _ => panic!(msg_from_errno(errno)),
[INFO] [stdout]     |                             ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this usage of `panic!()` is deprecated; it will be a hard error in Rust 2021
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/panic-macro-consistency.html>
[INFO] [stdout] help: add a "{}" format string to `Display` the message
[INFO] [stdout]     |
[INFO] [stdout] 612 |                 _ => panic!("{}", msg_from_errno(errno)),
[INFO] [stdout]     |                             +++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: panic message is not a string literal
[INFO] [stdout]    --> src/poll.rs:638:29
[INFO] [stdout]     |
[INFO] [stdout] 638 |                 _ => panic!(msg_from_errno(errno)),
[INFO] [stdout]     |                             ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this usage of `panic!()` is deprecated; it will be a hard error in Rust 2021
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/panic-macro-consistency.html>
[INFO] [stdout] help: add a "{}" format string to `Display` the message
[INFO] [stdout]     |
[INFO] [stdout] 638 |                 _ => panic!("{}", msg_from_errno(errno)),
[INFO] [stdout]     |                             +++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: panic message is not a string literal
[INFO] [stdout]    --> src/poll.rs:688:29
[INFO] [stdout]     |
[INFO] [stdout] 688 |                 _ => panic!(msg_from_errno(errno)),
[INFO] [stdout]     |                             ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this usage of `panic!()` is deprecated; it will be a hard error in Rust 2021
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/panic-macro-consistency.html>
[INFO] [stdout] help: add a "{}" format string to `Display` the message
[INFO] [stdout]     |
[INFO] [stdout] 688 |                 _ => panic!("{}", msg_from_errno(errno)),
[INFO] [stdout]     |                             +++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: panic message is not a string literal
[INFO] [stdout]    --> src/poll.rs:716:29
[INFO] [stdout]     |
[INFO] [stdout] 716 |                 _ => panic!(msg_from_errno(errno)),
[INFO] [stdout]     |                             ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this usage of `panic!()` is deprecated; it will be a hard error in Rust 2021
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/panic-macro-consistency.html>
[INFO] [stdout] help: add a "{}" format string to `Display` the message
[INFO] [stdout]     |
[INFO] [stdout] 716 |                 _ => panic!("{}", msg_from_errno(errno)),
[INFO] [stdout]     |                             +++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: panic message is not a string literal
[INFO] [stdout]    --> src/poll.rs:746:29
[INFO] [stdout]     |
[INFO] [stdout] 746 |                 _ => panic!(msg_from_errno(errno)),
[INFO] [stdout]     |                             ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this usage of `panic!()` is deprecated; it will be a hard error in Rust 2021
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/panic-macro-consistency.html>
[INFO] [stdout] help: add a "{}" format string to `Display` the message
[INFO] [stdout]     |
[INFO] [stdout] 746 |                 _ => panic!("{}", msg_from_errno(errno)),
[INFO] [stdout]     |                             +++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: panic message is not a string literal
[INFO] [stdout]    --> src/poll.rs:812:20
[INFO] [stdout]     |
[INFO] [stdout] 812 |             panic!(msg_from_errno(unsafe { sys::zmq_errno() }));
[INFO] [stdout]     |                    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this usage of `panic!()` is deprecated; it will be a hard error in Rust 2021
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/panic-macro-consistency.html>
[INFO] [stdout] help: add a "{}" format string to `Display` the message
[INFO] [stdout]     |
[INFO] [stdout] 812 |             panic!("{}", msg_from_errno(unsafe { sys::zmq_errno() }));
[INFO] [stdout]     |                    +++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: panic message is not a string literal
[INFO] [stdout]    --> src/poll.rs:828:29
[INFO] [stdout]     |
[INFO] [stdout] 828 |                 _ => panic!(msg_from_errno(errno)),
[INFO] [stdout]     |                             ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this usage of `panic!()` is deprecated; it will be a hard error in Rust 2021
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/panic-macro-consistency.html>
[INFO] [stdout] help: add a "{}" format string to `Display` the message
[INFO] [stdout]     |
[INFO] [stdout] 828 |                 _ => panic!("{}", msg_from_errno(errno)),
[INFO] [stdout]     |                             +++++
[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/socket/mod.rs:61:45
[INFO] [stdout]    |
[INFO] [stdout] 61 | #[derive(Debug, Clone, PartialEq, Eq, Hash, 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_ConfigType`
[INFO] [stdout] 62 | #[serde(rename_all = "snake_case")]
[INFO] [stdout] 63 | pub enum ConfigType {
[INFO] [stdout]    |          ---------- `ConfigType` 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 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/socket/mod.rs:61:56
[INFO] [stdout]    |
[INFO] [stdout] 61 | #[derive(Debug, Clone, PartialEq, Eq, Hash, 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_ConfigType`
[INFO] [stdout] 62 | #[serde(rename_all = "snake_case")]
[INFO] [stdout] 63 | pub enum ConfigType {
[INFO] [stdout]    |          ---------- `ConfigType` 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 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/socket/client.rs:138:54
[INFO] [stdout]     |
[INFO] [stdout] 138 | #[derive(Debug, Default, Clone, PartialEq, Eq, Hash, 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_ClientConfig`
[INFO] [stdout] ...
[INFO] [stdout] 141 | pub struct ClientConfig {
[INFO] [stdout]     |            ------------ `ClientConfig` 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 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/socket/client.rs:138:65
[INFO] [stdout]     |
[INFO] [stdout] 138 | #[derive(Debug, Default, Clone, PartialEq, Eq, Hash, 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_ClientConfig`
[INFO] [stdout] ...
[INFO] [stdout] 141 | pub struct ClientConfig {
[INFO] [stdout]     |            ------------ `ClientConfig` 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 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/socket/client.rs:174:17
[INFO] [stdout]     |
[INFO] [stdout] 174 | #[derive(Clone, 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_FlatClientConfig`
[INFO] [stdout] 175 | struct FlatClientConfig {
[INFO] [stdout]     |        ---------------- `FlatClientConfig` 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 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/socket/client.rs:174:28
[INFO] [stdout]     |
[INFO] [stdout] 174 | #[derive(Clone, 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_FlatClientConfig`
[INFO] [stdout] 175 | struct FlatClientConfig {
[INFO] [stdout]     |        ---------------- `FlatClientConfig` 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 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/socket/client.rs:283:54
[INFO] [stdout]     |
[INFO] [stdout] 283 | #[derive(Debug, Default, Clone, PartialEq, Eq, Hash, 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_ClientBuilder`
[INFO] [stdout] 284 | pub struct ClientBuilder {
[INFO] [stdout]     |            ------------- `ClientBuilder` 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 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/socket/client.rs:283:65
[INFO] [stdout]     |
[INFO] [stdout] 283 | #[derive(Debug, Default, Clone, PartialEq, Eq, Hash, 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_ClientBuilder`
[INFO] [stdout] 284 | pub struct ClientBuilder {
[INFO] [stdout]     |            ------------- `ClientBuilder` 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 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/socket/dish.rs:30:25
[INFO] [stdout]    |
[INFO] [stdout] 30 |             _ => panic!(msg_from_errno(errno)),
[INFO] [stdout]    |                         ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this usage of `panic!()` is deprecated; it will be a hard error in Rust 2021
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/panic-macro-consistency.html>
[INFO] [stdout] help: add a "{}" format string to `Display` the message
[INFO] [stdout]    |
[INFO] [stdout] 30 |             _ => panic!("{}", msg_from_errno(errno)),
[INFO] [stdout]    |                         +++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: panic message is not a string literal
[INFO] [stdout]   --> src/socket/dish.rs:53:25
[INFO] [stdout]    |
[INFO] [stdout] 53 |             _ => panic!(msg_from_errno(errno)),
[INFO] [stdout]    |                         ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this usage of `panic!()` is deprecated; it will be a hard error in Rust 2021
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/panic-macro-consistency.html>
[INFO] [stdout] help: add a "{}" format string to `Display` the message
[INFO] [stdout]    |
[INFO] [stdout] 53 |             _ => panic!("{}", msg_from_errno(errno)),
[INFO] [stdout]    |                         +++++
[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/socket/dish.rs:312:54
[INFO] [stdout]     |
[INFO] [stdout] 312 | #[derive(Debug, Default, Clone, PartialEq, Eq, Hash, 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_DishConfig`
[INFO] [stdout] ...
[INFO] [stdout] 315 | pub struct DishConfig {
[INFO] [stdout]     |            ---------- `DishConfig` 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 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/socket/dish.rs:312:65
[INFO] [stdout]     |
[INFO] [stdout] 312 | #[derive(Debug, Default, Clone, PartialEq, Eq, Hash, 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_DishConfig`
[INFO] [stdout] ...
[INFO] [stdout] 315 | pub struct DishConfig {
[INFO] [stdout]     |            ---------- `DishConfig` 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 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/socket/dish.rs:362:17
[INFO] [stdout]     |
[INFO] [stdout] 362 | #[derive(Clone, 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_FlatDishConfig`
[INFO] [stdout] 363 | struct FlatDishConfig {
[INFO] [stdout]     |        -------------- `FlatDishConfig` 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 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/socket/dish.rs:362:28
[INFO] [stdout]     |
[INFO] [stdout] 362 | #[derive(Clone, 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_FlatDishConfig`
[INFO] [stdout] 363 | struct FlatDishConfig {
[INFO] [stdout]     |        -------------- `FlatDishConfig` 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 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/socket/dish.rs:432:54
[INFO] [stdout]     |
[INFO] [stdout] 432 | #[derive(Debug, Default, Clone, PartialEq, Eq, Hash, 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_DishBuilder`
[INFO] [stdout] 433 | pub struct DishBuilder {
[INFO] [stdout]     |            ----------- `DishBuilder` 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 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/socket/dish.rs:432:65
[INFO] [stdout]     |
[INFO] [stdout] 432 | #[derive(Debug, Default, Clone, PartialEq, Eq, Hash, 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_DishBuilder`
[INFO] [stdout] 433 | pub struct DishBuilder {
[INFO] [stdout]     |            ----------- `DishBuilder` 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 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/socket/gather.rs:136:54
[INFO] [stdout]     |
[INFO] [stdout] 136 | #[derive(Debug, Default, Clone, PartialEq, Eq, Hash, 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_GatherConfig`
[INFO] [stdout] ...
[INFO] [stdout] 139 | pub struct GatherConfig {
[INFO] [stdout]     |            ------------ `GatherConfig` 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 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/socket/gather.rs:136:65
[INFO] [stdout]     |
[INFO] [stdout] 136 | #[derive(Debug, Default, Clone, PartialEq, Eq, Hash, 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_GatherConfig`
[INFO] [stdout] ...
[INFO] [stdout] 139 | pub struct GatherConfig {
[INFO] [stdout]     |            ------------ `GatherConfig` 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 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/socket/gather.rs:169:17
[INFO] [stdout]     |
[INFO] [stdout] 169 | #[derive(Clone, 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_FlatGatherConfig`
[INFO] [stdout] 170 | struct FlatGatherConfig {
[INFO] [stdout]     |        ---------------- `FlatGatherConfig` 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 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/socket/gather.rs:169:28
[INFO] [stdout]     |
[INFO] [stdout] 169 | #[derive(Clone, 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_FlatGatherConfig`
[INFO] [stdout] 170 | struct FlatGatherConfig {
[INFO] [stdout]     |        ---------------- `FlatGatherConfig` 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 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/socket/gather.rs:255:54
[INFO] [stdout]     |
[INFO] [stdout] 255 | #[derive(Debug, Default, Clone, PartialEq, Eq, Hash, 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_GatherBuilder`
[INFO] [stdout] 256 | pub struct GatherBuilder {
[INFO] [stdout]     |            ------------- `GatherBuilder` 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 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/socket/gather.rs:255:65
[INFO] [stdout]     |
[INFO] [stdout] 255 | #[derive(Debug, Default, Clone, PartialEq, Eq, Hash, 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_GatherBuilder`
[INFO] [stdout] 256 | pub struct GatherBuilder {
[INFO] [stdout]     |            ------------- `GatherBuilder` 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 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/socket/radio.rs:203:54
[INFO] [stdout]     |
[INFO] [stdout] 203 | #[derive(Debug, Default, Clone, PartialEq, Eq, Hash, 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_RadioConfig`
[INFO] [stdout] ...
[INFO] [stdout] 206 | pub struct RadioConfig {
[INFO] [stdout]     |            ----------- `RadioConfig` 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 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/socket/radio.rs:203:65
[INFO] [stdout]     |
[INFO] [stdout] 203 | #[derive(Debug, Default, Clone, PartialEq, Eq, Hash, 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_RadioConfig`
[INFO] [stdout] ...
[INFO] [stdout] 206 | pub struct RadioConfig {
[INFO] [stdout]     |            ----------- `RadioConfig` 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 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/socket/radio.rs:252:10
[INFO] [stdout]     |
[INFO] [stdout] 252 | #[derive(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_FlatRadioConfig`
[INFO] [stdout] 253 | struct FlatRadioConfig {
[INFO] [stdout]     |        --------------- `FlatRadioConfig` 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 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/socket/radio.rs:252:21
[INFO] [stdout]     |
[INFO] [stdout] 252 | #[derive(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_FlatRadioConfig`
[INFO] [stdout] 253 | struct FlatRadioConfig {
[INFO] [stdout]     |        --------------- `FlatRadioConfig` 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 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/socket/scatter.rs:127:54
[INFO] [stdout]     |
[INFO] [stdout] 127 | #[derive(Debug, Default, Clone, PartialEq, Eq, Hash, 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_ScatterConfig`
[INFO] [stdout] ...
[INFO] [stdout] 130 | pub struct ScatterConfig {
[INFO] [stdout]     |            ------------- `ScatterConfig` 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 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/socket/scatter.rs:127:65
[INFO] [stdout]     |
[INFO] [stdout] 127 | #[derive(Debug, Default, Clone, PartialEq, Eq, Hash, 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_ScatterConfig`
[INFO] [stdout] ...
[INFO] [stdout] 130 | pub struct ScatterConfig {
[INFO] [stdout]     |            ------------- `ScatterConfig` 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 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/socket/scatter.rs:160:17
[INFO] [stdout]     |
[INFO] [stdout] 160 | #[derive(Clone, 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_FlatScatterConfig`
[INFO] [stdout] 161 | struct FlatScatterConfig {
[INFO] [stdout]     |        ----------------- `FlatScatterConfig` 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 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/socket/scatter.rs:160:28
[INFO] [stdout]     |
[INFO] [stdout] 160 | #[derive(Clone, 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_FlatScatterConfig`
[INFO] [stdout] 161 | struct FlatScatterConfig {
[INFO] [stdout]     |        ----------------- `FlatScatterConfig` 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 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/socket/scatter.rs:246:54
[INFO] [stdout]     |
[INFO] [stdout] 246 | #[derive(Debug, Default, Clone, PartialEq, Eq, Hash, 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_ScatterBuilder`
[INFO] [stdout] 247 | pub struct ScatterBuilder {
[INFO] [stdout]     |            -------------- `ScatterBuilder` 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 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/socket/scatter.rs:246:65
[INFO] [stdout]     |
[INFO] [stdout] 246 | #[derive(Debug, Default, Clone, PartialEq, Eq, Hash, 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_ScatterBuilder`
[INFO] [stdout] 247 | pub struct ScatterBuilder {
[INFO] [stdout]     |            -------------- `ScatterBuilder` 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 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/socket/server.rs:176:54
[INFO] [stdout]     |
[INFO] [stdout] 176 | #[derive(Debug, Default, Clone, PartialEq, Eq, Hash, 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_ServerConfig`
[INFO] [stdout] ...
[INFO] [stdout] 179 | pub struct ServerConfig {
[INFO] [stdout]     |            ------------ `ServerConfig` 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 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/socket/server.rs:176:65
[INFO] [stdout]     |
[INFO] [stdout] 176 | #[derive(Debug, Default, Clone, PartialEq, Eq, Hash, 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_ServerConfig`
[INFO] [stdout] ...
[INFO] [stdout] 179 | pub struct ServerConfig {
[INFO] [stdout]     |            ------------ `ServerConfig` 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 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/socket/server.rs:215:17
[INFO] [stdout]     |
[INFO] [stdout] 215 | #[derive(Clone, 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_FlatServerConfig`
[INFO] [stdout] 216 | struct FlatServerConfig {
[INFO] [stdout]     |        ---------------- `FlatServerConfig` 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 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/socket/server.rs:215:28
[INFO] [stdout]     |
[INFO] [stdout] 215 | #[derive(Clone, 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_FlatServerConfig`
[INFO] [stdout] 216 | struct FlatServerConfig {
[INFO] [stdout]     |        ---------------- `FlatServerConfig` 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 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/utils.rs:107:21
[INFO] [stdout]     |
[INFO] [stdout] 107 |         _ => panic!(msg_from_errno(errno)),
[INFO] [stdout]     |                     ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this usage of `panic!()` is deprecated; it will be a hard error in Rust 2021
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/panic-macro-consistency.html>
[INFO] [stdout] help: add a "{}" format string to `Display` the message
[INFO] [stdout]     |
[INFO] [stdout] 107 |         _ => panic!("{}", msg_from_errno(errno)),
[INFO] [stdout]     |                     +++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 1m 04s
[INFO] [stderr] warning: the following packages contain code that will be rejected by a future version of Rust: criterion v0.3.2
[INFO] [stderr] note: to see what the problems were, use the option `--future-incompat-report`, or run `cargo report future-incompatibilities --id 1`
[INFO] running `Command { std: "docker" "inspect" "ca23512d31641647e03998694ac309b1f5737c639603124d4b1df581b03f4116", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "ca23512d31641647e03998694ac309b1f5737c639603124d4b1df581b03f4116", kill_on_drop: false }`
[INFO] [stdout] ca23512d31641647e03998694ac309b1f5737c639603124d4b1df581b03f4116
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=warn" "-e" "RUSTDOCFLAGS=--cap-lints=warn" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:e90291280db7d1fac5b66fc6dad9f9662629e7365a55743daf9bdf73ebc4ea79" "/opt/rustwide/cargo-home/bin/cargo" "+1.90.0" "test" "--frozen", kill_on_drop: false }`
[INFO] [stdout] 7876890bf0f842b4a86903f73faf5ce01e23803529115d3e29ba8f8b049976e3
[INFO] running `Command { std: "docker" "start" "-a" "7876890bf0f842b4a86903f73faf5ce01e23803529115d3e29ba8f8b049976e3", kill_on_drop: false }`
[INFO] [stderr] warning: fields `version`, `domain`, and `identity` are never read
[INFO] [stderr]   --> src/auth/server.rs:95:5
[INFO] [stderr]    |
[INFO] [stderr] 94 | struct ZapRequest {
[INFO] [stderr]    |        ---------- fields in this struct
[INFO] [stderr] 95 |     version: String,
[INFO] [stderr]    |     ^^^^^^^
[INFO] [stderr] 96 |     request_id: Msg,
[INFO] [stderr] 97 |     domain: String,
[INFO] [stderr]    |     ^^^^^^
[INFO] [stderr] 98 |     addr: Ipv6Addr,
[INFO] [stderr] 99 |     identity: Msg,
[INFO] [stderr]    |     ^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `ZapRequest` has derived impls for the traits `Debug` and `Clone`, but these are intentionally ignored during dead code analysis
[INFO] [stderr]    = note: `#[warn(dead_code)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stderr]   --> src/core/mod.rs:60:51
[INFO] [stderr]    |
[INFO] [stderr] 60 | #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash, Serialize, Deserialize)]
[INFO] [stderr]    |                                                   ^--------
[INFO] [stderr]    |                                                   |
[INFO] [stderr]    |                                                   `Serialize` is not local
[INFO] [stderr]    |                                                   move the `impl` block outside of this constant `_IMPL_SERIALIZE_FOR_HighWaterMark`
[INFO] [stderr] ...
[INFO] [stderr] 63 | pub(crate) struct HighWaterMark(i32);
[INFO] [stderr]    |                   ------------- `HighWaterMark` is not local
[INFO] [stderr]    |
[INFO] [stderr]    = note: the derive macro `Serialize` defines the non-local `impl`, and may need to be changed
[INFO] [stderr]    = 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] [stderr]    = 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] [stderr]    = 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] [stderr]    = note: `#[warn(non_local_definitions)]` on by default
[INFO] [stderr]    = note: this warning originates in the derive macro `Serialize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stderr]   --> src/core/mod.rs:60:62
[INFO] [stderr]    |
[INFO] [stderr] 60 | #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash, Serialize, Deserialize)]
[INFO] [stderr]    |                                                              ^----------
[INFO] [stderr]    |                                                              |
[INFO] [stderr]    |                                                              `Deserialize` is not local
[INFO] [stderr]    |                                                              move the `impl` block outside of this constant `_IMPL_DESERIALIZE_FOR_HighWaterMark`
[INFO] [stderr] ...
[INFO] [stderr] 63 | pub(crate) struct HighWaterMark(i32);
[INFO] [stderr]    |                   ------------- `HighWaterMark` is not local
[INFO] [stderr]    |
[INFO] [stderr]    = note: the derive macro `Deserialize` defines the non-local `impl`, and may need to be changed
[INFO] [stderr]    = 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] [stderr]    = 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] [stderr]    = 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] [stderr]    = note: this warning originates in the derive macro `Deserialize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stderr]    --> src/core/mod.rs:98:51
[INFO] [stderr]     |
[INFO] [stderr]  98 | #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash, Deserialize, Serialize)]
[INFO] [stderr]     |                                                   ^----------
[INFO] [stderr]     |                                                   |
[INFO] [stderr]     |                                                   `Deserialize` is not local
[INFO] [stderr]     |                                                   move the `impl` block outside of this constant `_IMPL_DESERIALIZE_FOR_BatchSize`
[INFO] [stderr] ...
[INFO] [stderr] 101 | pub(crate) struct BatchSize(i32);
[INFO] [stderr]     |                   --------- `BatchSize` is not local
[INFO] [stderr]     |
[INFO] [stderr]     = note: the derive macro `Deserialize` defines the non-local `impl`, and may need to be changed
[INFO] [stderr]     = 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] [stderr]     = 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] [stderr]     = 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] [stderr]     = note: this warning originates in the derive macro `Deserialize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stderr]    --> src/core/mod.rs:98:64
[INFO] [stderr]     |
[INFO] [stderr]  98 | #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash, Deserialize, Serialize)]
[INFO] [stderr]     |                                                                ^--------
[INFO] [stderr]     |                                                                |
[INFO] [stderr]     |                                                                `Serialize` is not local
[INFO] [stderr]     |                                                                move the `impl` block outside of this constant `_IMPL_SERIALIZE_FOR_BatchSize`
[INFO] [stderr] ...
[INFO] [stderr] 101 | pub(crate) struct BatchSize(i32);
[INFO] [stderr]     |                   --------- `BatchSize` is not local
[INFO] [stderr]     |
[INFO] [stderr]     = note: the derive macro `Serialize` defines the non-local `impl`, and may need to be changed
[INFO] [stderr]     = 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] [stderr]     = 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] [stderr]     = 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] [stderr]     = note: this warning originates in the derive macro `Serialize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stderr]    --> src/core/mod.rs:137:51
[INFO] [stderr]     |
[INFO] [stderr] 137 | #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash, Serialize, Deserialize)]
[INFO] [stderr]     |                                                   ^--------
[INFO] [stderr]     |                                                   |
[INFO] [stderr]     |                                                   `Serialize` is not local
[INFO] [stderr]     |                                                   move the `impl` block outside of this constant `_IMPL_SERIALIZE_FOR_Period`
[INFO] [stderr] ...
[INFO] [stderr] 140 | pub enum Period {
[INFO] [stderr]     |          ------ `Period` is not local
[INFO] [stderr]     |
[INFO] [stderr]     = note: the derive macro `Serialize` defines the non-local `impl`, and may need to be changed
[INFO] [stderr]     = 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] [stderr]     = 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] [stderr]     = 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] [stderr]     = note: this warning originates in the derive macro `Serialize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stderr]    --> src/core/mod.rs:137:62
[INFO] [stderr]     |
[INFO] [stderr] 137 | #[derive(Debug, Copy, Clone, PartialEq, Eq, Hash, Serialize, Deserialize)]
[INFO] [stderr]     |                                                              ^----------
[INFO] [stderr]     |                                                              |
[INFO] [stderr]     |                                                              `Deserialize` is not local
[INFO] [stderr]     |                                                              move the `impl` block outside of this constant `_IMPL_DESERIALIZE_FOR_Period`
[INFO] [stderr] ...
[INFO] [stderr] 140 | pub enum Period {
[INFO] [stderr]     |          ------ `Period` is not local
[INFO] [stderr]     |
[INFO] [stderr]     = note: the derive macro `Deserialize` defines the non-local `impl`, and may need to be changed
[INFO] [stderr]     = 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] [stderr]     = 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] [stderr]     = 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] [stderr]     = note: this warning originates in the derive macro `Deserialize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stderr]   --> src/core/heartbeat.rs:48:45
[INFO] [stderr]    |
[INFO] [stderr] 48 | #[derive(Debug, Clone, PartialEq, Eq, Hash, Serialize, Deserialize)]
[INFO] [stderr]    |                                             ^--------
[INFO] [stderr]    |                                             |
[INFO] [stderr]    |                                             `Serialize` is not local
[INFO] [stderr]    |                                             move the `impl` block outside of this constant `_IMPL_SERIALIZE_FOR_Heartbeat`
[INFO] [stderr] 49 | pub struct Heartbeat {
[INFO] [stderr]    |            --------- `Heartbeat` is not local
[INFO] [stderr]    |
[INFO] [stderr]    = note: the derive macro `Serialize` defines the non-local `impl`, and may need to be changed
[INFO] [stderr]    = 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] [stderr]    = 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] [stderr]    = 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] [stderr]    = note: this warning originates in the derive macro `Serialize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stderr]   --> src/core/heartbeat.rs:48:56
[INFO] [stderr]    |
[INFO] [stderr] 48 | #[derive(Debug, Clone, PartialEq, Eq, Hash, Serialize, Deserialize)]
[INFO] [stderr]    |                                                        ^----------
[INFO] [stderr]    |                                                        |
[INFO] [stderr]    |                                                        `Deserialize` is not local
[INFO] [stderr]    |                                                        move the `impl` block outside of this constant `_IMPL_DESERIALIZE_FOR_Heartbeat`
[INFO] [stderr] 49 | pub struct Heartbeat {
[INFO] [stderr]    |            --------- `Heartbeat` is not local
[INFO] [stderr]    |
[INFO] [stderr]    = note: the derive macro `Deserialize` defines the non-local `impl`, and may need to be changed
[INFO] [stderr]    = 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] [stderr]    = 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] [stderr]    = 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] [stderr]    = note: this warning originates in the derive macro `Deserialize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: panic message is not a string literal
[INFO] [stderr]   --> src/core/raw.rs:77:25
[INFO] [stderr]    |
[INFO] [stderr] 77 |             _ => panic!(msg_from_errno(errno)),
[INFO] [stderr]    |                         ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: this usage of `panic!()` is deprecated; it will be a hard error in Rust 2021
[INFO] [stderr]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/panic-macro-consistency.html>
[INFO] [stderr]    = note: `#[warn(non_fmt_panics)]` on by default
[INFO] [stderr] help: add a "{}" format string to `Display` the message
[INFO] [stderr]    |
[INFO] [stderr] 77 |             _ => panic!("{}", msg_from_errno(errno)),
[INFO] [stderr]    |                         +++++
[INFO] [stderr] 
[INFO] [stderr] warning: panic message is not a string literal
[INFO] [stderr]    --> src/core/raw.rs:107:25
[INFO] [stderr]     |
[INFO] [stderr] 107 |             _ => panic!(msg_from_errno(errno)),
[INFO] [stderr]     |                         ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = note: this usage of `panic!()` is deprecated; it will be a hard error in Rust 2021
[INFO] [stderr]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/panic-macro-consistency.html>
[INFO] [stderr] help: add a "{}" format string to `Display` the message
[INFO] [stderr]     |
[INFO] [stderr] 107 |             _ => panic!("{}", msg_from_errno(errno)),
[INFO] [stderr]     |                         +++++
[INFO] [stderr] 
[INFO] [stderr] warning: panic message is not a string literal
[INFO] [stderr]    --> src/core/raw.rs:130:25
[INFO] [stderr]     |
[INFO] [stderr] 130 |             _ => panic!(msg_from_errno(errno)),
[INFO] [stderr]     |                         ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = note: this usage of `panic!()` is deprecated; it will be a hard error in Rust 2021
[INFO] [stderr]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/panic-macro-consistency.html>
[INFO] [stderr] help: add a "{}" format string to `Display` the message
[INFO] [stderr]     |
[INFO] [stderr] 130 |             _ => panic!("{}", msg_from_errno(errno)),
[INFO] [stderr]     |                         +++++
[INFO] [stderr] 
[INFO] [stderr] warning: panic message is not a string literal
[INFO] [stderr]    --> src/core/raw.rs:153:25
[INFO] [stderr]     |
[INFO] [stderr] 153 |             _ => panic!(msg_from_errno(errno)),
[INFO] [stderr]     |                         ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = note: this usage of `panic!()` is deprecated; it will be a hard error in Rust 2021
[INFO] [stderr]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/panic-macro-consistency.html>
[INFO] [stderr] help: add a "{}" format string to `Display` the message
[INFO] [stderr]     |
[INFO] [stderr] 153 |             _ => panic!("{}", msg_from_errno(errno)),
[INFO] [stderr]     |                         +++++
[INFO] [stderr] 
[INFO] [stderr] warning: panic message is not a string literal
[INFO] [stderr]    --> src/core/raw.rs:201:29
[INFO] [stderr]     |
[INFO] [stderr] 201 |                 _ => panic!(msg_from_errno(errno)),
[INFO] [stderr]     |                             ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = note: this usage of `panic!()` is deprecated; it will be a hard error in Rust 2021
[INFO] [stderr]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/panic-macro-consistency.html>
[INFO] [stderr] help: add a "{}" format string to `Display` the message
[INFO] [stderr]     |
[INFO] [stderr] 201 |                 _ => panic!("{}", msg_from_errno(errno)),
[INFO] [stderr]     |                             +++++
[INFO] [stderr] 
[INFO] [stderr] warning: panic message is not a string literal
[INFO] [stderr]   --> src/core/recv.rs:35:25
[INFO] [stderr]    |
[INFO] [stderr] 35 |             _ => panic!(msg_from_errno(errno)),
[INFO] [stderr]    |                         ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: this usage of `panic!()` is deprecated; it will be a hard error in Rust 2021
[INFO] [stderr]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/panic-macro-consistency.html>
[INFO] [stderr] help: add a "{}" format string to `Display` the message
[INFO] [stderr]    |
[INFO] [stderr] 35 |             _ => panic!("{}", msg_from_errno(errno)),
[INFO] [stderr]    |                         +++++
[INFO] [stderr] 
[INFO] [stderr] warning: panic message is not a string literal
[INFO] [stderr]   --> src/core/send.rs:41:25
[INFO] [stderr]    |
[INFO] [stderr] 41 |             _ => panic!(msg_from_errno(errno)),
[INFO] [stderr]    |                         ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: this usage of `panic!()` is deprecated; it will be a hard error in Rust 2021
[INFO] [stderr]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/panic-macro-consistency.html>
[INFO] [stderr] help: add a "{}" format string to `Display` the message
[INFO] [stderr]    |
[INFO] [stderr] 41 |             _ => panic!("{}", msg_from_errno(errno)),
[INFO] [stderr]    |                         +++++
[INFO] [stderr] 
[INFO] [stderr] warning: panic message is not a string literal
[INFO] [stderr]    --> src/core/sockopt.rs:117:25
[INFO] [stderr]     |
[INFO] [stderr] 117 |             _ => panic!(msg_from_errno(errno)),
[INFO] [stderr]     |                         ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = note: this usage of `panic!()` is deprecated; it will be a hard error in Rust 2021
[INFO] [stderr]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/panic-macro-consistency.html>
[INFO] [stderr] help: add a "{}" format string to `Display` the message
[INFO] [stderr]     |
[INFO] [stderr] 117 |             _ => panic!("{}", msg_from_errno(errno)),
[INFO] [stderr]     |                         +++++
[INFO] [stderr] 
[INFO] [stderr] warning: panic message is not a string literal
[INFO] [stderr]    --> src/core/sockopt.rs:223:25
[INFO] [stderr]     |
[INFO] [stderr] 223 |             _ => panic!(msg_from_errno(errno)),
[INFO] [stderr]     |                         ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = note: this usage of `panic!()` is deprecated; it will be a hard error in Rust 2021
[INFO] [stderr]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/panic-macro-consistency.html>
[INFO] [stderr] help: add a "{}" format string to `Display` the message
[INFO] [stderr]     |
[INFO] [stderr] 223 |             _ => panic!("{}", msg_from_errno(errno)),
[INFO] [stderr]     |                         +++++
[INFO] [stderr] 
[INFO] [stderr] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stderr]   --> src/auth/mod.rs:35:45
[INFO] [stderr]    |
[INFO] [stderr] 35 | #[derive(Debug, Clone, PartialEq, Eq, Hash, Serialize, Deserialize)]
[INFO] [stderr]    |                                             ^--------
[INFO] [stderr]    |                                             |
[INFO] [stderr]    |                                             `Serialize` is not local
[INFO] [stderr]    |                                             move the `impl` block outside of this constant `_IMPL_SERIALIZE_FOR_PlainClientCreds`
[INFO] [stderr] 36 | pub struct PlainClientCreds {
[INFO] [stderr]    |            ---------------- `PlainClientCreds` is not local
[INFO] [stderr]    |
[INFO] [stderr]    = note: the derive macro `Serialize` defines the non-local `impl`, and may need to be changed
[INFO] [stderr]    = 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] [stderr]    = 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] [stderr]    = 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] [stderr]    = note: this warning originates in the derive macro `Serialize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stderr]   --> src/auth/mod.rs:35:56
[INFO] [stderr]    |
[INFO] [stderr] 35 | #[derive(Debug, Clone, PartialEq, Eq, Hash, Serialize, Deserialize)]
[INFO] [stderr]    |                                                        ^----------
[INFO] [stderr]    |                                                        |
[INFO] [stderr]    |                                                        `Deserialize` is not local
[INFO] [stderr]    |                                                        move the `impl` block outside of this constant `_IMPL_DESERIALIZE_FOR_PlainClientCreds`
[INFO] [stderr] 36 | pub struct PlainClientCreds {
[INFO] [stderr]    |            ---------------- `PlainClientCreds` is not local
[INFO] [stderr]    |
[INFO] [stderr]    = note: the derive macro `Deserialize` defines the non-local `impl`, and may need to be changed
[INFO] [stderr]    = 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] [stderr]    = 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] [stderr]    = 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] [stderr]    = note: this warning originates in the derive macro `Deserialize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stderr]    --> src/auth/mod.rs:108:45
[INFO] [stderr]     |
[INFO] [stderr] 108 | #[derive(Debug, Clone, PartialEq, Eq, Hash, Serialize, Deserialize)]
[INFO] [stderr]     |                                             ^--------
[INFO] [stderr]     |                                             |
[INFO] [stderr]     |                                             `Serialize` is not local
[INFO] [stderr]     |                                             move the `impl` block outside of this constant `_IMPL_SERIALIZE_FOR_Mechanism`
[INFO] [stderr] 109 | #[serde(rename_all = "snake_case")]
[INFO] [stderr] 110 | pub enum Mechanism {
[INFO] [stderr]     |          --------- `Mechanism` is not local
[INFO] [stderr]     |
[INFO] [stderr]     = note: the derive macro `Serialize` defines the non-local `impl`, and may need to be changed
[INFO] [stderr]     = 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] [stderr]     = 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] [stderr]     = 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] [stderr]     = note: this warning originates in the derive macro `Serialize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stderr]    --> src/auth/mod.rs:108:56
[INFO] [stderr]     |
[INFO] [stderr] 108 | #[derive(Debug, Clone, PartialEq, Eq, Hash, Serialize, Deserialize)]
[INFO] [stderr]     |                                                        ^----------
[INFO] [stderr]     |                                                        |
[INFO] [stderr]     |                                                        `Deserialize` is not local
[INFO] [stderr]     |                                                        move the `impl` block outside of this constant `_IMPL_DESERIALIZE_FOR_Mechanism`
[INFO] [stderr] 109 | #[serde(rename_all = "snake_case")]
[INFO] [stderr] 110 | pub enum Mechanism {
[INFO] [stderr]     |          --------- `Mechanism` is not local
[INFO] [stderr]     |
[INFO] [stderr]     = note: the derive macro `Deserialize` defines the non-local `impl`, and may need to be changed
[INFO] [stderr]     = 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] [stderr]     = 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] [stderr]     = 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] [stderr]     = note: this warning originates in the derive macro `Deserialize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stderr]  --> src/auth/client.rs:8:24
[INFO] [stderr]   |
[INFO] [stderr] 8 | #[derive(Debug, Clone, Serialize, Deserialize, PartialEq, Eq)]
[INFO] [stderr]   |                        ^--------
[INFO] [stderr]   |                        |
[INFO] [stderr]   |                        `Serialize` is not local
[INFO] [stderr]   |                        move the `impl` block outside of this constant `_IMPL_SERIALIZE_FOR_AuthRequest`
[INFO] [stderr] 9 | pub(crate) enum AuthRequest {
[INFO] [stderr]   |                 ----------- `AuthRequest` is not local
[INFO] [stderr]   |
[INFO] [stderr]   = note: the derive macro `Serialize` defines the non-local `impl`, and may need to be changed
[INFO] [stderr]   = 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] [stderr]   = 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] [stderr]   = 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] [stderr]   = note: this warning originates in the derive macro `Serialize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stderr]  --> src/auth/client.rs:8:35
[INFO] [stderr]   |
[INFO] [stderr] 8 | #[derive(Debug, Clone, Serialize, Deserialize, PartialEq, Eq)]
[INFO] [stderr]   |                                   ^----------
[INFO] [stderr]   |                                   |
[INFO] [stderr]   |                                   `Deserialize` is not local
[INFO] [stderr]   |                                   move the `impl` block outside of this constant `_IMPL_DESERIALIZE_FOR_AuthRequest`
[INFO] [stderr] 9 | pub(crate) enum AuthRequest {
[INFO] [stderr]   |                 ----------- `AuthRequest` is not local
[INFO] [stderr]   |
[INFO] [stderr]   = note: the derive macro `Deserialize` defines the non-local `impl`, and may need to be changed
[INFO] [stderr]   = 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] [stderr]   = 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] [stderr]   = 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] [stderr]   = note: this warning originates in the derive macro `Deserialize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stderr]   --> src/auth/client.rs:25:24
[INFO] [stderr]    |
[INFO] [stderr] 25 | #[derive(Debug, Clone, Serialize, Deserialize, PartialEq, Eq)]
[INFO] [stderr]    |                        ^--------
[INFO] [stderr]    |                        |
[INFO] [stderr]    |                        `Serialize` is not local
[INFO] [stderr]    |                        move the `impl` block outside of this constant `_IMPL_SERIALIZE_FOR_AuthReply`
[INFO] [stderr] 26 | pub(crate) enum AuthReply {
[INFO] [stderr]    |                 --------- `AuthReply` is not local
[INFO] [stderr]    |
[INFO] [stderr]    = note: the derive macro `Serialize` defines the non-local `impl`, and may need to be changed
[INFO] [stderr]    = 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] [stderr]    = 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] [stderr]    = 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] [stderr]    = note: this warning originates in the derive macro `Serialize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stderr]   --> src/auth/client.rs:25:35
[INFO] [stderr]    |
[INFO] [stderr] 25 | #[derive(Debug, Clone, Serialize, Deserialize, PartialEq, Eq)]
[INFO] [stderr]    |                                   ^----------
[INFO] [stderr]    |                                   |
[INFO] [stderr]    |                                   `Deserialize` is not local
[INFO] [stderr]    |                                   move the `impl` block outside of this constant `_IMPL_DESERIALIZE_FOR_AuthReply`
[INFO] [stderr] 26 | pub(crate) enum AuthReply {
[INFO] [stderr]    |                 --------- `AuthReply` is not local
[INFO] [stderr]    |
[INFO] [stderr]    = note: the derive macro `Deserialize` defines the non-local `impl`, and may need to be changed
[INFO] [stderr]    = 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] [stderr]    = 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] [stderr]    = 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] [stderr]    = note: this warning originates in the derive macro `Deserialize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stderr]    --> src/auth/client.rs:338:54
[INFO] [stderr]     |
[INFO] [stderr] 338 | #[derive(Debug, Default, Clone, PartialEq, Eq, Hash, Serialize, Deserialize)]
[INFO] [stderr]     |                                                      ^--------
[INFO] [stderr]     |                                                      |
[INFO] [stderr]     |                                                      `Serialize` is not local
[INFO] [stderr]     |                                                      move the `impl` block outside of this constant `_IMPL_SERIALIZE_FOR_AuthConfig`
[INFO] [stderr] 339 | pub struct AuthConfig {
[INFO] [stderr]     |            ---------- `AuthConfig` is not local
[INFO] [stderr]     |
[INFO] [stderr]     = note: the derive macro `Serialize` defines the non-local `impl`, and may need to be changed
[INFO] [stderr]     = 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] [stderr]     = 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] [stderr]     = 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] [stderr]     = note: this warning originates in the derive macro `Serialize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stderr]    --> src/auth/client.rs:338:65
[INFO] [stderr]     |
[INFO] [stderr] 338 | #[derive(Debug, Default, Clone, PartialEq, Eq, Hash, Serialize, Deserialize)]
[INFO] [stderr]     |                                                                 ^----------
[INFO] [stderr]     |                                                                 |
[INFO] [stderr]     |                                                                 `Deserialize` is not local
[INFO] [stderr]     |                                                                 move the `impl` block outside of this constant `_IMPL_DESERIALIZE_FOR_AuthConfig`
[INFO] [stderr] 339 | pub struct AuthConfig {
[INFO] [stderr]     |            ---------- `AuthConfig` is not local
[INFO] [stderr]     |
[INFO] [stderr]     = note: the derive macro `Deserialize` defines the non-local `impl`, and may need to be changed
[INFO] [stderr]     = 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] [stderr]     = 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] [stderr]     = 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] [stderr]     = note: this warning originates in the derive macro `Deserialize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stderr]    --> src/auth/client.rs:438:54
[INFO] [stderr]     |
[INFO] [stderr] 438 | #[derive(Debug, Default, Clone, PartialEq, Eq, Hash, Serialize, Deserialize)]
[INFO] [stderr]     |                                                      ^--------
[INFO] [stderr]     |                                                      |
[INFO] [stderr]     |                                                      `Serialize` is not local
[INFO] [stderr]     |                                                      move the `impl` block outside of this constant `_IMPL_SERIALIZE_FOR_AuthBuilder`
[INFO] [stderr] 439 | pub struct AuthBuilder {
[INFO] [stderr]     |            ----------- `AuthBuilder` is not local
[INFO] [stderr]     |
[INFO] [stderr]     = note: the derive macro `Serialize` defines the non-local `impl`, and may need to be changed
[INFO] [stderr]     = 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] [stderr]     = 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] [stderr]     = 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] [stderr]     = note: this warning originates in the derive macro `Serialize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stderr]    --> src/auth/client.rs:438:65
[INFO] [stderr]     |
[INFO] [stderr] 438 | #[derive(Debug, Default, Clone, PartialEq, Eq, Hash, Serialize, Deserialize)]
[INFO] [stderr]     |                                                                 ^----------
[INFO] [stderr]     |                                                                 |
[INFO] [stderr]     |                                                                 `Deserialize` is not local
[INFO] [stderr]     |                                                                 move the `impl` block outside of this constant `_IMPL_DESERIALIZE_FOR_AuthBuilder`
[INFO] [stderr] 439 | pub struct AuthBuilder {
[INFO] [stderr]     |            ----------- `AuthBuilder` is not local
[INFO] [stderr]     |
[INFO] [stderr]     = note: the derive macro `Deserialize` defines the non-local `impl`, and may need to be changed
[INFO] [stderr]     = 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] [stderr]     = 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] [stderr]     = 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] [stderr]     = note: this warning originates in the derive macro `Deserialize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stderr]    --> src/auth/curve.rs:142:38
[INFO] [stderr]     |
[INFO] [stderr] 142 | #[derive(Clone, PartialEq, Eq, Hash, Serialize, Deserialize)]
[INFO] [stderr]     |                                      ^--------
[INFO] [stderr]     |                                      |
[INFO] [stderr]     |                                      `Serialize` is not local
[INFO] [stderr]     |                                      move the `impl` block outside of this constant `_IMPL_SERIALIZE_FOR_CurvePublicKey`
[INFO] [stderr] 143 | #[serde(transparent)]
[INFO] [stderr] 144 | pub struct CurvePublicKey {
[INFO] [stderr]     |            -------------- `CurvePublicKey` is not local
[INFO] [stderr]     |
[INFO] [stderr]     = note: the derive macro `Serialize` defines the non-local `impl`, and may need to be changed
[INFO] [stderr]     = 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] [stderr]     = 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] [stderr]     = 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] [stderr]     = note: this warning originates in the derive macro `Serialize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stderr]    --> src/auth/curve.rs:142:49
[INFO] [stderr]     |
[INFO] [stderr] 142 | #[derive(Clone, PartialEq, Eq, Hash, Serialize, Deserialize)]
[INFO] [stderr]     |                                                 ^----------
[INFO] [stderr]     |                                                 |
[INFO] [stderr]     |                                                 `Deserialize` is not local
[INFO] [stderr]     |                                                 move the `impl` block outside of this constant `_IMPL_DESERIALIZE_FOR_CurvePublicKey`
[INFO] [stderr] 143 | #[serde(transparent)]
[INFO] [stderr] 144 | pub struct CurvePublicKey {
[INFO] [stderr]     |            -------------- `CurvePublicKey` is not local
[INFO] [stderr]     |
[INFO] [stderr]     = note: the derive macro `Deserialize` defines the non-local `impl`, and may need to be changed
[INFO] [stderr]     = 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] [stderr]     = 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] [stderr]     = 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] [stderr]     = note: this warning originates in the derive macro `Deserialize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stderr]    --> src/auth/curve.rs:268:38
[INFO] [stderr]     |
[INFO] [stderr] 268 | #[derive(Clone, PartialEq, Eq, Hash, Serialize, Deserialize)]
[INFO] [stderr]     |                                      ^--------
[INFO] [stderr]     |                                      |
[INFO] [stderr]     |                                      `Serialize` is not local
[INFO] [stderr]     |                                      move the `impl` block outside of this constant `_IMPL_SERIALIZE_FOR_CurveSecretKey`
[INFO] [stderr] 269 | #[serde(transparent)]
[INFO] [stderr] 270 | pub struct CurveSecretKey {
[INFO] [stderr]     |            -------------- `CurveSecretKey` is not local
[INFO] [stderr]     |
[INFO] [stderr]     = note: the derive macro `Serialize` defines the non-local `impl`, and may need to be changed
[INFO] [stderr]     = 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] [stderr]     = 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] [stderr]     = 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] [stderr]     = note: this warning originates in the derive macro `Serialize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stderr]    --> src/auth/curve.rs:268:49
[INFO] [stderr]     |
[INFO] [stderr] 268 | #[derive(Clone, PartialEq, Eq, Hash, Serialize, Deserialize)]
[INFO] [stderr]     |                                                 ^----------
[INFO] [stderr]     |                                                 |
[INFO] [stderr]     |                                                 `Deserialize` is not local
[INFO] [stderr]     |                                                 move the `impl` block outside of this constant `_IMPL_DESERIALIZE_FOR_CurveSecretKey`
[INFO] [stderr] 269 | #[serde(transparent)]
[INFO] [stderr] 270 | pub struct CurveSecretKey {
[INFO] [stderr]     |            -------------- `CurveSecretKey` is not local
[INFO] [stderr]     |
[INFO] [stderr]     = note: the derive macro `Deserialize` defines the non-local `impl`, and may need to be changed
[INFO] [stderr]     = 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] [stderr]     = 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] [stderr]     = 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] [stderr]     = note: this warning originates in the derive macro `Deserialize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stderr]    --> src/auth/curve.rs:517:45
[INFO] [stderr]     |
[INFO] [stderr] 517 | #[derive(Debug, Clone, PartialEq, Eq, Hash, Serialize, Deserialize)]
[INFO] [stderr]     |                                             ^--------
[INFO] [stderr]     |                                             |
[INFO] [stderr]     |                                             `Serialize` is not local
[INFO] [stderr]     |                                             move the `impl` block outside of this constant `_IMPL_SERIALIZE_FOR_CurveCert`
[INFO] [stderr] 518 | pub struct CurveCert {
[INFO] [stderr]     |            --------- `CurveCert` is not local
[INFO] [stderr]     |
[INFO] [stderr]     = note: the derive macro `Serialize` defines the non-local `impl`, and may need to be changed
[INFO] [stderr]     = 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] [stderr]     = 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] [stderr]     = 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] [stderr]     = note: this warning originates in the derive macro `Serialize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stderr]    --> src/auth/curve.rs:517:56
[INFO] [stderr]     |
[INFO] [stderr] 517 | #[derive(Debug, Clone, PartialEq, Eq, Hash, Serialize, Deserialize)]
[INFO] [stderr]     |                                                        ^----------
[INFO] [stderr]     |                                                        |
[INFO] [stderr]     |                                                        `Deserialize` is not local
[INFO] [stderr]     |                                                        move the `impl` block outside of this constant `_IMPL_DESERIALIZE_FOR_CurveCert`
[INFO] [stderr] 518 | pub struct CurveCert {
[INFO] [stderr]     |            --------- `CurveCert` is not local
[INFO] [stderr]     |
[INFO] [stderr]     = note: the derive macro `Deserialize` defines the non-local `impl`, and may need to be changed
[INFO] [stderr]     = 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] [stderr]     = 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] [stderr]     = 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] [stderr]     = note: this warning originates in the derive macro `Deserialize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stderr]    --> src/auth/curve.rs:645:45
[INFO] [stderr]     |
[INFO] [stderr] 645 | #[derive(Debug, Clone, PartialEq, Eq, Hash, Serialize, Deserialize)]
[INFO] [stderr]     |                                             ^--------
[INFO] [stderr]     |                                             |
[INFO] [stderr]     |                                             `Serialize` is not local
[INFO] [stderr]     |                                             move the `impl` block outside of this constant `_IMPL_SERIALIZE_FOR_CurveClientCreds`
[INFO] [stderr] 646 | pub struct CurveClientCreds {
[INFO] [stderr]     |            ---------------- `CurveClientCreds` is not local
[INFO] [stderr]     |
[INFO] [stderr]     = note: the derive macro `Serialize` defines the non-local `impl`, and may need to be changed
[INFO] [stderr]     = 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] [stderr]     = 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] [stderr]     = 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] [stderr]     = note: this warning originates in the derive macro `Serialize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stderr]    --> src/auth/curve.rs:645:56
[INFO] [stderr]     |
[INFO] [stderr] 645 | #[derive(Debug, Clone, PartialEq, Eq, Hash, Serialize, Deserialize)]
[INFO] [stderr]     |                                                        ^----------
[INFO] [stderr]     |                                                        |
[INFO] [stderr]     |                                                        `Deserialize` is not local
[INFO] [stderr]     |                                                        move the `impl` block outside of this constant `_IMPL_DESERIALIZE_FOR_CurveClientCreds`
[INFO] [stderr] 646 | pub struct CurveClientCreds {
[INFO] [stderr]     |            ---------------- `CurveClientCreds` is not local
[INFO] [stderr]     |
[INFO] [stderr]     = note: the derive macro `Deserialize` defines the non-local `impl`, and may need to be changed
[INFO] [stderr]     = 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] [stderr]     = 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] [stderr]     = 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] [stderr]     = note: this warning originates in the derive macro `Deserialize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stderr]    --> src/auth/curve.rs:710:45
[INFO] [stderr]     |
[INFO] [stderr] 710 | #[derive(Debug, Clone, PartialEq, Eq, Hash, Serialize, Deserialize)]
[INFO] [stderr]     |                                             ^--------
[INFO] [stderr]     |                                             |
[INFO] [stderr]     |                                             `Serialize` is not local
[INFO] [stderr]     |                                             move the `impl` block outside of this constant `_IMPL_SERIALIZE_FOR_CurveServerCreds`
[INFO] [stderr] 711 | pub struct CurveServerCreds {
[INFO] [stderr]     |            ---------------- `CurveServerCreds` is not local
[INFO] [stderr]     |
[INFO] [stderr]     = note: the derive macro `Serialize` defines the non-local `impl`, and may need to be changed
[INFO] [stderr]     = 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] [stderr]     = 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] [stderr]     = 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] [stderr]     = note: this warning originates in the derive macro `Serialize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stderr]    --> src/auth/curve.rs:710:56
[INFO] [stderr]     |
[INFO] [stderr] 710 | #[derive(Debug, Clone, PartialEq, Eq, Hash, Serialize, Deserialize)]
[INFO] [stderr]     |                                                        ^----------
[INFO] [stderr]     |                                                        |
[INFO] [stderr]     |                                                        `Deserialize` is not local
[INFO] [stderr]     |                                                        move the `impl` block outside of this constant `_IMPL_DESERIALIZE_FOR_CurveServerCreds`
[INFO] [stderr] 711 | pub struct CurveServerCreds {
[INFO] [stderr]     |            ---------------- `CurveServerCreds` is not local
[INFO] [stderr]     |
[INFO] [stderr]     = note: the derive macro `Deserialize` defines the non-local `impl`, and may need to be changed
[INFO] [stderr]     = 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] [stderr]     = 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] [stderr]     = 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] [stderr]     = note: this warning originates in the derive macro `Deserialize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: panic message is not a string literal
[INFO] [stderr]   --> src/ctx.rs:53:20
[INFO] [stderr]    |
[INFO] [stderr] 53 |             panic!(msg_from_errno(unsafe { sys::zmq_errno() }));
[INFO] [stderr]    |                    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: this usage of `panic!()` is deprecated; it will be a hard error in Rust 2021
[INFO] [stderr]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/panic-macro-consistency.html>
[INFO] [stderr] help: add a "{}" format string to `Display` the message
[INFO] [stderr]    |
[INFO] [stderr] 53 |             panic!("{}", msg_from_errno(unsafe { sys::zmq_errno() }));
[INFO] [stderr]    |                    +++++
[INFO] [stderr] 
[INFO] [stderr] warning: panic message is not a string literal
[INFO] [stderr]   --> src/ctx.rs:72:29
[INFO] [stderr]    |
[INFO] [stderr] 72 |                 _ => panic!(msg_from_errno(errno)),
[INFO] [stderr]    |                             ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: this usage of `panic!()` is deprecated; it will be a hard error in Rust 2021
[INFO] [stderr]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/panic-macro-consistency.html>
[INFO] [stderr] help: add a "{}" format string to `Display` the message
[INFO] [stderr]    |
[INFO] [stderr] 72 |                 _ => panic!("{}", msg_from_errno(errno)),
[INFO] [stderr]    |                             +++++
[INFO] [stderr] 
[INFO] [stderr] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stderr]    --> src/ctx.rs:115:47
[INFO] [stderr]     |
[INFO] [stderr] 115 | #[derive(Default, Clone, PartialEq, Eq, Hash, Serialize, Deserialize)]
[INFO] [stderr]     |                                               ^--------
[INFO] [stderr]     |                                               |
[INFO] [stderr]     |                                               `Serialize` is not local
[INFO] [stderr]     |                                               move the `impl` block outside of this constant `_IMPL_SERIALIZE_FOR_CtxConfig`
[INFO] [stderr] 116 | pub struct CtxConfig {
[INFO] [stderr]     |            --------- `CtxConfig` is not local
[INFO] [stderr]     |
[INFO] [stderr]     = note: the derive macro `Serialize` defines the non-local `impl`, and may need to be changed
[INFO] [stderr]     = 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] [stderr]     = 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] [stderr]     = 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] [stderr]     = note: this warning originates in the derive macro `Serialize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stderr]    --> src/ctx.rs:115:58
[INFO] [stderr]     |
[INFO] [stderr] 115 | #[derive(Default, Clone, PartialEq, Eq, Hash, Serialize, Deserialize)]
[INFO] [stderr]     |                                                          ^----------
[INFO] [stderr]     |                                                          |
[INFO] [stderr]     |                                                          `Deserialize` is not local
[INFO] [stderr]     |                                                          move the `impl` block outside of this constant `_IMPL_DESERIALIZE_FOR_CtxConfig`
[INFO] [stderr] 116 | pub struct CtxConfig {
[INFO] [stderr]     |            --------- `CtxConfig` is not local
[INFO] [stderr]     |
[INFO] [stderr]     = note: the derive macro `Deserialize` defines the non-local `impl`, and may need to be changed
[INFO] [stderr]     = 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] [stderr]     = 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] [stderr]     = 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] [stderr]     = note: this warning originates in the derive macro `Deserialize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stderr]    --> src/ctx.rs:166:47
[INFO] [stderr]     |
[INFO] [stderr] 166 | #[derive(Default, Clone, PartialEq, Eq, Hash, Serialize, Deserialize)]
[INFO] [stderr]     |                                               ^--------
[INFO] [stderr]     |                                               |
[INFO] [stderr]     |                                               `Serialize` is not local
[INFO] [stderr]     |                                               move the `impl` block outside of this constant `_IMPL_SERIALIZE_FOR_CtxBuilder`
[INFO] [stderr] 167 | pub struct CtxBuilder {
[INFO] [stderr]     |            ---------- `CtxBuilder` is not local
[INFO] [stderr]     |
[INFO] [stderr]     = note: the derive macro `Serialize` defines the non-local `impl`, and may need to be changed
[INFO] [stderr]     = 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] [stderr]     = 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] [stderr]     = 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] [stderr]     = note: this warning originates in the derive macro `Serialize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stderr]    --> src/ctx.rs:166:58
[INFO] [stderr]     |
[INFO] [stderr] 166 | #[derive(Default, Clone, PartialEq, Eq, Hash, Serialize, Deserialize)]
[INFO] [stderr]     |                                                          ^----------
[INFO] [stderr]     |                                                          |
[INFO] [stderr]     |                                                          `Deserialize` is not local
[INFO] [stderr]     |                                                          move the `impl` block outside of this constant `_IMPL_DESERIALIZE_FOR_CtxBuilder`
[INFO] [stderr] 167 | pub struct CtxBuilder {
[INFO] [stderr]     |            ---------- `CtxBuilder` is not local
[INFO] [stderr]     |
[INFO] [stderr]     = note: the derive macro `Deserialize` defines the non-local `impl`, and may need to be changed
[INFO] [stderr]     = 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] [stderr]     = 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] [stderr]     = 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] [stderr]     = note: this warning originates in the derive macro `Deserialize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stderr]     --> src/endpoint.rs:1212:45
[INFO] [stderr]      |
[INFO] [stderr] 1212 | #[derive(Debug, Clone, Eq, PartialEq, Hash, Serialize, Deserialize)]
[INFO] [stderr]      |                                             ^--------
[INFO] [stderr]      |                                             |
[INFO] [stderr]      |                                             `Serialize` is not local
[INFO] [stderr]      |                                             move the `impl` block outside of this constant `_IMPL_SERIALIZE_FOR_Endpoint`
[INFO] [stderr] 1213 | #[serde(rename_all = "snake_case")]
[INFO] [stderr] 1214 | pub enum Endpoint {
[INFO] [stderr]      |          -------- `Endpoint` is not local
[INFO] [stderr]      |
[INFO] [stderr]      = note: the derive macro `Serialize` defines the non-local `impl`, and may need to be changed
[INFO] [stderr]      = 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] [stderr]      = 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] [stderr]      = 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] [stderr]      = note: this warning originates in the derive macro `Serialize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stderr]     --> src/endpoint.rs:1212:56
[INFO] [stderr]      |
[INFO] [stderr] 1212 | #[derive(Debug, Clone, Eq, PartialEq, Hash, Serialize, Deserialize)]
[INFO] [stderr]      |                                                        ^----------
[INFO] [stderr]      |                                                        |
[INFO] [stderr]      |                                                        `Deserialize` is not local
[INFO] [stderr]      |                                                        move the `impl` block outside of this constant `_IMPL_DESERIALIZE_FOR_Endpoint`
[INFO] [stderr] 1213 | #[serde(rename_all = "snake_case")]
[INFO] [stderr] 1214 | pub enum Endpoint {
[INFO] [stderr]      |          -------- `Endpoint` is not local
[INFO] [stderr]      |
[INFO] [stderr]      = note: the derive macro `Deserialize` defines the non-local `impl`, and may need to be changed
[INFO] [stderr]      = 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] [stderr]      = 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] [stderr]      = 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] [stderr]      = note: this warning originates in the derive macro `Deserialize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stderr]   --> src/group.rs:62:28
[INFO] [stderr]    |
[INFO] [stderr] 62 |     pub fn to_string_lossy(&self) -> Cow<str> {
[INFO] [stderr]    |                            ^^^^^     -------- the same lifetime is hidden here
[INFO] [stderr]    |                            |
[INFO] [stderr]    |                            the lifetime is elided here
[INFO] [stderr]    |
[INFO] [stderr]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stderr]    = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default
[INFO] [stderr] help: use `'_` for type paths
[INFO] [stderr]    |
[INFO] [stderr] 62 |     pub fn to_string_lossy(&self) -> Cow<'_, str> {
[INFO] [stderr]    |                                          +++
[INFO] [stderr] 
[INFO] [stderr] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stderr]    --> src/group.rs:199:28
[INFO] [stderr]     |
[INFO] [stderr] 199 |     pub fn to_string_lossy(&self) -> Cow<str> {
[INFO] [stderr]     |                            ^^^^^     -------- the same lifetime is hidden here
[INFO] [stderr]     |                            |
[INFO] [stderr]     |                            the lifetime is elided here
[INFO] [stderr]     |
[INFO] [stderr]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stderr] help: use `'_` for type paths
[INFO] [stderr]     |
[INFO] [stderr] 199 |     pub fn to_string_lossy(&self) -> Cow<'_, str> {
[INFO] [stderr]     |                                          +++
[INFO] [stderr] 
[INFO] [stderr] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stderr]   --> src/msg.rs:52:45
[INFO] [stderr]    |
[INFO] [stderr] 52 | #[derive(Debug, Copy, Clone, PartialEq, Eq, Serialize, Deserialize, Hash)]
[INFO] [stderr]    |                                             ^--------
[INFO] [stderr]    |                                             |
[INFO] [stderr]    |                                             `Serialize` is not local
[INFO] [stderr]    |                                             move the `impl` block outside of this constant `_IMPL_SERIALIZE_FOR_RoutingId`
[INFO] [stderr] 53 | pub struct RoutingId(pub u32);
[INFO] [stderr]    |            --------- `RoutingId` is not local
[INFO] [stderr]    |
[INFO] [stderr]    = note: the derive macro `Serialize` defines the non-local `impl`, and may need to be changed
[INFO] [stderr]    = 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] [stderr]    = 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] [stderr]    = 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] [stderr]    = note: this warning originates in the derive macro `Serialize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stderr]   --> src/msg.rs:52:56
[INFO] [stderr]    |
[INFO] [stderr] 52 | #[derive(Debug, Copy, Clone, PartialEq, Eq, Serialize, Deserialize, Hash)]
[INFO] [stderr]    |                                                        ^----------
[INFO] [stderr]    |                                                        |
[INFO] [stderr]    |                                                        `Deserialize` is not local
[INFO] [stderr]    |                                                        move the `impl` block outside of this constant `_IMPL_DESERIALIZE_FOR_RoutingId`
[INFO] [stderr] 53 | pub struct RoutingId(pub u32);
[INFO] [stderr]    |            --------- `RoutingId` is not local
[INFO] [stderr]    |
[INFO] [stderr]    = note: the derive macro `Deserialize` defines the non-local `impl`, and may need to be changed
[INFO] [stderr]    = 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] [stderr]    = 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] [stderr]    = 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] [stderr]    = note: this warning originates in the derive macro `Deserialize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: panic message is not a string literal
[INFO] [stderr]    --> src/msg.rs:219:20
[INFO] [stderr]     |
[INFO] [stderr] 219 |             panic!(msg_from_errno(errno));
[INFO] [stderr]     |                    ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = note: this usage of `panic!()` is deprecated; it will be a hard error in Rust 2021
[INFO] [stderr]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/panic-macro-consistency.html>
[INFO] [stderr] help: add a "{}" format string to `Display` the message
[INFO] [stderr]     |
[INFO] [stderr] 219 |             panic!("{}", msg_from_errno(errno));
[INFO] [stderr]     |                    +++++
[INFO] [stderr] 
[INFO] [stderr] warning: panic message is not a string literal
[INFO] [stderr]    --> src/msg.rs:272:20
[INFO] [stderr]     |
[INFO] [stderr] 272 |             panic!(msg_from_errno(errno));
[INFO] [stderr]     |                    ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = note: this usage of `panic!()` is deprecated; it will be a hard error in Rust 2021
[INFO] [stderr]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/panic-macro-consistency.html>
[INFO] [stderr] help: add a "{}" format string to `Display` the message
[INFO] [stderr]     |
[INFO] [stderr] 272 |             panic!("{}", msg_from_errno(errno));
[INFO] [stderr]     |                    +++++
[INFO] [stderr] 
[INFO] [stderr] warning: panic message is not a string literal
[INFO] [stderr]    --> src/msg.rs:289:20
[INFO] [stderr]     |
[INFO] [stderr] 289 |             panic!(msg_from_errno(sys::zmq_errno()));
[INFO] [stderr]     |                    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = note: this usage of `panic!()` is deprecated; it will be a hard error in Rust 2021
[INFO] [stderr]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/panic-macro-consistency.html>
[INFO] [stderr] help: add a "{}" format string to `Display` the message
[INFO] [stderr]     |
[INFO] [stderr] 289 |             panic!("{}", msg_from_errno(sys::zmq_errno()));
[INFO] [stderr]     |                    +++++
[INFO] [stderr] 
[INFO] [stderr] warning: panic message is not a string literal
[INFO] [stderr]    --> src/msg.rs:356:29
[INFO] [stderr]     |
[INFO] [stderr] 356 |                 _ => panic!(msg_from_errno(errno)),
[INFO] [stderr]     |                             ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = note: this usage of `panic!()` is deprecated; it will be a hard error in Rust 2021
[INFO] [stderr]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/panic-macro-consistency.html>
[INFO] [stderr] help: add a "{}" format string to `Display` the message
[INFO] [stderr]     |
[INFO] [stderr] 356 |                 _ => panic!("{}", msg_from_errno(errno)),
[INFO] [stderr]     |                             +++++
[INFO] [stderr] 
[INFO] [stderr] warning: unused return value of `Box::<T>::from_raw` that must be used
[INFO] [stderr]    --> src/msg.rs:388:13
[INFO] [stderr]     |
[INFO] [stderr] 388 |             Box::from_raw(data as *mut u8);
[INFO] [stderr]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = note: call `drop(Box::from_raw(ptr))` if you intend to drop the `Box`
[INFO] [stderr]     = note: `#[warn(unused_must_use)]` on by default
[INFO] [stderr] help: use `let _ = ...` to ignore the resulting value
[INFO] [stderr]     |
[INFO] [stderr] 388 |             let _ = Box::from_raw(data as *mut u8);
[INFO] [stderr]     |             +++++++
[INFO] [stderr] 
[INFO] [stderr] warning: panic message is not a string literal
[INFO] [stderr]   --> src/old.rs:30:25
[INFO] [stderr]    |
[INFO] [stderr] 30 |             _ => panic!(msg_from_errno(errno)),
[INFO] [stderr]    |                         ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: this usage of `panic!()` is deprecated; it will be a hard error in Rust 2021
[INFO] [stderr]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/panic-macro-consistency.html>
[INFO] [stderr] help: add a "{}" format string to `Display` the message
[INFO] [stderr]    |
[INFO] [stderr] 30 |             _ => panic!("{}", msg_from_errno(errno)),
[INFO] [stderr]    |                         +++++
[INFO] [stderr] 
[INFO] [stderr] warning: panic message is not a string literal
[INFO] [stderr]   --> src/old.rs:48:25
[INFO] [stderr]    |
[INFO] [stderr] 48 |             _ => panic!(msg_from_errno(errno)),
[INFO] [stderr]    |                         ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: this usage of `panic!()` is deprecated; it will be a hard error in Rust 2021
[INFO] [stderr]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/panic-macro-consistency.html>
[INFO] [stderr] help: add a "{}" format string to `Display` the message
[INFO] [stderr]    |
[INFO] [stderr] 48 |             _ => panic!("{}", msg_from_errno(errno)),
[INFO] [stderr]    |                         +++++
[INFO] [stderr] 
[INFO] [stderr] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stderr]    --> src/poll.rs:334:17
[INFO] [stderr]     |
[INFO] [stderr] 334 |     pub fn iter(&self) -> Iter {
[INFO] [stderr]     |                 ^^^^^     ---- the same lifetime is hidden here
[INFO] [stderr]     |                 |
[INFO] [stderr]     |                 the lifetime is elided here
[INFO] [stderr]     |
[INFO] [stderr]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stderr] help: use `'_` for type paths
[INFO] [stderr]     |
[INFO] [stderr] 334 |     pub fn iter(&self) -> Iter<'_> {
[INFO] [stderr]     |                               ++++
[INFO] [stderr] 
[INFO] [stderr] warning: panic message is not a string literal
[INFO] [stderr]    --> src/poll.rs:514:29
[INFO] [stderr]     |
[INFO] [stderr] 514 |                 _ => panic!(msg_from_errno(errno)),
[INFO] [stderr]     |                             ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = note: this usage of `panic!()` is deprecated; it will be a hard error in Rust 2021
[INFO] [stderr]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/panic-macro-consistency.html>
[INFO] [stderr] help: add a "{}" format string to `Display` the message
[INFO] [stderr]     |
[INFO] [stderr] 514 |                 _ => panic!("{}", msg_from_errno(errno)),
[INFO] [stderr]     |                             +++++
[INFO] [stderr] 
[INFO] [stderr] warning: panic message is not a string literal
[INFO] [stderr]    --> src/poll.rs:551:29
[INFO] [stderr]     |
[INFO] [stderr] 551 |                 _ => panic!(msg_from_errno(errno)),
[INFO] [stderr]     |                             ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = note: this usage of `panic!()` is deprecated; it will be a hard error in Rust 2021
[INFO] [stderr]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/panic-macro-consistency.html>
[INFO] [stderr] help: add a "{}" format string to `Display` the message
[INFO] [stderr]     |
[INFO] [stderr] 551 |                 _ => panic!("{}", msg_from_errno(errno)),
[INFO] [stderr]     |                             +++++
[INFO] [stderr] 
[INFO] [stderr] warning: panic message is not a string literal
[INFO] [stderr]    --> src/poll.rs:612:29
[INFO] [stderr]     |
[INFO] [stderr] 612 |                 _ => panic!(msg_from_errno(errno)),
[INFO] [stderr]     |                             ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = note: this usage of `panic!()` is deprecated; it will be a hard error in Rust 2021
[INFO] [stderr]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/panic-macro-consistency.html>
[INFO] [stderr] help: add a "{}" format string to `Display` the message
[INFO] [stderr]     |
[INFO] [stderr] 612 |                 _ => panic!("{}", msg_from_errno(errno)),
[INFO] [stderr]     |                             +++++
[INFO] [stderr] 
[INFO] [stderr] warning: panic message is not a string literal
[INFO] [stderr]    --> src/poll.rs:638:29
[INFO] [stderr]     |
[INFO] [stderr] 638 |                 _ => panic!(msg_from_errno(errno)),
[INFO] [stderr]     |                             ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = note: this usage of `panic!()` is deprecated; it will be a hard error in Rust 2021
[INFO] [stderr]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/panic-macro-consistency.html>
[INFO] [stderr] help: add a "{}" format string to `Display` the message
[INFO] [stderr]     |
[INFO] [stderr] 638 |                 _ => panic!("{}", msg_from_errno(errno)),
[INFO] [stderr]     |                             +++++
[INFO] [stderr] 
[INFO] [stderr] warning: panic message is not a string literal
[INFO] [stderr]    --> src/poll.rs:688:29
[INFO] [stderr]     |
[INFO] [stderr] 688 |                 _ => panic!(msg_from_errno(errno)),
[INFO] [stderr]     |                             ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = note: this usage of `panic!()` is deprecated; it will be a hard error in Rust 2021
[INFO] [stderr]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/panic-macro-consistency.html>
[INFO] [stderr] help: add a "{}" format string to `Display` the message
[INFO] [stderr]     |
[INFO] [stderr] 688 |                 _ => panic!("{}", msg_from_errno(errno)),
[INFO] [stderr]     |                             +++++
[INFO] [stderr] 
[INFO] [stderr] warning: panic message is not a string literal
[INFO] [stderr]    --> src/poll.rs:716:29
[INFO] [stderr]     |
[INFO] [stderr] 716 |                 _ => panic!(msg_from_errno(errno)),
[INFO] [stderr]     |                             ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = note: this usage of `panic!()` is deprecated; it will be a hard error in Rust 2021
[INFO] [stderr]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/panic-macro-consistency.html>
[INFO] [stderr] help: add a "{}" format string to `Display` the message
[INFO] [stderr]     |
[INFO] [stderr] 716 |                 _ => panic!("{}", msg_from_errno(errno)),
[INFO] [stderr]     |                             +++++
[INFO] [stderr] 
[INFO] [stderr] warning: panic message is not a string literal
[INFO] [stderr]    --> src/poll.rs:746:29
[INFO] [stderr]     |
[INFO] [stderr] 746 |                 _ => panic!(msg_from_errno(errno)),
[INFO] [stderr]     |                             ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = note: this usage of `panic!()` is deprecated; it will be a hard error in Rust 2021
[INFO] [stderr]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/panic-macro-consistency.html>
[INFO] [stderr] help: add a "{}" format string to `Display` the message
[INFO] [stderr]     |
[INFO] [stderr] 746 |                 _ => panic!("{}", msg_from_errno(errno)),
[INFO] [stderr]     |                             +++++
[INFO] [stderr] 
[INFO] [stderr] warning: panic message is not a string literal
[INFO] [stderr]    --> src/poll.rs:812:20
[INFO] [stderr]     |
[INFO] [stderr] 812 |             panic!(msg_from_errno(unsafe { sys::zmq_errno() }));
[INFO] [stderr]     |                    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = note: this usage of `panic!()` is deprecated; it will be a hard error in Rust 2021
[INFO] [stderr]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/panic-macro-consistency.html>
[INFO] [stderr] help: add a "{}" format string to `Display` the message
[INFO] [stderr]     |
[INFO] [stderr] 812 |             panic!("{}", msg_from_errno(unsafe { sys::zmq_errno() }));
[INFO] [stderr]     |                    +++++
[INFO] [stderr] 
[INFO] [stderr] warning: panic message is not a string literal
[INFO] [stderr]    --> src/poll.rs:828:29
[INFO] [stderr]     |
[INFO] [stderr] 828 |                 _ => panic!(msg_from_errno(errno)),
[INFO] [stderr]     |                             ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = note: this usage of `panic!()` is deprecated; it will be a hard error in Rust 2021
[INFO] [stderr]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/panic-macro-consistency.html>
[INFO] [stderr] help: add a "{}" format string to `Display` the message
[INFO] [stderr]     |
[INFO] [stderr] 828 |                 _ => panic!("{}", msg_from_errno(errno)),
[INFO] [stderr]     |                             +++++
[INFO] [stderr] 
[INFO] [stderr] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stderr]   --> src/socket/mod.rs:61:45
[INFO] [stderr]    |
[INFO] [stderr] 61 | #[derive(Debug, Clone, PartialEq, Eq, Hash, Serialize, Deserialize)]
[INFO] [stderr]    |                                             ^--------
[INFO] [stderr]    |                                             |
[INFO] [stderr]    |                                             `Serialize` is not local
[INFO] [stderr]    |                                             move the `impl` block outside of this constant `_IMPL_SERIALIZE_FOR_ConfigType`
[INFO] [stderr] 62 | #[serde(rename_all = "snake_case")]
[INFO] [stderr] 63 | pub enum ConfigType {
[INFO] [stderr]    |          ---------- `ConfigType` is not local
[INFO] [stderr]    |
[INFO] [stderr]    = note: the derive macro `Serialize` defines the non-local `impl`, and may need to be changed
[INFO] [stderr]    = 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] [stderr]    = 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] [stderr]    = 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] [stderr]    = note: this warning originates in the derive macro `Serialize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stderr]   --> src/socket/mod.rs:61:56
[INFO] [stderr]    |
[INFO] [stderr] 61 | #[derive(Debug, Clone, PartialEq, Eq, Hash, Serialize, Deserialize)]
[INFO] [stderr]    |                                                        ^----------
[INFO] [stderr]    |                                                        |
[INFO] [stderr]    |                                                        `Deserialize` is not local
[INFO] [stderr]    |                                                        move the `impl` block outside of this constant `_IMPL_DESERIALIZE_FOR_ConfigType`
[INFO] [stderr] 62 | #[serde(rename_all = "snake_case")]
[INFO] [stderr] 63 | pub enum ConfigType {
[INFO] [stderr]    |          ---------- `ConfigType` is not local
[INFO] [stderr]    |
[INFO] [stderr]    = note: the derive macro `Deserialize` defines the non-local `impl`, and may need to be changed
[INFO] [stderr]    = 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] [stderr]    = 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] [stderr]    = 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] [stderr]    = note: this warning originates in the derive macro `Deserialize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stderr]    --> src/socket/client.rs:138:54
[INFO] [stderr]     |
[INFO] [stderr] 138 | #[derive(Debug, Default, Clone, PartialEq, Eq, Hash, Serialize, Deserialize)]
[INFO] [stderr]     |                                                      ^--------
[INFO] [stderr]     |                                                      |
[INFO] [stderr]     |                                                      `Serialize` is not local
[INFO] [stderr]     |                                                      move the `impl` block outside of this constant `_IMPL_SERIALIZE_FOR_ClientConfig`
[INFO] [stderr] ...
[INFO] [stderr] 141 | pub struct ClientConfig {
[INFO] [stderr]     |            ------------ `ClientConfig` is not local
[INFO] [stderr]     |
[INFO] [stderr]     = note: the derive macro `Serialize` defines the non-local `impl`, and may need to be changed
[INFO] [stderr]     = 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] [stderr]     = 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] [stderr]     = 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] [stderr]     = note: this warning originates in the derive macro `Serialize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stderr]    --> src/socket/client.rs:138:65
[INFO] [stderr]     |
[INFO] [stderr] 138 | #[derive(Debug, Default, Clone, PartialEq, Eq, Hash, Serialize, Deserialize)]
[INFO] [stderr]     |                                                                 ^----------
[INFO] [stderr]     |                                                                 |
[INFO] [stderr]     |                                                                 `Deserialize` is not local
[INFO] [stderr]     |                                                                 move the `impl` block outside of this constant `_IMPL_DESERIALIZE_FOR_ClientConfig`
[INFO] [stderr] ...
[INFO] [stderr] 141 | pub struct ClientConfig {
[INFO] [stderr]     |            ------------ `ClientConfig` is not local
[INFO] [stderr]     |
[INFO] [stderr]     = note: the derive macro `Deserialize` defines the non-local `impl`, and may need to be changed
[INFO] [stderr]     = 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] [stderr]     = 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] [stderr]     = 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] [stderr]     = note: this warning originates in the derive macro `Deserialize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stderr]    --> src/socket/client.rs:174:17
[INFO] [stderr]     |
[INFO] [stderr] 174 | #[derive(Clone, Serialize, Deserialize)]
[INFO] [stderr]     |                 ^--------
[INFO] [stderr]     |                 |
[INFO] [stderr]     |                 `Serialize` is not local
[INFO] [stderr]     |                 move the `impl` block outside of this constant `_IMPL_SERIALIZE_FOR_FlatClientConfig`
[INFO] [stderr] 175 | struct FlatClientConfig {
[INFO] [stderr]     |        ---------------- `FlatClientConfig` is not local
[INFO] [stderr]     |
[INFO] [stderr]     = note: the derive macro `Serialize` defines the non-local `impl`, and may need to be changed
[INFO] [stderr]     = 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] [stderr]     = 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] [stderr]     = 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] [stderr]     = note: this warning originates in the derive macro `Serialize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stderr]    --> src/socket/client.rs:174:28
[INFO] [stderr]     |
[INFO] [stderr] 174 | #[derive(Clone, Serialize, Deserialize)]
[INFO] [stderr]     |                            ^----------
[INFO] [stderr]     |                            |
[INFO] [stderr]     |                            `Deserialize` is not local
[INFO] [stderr]     |                            move the `impl` block outside of this constant `_IMPL_DESERIALIZE_FOR_FlatClientConfig`
[INFO] [stderr] 175 | struct FlatClientConfig {
[INFO] [stderr]     |        ---------------- `FlatClientConfig` is not local
[INFO] [stderr]     |
[INFO] [stderr]     = note: the derive macro `Deserialize` defines the non-local `impl`, and may need to be changed
[INFO] [stderr]     = 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] [stderr]     = 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] [stderr]     = 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] [stderr]     = note: this warning originates in the derive macro `Deserialize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stderr]    --> src/socket/client.rs:283:54
[INFO] [stderr]     |
[INFO] [stderr] 283 | #[derive(Debug, Default, Clone, PartialEq, Eq, Hash, Serialize, Deserialize)]
[INFO] [stderr]     |                                                      ^--------
[INFO] [stderr]     |                                                      |
[INFO] [stderr]     |                                                      `Serialize` is not local
[INFO] [stderr]     |                                                      move the `impl` block outside of this constant `_IMPL_SERIALIZE_FOR_ClientBuilder`
[INFO] [stderr] 284 | pub struct ClientBuilder {
[INFO] [stderr]     |            ------------- `ClientBuilder` is not local
[INFO] [stderr]     |
[INFO] [stderr]     = note: the derive macro `Serialize` defines the non-local `impl`, and may need to be changed
[INFO] [stderr]     = 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] [stderr]     = 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] [stderr]     = 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] [stderr]     = note: this warning originates in the derive macro `Serialize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stderr]    --> src/socket/client.rs:283:65
[INFO] [stderr]     |
[INFO] [stderr] 283 | #[derive(Debug, Default, Clone, PartialEq, Eq, Hash, Serialize, Deserialize)]
[INFO] [stderr]     |                                                                 ^----------
[INFO] [stderr]     |                                                                 |
[INFO] [stderr]     |                                                                 `Deserialize` is not local
[INFO] [stderr]     |                                                                 move the `impl` block outside of this constant `_IMPL_DESERIALIZE_FOR_ClientBuilder`
[INFO] [stderr] 284 | pub struct ClientBuilder {
[INFO] [stderr]     |            ------------- `ClientBuilder` is not local
[INFO] [stderr]     |
[INFO] [stderr]     = note: the derive macro `Deserialize` defines the non-local `impl`, and may need to be changed
[INFO] [stderr]     = 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] [stderr]     = 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] [stderr]     = 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] [stderr]     = note: this warning originates in the derive macro `Deserialize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: panic message is not a string literal
[INFO] [stderr]   --> src/socket/dish.rs:30:25
[INFO] [stderr]    |
[INFO] [stderr] 30 |             _ => panic!(msg_from_errno(errno)),
[INFO] [stderr]    |                         ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: this usage of `panic!()` is deprecated; it will be a hard error in Rust 2021
[INFO] [stderr]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/panic-macro-consistency.html>
[INFO] [stderr] help: add a "{}" format string to `Display` the message
[INFO] [stderr]    |
[INFO] [stderr] 30 |             _ => panic!("{}", msg_from_errno(errno)),
[INFO] [stderr]    |                         +++++
[INFO] [stderr] 
[INFO] [stderr] warning: panic message is not a string literal
[INFO] [stderr]   --> src/socket/dish.rs:53:25
[INFO] [stderr]    |
[INFO] [stderr] 53 |             _ => panic!(msg_from_errno(errno)),
[INFO] [stderr]    |                         ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: this usage of `panic!()` is deprecated; it will be a hard error in Rust 2021
[INFO] [stderr]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/panic-macro-consistency.html>
[INFO] [stderr] help: add a "{}" format string to `Display` the message
[INFO] [stderr]    |
[INFO] [stderr] 53 |             _ => panic!("{}", msg_from_errno(errno)),
[INFO] [stderr]    |                         +++++
[INFO] [stderr] 
[INFO] [stderr] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stderr]    --> src/socket/dish.rs:312:54
[INFO] [stderr]     |
[INFO] [stderr] 312 | #[derive(Debug, Default, Clone, PartialEq, Eq, Hash, Serialize, Deserialize)]
[INFO] [stderr]     |                                                      ^--------
[INFO] [stderr]     |                                                      |
[INFO] [stderr]     |                                                      `Serialize` is not local
[INFO] [stderr]     |                                                      move the `impl` block outside of this constant `_IMPL_SERIALIZE_FOR_DishConfig`
[INFO] [stderr] ...
[INFO] [stderr] 315 | pub struct DishConfig {
[INFO] [stderr]     |            ---------- `DishConfig` is not local
[INFO] [stderr]     |
[INFO] [stderr]     = note: the derive macro `Serialize` defines the non-local `impl`, and may need to be changed
[INFO] [stderr]     = 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] [stderr]     = 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] [stderr]     = 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] [stderr]     = note: this warning originates in the derive macro `Serialize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stderr]    --> src/socket/dish.rs:312:65
[INFO] [stderr]     |
[INFO] [stderr] 312 | #[derive(Debug, Default, Clone, PartialEq, Eq, Hash, Serialize, Deserialize)]
[INFO] [stderr]     |                                                                 ^----------
[INFO] [stderr]     |                                                                 |
[INFO] [stderr]     |                                                                 `Deserialize` is not local
[INFO] [stderr]     |                                                                 move the `impl` block outside of this constant `_IMPL_DESERIALIZE_FOR_DishConfig`
[INFO] [stderr] ...
[INFO] [stderr] 315 | pub struct DishConfig {
[INFO] [stderr]     |            ---------- `DishConfig` is not local
[INFO] [stderr]     |
[INFO] [stderr]     = note: the derive macro `Deserialize` defines the non-local `impl`, and may need to be changed
[INFO] [stderr]     = 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] [stderr]     = 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] [stderr]     = 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] [stderr]     = note: this warning originates in the derive macro `Deserialize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stderr]    --> src/socket/dish.rs:362:17
[INFO] [stderr]     |
[INFO] [stderr] 362 | #[derive(Clone, Serialize, Deserialize)]
[INFO] [stderr]     |                 ^--------
[INFO] [stderr]     |                 |
[INFO] [stderr]     |                 `Serialize` is not local
[INFO] [stderr]     |                 move the `impl` block outside of this constant `_IMPL_SERIALIZE_FOR_FlatDishConfig`
[INFO] [stderr] 363 | struct FlatDishConfig {
[INFO] [stderr]     |        -------------- `FlatDishConfig` is not local
[INFO] [stderr]     |
[INFO] [stderr]     = note: the derive macro `Serialize` defines the non-local `impl`, and may need to be changed
[INFO] [stderr]     = 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] [stderr]     = 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] [stderr]     = 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] [stderr]     = note: this warning originates in the derive macro `Serialize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stderr]    --> src/socket/dish.rs:362:28
[INFO] [stderr]     |
[INFO] [stderr] 362 | #[derive(Clone, Serialize, Deserialize)]
[INFO] [stderr]     |                            ^----------
[INFO] [stderr]     |                            |
[INFO] [stderr]     |                            `Deserialize` is not local
[INFO] [stderr]     |                            move the `impl` block outside of this constant `_IMPL_DESERIALIZE_FOR_FlatDishConfig`
[INFO] [stderr] 363 | struct FlatDishConfig {
[INFO] [stderr]     |        -------------- `FlatDishConfig` is not local
[INFO] [stderr]     |
[INFO] [stderr]     = note: the derive macro `Deserialize` defines the non-local `impl`, and may need to be changed
[INFO] [stderr]     = 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] [stderr]     = 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] [stderr]     = 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] [stderr]     = note: this warning originates in the derive macro `Deserialize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stderr]    --> src/socket/dish.rs:432:54
[INFO] [stderr]     |
[INFO] [stderr] 432 | #[derive(Debug, Default, Clone, PartialEq, Eq, Hash, Serialize, Deserialize)]
[INFO] [stderr]     |                                                      ^--------
[INFO] [stderr]     |                                                      |
[INFO] [stderr]     |                                                      `Serialize` is not local
[INFO] [stderr]     |                                                      move the `impl` block outside of this constant `_IMPL_SERIALIZE_FOR_DishBuilder`
[INFO] [stderr] 433 | pub struct DishBuilder {
[INFO] [stderr]     |            ----------- `DishBuilder` is not local
[INFO] [stderr]     |
[INFO] [stderr]     = note: the derive macro `Serialize` defines the non-local `impl`, and may need to be changed
[INFO] [stderr]     = 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] [stderr]     = 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] [stderr]     = 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] [stderr]     = note: this warning originates in the derive macro `Serialize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stderr]    --> src/socket/dish.rs:432:65
[INFO] [stderr]     |
[INFO] [stderr] 432 | #[derive(Debug, Default, Clone, PartialEq, Eq, Hash, Serialize, Deserialize)]
[INFO] [stderr]     |                                                                 ^----------
[INFO] [stderr]     |                                                                 |
[INFO] [stderr]     |                                                                 `Deserialize` is not local
[INFO] [stderr]     |                                                                 move the `impl` block outside of this constant `_IMPL_DESERIALIZE_FOR_DishBuilder`
[INFO] [stderr] 433 | pub struct DishBuilder {
[INFO] [stderr]     |            ----------- `DishBuilder` is not local
[INFO] [stderr]     |
[INFO] [stderr]     = note: the derive macro `Deserialize` defines the non-local `impl`, and may need to be changed
[INFO] [stderr]     = 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] [stderr]     = 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] [stderr]     = 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] [stderr]     = note: this warning originates in the derive macro `Deserialize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stderr]    --> src/socket/gather.rs:136:54
[INFO] [stderr]     |
[INFO] [stderr] 136 | #[derive(Debug, Default, Clone, PartialEq, Eq, Hash, Serialize, Deserialize)]
[INFO] [stderr]     |                                                      ^--------
[INFO] [stderr]     |                                                      |
[INFO] [stderr]     |                                                      `Serialize` is not local
[INFO] [stderr]     |                                                      move the `impl` block outside of this constant `_IMPL_SERIALIZE_FOR_GatherConfig`
[INFO] [stderr] ...
[INFO] [stderr] 139 | pub struct GatherConfig {
[INFO] [stderr]     |            ------------ `GatherConfig` is not local
[INFO] [stderr]     |
[INFO] [stderr]     = note: the derive macro `Serialize` defines the non-local `impl`, and may need to be changed
[INFO] [stderr]     = 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] [stderr]     = 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] [stderr]     = 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] [stderr]     = note: this warning originates in the derive macro `Serialize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stderr]    --> src/socket/gather.rs:136:65
[INFO] [stderr]     |
[INFO] [stderr] 136 | #[derive(Debug, Default, Clone, PartialEq, Eq, Hash, Serialize, Deserialize)]
[INFO] [stderr]     |                                                                 ^----------
[INFO] [stderr]     |                                                                 |
[INFO] [stderr]     |                                                                 `Deserialize` is not local
[INFO] [stderr]     |                                                                 move the `impl` block outside of this constant `_IMPL_DESERIALIZE_FOR_GatherConfig`
[INFO] [stderr] ...
[INFO] [stderr] 139 | pub struct GatherConfig {
[INFO] [stderr]     |            ------------ `GatherConfig` is not local
[INFO] [stderr]     |
[INFO] [stderr]     = note: the derive macro `Deserialize` defines the non-local `impl`, and may need to be changed
[INFO] [stderr]     = 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] [stderr]     = 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] [stderr]     = 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] [stderr]     = note: this warning originates in the derive macro `Deserialize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stderr]    --> src/socket/gather.rs:169:17
[INFO] [stderr]     |
[INFO] [stderr] 169 | #[derive(Clone, Serialize, Deserialize)]
[INFO] [stderr]     |                 ^--------
[INFO] [stderr]     |                 |
[INFO] [stderr]     |                 `Serialize` is not local
[INFO] [stderr]     |                 move the `impl` block outside of this constant `_IMPL_SERIALIZE_FOR_FlatGatherConfig`
[INFO] [stderr] 170 | struct FlatGatherConfig {
[INFO] [stderr]     |        ---------------- `FlatGatherConfig` is not local
[INFO] [stderr]     |
[INFO] [stderr]     = note: the derive macro `Serialize` defines the non-local `impl`, and may need to be changed
[INFO] [stderr]     = 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] [stderr]     = 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] [stderr]     = 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] [stderr]     = note: this warning originates in the derive macro `Serialize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stderr]    --> src/socket/gather.rs:169:28
[INFO] [stderr]     |
[INFO] [stderr] 169 | #[derive(Clone, Serialize, Deserialize)]
[INFO] [stderr]     |                            ^----------
[INFO] [stderr]     |                            |
[INFO] [stderr]     |                            `Deserialize` is not local
[INFO] [stderr]     |                            move the `impl` block outside of this constant `_IMPL_DESERIALIZE_FOR_FlatGatherConfig`
[INFO] [stderr] 170 | struct FlatGatherConfig {
[INFO] [stderr]     |        ---------------- `FlatGatherConfig` is not local
[INFO] [stderr]     |
[INFO] [stderr]     = note: the derive macro `Deserialize` defines the non-local `impl`, and may need to be changed
[INFO] [stderr]     = 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] [stderr]     = 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] [stderr]     = 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] [stderr]     = note: this warning originates in the derive macro `Deserialize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stderr]    --> src/socket/gather.rs:255:54
[INFO] [stderr]     |
[INFO] [stderr] 255 | #[derive(Debug, Default, Clone, PartialEq, Eq, Hash, Serialize, Deserialize)]
[INFO] [stderr]     |                                                      ^--------
[INFO] [stderr]     |                                                      |
[INFO] [stderr]     |                                                      `Serialize` is not local
[INFO] [stderr]     |                                                      move the `impl` block outside of this constant `_IMPL_SERIALIZE_FOR_GatherBuilder`
[INFO] [stderr] 256 | pub struct GatherBuilder {
[INFO] [stderr]     |            ------------- `GatherBuilder` is not local
[INFO] [stderr]     |
[INFO] [stderr]     = note: the derive macro `Serialize` defines the non-local `impl`, and may need to be changed
[INFO] [stderr]     = 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] [stderr]     = 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] [stderr]     = 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] [stderr]     = note: this warning originates in the derive macro `Serialize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stderr]    --> src/socket/gather.rs:255:65
[INFO] [stderr]     |
[INFO] [stderr] 255 | #[derive(Debug, Default, Clone, PartialEq, Eq, Hash, Serialize, Deserialize)]
[INFO] [stderr]     |                                                                 ^----------
[INFO] [stderr]     |                                                                 |
[INFO] [stderr]     |                                                                 `Deserialize` is not local
[INFO] [stderr]     |                                                                 move the `impl` block outside of this constant `_IMPL_DESERIALIZE_FOR_GatherBuilder`
[INFO] [stderr] 256 | pub struct GatherBuilder {
[INFO] [stderr]     |            ------------- `GatherBuilder` is not local
[INFO] [stderr]     |
[INFO] [stderr]     = note: the derive macro `Deserialize` defines the non-local `impl`, and may need to be changed
[INFO] [stderr]     = 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] [stderr]     = 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] [stderr]     = 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] [stderr]     = note: this warning originates in the derive macro `Deserialize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stderr]    --> src/socket/radio.rs:203:54
[INFO] [stderr]     |
[INFO] [stderr] 203 | #[derive(Debug, Default, Clone, PartialEq, Eq, Hash, Serialize, Deserialize)]
[INFO] [stderr]     |                                                      ^--------
[INFO] [stderr]     |                                                      |
[INFO] [stderr]     |                                                      `Serialize` is not local
[INFO] [stderr]     |                                                      move the `impl` block outside of this constant `_IMPL_SERIALIZE_FOR_RadioConfig`
[INFO] [stderr] ...
[INFO] [stderr] 206 | pub struct RadioConfig {
[INFO] [stderr]     |            ----------- `RadioConfig` is not local
[INFO] [stderr]     |
[INFO] [stderr]     = note: the derive macro `Serialize` defines the non-local `impl`, and may need to be changed
[INFO] [stderr]     = 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] [stderr]     = 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] [stderr]     = 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] [stderr]     = note: this warning originates in the derive macro `Serialize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stderr]    --> src/socket/radio.rs:203:65
[INFO] [stderr]     |
[INFO] [stderr] 203 | #[derive(Debug, Default, Clone, PartialEq, Eq, Hash, Serialize, Deserialize)]
[INFO] [stderr]     |                                                                 ^----------
[INFO] [stderr]     |                                                                 |
[INFO] [stderr]     |                                                                 `Deserialize` is not local
[INFO] [stderr]     |                                                                 move the `impl` block outside of this constant `_IMPL_DESERIALIZE_FOR_RadioConfig`
[INFO] [stderr] ...
[INFO] [stderr] 206 | pub struct RadioConfig {
[INFO] [stderr]     |            ----------- `RadioConfig` is not local
[INFO] [stderr]     |
[INFO] [stderr]     = note: the derive macro `Deserialize` defines the non-local `impl`, and may need to be changed
[INFO] [stderr]     = 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] [stderr]     = 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] [stderr]     = 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] [stderr]     = note: this warning originates in the derive macro `Deserialize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stderr]    --> src/socket/radio.rs:252:10
[INFO] [stderr]     |
[INFO] [stderr] 252 | #[derive(Serialize, Deserialize)]
[INFO] [stderr]     |          ^--------
[INFO] [stderr]     |          |
[INFO] [stderr]     |          `Serialize` is not local
[INFO] [stderr]     |          move the `impl` block outside of this constant `_IMPL_SERIALIZE_FOR_FlatRadioConfig`
[INFO] [stderr] 253 | struct FlatRadioConfig {
[INFO] [stderr]     |        --------------- `FlatRadioConfig` is not local
[INFO] [stderr]     |
[INFO] [stderr]     = note: the derive macro `Serialize` defines the non-local `impl`, and may need to be changed
[INFO] [stderr]     = 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] [stderr]     = 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] [stderr]     = 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] [stderr]     = note: this warning originates in the derive macro `Serialize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stderr]    --> src/socket/radio.rs:252:21
[INFO] [stderr]     |
[INFO] [stderr] 252 | #[derive(Serialize, Deserialize)]
[INFO] [stderr]     |                     ^----------
[INFO] [stderr]     |                     |
[INFO] [stderr]     |                     `Deserialize` is not local
[INFO] [stderr]     |                     move the `impl` block outside of this constant `_IMPL_DESERIALIZE_FOR_FlatRadioConfig`
[INFO] [stderr] 253 | struct FlatRadioConfig {
[INFO] [stderr]     |        --------------- `FlatRadioConfig` is not local
[INFO] [stderr]     |
[INFO] [stderr]     = note: the derive macro `Deserialize` defines the non-local `impl`, and may need to be changed
[INFO] [stderr]     = 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] [stderr]     = 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] [stderr]     = 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] [stderr]     = note: this warning originates in the derive macro `Deserialize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stderr]    --> src/socket/scatter.rs:127:54
[INFO] [stderr]     |
[INFO] [stderr] 127 | #[derive(Debug, Default, Clone, PartialEq, Eq, Hash, Serialize, Deserialize)]
[INFO] [stderr]     |                                                      ^--------
[INFO] [stderr]     |                                                      |
[INFO] [stderr]     |                                                      `Serialize` is not local
[INFO] [stderr]     |                                                      move the `impl` block outside of this constant `_IMPL_SERIALIZE_FOR_ScatterConfig`
[INFO] [stderr] ...
[INFO] [stderr] 130 | pub struct ScatterConfig {
[INFO] [stderr]     |            ------------- `ScatterConfig` is not local
[INFO] [stderr]     |
[INFO] [stderr]     = note: the derive macro `Serialize` defines the non-local `impl`, and may need to be changed
[INFO] [stderr]     = 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] [stderr]     = 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] [stderr]     = 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] [stderr]     = note: this warning originates in the derive macro `Serialize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stderr]    --> src/socket/scatter.rs:127:65
[INFO] [stderr]     |
[INFO] [stderr] 127 | #[derive(Debug, Default, Clone, PartialEq, Eq, Hash, Serialize, Deserialize)]
[INFO] [stderr]     |                                                                 ^----------
[INFO] [stderr]     |                                                                 |
[INFO] [stderr]     |                                                                 `Deserialize` is not local
[INFO] [stderr]     |                                                                 move the `impl` block outside of this constant `_IMPL_DESERIALIZE_FOR_ScatterConfig`
[INFO] [stderr] ...
[INFO] [stderr] 130 | pub struct ScatterConfig {
[INFO] [stderr]     |            ------------- `ScatterConfig` is not local
[INFO] [stderr]     |
[INFO] [stderr]     = note: the derive macro `Deserialize` defines the non-local `impl`, and may need to be changed
[INFO] [stderr]     = 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] [stderr]     = 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] [stderr]     = 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] [stderr]     = note: this warning originates in the derive macro `Deserialize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stderr]    --> src/socket/scatter.rs:160:17
[INFO] [stderr]     |
[INFO] [stderr] 160 | #[derive(Clone, Serialize, Deserialize)]
[INFO] [stderr]     |                 ^--------
[INFO] [stderr]     |                 |
[INFO] [stderr]     |                 `Serialize` is not local
[INFO] [stderr]     |                 move the `impl` block outside of this constant `_IMPL_SERIALIZE_FOR_FlatScatterConfig`
[INFO] [stderr] 161 | struct FlatScatterConfig {
[INFO] [stderr]     |        ----------------- `FlatScatterConfig` is not local
[INFO] [stderr]     |
[INFO] [stderr]     = note: the derive macro `Serialize` defines the non-local `impl`, and may need to be changed
[INFO] [stderr]     = 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] [stderr]     = 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] [stderr]     = 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] [stderr]     = note: this warning originates in the derive macro `Serialize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stderr]    --> src/socket/scatter.rs:160:28
[INFO] [stderr]     |
[INFO] [stderr] 160 | #[derive(Clone, Serialize, Deserialize)]
[INFO] [stderr]     |                            ^----------
[INFO] [stderr]     |                            |
[INFO] [stderr]     |                            `Deserialize` is not local
[INFO] [stderr]     |                            move the `impl` block outside of this constant `_IMPL_DESERIALIZE_FOR_FlatScatterConfig`
[INFO] [stderr] 161 | struct FlatScatterConfig {
[INFO] [stderr]     |        ----------------- `FlatScatterConfig` is not local
[INFO] [stderr]     |
[INFO] [stderr]     = note: the derive macro `Deserialize` defines the non-local `impl`, and may need to be changed
[INFO] [stderr]     = 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] [stderr]     = 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] [stderr]     = 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] [stderr]     = note: this warning originates in the derive macro `Deserialize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stderr]    --> src/socket/scatter.rs:246:54
[INFO] [stderr]     |
[INFO] [stderr] 246 | #[derive(Debug, Default, Clone, PartialEq, Eq, Hash, Serialize, Deserialize)]
[INFO] [stderr]     |                                                      ^--------
[INFO] [stderr]     |                                                      |
[INFO] [stderr]     |                                                      `Serialize` is not local
[INFO] [stderr]     |                                                      move the `impl` block outside of this constant `_IMPL_SERIALIZE_FOR_ScatterBuilder`
[INFO] [stderr] 247 | pub struct ScatterBuilder {
[INFO] [stderr]     |            -------------- `ScatterBuilder` is not local
[INFO] [stderr]     |
[INFO] [stderr]     = note: the derive macro `Serialize` defines the non-local `impl`, and may need to be changed
[INFO] [stderr]     = 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] [stderr]     = 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] [stderr]     = 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] [stderr]     = note: this warning originates in the derive macro `Serialize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stderr]    --> src/socket/scatter.rs:246:65
[INFO] [stderr]     |
[INFO] [stderr] 246 | #[derive(Debug, Default, Clone, PartialEq, Eq, Hash, Serialize, Deserialize)]
[INFO] [stderr]     |                                                                 ^----------
[INFO] [stderr]     |                                                                 |
[INFO] [stderr]     |                                                                 `Deserialize` is not local
[INFO] [stderr]     |                                                                 move the `impl` block outside of this constant `_IMPL_DESERIALIZE_FOR_ScatterBuilder`
[INFO] [stderr] 247 | pub struct ScatterBuilder {
[INFO] [stderr]     |            -------------- `ScatterBuilder` is not local
[INFO] [stderr]     |
[INFO] [stderr]     = note: the derive macro `Deserialize` defines the non-local `impl`, and may need to be changed
[INFO] [stderr]     = 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] [stderr]     = 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] [stderr]     = 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] [stderr]     = note: this warning originates in the derive macro `Deserialize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stderr]    --> src/socket/server.rs:176:54
[INFO] [stderr]     |
[INFO] [stderr] 176 | #[derive(Debug, Default, Clone, PartialEq, Eq, Hash, Serialize, Deserialize)]
[INFO] [stderr]     |                                                      ^--------
[INFO] [stderr]     |                                                      |
[INFO] [stderr]     |                                                      `Serialize` is not local
[INFO] [stderr]     |                                                      move the `impl` block outside of this constant `_IMPL_SERIALIZE_FOR_ServerConfig`
[INFO] [stderr] ...
[INFO] [stderr] 179 | pub struct ServerConfig {
[INFO] [stderr]     |            ------------ `ServerConfig` is not local
[INFO] [stderr]     |
[INFO] [stderr]     = note: the derive macro `Serialize` defines the non-local `impl`, and may need to be changed
[INFO] [stderr]     = 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] [stderr]     = 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] [stderr]     = 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] [stderr]     = note: this warning originates in the derive macro `Serialize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stderr]    --> src/socket/server.rs:176:65
[INFO] [stderr]     |
[INFO] [stderr] 176 | #[derive(Debug, Default, Clone, PartialEq, Eq, Hash, Serialize, Deserialize)]
[INFO] [stderr]     |                                                                 ^----------
[INFO] [stderr]     |                                                                 |
[INFO] [stderr]     |                                                                 `Deserialize` is not local
[INFO] [stderr]     |                                                                 move the `impl` block outside of this constant `_IMPL_DESERIALIZE_FOR_ServerConfig`
[INFO] [stderr] ...
[INFO] [stderr] 179 | pub struct ServerConfig {
[INFO] [stderr]     |            ------------ `ServerConfig` is not local
[INFO] [stderr]     |
[INFO] [stderr]     = note: the derive macro `Deserialize` defines the non-local `impl`, and may need to be changed
[INFO] [stderr]     = 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] [stderr]     = 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] [stderr]     = 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] [stderr]     = note: this warning originates in the derive macro `Deserialize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stderr]    --> src/socket/server.rs:215:17
[INFO] [stderr]     |
[INFO] [stderr] 215 | #[derive(Clone, Serialize, Deserialize)]
[INFO] [stderr]     |                 ^--------
[INFO] [stderr]     |                 |
[INFO] [stderr]     |                 `Serialize` is not local
[INFO] [stderr]     |                 move the `impl` block outside of this constant `_IMPL_SERIALIZE_FOR_FlatServerConfig`
[INFO] [stderr] 216 | struct FlatServerConfig {
[INFO] [stderr]     |        ---------------- `FlatServerConfig` is not local
[INFO] [stderr]     |
[INFO] [stderr]     = note: the derive macro `Serialize` defines the non-local `impl`, and may need to be changed
[INFO] [stderr]     = 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] [stderr]     = 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] [stderr]     = 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] [stderr]     = note: this warning originates in the derive macro `Serialize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stderr]    --> src/socket/server.rs:215:28
[INFO] [stderr]     |
[INFO] [stderr] 215 | #[derive(Clone, Serialize, Deserialize)]
[INFO] [stderr]     |                            ^----------
[INFO] [stderr]     |                            |
[INFO] [stderr]     |                            `Deserialize` is not local
[INFO] [stderr]     |                            move the `impl` block outside of this constant `_IMPL_DESERIALIZE_FOR_FlatServerConfig`
[INFO] [stderr] 216 | struct FlatServerConfig {
[INFO] [stderr]     |        ---------------- `FlatServerConfig` is not local
[INFO] [stderr]     |
[INFO] [stderr]     = note: the derive macro `Deserialize` defines the non-local `impl`, and may need to be changed
[INFO] [stderr]     = 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] [stderr]     = 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] [stderr]     = 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] [stderr]     = note: this warning originates in the derive macro `Deserialize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: panic message is not a string literal
[INFO] [stderr]    --> src/utils.rs:107:21
[INFO] [stderr]     |
[INFO] [stderr] 107 |         _ => panic!(msg_from_errno(errno)),
[INFO] [stderr]     |                     ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = note: this usage of `panic!()` is deprecated; it will be a hard error in Rust 2021
[INFO] [stderr]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/panic-macro-consistency.html>
[INFO] [stderr] help: add a "{}" format string to `Display` the message
[INFO] [stderr]     |
[INFO] [stderr] 107 |         _ => panic!("{}", msg_from_errno(errno)),
[INFO] [stderr]     |                     +++++
[INFO] [stderr] 
[INFO] [stderr] warning: `libzmq` (lib) generated 106 warnings (run `cargo fix --lib -p libzmq` to apply 29 suggestions)
[INFO] [stderr] warning: `libzmq` (lib test) generated 106 warnings (106 duplicates)
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 0.33s
[INFO] [stderr] warning: the following packages contain code that will be rejected by a future version of Rust: criterion v0.3.2
[INFO] [stderr] note: to see what the problems were, use the option `--future-incompat-report`, or run `cargo report future-incompatibilities --id 1`
[INFO] [stderr]      Running unittests src/lib.rs (/opt/rustwide/target/debug/deps/libzmq-cfad2ae1479a477f)
[INFO] [stdout] 
[INFO] [stdout] running 38 tests
[INFO] [stdout] test auth::curve::tests::codec_chunk_quickcheck ... ok
[INFO] [stdout] test auth::client::test::test_whitelist ... ok
[INFO] [stdout] test auth::curve::tests::curve_key_new ... ok
[INFO] [stdout] test auth::curve::tests::curve_key_new_invalid_byte ... ok
[INFO] [stdout] test auth::curve::tests::curve_key_new_invalid_size ... ok
[INFO] [stdout] test auth::curve::tests::seven_bit_letters ... ok
[INFO] [stdout] test auth::curve::tests::z85_decode_chunk_rfc ... ok
[INFO] [stdout] test auth::curve::tests::z85_decode_rfc ... ok
[INFO] [stdout] test auth::curve::tests::z85_encode_chunk_rfc ... ok
[INFO] [stdout] test auth::curve::tests::curve_cert_new_unique ... ok
[INFO] [stdout] test auth::curve::tests::codec_quickcheck ... ok
[INFO] [stdout] test auth::curve::tests::curve_key_from_secret ... ok
[INFO] [stdout] test auth::client::test::test_plain ... ok
[INFO] [stdout] test auth::curve::tests::z85_encode_rfc ... ok
[INFO] [stdout] test auth::client::test::test_null ... ok
[INFO] [stdout] test endpoint::test::inproc::test_ser_de ... ok
[INFO] [stdout] test endpoint::test::tcp::test_ser_de ... ok
[INFO] [stdout] test endpoint::test::epgm::test_ser_de ... ok
[INFO] [stdout] test endpoint::test::udp::test_ser_de ... ok
[INFO] [stdout] test poll::test::test_trigger ... ok
[INFO] [stdout] test msg::tests::test_cast_routing_id_slice ... ok
[INFO] [stdout] test socket::dish::test::test_ser_de ... ok
[INFO] [stdout] test socket::gather::test::test_gather ... ok
[INFO] [stdout] test endpoint::test::pgm::test_ser_de ... ok
[INFO] [stdout] test socket::gather::test::test_issue_125 ... ok
[INFO] [stdout] test socket::dish::test::test_dish ... ok
[INFO] [stdout] test socket::gather::test::test_ser_de ... ok
[INFO] [stdout] test socket::radio::test::test_ser_de ... ok
[INFO] [stdout] test socket::client::test::test_ser_de ... ok
[INFO] [stdout] test socket::scatter::test::test_ser_de ... ok
[INFO] [stdout] test socket::scatter::test::test_scatter ... ok
[INFO] [stdout] test socket::server::test::test_ser_de ... ok
[INFO] [stdout] test auth::client::test::test_blacklist ... ok
[INFO] [stdout] test core::test::test_disconnect_bind ... ok
[INFO] [stdout] test test::test_readme_deps ... FAILED
[INFO] [stdout] test test::test_html_root_url ... ok
[INFO] [stdout] test auth::client::test::test_plain_denied ... ok
[INFO] [stdout] test core::test::test_disconnect_connection ... ok
[INFO] [stdout] 
[INFO] [stdout] failures:
[INFO] [stdout] 
[INFO] [stdout] ---- test::test_readme_deps stdout ----
[INFO] [stdout] 
[INFO] [stdout] thread 'test::test_readme_deps' panicked at src/lib.rs:74:9:
[INFO] [stdout] could not read ../README.md: No such file or directory (os error 2)
[INFO] [stdout] stack backtrace:
[INFO] [stdout]    0:     0x5f9e8ff53982 - std::backtrace_rs::backtrace::libunwind::trace::h2d45396358f41939
[INFO] [stdout]                                at /rustc/1159e78c4747b02ef996e55082b704c09b970588/library/std/src/../../backtrace/src/backtrace/libunwind.rs:117:9
[INFO] [stdout]    1:     0x5f9e8ff53982 - std::backtrace_rs::backtrace::trace_unsynchronized::hffcefc0b67f1d6e2
[INFO] [stdout]                                at /rustc/1159e78c4747b02ef996e55082b704c09b970588/library/std/src/../../backtrace/src/backtrace/mod.rs:66:14
[INFO] [stdout]    2:     0x5f9e8ff53982 - std::sys::backtrace::_print_fmt::hd72f71d23b436b92
[INFO] [stdout]                                at /rustc/1159e78c4747b02ef996e55082b704c09b970588/library/std/src/sys/backtrace.rs:66:9
[INFO] [stdout]    3:     0x5f9e8ff53982 - <std::sys::backtrace::BacktraceLock::print::DisplayBacktrace as core::fmt::Display>::fmt::hdcfcb6d4c8489523
[INFO] [stdout]                                at /rustc/1159e78c4747b02ef996e55082b704c09b970588/library/std/src/sys/backtrace.rs:39:26
[INFO] [stdout]    4:     0x5f9e8ff7d013 - core::fmt::rt::Argument::fmt::h2c56b3114963061a
[INFO] [stdout]                                at /rustc/1159e78c4747b02ef996e55082b704c09b970588/library/core/src/fmt/rt.rs:173:76
[INFO] [stdout]    5:     0x5f9e8ff7d013 - core::fmt::write::h8a494366950f23bb
[INFO] [stdout]                                at /rustc/1159e78c4747b02ef996e55082b704c09b970588/library/core/src/fmt/mod.rs:1468:25
[INFO] [stdout]    6:     0x5f9e8ff508f3 - std::io::default_write_fmt::h7b8824096454f323
[INFO] [stdout]                                at /rustc/1159e78c4747b02ef996e55082b704c09b970588/library/std/src/io/mod.rs:639:11
[INFO] [stdout]    7:     0x5f9e8ff508f3 - std::io::Write::write_fmt::h4e71294925c334d0
[INFO] [stdout]                                at /rustc/1159e78c4747b02ef996e55082b704c09b970588/library/std/src/io/mod.rs:1954:13
[INFO] [stdout]    8:     0x5f9e8ff537d2 - std::sys::backtrace::BacktraceLock::print::hb2a626a81e06b2dc
[INFO] [stdout]                                at /rustc/1159e78c4747b02ef996e55082b704c09b970588/library/std/src/sys/backtrace.rs:42:9
[INFO] [stdout]    9:     0x5f9e8ff54f09 - std::panicking::default_hook::{{closure}}::h4f78485264f12d10
[INFO] [stdout]                                at /rustc/1159e78c4747b02ef996e55082b704c09b970588/library/std/src/panicking.rs:300:27
[INFO] [stdout]   10:     0x5f9e8ff54d3e - std::panicking::default_hook::h2c66fc99e962531d
[INFO] [stdout]                                at /rustc/1159e78c4747b02ef996e55082b704c09b970588/library/std/src/panicking.rs:324:9
[INFO] [stdout]   11:     0x5f9e8fd0c4b4 - <alloc::boxed::Box<F,A> as core::ops::function::Fn<Args>>::call::hb6bd65493727d71a
[INFO] [stdout]                                at /rustc/1159e78c4747b02ef996e55082b704c09b970588/library/alloc/src/boxed.rs:1985:9
[INFO] [stdout]   12:     0x5f9e8fd0c4b4 - test::test_main_with_exit_callback::{{closure}}::h60217ec76a0ece4a
[INFO] [stdout]                                at /rustc/1159e78c4747b02ef996e55082b704c09b970588/library/test/src/lib.rs:145:21
[INFO] [stdout]   13:     0x5f9e8ff559de - <alloc::boxed::Box<F,A> as core::ops::function::Fn<Args>>::call::h318e4efb8c1a5689
[INFO] [stdout]                                at /rustc/1159e78c4747b02ef996e55082b704c09b970588/library/alloc/src/boxed.rs:1985:9
[INFO] [stdout]   14:     0x5f9e8ff559de - std::panicking::rust_panic_with_hook::h33ac55f64bbd807d
[INFO] [stdout]                                at /rustc/1159e78c4747b02ef996e55082b704c09b970588/library/std/src/panicking.rs:841:13
[INFO] [stdout]   15:     0x5f9e8fa0e56b - std::panicking::begin_panic::{{closure}}::h8b8c56e6cb110ce8
[INFO] [stdout]                                at /rustc/1159e78c4747b02ef996e55082b704c09b970588/library/std/src/panicking.rs:770:9
[INFO] [stdout]   16:     0x5f9e8fa73bb6 - std::sys::backtrace::__rust_end_short_backtrace::h825f68dba4a68723
[INFO] [stdout]                                at /rustc/1159e78c4747b02ef996e55082b704c09b970588/library/std/src/sys/backtrace.rs:174:18
[INFO] [stdout]   17:     0x5f9e8fa0e501 - std::panicking::begin_panic::h89f867b02defeceb
[INFO] [stdout]                                at /rustc/1159e78c4747b02ef996e55082b704c09b970588/library/std/src/panicking.rs:769:5
[INFO] [stdout]   18:     0x5f9e8fa22862 - libzmq::test::test_readme_deps::h2482af49e5bc05ec
[INFO] [stdout]                                at /opt/rustwide/workdir/src/lib.rs:74:9
[INFO] [stdout]   19:     0x5f9e8fa22797 - libzmq::test::test_readme_deps::{{closure}}::h1e137fa70549f2ab
[INFO] [stdout]                                at /opt/rustwide/workdir/src/lib.rs:73:26
[INFO] [stdout]   20:     0x5f9e8f9f63d6 - core::ops::function::FnOnce::call_once::h9addf909c44f68c1
[INFO] [stdout]                                at /rustc/1159e78c4747b02ef996e55082b704c09b970588/library/core/src/ops/function.rs:253:5
[INFO] [stdout]   21:     0x5f9e8fd11d1b - core::ops::function::FnOnce::call_once::h1f9474f1347fff52
[INFO] [stdout]                                at /rustc/1159e78c4747b02ef996e55082b704c09b970588/library/core/src/ops/function.rs:253:5
[INFO] [stdout]   22:     0x5f9e8fd11d1b - test::__rust_begin_short_backtrace::ha52ab26e77157f03
[INFO] [stdout]                                at /rustc/1159e78c4747b02ef996e55082b704c09b970588/library/test/src/lib.rs:648:18
[INFO] [stdout]   23:     0x5f9e8fd10e55 - test::run_test_in_process::{{closure}}::h229c1a11a50b261f
[INFO] [stdout]                                at /rustc/1159e78c4747b02ef996e55082b704c09b970588/library/test/src/lib.rs:671:74
[INFO] [stdout]   24:     0x5f9e8fd10e55 - <core::panic::unwind_safe::AssertUnwindSafe<F> as core::ops::function::FnOnce<()>>::call_once::h78821afbf97b39a9
[INFO] [stdout]                                at /rustc/1159e78c4747b02ef996e55082b704c09b970588/library/core/src/panic/unwind_safe.rs:272:9
[INFO] [stdout]   25:     0x5f9e8fd10e55 - std::panicking::catch_unwind::do_call::h53abf3ed5bd32ba3
[INFO] [stdout]                                at /rustc/1159e78c4747b02ef996e55082b704c09b970588/library/std/src/panicking.rs:589:40
[INFO] [stdout]   26:     0x5f9e8fd10e55 - std::panicking::catch_unwind::h6deb5fe1e91873c9
[INFO] [stdout]                                at /rustc/1159e78c4747b02ef996e55082b704c09b970588/library/std/src/panicking.rs:552:19
[INFO] [stdout]   27:     0x5f9e8fd10e55 - std::panic::catch_unwind::hea0829b6b565654b
[INFO] [stdout]                                at /rustc/1159e78c4747b02ef996e55082b704c09b970588/library/std/src/panic.rs:359:14
[INFO] [stdout]   28:     0x5f9e8fd10e55 - test::run_test_in_process::hdc44dfecea3db21b
[INFO] [stdout]                                at /rustc/1159e78c4747b02ef996e55082b704c09b970588/library/test/src/lib.rs:671:27
[INFO] [stdout]   29:     0x5f9e8fd10e55 - test::run_test::{{closure}}::h0364ba59bf23f652
[INFO] [stdout]                                at /rustc/1159e78c4747b02ef996e55082b704c09b970588/library/test/src/lib.rs:592:43
[INFO] [stdout]   30:     0x5f9e8fcd4a54 - test::run_test::{{closure}}::h32730b304eec05da
[INFO] [stdout]                                at /rustc/1159e78c4747b02ef996e55082b704c09b970588/library/test/src/lib.rs:622:41
[INFO] [stdout]   31:     0x5f9e8fcd4a54 - std::sys::backtrace::__rust_begin_short_backtrace::h177cb952fc54ad2c
[INFO] [stdout]                                at /rustc/1159e78c4747b02ef996e55082b704c09b970588/library/std/src/sys/backtrace.rs:158:18
[INFO] [stdout]   32:     0x5f9e8fcd842a - std::thread::Builder::spawn_unchecked_::{{closure}}::{{closure}}::h119d903520007597
[INFO] [stdout]                                at /rustc/1159e78c4747b02ef996e55082b704c09b970588/library/std/src/thread/mod.rs:559:17
[INFO] [stdout]   33:     0x5f9e8fcd842a - <core::panic::unwind_safe::AssertUnwindSafe<F> as core::ops::function::FnOnce<()>>::call_once::hab88401d606702a6
[INFO] [stdout]                                at /rustc/1159e78c4747b02ef996e55082b704c09b970588/library/core/src/panic/unwind_safe.rs:272:9
[INFO] [stdout]   34:     0x5f9e8fcd842a - std::panicking::catch_unwind::do_call::h163fe12cca9901c2
[INFO] [stdout]                                at /rustc/1159e78c4747b02ef996e55082b704c09b970588/library/std/src/panicking.rs:589:40
[INFO] [stdout]   35:     0x5f9e8fcd842a - std::panicking::catch_unwind::he81557d0e17cc1bc
[INFO] [stdout]                                at /rustc/1159e78c4747b02ef996e55082b704c09b970588/library/std/src/panicking.rs:552:19
[INFO] [stdout]   36:     0x5f9e8fcd842a - std::panic::catch_unwind::hc2b8e79c20593955
[INFO] [stdout]                                at /rustc/1159e78c4747b02ef996e55082b704c09b970588/library/std/src/panic.rs:359:14
[INFO] [stdout]   37:     0x5f9e8fcd842a - std::thread::Builder::spawn_unchecked_::{{closure}}::hfa6b4978e07815cc
[INFO] [stdout]                                at /rustc/1159e78c4747b02ef996e55082b704c09b970588/library/std/src/thread/mod.rs:557:30
[INFO] [stdout]   38:     0x5f9e8fcd842a - core::ops::function::FnOnce::call_once{{vtable.shim}}::hddcd7484a13fd793
[INFO] [stdout]                                at /rustc/1159e78c4747b02ef996e55082b704c09b970588/library/core/src/ops/function.rs:253:5
[INFO] [stdout]   39:     0x5f9e8ff58a5f - <alloc::boxed::Box<F,A> as core::ops::function::FnOnce<Args>>::call_once::h5924238c754de3b8
[INFO] [stdout]                                at /rustc/1159e78c4747b02ef996e55082b704c09b970588/library/alloc/src/boxed.rs:1971:9
[INFO] [stdout]   40:     0x5f9e8ff58a5f - std::sys::pal::unix::thread::Thread::new::thread_start::hb6e99e73da4d28f8
[INFO] [stdout]                                at /rustc/1159e78c4747b02ef996e55082b704c09b970588/library/std/src/sys/pal/unix/thread.rs:107:17
[INFO] [stdout]   41:     0x7eeb2dac4aa4 - <unknown>
[INFO] [stdout]   42:     0x7eeb2db51a34 - clone
[INFO] [stdout]   43:                0x0 - <unknown>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] failures:
[INFO] [stdout]     test::test_readme_deps
[INFO] [stdout] 
[INFO] [stdout] test result: FAILED. 37 passed; 1 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.23s
[INFO] [stdout] 
[INFO] [stderr] error: test failed, to rerun pass `--lib`
[INFO] running `Command { std: "docker" "inspect" "7876890bf0f842b4a86903f73faf5ce01e23803529115d3e29ba8f8b049976e3", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "7876890bf0f842b4a86903f73faf5ce01e23803529115d3e29ba8f8b049976e3", kill_on_drop: false }`
[INFO] [stdout] 7876890bf0f842b4a86903f73faf5ce01e23803529115d3e29ba8f8b049976e3
