[INFO] cloning repository https://github.com/benzyx/Elric [INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/benzyx/Elric" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fbenzyx%2FElric", kill_on_drop: false }` [INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fbenzyx%2FElric'... [INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }` [INFO] [stdout] a0bd65d996b421611c6875fbc31a6f3431301fba [INFO] checking benzyx/Elric against master#bca37a20bd376ce3fd138e7cdee7fe704e0f8814 for pr-139493-3 [INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fbenzyx%2FElric" "/workspace/builds/worker-1-tc1/source", kill_on_drop: false }` [INFO] [stderr] Cloning into '/workspace/builds/worker-1-tc1/source'... [INFO] [stderr] done. [INFO] started tweaking git repo https://github.com/benzyx/Elric [INFO] finished tweaking git repo https://github.com/benzyx/Elric [INFO] tweaked toml for git repo https://github.com/benzyx/Elric written to /workspace/builds/worker-1-tc1/source/Cargo.toml [INFO] validating manifest of git repo https://github.com/benzyx/Elric on toolchain bca37a20bd376ce3fd138e7cdee7fe704e0f8814 [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+bca37a20bd376ce3fd138e7cdee7fe704e0f8814" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] crate git repo https://github.com/benzyx/Elric 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" "+bca37a20bd376ce3fd138e7cdee7fe704e0f8814" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] [stderr] Downloading crates ... [INFO] [stderr] Downloaded futures-sink v0.3.5 [INFO] [stderr] Downloaded tokio-macros v0.2.5 [INFO] [stderr] Downloaded futures-core v0.3.5 [INFO] [stderr] Downloaded proc-macro-hack v0.5.16 [INFO] [stderr] Downloaded tokio-rustls v0.13.1 [INFO] [stderr] Downloaded futures-macro v0.3.5 [INFO] [stderr] Downloaded futures-task v0.3.5 [INFO] [stderr] Downloaded futures-io v0.3.5 [INFO] [stderr] Downloaded webpki v0.21.3 [INFO] [stderr] Downloaded bincode v1.3.1 [INFO] [stderr] Downloaded futures-channel v0.3.5 [INFO] [stderr] Downloaded pin-project v0.4.22 [INFO] [stderr] Downloaded futures v0.3.5 [INFO] [stderr] Downloaded serde v1.0.112 [INFO] [stderr] Downloaded futures-util v0.3.5 [INFO] [stderr] Downloaded serde_json v1.0.56 [INFO] [stderr] Downloaded js-sys v0.3.41 [INFO] [stderr] Downloaded serde_derive v1.0.112 [INFO] [stderr] Downloaded structopt v0.3.15 [INFO] [stderr] Downloaded rustls v0.18.0 [INFO] [stderr] Downloaded wasm-bindgen v0.2.64 [INFO] [stderr] Downloaded once_cell v1.4.0 [INFO] [stderr] Downloaded rustls v0.17.0 [INFO] [stderr] Downloaded tokio v0.2.21 [INFO] [stderr] Downloaded wasm-bindgen-macro-support v0.2.64 [INFO] [stderr] Downloaded futures-executor v0.3.5 [INFO] [stderr] Downloaded pin-project-internal v0.4.22 [INFO] [stderr] Downloaded proc-macro-error-attr v1.0.3 [INFO] [stderr] Downloaded proc-macro-error v1.0.3 [INFO] [stderr] Downloaded sct v0.6.0 [INFO] [stderr] Downloaded wasm-bindgen-backend v0.2.64 [INFO] [stderr] Downloaded bytes v0.5.4 [INFO] [stderr] Downloaded structopt-derive v0.4.8 [INFO] [stderr] Downloaded proc-macro-nested v0.1.6 [INFO] [stderr] Downloaded pin-project-lite v0.1.7 [INFO] [stderr] Downloaded wasm-bindgen-shared v0.2.64 [INFO] [stderr] Downloaded wasm-bindgen-macro v0.2.64 [INFO] [stderr] Downloaded net2 v0.2.34 [INFO] [stderr] Downloaded web-sys v0.3.41 [INFO] [stderr] Downloaded ring v0.16.15 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-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:aa71247004a7fa38d13ec170f48f06cdedf5bc50b2a8645e56ed7e992e6fa513" "/opt/rustwide/cargo-home/bin/cargo" "+bca37a20bd376ce3fd138e7cdee7fe704e0f8814" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] 84104933b00af2b011e06aa106e34076141a6972137ddb860b35ff2995d9b421 [INFO] running `Command { std: "docker" "start" "-a" "84104933b00af2b011e06aa106e34076141a6972137ddb860b35ff2995d9b421", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "84104933b00af2b011e06aa106e34076141a6972137ddb860b35ff2995d9b421", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "84104933b00af2b011e06aa106e34076141a6972137ddb860b35ff2995d9b421", kill_on_drop: false }` [INFO] [stdout] 84104933b00af2b011e06aa106e34076141a6972137ddb860b35ff2995d9b421 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:aa71247004a7fa38d13ec170f48f06cdedf5bc50b2a8645e56ed7e992e6fa513" "/opt/rustwide/cargo-home/bin/cargo" "+bca37a20bd376ce3fd138e7cdee7fe704e0f8814" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] 253e159bf7bbb0aca8119e42261c17920ecb4b6cfad64131983cae3106f04877 [INFO] running `Command { std: "docker" "start" "-a" "253e159bf7bbb0aca8119e42261c17920ecb4b6cfad64131983cae3106f04877", kill_on_drop: false }` [INFO] [stderr] Compiling proc-macro2 v1.0.18 [INFO] [stderr] Compiling syn v1.0.33 [INFO] [stderr] Compiling libc v0.2.71 [INFO] [stderr] Checking once_cell v1.4.0 [INFO] [stderr] Compiling log v0.4.8 [INFO] [stderr] Compiling version_check v0.9.2 [INFO] [stderr] Compiling memchr v2.3.3 [INFO] [stderr] Compiling cc v1.0.57 [INFO] [stderr] Compiling autocfg v1.0.0 [INFO] [stderr] Checking futures-core v0.3.5 [INFO] [stderr] Compiling pin-project-internal v0.4.22 [INFO] [stderr] Compiling serde v1.0.112 [INFO] [stderr] Compiling proc-macro-nested v0.1.6 [INFO] [stderr] Checking futures-sink v0.3.5 [INFO] [stderr] Compiling proc-macro-hack v0.5.16 [INFO] [stderr] Checking unicode-width v0.1.7 [INFO] [stderr] Compiling unicode-segmentation v1.6.0 [INFO] [stderr] Checking futures-channel v0.3.5 [INFO] [stderr] Checking futures-io v0.3.5 [INFO] [stderr] Checking futures-task v0.3.5 [INFO] [stderr] Checking pin-project-lite v0.1.7 [INFO] [stderr] Checking bytes v0.5.4 [INFO] [stderr] Checking textwrap v0.11.0 [INFO] [stderr] Checking base64 v0.11.0 [INFO] [stderr] Compiling serde_json v1.0.56 [INFO] [stderr] Checking base64 v0.12.3 [INFO] [stderr] Compiling heck v0.3.1 [INFO] [stderr] Compiling num-traits v0.2.12 [INFO] [stderr] Compiling num-integer v0.1.43 [INFO] [stderr] Compiling proc-macro-error-attr v1.0.3 [INFO] [stderr] Compiling proc-macro-error v1.0.3 [INFO] [stderr] Checking iovec v0.1.4 [INFO] [stderr] Checking net2 v0.2.34 [INFO] [stderr] Checking num_cpus v1.13.0 [INFO] [stderr] Checking atty v0.2.14 [INFO] [stderr] Checking time v0.1.43 [INFO] [stderr] Compiling ring v0.16.15 [INFO] [stderr] Checking clap v2.33.1 [INFO] [stderr] Checking mio v0.6.22 [INFO] [stderr] Compiling quote v1.0.7 [INFO] [stderr] Checking sct v0.6.0 [INFO] [stderr] Checking webpki v0.21.3 [INFO] [stderr] Checking rustls v0.17.0 [INFO] [stderr] Checking rustls v0.18.0 [INFO] [stderr] Compiling syn-mid v0.5.0 [INFO] [stderr] Compiling serde_derive v1.0.112 [INFO] [stderr] Compiling futures-macro v0.3.5 [INFO] [stderr] Compiling tokio-macros v0.2.5 [INFO] [stderr] Checking tokio v0.2.21 [INFO] [stderr] Compiling structopt-derive v0.4.8 [INFO] [stderr] Checking pin-project v0.4.22 [INFO] [stderr] Checking futures-util v0.3.5 [INFO] [stderr] Checking structopt v0.3.15 [INFO] [stderr] Checking tokio-util v0.3.1 [INFO] [stderr] Checking tokio-rustls v0.13.1 [INFO] [stderr] Checking futures-executor v0.3.5 [INFO] [stderr] Checking futures v0.3.5 [INFO] [stderr] Checking bincode v1.3.1 [INFO] [stderr] Checking chrono v0.4.11 [INFO] [stderr] Checking elric v0.1.0 (/opt/rustwide/workdir) [INFO] [stdout] warning: unnecessary parentheses around type [INFO] [stdout] --> src/utils.rs:20:69 [INFO] [stdout] | [INFO] [stdout] 20 | pub fn ann(s: impl std::fmt::Display) -> impl (Fn(T) -> String) { [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_parens)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 20 - pub fn ann(s: impl std::fmt::Display) -> impl (Fn(T) -> String) { [INFO] [stdout] 20 + pub fn ann(s: impl std::fmt::Display) -> impl Fn(T) -> String { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around type [INFO] [stdout] --> src/utils.rs:20:69 [INFO] [stdout] | [INFO] [stdout] 20 | pub fn ann(s: impl std::fmt::Display) -> impl (Fn(T) -> String) { [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_parens)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 20 - pub fn ann(s: impl std::fmt::Display) -> impl (Fn(T) -> String) { [INFO] [stdout] 20 + pub fn ann(s: impl std::fmt::Display) -> impl Fn(T) -> String { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `bid_id`, `ask_id`, `price`, `qty`, and `time` are never read [INFO] [stdout] --> src/event.rs:5:9 [INFO] [stdout] | [INFO] [stdout] 4 | pub struct ExecutedEvent { [INFO] [stdout] | ------------- fields in this struct [INFO] [stdout] 5 | pub bid_id: OrderId, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] 6 | pub ask_id: OrderId, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] 7 | pub price: Price, [INFO] [stdout] | ^^^^^ [INFO] [stdout] 8 | pub qty: Qty, [INFO] [stdout] | ^^^ [INFO] [stdout] 9 | pub time: Timestamp, [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `ExecutedEvent` has derived impls for the traits `Debug` and `Clone`, but these are intentionally ignored during dead code analysis [INFO] [stdout] = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `0` is never read [INFO] [stdout] --> src/event.rs:14:14 [INFO] [stdout] | [INFO] [stdout] 14 | Executed(ExecutedEvent), [INFO] [stdout] | -------- ^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | field in this variant [INFO] [stdout] | [INFO] [stdout] = note: `Event` has derived impls for the traits `Debug` and `Clone`, but these are intentionally ignored during dead code analysis [INFO] [stdout] help: consider changing the field to be of unit type to suppress this warning while preserving the field numbering, or remove the field [INFO] [stdout] | [INFO] [stdout] 14 - Executed(ExecutedEvent), [INFO] [stdout] 14 + Executed(()), [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `symbol` is never read [INFO] [stdout] --> src/orderbook.rs:23:5 [INFO] [stdout] | [INFO] [stdout] 22 | pub struct OrderBook { [INFO] [stdout] | --------- field in this struct [INFO] [stdout] 23 | symbol: String, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `framed_write` is never used [INFO] [stdout] --> src/protocol.rs:27:14 [INFO] [stdout] | [INFO] [stdout] 27 | pub async fn framed_write(stream: &mut (impl AsyncWrite + Unpin), msg: &T) -> R { [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/types.rs:13:35 [INFO] [stdout] | [INFO] [stdout] 13 | #[derive(Clone, Debug, PartialEq, 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_Side` [INFO] [stdout] 14 | pub enum Side { [INFO] [stdout] | ---- `Side` 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/types.rs:13:46 [INFO] [stdout] | [INFO] [stdout] 13 | #[derive(Clone, Debug, PartialEq, 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_Side` [INFO] [stdout] 14 | pub enum Side { [INFO] [stdout] | ---- `Side` 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/messages.rs:8:17 [INFO] [stdout] | [INFO] [stdout] 8 | #[derive(Debug, Serialize, Deserialize)] [INFO] [stdout] | ^-------- [INFO] [stdout] | | [INFO] [stdout] | `Serialize` is not local [INFO] [stdout] | move the `impl` block outside of this constant `_IMPL_SERIALIZE_FOR_ClientMessage` [INFO] [stdout] 9 | pub enum ClientMessage { [INFO] [stdout] | ------------- `ClientMessage` 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/messages.rs:8:28 [INFO] [stdout] | [INFO] [stdout] 8 | #[derive(Debug, Serialize, Deserialize)] [INFO] [stdout] | ^---------- [INFO] [stdout] | | [INFO] [stdout] | `Deserialize` is not local [INFO] [stdout] | move the `impl` block outside of this constant `_IMPL_DESERIALIZE_FOR_ClientMessage` [INFO] [stdout] 9 | pub enum ClientMessage { [INFO] [stdout] | ------------- `ClientMessage` 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/messages.rs:13:17 [INFO] [stdout] | [INFO] [stdout] 13 | #[derive(Debug, Serialize, Deserialize)] [INFO] [stdout] | ^-------- [INFO] [stdout] | | [INFO] [stdout] | `Serialize` is not local [INFO] [stdout] | move the `impl` block outside of this constant `_IMPL_SERIALIZE_FOR_LimitOrderMsg` [INFO] [stdout] 14 | pub struct LimitOrderMsg { [INFO] [stdout] | ------------- `LimitOrderMsg` 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/messages.rs:13:28 [INFO] [stdout] | [INFO] [stdout] 13 | #[derive(Debug, Serialize, Deserialize)] [INFO] [stdout] | ^---------- [INFO] [stdout] | | [INFO] [stdout] | `Deserialize` is not local [INFO] [stdout] | move the `impl` block outside of this constant `_IMPL_DESERIALIZE_FOR_LimitOrderMsg` [INFO] [stdout] 14 | pub struct LimitOrderMsg { [INFO] [stdout] | ------------- `LimitOrderMsg` 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: field `time` is never read [INFO] [stdout] --> src/event.rs:9:9 [INFO] [stdout] | [INFO] [stdout] 4 | pub struct ExecutedEvent { [INFO] [stdout] | ------------- field in this struct [INFO] [stdout] ... [INFO] [stdout] 9 | pub time: Timestamp, [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `ExecutedEvent` has derived impls for the traits `Debug` and `Clone`, but these are intentionally ignored during dead code analysis [INFO] [stdout] = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `symbol` is never read [INFO] [stdout] --> src/orderbook.rs:23:5 [INFO] [stdout] | [INFO] [stdout] 22 | pub struct OrderBook { [INFO] [stdout] | --------- field in this struct [INFO] [stdout] 23 | symbol: String, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `framed_write` is never used [INFO] [stdout] --> src/protocol.rs:27:14 [INFO] [stdout] | [INFO] [stdout] 27 | pub async fn framed_write(stream: &mut (impl AsyncWrite + Unpin), msg: &T) -> R { [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/types.rs:13:35 [INFO] [stdout] | [INFO] [stdout] 13 | #[derive(Clone, Debug, PartialEq, 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_Side` [INFO] [stdout] 14 | pub enum Side { [INFO] [stdout] | ---- `Side` 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/types.rs:13:46 [INFO] [stdout] | [INFO] [stdout] 13 | #[derive(Clone, Debug, PartialEq, 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_Side` [INFO] [stdout] 14 | pub enum Side { [INFO] [stdout] | ---- `Side` 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/messages.rs:8:17 [INFO] [stdout] | [INFO] [stdout] 8 | #[derive(Debug, Serialize, Deserialize)] [INFO] [stdout] | ^-------- [INFO] [stdout] | | [INFO] [stdout] | `Serialize` is not local [INFO] [stdout] | move the `impl` block outside of this constant `_IMPL_SERIALIZE_FOR_ClientMessage` [INFO] [stdout] 9 | pub enum ClientMessage { [INFO] [stdout] | ------------- `ClientMessage` 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/messages.rs:8:28 [INFO] [stdout] | [INFO] [stdout] 8 | #[derive(Debug, Serialize, Deserialize)] [INFO] [stdout] | ^---------- [INFO] [stdout] | | [INFO] [stdout] | `Deserialize` is not local [INFO] [stdout] | move the `impl` block outside of this constant `_IMPL_DESERIALIZE_FOR_ClientMessage` [INFO] [stdout] 9 | pub enum ClientMessage { [INFO] [stdout] | ------------- `ClientMessage` 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/messages.rs:13:17 [INFO] [stdout] | [INFO] [stdout] 13 | #[derive(Debug, Serialize, Deserialize)] [INFO] [stdout] | ^-------- [INFO] [stdout] | | [INFO] [stdout] | `Serialize` is not local [INFO] [stdout] | move the `impl` block outside of this constant `_IMPL_SERIALIZE_FOR_LimitOrderMsg` [INFO] [stdout] 14 | pub struct LimitOrderMsg { [INFO] [stdout] | ------------- `LimitOrderMsg` 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/messages.rs:13:28 [INFO] [stdout] | [INFO] [stdout] 13 | #[derive(Debug, Serialize, Deserialize)] [INFO] [stdout] | ^---------- [INFO] [stdout] | | [INFO] [stdout] | `Deserialize` is not local [INFO] [stdout] | move the `impl` block outside of this constant `_IMPL_DESERIALIZE_FOR_LimitOrderMsg` [INFO] [stdout] 14 | pub struct LimitOrderMsg { [INFO] [stdout] | ------------- `LimitOrderMsg` 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] [stderr] Finished `dev` profile [unoptimized + debuginfo] target(s) in 22.24s [INFO] running `Command { std: "docker" "inspect" "253e159bf7bbb0aca8119e42261c17920ecb4b6cfad64131983cae3106f04877", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "253e159bf7bbb0aca8119e42261c17920ecb4b6cfad64131983cae3106f04877", kill_on_drop: false }` [INFO] [stdout] 253e159bf7bbb0aca8119e42261c17920ecb4b6cfad64131983cae3106f04877