[INFO] fetching crate vk-keyboard 0.2.0... [INFO] testing vk-keyboard-0.2.0 against try#b6ae10aa7319b7ebb6c7b3331dd71a9d6c9c5b4b for pr-145330-1 [INFO] extracting crate vk-keyboard 0.2.0 into /workspace/builds/worker-5-tc2/source [INFO] started tweaking crates.io crate vk-keyboard 0.2.0 [INFO] removed 0 missing examples [INFO] finished tweaking crates.io crate vk-keyboard 0.2.0 [INFO] tweaked toml for crates.io crate vk-keyboard 0.2.0 written to /workspace/builds/worker-5-tc2/source/Cargo.toml [INFO] validating manifest of crates.io crate vk-keyboard 0.2.0 on toolchain b6ae10aa7319b7ebb6c7b3331dd71a9d6c9c5b4b [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+b6ae10aa7319b7ebb6c7b3331dd71a9d6c9c5b4b" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] crate crates.io crate vk-keyboard 0.2.0 already has a lockfile, it will not be regenerated [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+b6ae10aa7319b7ebb6c7b3331dd71a9d6c9c5b4b" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:e90291280db7d1fac5b66fc6dad9f9662629e7365a55743daf9bdf73ebc4ea79" "/opt/rustwide/cargo-home/bin/cargo" "+b6ae10aa7319b7ebb6c7b3331dd71a9d6c9c5b4b" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] 808598f640228fd9cc516ab18504f1c04dcdf33789e3ec4bf89110cd80782b11 [INFO] running `Command { std: "docker" "start" "-a" "808598f640228fd9cc516ab18504f1c04dcdf33789e3ec4bf89110cd80782b11", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "808598f640228fd9cc516ab18504f1c04dcdf33789e3ec4bf89110cd80782b11", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "808598f640228fd9cc516ab18504f1c04dcdf33789e3ec4bf89110cd80782b11", kill_on_drop: false }` [INFO] [stdout] 808598f640228fd9cc516ab18504f1c04dcdf33789e3ec4bf89110cd80782b11 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:e90291280db7d1fac5b66fc6dad9f9662629e7365a55743daf9bdf73ebc4ea79" "/opt/rustwide/cargo-home/bin/cargo" "+b6ae10aa7319b7ebb6c7b3331dd71a9d6c9c5b4b" "build" "--frozen" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] feeabbc310efcf1fd0e20fd9ca7e73328c6d9597c3f79e736eb2e5e41de2d794 [INFO] running `Command { std: "docker" "start" "-a" "feeabbc310efcf1fd0e20fd9ca7e73328c6d9597c3f79e736eb2e5e41de2d794", kill_on_drop: false }` [INFO] [stderr] Compiling proc-macro2 v1.0.12 [INFO] [stderr] Compiling syn v1.0.19 [INFO] [stderr] Compiling ryu v1.0.4 [INFO] [stderr] Compiling serde v1.0.107 [INFO] [stderr] Compiling itoa v0.4.5 [INFO] [stderr] Compiling quote v1.0.4 [INFO] [stderr] Compiling serde_derive v1.0.107 [INFO] [stderr] Compiling serde_json v1.0.52 [INFO] [stderr] Compiling vk-keyboard v0.2.0 (/opt/rustwide/workdir) [INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item [INFO] [stdout] --> src/button.rs:17:24 [INFO] [stdout] | [INFO] [stdout] 17 | #[derive(Debug, 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_ButtonColor` [INFO] [stdout] 18 | #[serde(rename_all = "lowercase")] [INFO] [stdout] 19 | pub enum ButtonColor { [INFO] [stdout] | ----------- `ButtonColor` 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/button.rs:17:35 [INFO] [stdout] | [INFO] [stdout] 17 | #[derive(Debug, 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_ButtonColor` [INFO] [stdout] 18 | #[serde(rename_all = "lowercase")] [INFO] [stdout] 19 | pub enum ButtonColor { [INFO] [stdout] | ----------- `ButtonColor` 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/button.rs:56:24 [INFO] [stdout] | [INFO] [stdout] 56 | #[derive(Debug, 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_ButtonAction` [INFO] [stdout] ... [INFO] [stdout] 59 | pub enum ButtonAction { [INFO] [stdout] | ------------ `ButtonAction` 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/button.rs:56:35 [INFO] [stdout] | [INFO] [stdout] 56 | #[derive(Debug, 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_ButtonAction` [INFO] [stdout] ... [INFO] [stdout] 59 | pub enum ButtonAction { [INFO] [stdout] | ------------ `ButtonAction` 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/button.rs:108:24 [INFO] [stdout] | [INFO] [stdout] 108 | #[derive(Debug, 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_Button` [INFO] [stdout] 109 | pub struct Button { [INFO] [stdout] | ------ `Button` 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/button.rs:108:35 [INFO] [stdout] | [INFO] [stdout] 108 | #[derive(Debug, 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_Button` [INFO] [stdout] 109 | pub struct Button { [INFO] [stdout] | ------ `Button` 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/keyboard.rs:21:24 [INFO] [stdout] | [INFO] [stdout] 21 | #[derive(Debug, 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_Keyboard` [INFO] [stdout] 22 | pub struct Keyboard { [INFO] [stdout] | -------- `Keyboard` 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/keyboard.rs:21:35 [INFO] [stdout] | [INFO] [stdout] 21 | #[derive(Debug, 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_Keyboard` [INFO] [stdout] 22 | pub struct Keyboard { [INFO] [stdout] | -------- `Keyboard` 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 13.25s [INFO] running `Command { std: "docker" "inspect" "feeabbc310efcf1fd0e20fd9ca7e73328c6d9597c3f79e736eb2e5e41de2d794", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "feeabbc310efcf1fd0e20fd9ca7e73328c6d9597c3f79e736eb2e5e41de2d794", kill_on_drop: false }` [INFO] [stdout] feeabbc310efcf1fd0e20fd9ca7e73328c6d9597c3f79e736eb2e5e41de2d794 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:e90291280db7d1fac5b66fc6dad9f9662629e7365a55743daf9bdf73ebc4ea79" "/opt/rustwide/cargo-home/bin/cargo" "+b6ae10aa7319b7ebb6c7b3331dd71a9d6c9c5b4b" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] f96070e6d1fe0a9bd969b91391acb8e7901a8d44aab8dd0ac0e1900683b4a66b [INFO] running `Command { std: "docker" "start" "-a" "f96070e6d1fe0a9bd969b91391acb8e7901a8d44aab8dd0ac0e1900683b4a66b", kill_on_drop: false }` [INFO] [stderr] Compiling vk-keyboard v0.2.0 (/opt/rustwide/workdir) [INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item [INFO] [stdout] --> src/button.rs:17:24 [INFO] [stdout] | [INFO] [stdout] 17 | #[derive(Debug, 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_ButtonColor` [INFO] [stdout] 18 | #[serde(rename_all = "lowercase")] [INFO] [stdout] 19 | pub enum ButtonColor { [INFO] [stdout] | ----------- `ButtonColor` 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/button.rs:17:35 [INFO] [stdout] | [INFO] [stdout] 17 | #[derive(Debug, 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_ButtonColor` [INFO] [stdout] 18 | #[serde(rename_all = "lowercase")] [INFO] [stdout] 19 | pub enum ButtonColor { [INFO] [stdout] | ----------- `ButtonColor` 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/button.rs:56:24 [INFO] [stdout] | [INFO] [stdout] 56 | #[derive(Debug, 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_ButtonAction` [INFO] [stdout] ... [INFO] [stdout] 59 | pub enum ButtonAction { [INFO] [stdout] | ------------ `ButtonAction` 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/button.rs:56:35 [INFO] [stdout] | [INFO] [stdout] 56 | #[derive(Debug, 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_ButtonAction` [INFO] [stdout] ... [INFO] [stdout] 59 | pub enum ButtonAction { [INFO] [stdout] | ------------ `ButtonAction` 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/button.rs:108:24 [INFO] [stdout] | [INFO] [stdout] 108 | #[derive(Debug, 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_Button` [INFO] [stdout] 109 | pub struct Button { [INFO] [stdout] | ------ `Button` 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/button.rs:108:35 [INFO] [stdout] | [INFO] [stdout] 108 | #[derive(Debug, 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_Button` [INFO] [stdout] 109 | pub struct Button { [INFO] [stdout] | ------ `Button` 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/keyboard.rs:21:24 [INFO] [stdout] | [INFO] [stdout] 21 | #[derive(Debug, 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_Keyboard` [INFO] [stdout] 22 | pub struct Keyboard { [INFO] [stdout] | -------- `Keyboard` 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/keyboard.rs:21:35 [INFO] [stdout] | [INFO] [stdout] 21 | #[derive(Debug, 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_Keyboard` [INFO] [stdout] 22 | pub struct Keyboard { [INFO] [stdout] | -------- `Keyboard` 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: unused imports: `ButtonAction` and `Button` [INFO] [stdout] --> examples/example.rs:2:27 [INFO] [stdout] | [INFO] [stdout] 2 | use vk_keyboard::button::{Button, ButtonAction, ButtonColor}; [INFO] [stdout] | ^^^^^^ ^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` 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/button.rs:17:24 [INFO] [stdout] | [INFO] [stdout] 17 | #[derive(Debug, 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_ButtonColor` [INFO] [stdout] 18 | #[serde(rename_all = "lowercase")] [INFO] [stdout] 19 | pub enum ButtonColor { [INFO] [stdout] | ----------- `ButtonColor` 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/button.rs:17:35 [INFO] [stdout] | [INFO] [stdout] 17 | #[derive(Debug, 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_ButtonColor` [INFO] [stdout] 18 | #[serde(rename_all = "lowercase")] [INFO] [stdout] 19 | pub enum ButtonColor { [INFO] [stdout] | ----------- `ButtonColor` 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/button.rs:56:24 [INFO] [stdout] | [INFO] [stdout] 56 | #[derive(Debug, 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_ButtonAction` [INFO] [stdout] ... [INFO] [stdout] 59 | pub enum ButtonAction { [INFO] [stdout] | ------------ `ButtonAction` 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/button.rs:56:35 [INFO] [stdout] | [INFO] [stdout] 56 | #[derive(Debug, 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_ButtonAction` [INFO] [stdout] ... [INFO] [stdout] 59 | pub enum ButtonAction { [INFO] [stdout] | ------------ `ButtonAction` 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/button.rs:108:24 [INFO] [stdout] | [INFO] [stdout] 108 | #[derive(Debug, 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_Button` [INFO] [stdout] 109 | pub struct Button { [INFO] [stdout] | ------ `Button` 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/button.rs:108:35 [INFO] [stdout] | [INFO] [stdout] 108 | #[derive(Debug, 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_Button` [INFO] [stdout] 109 | pub struct Button { [INFO] [stdout] | ------ `Button` 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/keyboard.rs:21:24 [INFO] [stdout] | [INFO] [stdout] 21 | #[derive(Debug, 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_Keyboard` [INFO] [stdout] 22 | pub struct Keyboard { [INFO] [stdout] | -------- `Keyboard` 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/keyboard.rs:21:35 [INFO] [stdout] | [INFO] [stdout] 21 | #[derive(Debug, 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_Keyboard` [INFO] [stdout] 22 | pub struct Keyboard { [INFO] [stdout] | -------- `Keyboard` 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 `test` profile [unoptimized + debuginfo] target(s) in 1.16s [INFO] running `Command { std: "docker" "inspect" "f96070e6d1fe0a9bd969b91391acb8e7901a8d44aab8dd0ac0e1900683b4a66b", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "f96070e6d1fe0a9bd969b91391acb8e7901a8d44aab8dd0ac0e1900683b4a66b", kill_on_drop: false }` [INFO] [stdout] f96070e6d1fe0a9bd969b91391acb8e7901a8d44aab8dd0ac0e1900683b4a66b [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:e90291280db7d1fac5b66fc6dad9f9662629e7365a55743daf9bdf73ebc4ea79" "/opt/rustwide/cargo-home/bin/cargo" "+b6ae10aa7319b7ebb6c7b3331dd71a9d6c9c5b4b" "test" "--frozen", kill_on_drop: false }` [INFO] [stdout] 65dee102332adff7a0a5573eb2f263a350c1b439cb09871be9711b3f737dcc72 [INFO] running `Command { std: "docker" "start" "-a" "65dee102332adff7a0a5573eb2f263a350c1b439cb09871be9711b3f737dcc72", kill_on_drop: false }` [INFO] [stderr] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item [INFO] [stderr] --> src/button.rs:17:24 [INFO] [stderr] | [INFO] [stderr] 17 | #[derive(Debug, 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_ButtonColor` [INFO] [stderr] 18 | #[serde(rename_all = "lowercase")] [INFO] [stderr] 19 | pub enum ButtonColor { [INFO] [stderr] | ----------- `ButtonColor` 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/button.rs:17:35 [INFO] [stderr] | [INFO] [stderr] 17 | #[derive(Debug, 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_ButtonColor` [INFO] [stderr] 18 | #[serde(rename_all = "lowercase")] [INFO] [stderr] 19 | pub enum ButtonColor { [INFO] [stderr] | ----------- `ButtonColor` 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/button.rs:56:24 [INFO] [stderr] | [INFO] [stderr] 56 | #[derive(Debug, 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_ButtonAction` [INFO] [stderr] ... [INFO] [stderr] 59 | pub enum ButtonAction { [INFO] [stderr] | ------------ `ButtonAction` 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/button.rs:56:35 [INFO] [stderr] | [INFO] [stderr] 56 | #[derive(Debug, 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_ButtonAction` [INFO] [stderr] ... [INFO] [stderr] 59 | pub enum ButtonAction { [INFO] [stderr] | ------------ `ButtonAction` 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/button.rs:108:24 [INFO] [stderr] | [INFO] [stderr] 108 | #[derive(Debug, 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_Button` [INFO] [stderr] 109 | pub struct Button { [INFO] [stderr] | ------ `Button` 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/button.rs:108:35 [INFO] [stderr] | [INFO] [stderr] 108 | #[derive(Debug, 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_Button` [INFO] [stderr] 109 | pub struct Button { [INFO] [stderr] | ------ `Button` 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/keyboard.rs:21:24 [INFO] [stderr] | [INFO] [stderr] 21 | #[derive(Debug, 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_Keyboard` [INFO] [stderr] 22 | pub struct Keyboard { [INFO] [stderr] | -------- `Keyboard` 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/keyboard.rs:21:35 [INFO] [stderr] | [INFO] [stderr] 21 | #[derive(Debug, 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_Keyboard` [INFO] [stderr] 22 | pub struct Keyboard { [INFO] [stderr] | -------- `Keyboard` 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: `vk-keyboard` (lib) generated 8 warnings [INFO] [stderr] warning: `vk-keyboard` (lib test) generated 8 warnings (8 duplicates) [INFO] [stderr] warning: unused imports: `ButtonAction` and `Button` [INFO] [stderr] --> examples/example.rs:2:27 [INFO] [stderr] | [INFO] [stderr] 2 | use vk_keyboard::button::{Button, ButtonAction, ButtonColor}; [INFO] [stderr] | ^^^^^^ ^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_imports)]` on by default [INFO] [stderr] [INFO] [stderr] warning: `vk-keyboard` (example "main") generated 1 warning (run `cargo fix --example "main"` to apply 1 suggestion) [INFO] [stderr] Finished `test` profile [unoptimized + debuginfo] target(s) in 0.03s [INFO] [stderr] Running unittests src/lib.rs (/opt/rustwide/target/debug/deps/vk_keyboard-84391ce52970f700) [INFO] [stdout] [INFO] [stdout] running 4 tests [INFO] [stdout] test macros::test_keyboard_macro ... ok [INFO] [stdout] test macros::test_lines_macro ... ok [INFO] [stdout] test macros::test_buttons_macro ... ok [INFO] [stdout] test macros::test_payload_macro ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 4 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.01s [INFO] [stdout] [INFO] [stderr] Doc-tests vk_keyboard [INFO] [stdout] [INFO] [stdout] running 4 tests [INFO] [stdout] test src/keyboard.rs - keyboard::Keyboard::add_line (line 63) ... ok [INFO] [stdout] test src/button.rs - button (line 2) ... ok [INFO] [stdout] test src/keyboard.rs - keyboard::Keyboard::add_button (line 46) ... ok [INFO] [stdout] test src/keyboard.rs - keyboard (line 2) ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 4 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.53s [INFO] [stdout] [INFO] running `Command { std: "docker" "inspect" "65dee102332adff7a0a5573eb2f263a350c1b439cb09871be9711b3f737dcc72", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "65dee102332adff7a0a5573eb2f263a350c1b439cb09871be9711b3f737dcc72", kill_on_drop: false }` [INFO] [stdout] 65dee102332adff7a0a5573eb2f263a350c1b439cb09871be9711b3f737dcc72