[INFO] fetching crate nxtusb 0.2.0...
[INFO] checking nxtusb-0.2.0 against master#b2f1ccf524a3a4cf9c34545167cc23b659cf1cbd for pr-155499
[INFO] extracting crate nxtusb 0.2.0 into /workspace/builds/worker-7-tc1/source
[INFO] started tweaking crates.io crate nxtusb 0.2.0
[INFO] removed 0 missing examples
[INFO] finished tweaking crates.io crate nxtusb 0.2.0
[INFO] tweaked toml for crates.io crate nxtusb 0.2.0 written to /workspace/builds/worker-7-tc1/source/Cargo.toml
[INFO] validating manifest of crates.io crate nxtusb 0.2.0 on toolchain b2f1ccf524a3a4cf9c34545167cc23b659cf1cbd
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+b2f1ccf524a3a4cf9c34545167cc23b659cf1cbd" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate crates.io crate nxtusb 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" "+b2f1ccf524a3a4cf9c34545167cc23b659cf1cbd" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Updating crates.io index
[INFO] [stderr]  Downloading crates ...
[INFO] [stderr]   Downloaded jobserver v0.1.27
[INFO] [stderr]   Downloaded thread_local v1.1.7
[INFO] [stderr]   Downloaded proc-macro2 v1.0.76
[INFO] [stderr]   Downloaded windows-implement v0.48.0
[INFO] [stderr]   Downloaded smallvec v1.11.2
[INFO] [stderr]   Downloaded arrayref v0.3.7
[INFO] [stderr]   Downloaded glutin_egl_sys v0.5.1
[INFO] [stderr]   Downloaded web-time v0.2.4
[INFO] [stderr]   Downloaded enumflags2_derive v0.7.8
[INFO] [stderr]   Downloaded emath v0.24.1
[INFO] [stderr]   Downloaded serde_derive v1.0.193
[INFO] [stderr]   Downloaded zvariant_utils v1.0.1
[INFO] [stderr]   Downloaded accesskit_unix v0.6.2
[INFO] [stderr]   Downloaded zvariant v3.15.0
[INFO] [stderr]   Downloaded async-recursion v1.0.5
[INFO] [stderr]   Downloaded custom_debug_derive v0.5.1
[INFO] [stderr]   Downloaded serde_repr v0.1.17
[INFO] [stderr]   Downloaded custom_debug v0.5.1
[INFO] [stderr]   Downloaded dbus-tokio v0.7.6
[INFO] [stderr]   Downloaded displaydoc v0.2.4
[INFO] [stderr]   Downloaded pin-project-internal v1.1.3
[INFO] [stderr]   Downloaded dbus-crossroads v0.5.2
[INFO] [stderr]   Downloaded polling v3.3.1
[INFO] [stderr]   Downloaded x11rb v0.12.0
[INFO] [stderr]   Downloaded android-activity v0.4.3
[INFO] [stderr]   Downloaded dbus v0.9.7
[INFO] [stderr]   Downloaded serde_json v1.0.109
[INFO] [stderr]   Downloaded bluer v0.16.1
[INFO] [stderr]   Downloaded aho-corasick v1.1.2
[INFO] [stderr]   Downloaded libusb1-sys v0.6.4
[INFO] [stderr]   Downloaded image v0.24.7
[INFO] [stderr]   Downloaded ndk-sys v0.4.1+23.1.7779620
[INFO] [stderr]   Downloaded regex v1.10.2
[INFO] [stderr]   Downloaded nix v0.25.1
[INFO] [stderr]   Downloaded winit v0.28.7
[INFO] [stderr]   Downloaded egui v0.24.1
[INFO] [stderr]   Downloaded event-listener v3.1.0
[INFO] [stderr]   Downloaded futures-lite v2.1.0
[INFO] [stderr]   Downloaded x11rb-protocol v0.12.0
[INFO] [stderr]   Downloaded tiny-skia v0.8.4
[INFO] [stderr]   Downloaded pin-project v1.1.3
[INFO] [stderr]   Downloaded cocoa v0.24.1
[INFO] [stderr]   Downloaded atspi-common v0.3.0
[INFO] [stderr]   Downloaded async-io v2.2.2
[INFO] [stderr]   Downloaded crossbeam-utils v0.8.18
[INFO] [stderr]   Downloaded concurrent-queue v2.4.0
[INFO] [stderr]   Downloaded event-listener v4.0.1
[INFO] [stderr]   Downloaded async-lock v3.2.0
[INFO] [stderr]   Downloaded tokio v1.35.1
[INFO] [stderr]   Downloaded web-sys v0.3.66
[INFO] [stderr]   Downloaded piper v0.2.1
[INFO] [stderr]   Downloaded blocking v1.5.1
[INFO] [stderr]   Downloaded regex-automata v0.4.3
[INFO] [stderr]   Downloaded glow v0.12.3
[INFO] [stderr]   Downloaded wasm-bindgen v0.2.89
[INFO] [stderr]   Downloaded accesskit_macos v0.10.1
[INFO] [stderr]   Downloaded async-once-cell v0.5.3
[INFO] [stderr]   Downloaded epaint v0.24.1
[INFO] [stderr]   Downloaded atspi-proxies v0.3.0
[INFO] [stderr]   Downloaded async-executor v1.8.0
[INFO] [stderr]   Downloaded winnow v0.5.31
[INFO] [stderr]   Downloaded owned_ttf_parser v0.20.0
[INFO] [stderr]   Downloaded async-fs v1.6.0
[INFO] [stderr]   Downloaded async-trait v0.1.77
[INFO] [stderr]   Downloaded async-task v4.6.0
[INFO] [stderr]   Downloaded tempfile v3.9.0
[INFO] [stderr]   Downloaded zbus_macros v3.14.1
[INFO] [stderr]   Downloaded zbus_names v2.6.0
[INFO] [stderr]   Downloaded objc2 v0.3.0-beta.3.patch-leaks.3
[INFO] [stderr]   Downloaded ttf-parser v0.20.0
[INFO] [stderr]   Downloaded smithay-client-toolkit v0.16.1
[INFO] [stderr]   Downloaded cocoa-foundation v0.1.2
[INFO] [stderr]   Downloaded async-broadcast v0.5.1
[INFO] [stderr]   Downloaded async-signal v0.2.5
[INFO] [stderr]   Downloaded async-process v1.8.1
[INFO] [stderr]   Downloaded async-channel v2.1.1
[INFO] [stderr]   Downloaded memoffset v0.9.0
[INFO] [stderr]   Downloaded gilrs v0.10.4
[INFO] [stderr]   Downloaded macaddr v1.0.1
[INFO] [stderr]   Downloaded atspi-connection v0.3.0
[INFO] [stderr]   Downloaded atspi v0.19.0
[INFO] [stderr]   Downloaded waker-fn v1.1.1
[INFO] [stderr]   Downloaded zbus v3.14.1
[INFO] [stderr]   Downloaded eframe v0.24.1
[INFO] [stderr]   Downloaded png v0.17.10
[INFO] [stderr]   Downloaded js-sys v0.3.66
[INFO] [stderr]   Downloaded orbclient v0.3.47
[INFO] [stderr]   Downloaded event-listener-strategy v0.4.0
[INFO] [stderr]   Downloaded xdg-home v1.0.0
[INFO] [stderr]   Downloaded serde v1.0.193
[INFO] [stderr]   Downloaded webbrowser v0.8.12
[INFO] [stderr]   Downloaded calloop v0.10.6
[INFO] [stderr]   Downloaded gilrs-core v0.5.10
[INFO] [stderr]   Downloaded uuid v1.6.1
[INFO] [stderr]   Downloaded parking v2.2.0
[INFO] [stderr]   Downloaded enumflags2 v0.7.8
[INFO] [stderr]   Downloaded glutin v0.30.10
[INFO] [stderr]   Downloaded indexmap v2.1.0
[INFO] [stderr]   Downloaded ndk v0.7.0
[INFO] [stderr]   Downloaded bytemuck v1.14.0
[INFO] [stderr]   Downloaded tiny-skia-path v0.8.4
[INFO] [stderr]   Downloaded sctk-adwaita v0.5.4
[INFO] [stderr]   Downloaded inotify v0.10.2
[INFO] [stderr]   Downloaded mach2 v0.4.2
[INFO] [stderr]   Downloaded wasm-bindgen-macro-support v0.2.89
[INFO] [stderr]   Downloaded rusb v0.9.3
[INFO] [stderr]   Downloaded accesskit_consumer v0.16.1
[INFO] [stderr]   Downloaded libdbus-sys v0.2.5
[INFO] [stderr]   Downloaded accesskit_windows v0.15.1
[INFO] [stderr]   Downloaded accesskit_winit v0.15.0
[INFO] [stderr]   Downloaded arboard v3.3.0
[INFO] [stderr]   Downloaded unicode-bidi v0.3.14
[INFO] [stderr]   Downloaded egui-winit v0.24.1
[INFO] [stderr]   Downloaded accesskit v0.12.1
[INFO] [stderr]   Downloaded ahash v0.8.7
[INFO] [stderr]   Downloaded objc-sys v0.2.0-beta.2
[INFO] [stderr]   Downloaded objc2-encode v2.0.0-pre.2
[INFO] [stderr]   Downloaded libloading v0.8.1
[INFO] [stderr]   Downloaded xml-rs v0.8.19
[INFO] [stderr]   Downloaded io-kit-sys v0.4.0
[INFO] [stderr]   Downloaded getrandom v0.2.11
[INFO] [stderr]   Downloaded gethostname v0.3.0
[INFO] [stderr]   Downloaded smithay-clipboard v0.6.6
[INFO] [stderr]   Downloaded winapi-util v0.1.6
[INFO] [stderr]   Downloaded walkdir v2.4.0
[INFO] [stderr]   Downloaded egui_glow v0.24.1
[INFO] [stderr]   Downloaded core-graphics v0.22.3
[INFO] [stderr]   Downloaded raw-window-handle v0.5.2
[INFO] [stderr]   Downloaded fdeflate v0.3.3
[INFO] [stderr]   Downloaded bytemuck_derive v1.5.0
[INFO] [stderr]   Downloaded wasm-bindgen-macro v0.2.89
[INFO] [stderr]   Downloaded zvariant_derive v3.15.0
[INFO] [stderr]   Downloaded winapi-wsapoll v0.1.1
[INFO] [stderr]   Downloaded ecolor v0.24.1
[INFO] [stderr]   Downloaded glutin_wgl_sys v0.4.0
[INFO] [stderr]   Downloaded wayland-sys v0.30.1
[INFO] [stderr]   Downloaded num_enum v0.5.11
[INFO] [stderr]   Downloaded ab_glyph_rasterizer v0.1.8
[INFO] [stderr]   Downloaded libudev-sys v0.1.4
[INFO] [stderr]   Downloaded pkg-config v0.3.28
[INFO] [stderr]   Downloaded rustversion v1.0.14
[INFO] [stderr]   Downloaded glutin_glx_sys v0.4.0
[INFO] [stderr]   Downloaded wasm-bindgen-futures v0.4.39
[INFO] [stderr]   Downloaded toml_datetime v0.6.5
[INFO] [stderr]   Downloaded num_enum_derive v0.5.11
[INFO] [stderr]   Downloaded block-sys v0.1.0-beta.1
[INFO] [stderr]   Downloaded block2 v0.2.0-alpha.6
[INFO] [stderr]   Downloaded ab_glyph v0.2.23
[INFO] [stderr]   Downloaded xcursor v0.3.5
[INFO] [stderr]   Downloaded wasm-bindgen-shared v0.2.89
[INFO] [stderr]   Downloaded windows-interface v0.48.0
[INFO] [stderr]   Downloaded glutin-winit v0.3.0
[INFO] [stderr]   Downloaded color_quant v1.1.0
[INFO] [stderr]   Downloaded libredox v0.0.2
[INFO] [stderr]   Downloaded wasm-bindgen-backend v0.2.89
[INFO] [stderr]   Downloaded wayland-cursor v0.29.5
[INFO] [stderr]   Downloaded num-derive v0.4.1
[INFO] [stderr]   Downloaded windows v0.48.0
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-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:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+b2f1ccf524a3a4cf9c34545167cc23b659cf1cbd" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] d8f59598d251ccc50cee2998f74bcc320727f0c19019442321beb0def3e5c5a2
[INFO] running `Command { std: "docker" "start" "-a" "d8f59598d251ccc50cee2998f74bcc320727f0c19019442321beb0def3e5c5a2", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "d8f59598d251ccc50cee2998f74bcc320727f0c19019442321beb0def3e5c5a2", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "d8f59598d251ccc50cee2998f74bcc320727f0c19019442321beb0def3e5c5a2", kill_on_drop: false }`
[INFO] [stdout] d8f59598d251ccc50cee2998f74bcc320727f0c19019442321beb0def3e5c5a2
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-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:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+b2f1ccf524a3a4cf9c34545167cc23b659cf1cbd" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 5a392c18f21ac277ea81cf30a0c057aaf15627db2d3f82e1b07eaf178370ba07
[INFO] running `Command { std: "docker" "start" "-a" "5a392c18f21ac277ea81cf30a0c057aaf15627db2d3f82e1b07eaf178370ba07", kill_on_drop: false }`
[INFO] [stderr]    Compiling proc-macro2 v1.0.76
[INFO] [stderr]    Compiling libc v0.2.151
[INFO] [stderr]    Compiling pkg-config v0.3.28
[INFO] [stderr]     Checking futures-sink v0.3.30
[INFO] [stderr]     Checking futures-io v0.3.30
[INFO] [stderr]    Compiling serde v1.0.193
[INFO] [stderr]    Compiling syn v1.0.109
[INFO] [stderr]    Compiling serde_json v1.0.109
[INFO] [stderr]    Compiling rustversion v1.0.14
[INFO] [stderr]    Compiling unicode-xid v0.2.4
[INFO] [stderr]    Compiling ryu v1.0.16
[INFO] [stderr]    Compiling num-traits v0.2.17
[INFO] [stderr]    Compiling heck v0.4.1
[INFO] [stderr]    Compiling uuid v1.6.1
[INFO] [stderr]     Checking bitflags v2.4.1
[INFO] [stderr]    Compiling async-trait v0.1.77
[INFO] [stderr]     Checking futures-channel v0.3.30
[INFO] [stderr]    Compiling rusb v0.9.3
[INFO] [stderr]    Compiling thiserror v1.0.52
[INFO] [stderr]     Checking tracing-core v0.1.32
[INFO] [stderr]     Checking log v0.4.20
[INFO] [stderr]     Checking macaddr v1.0.1
[INFO] [stderr]    Compiling libdbus-sys v0.2.5
[INFO] [stderr]    Compiling quote v1.0.35
[INFO] [stderr]    Compiling cc v1.0.83
[INFO] [stderr]    Compiling syn v2.0.48
[INFO] [stderr]    Compiling libusb1-sys v0.6.4
[INFO] [stderr]     Checking num_cpus v1.16.0
[INFO] [stderr]     Checking socket2 v0.5.5
[INFO] [stderr]     Checking mio v0.8.10
[INFO] [stderr]     Checking getrandom v0.2.11
[INFO] [stderr]     Checking nix v0.27.1
[INFO] [stderr]    Compiling synstructure v0.12.6
[INFO] [stderr]    Compiling custom_debug_derive v0.5.1
[INFO] [stderr]     Checking custom_debug v0.5.1
[INFO] [stderr]    Compiling futures-macro v0.3.30
[INFO] [stderr]    Compiling serde_derive v1.0.193
[INFO] [stderr]    Compiling tokio-macros v2.2.0
[INFO] [stderr]    Compiling pin-project-internal v1.1.3
[INFO] [stderr]    Compiling strum_macros v0.25.3
[INFO] [stderr]    Compiling thiserror-impl v1.0.52
[INFO] [stderr]    Compiling tracing-attributes v0.1.27
[INFO] [stderr]    Compiling num-derive v0.4.1
[INFO] [stderr]    Compiling displaydoc v0.2.4
[INFO] [stderr]     Checking tokio v1.35.1
[INFO] [stderr]     Checking futures-util v0.3.30
[INFO] [stderr]     Checking pin-project v1.1.3
[INFO] [stderr]     Checking tracing v0.1.40
[INFO] [stderr]     Checking strum v0.25.0
[INFO] [stderr]     Checking tokio-stream v0.1.14
[INFO] [stderr]     Checking dbus v0.9.7
[INFO] [stderr]     Checking futures-executor v0.3.30
[INFO] [stderr]     Checking futures v0.3.30
[INFO] [stderr]     Checking dbus-crossroads v0.5.2
[INFO] [stderr]     Checking dbus-tokio v0.7.6
[INFO] [stderr]    Compiling bluer v0.16.1
[INFO] [stderr]     Checking nxtusb 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/motor.rs:17:51
[INFO] [stdout]    |
[INFO] [stdout] 17 | #[derive(Copy, Clone, Debug, Hash, PartialEq, Eq, FromPrimitive)]
[INFO] [stdout]    |                                                   ^------------
[INFO] [stdout]    |                                                   |
[INFO] [stdout]    |                                                   `FromPrimitive` is not local
[INFO] [stdout]    |                                                   move the `impl` block outside of this constant `_IMPL_NUM_FromPrimitive_FOR_OutPort`
[INFO] [stdout] ...
[INFO] [stdout] 20 | pub enum OutPort {
[INFO] [stdout]    |          ------- `OutPort` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `FromPrimitive` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `FromPrimitive` may come from an old version of the `num_derive` crate, try updating your dependency with `cargo update -p num_derive`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: items in an anonymous const 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 `FromPrimitive` (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/motor.rs:40:45
[INFO] [stdout]    |
[INFO] [stdout] 40 | #[derive(Copy, Clone, Debug, PartialEq, Eq, FromPrimitive)]
[INFO] [stdout]    |                                             ^------------
[INFO] [stdout]    |                                             |
[INFO] [stdout]    |                                             `FromPrimitive` is not local
[INFO] [stdout]    |                                             move the `impl` block outside of this constant `_IMPL_NUM_FromPrimitive_FOR_OutMode`
[INFO] [stdout] 41 | pub struct OutMode(pub(crate) u8);
[INFO] [stdout]    |            ------- `OutMode` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `FromPrimitive` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `FromPrimitive` may come from an old version of the `num_derive` crate, try updating your dependency with `cargo update -p num_derive`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: items in an anonymous const item (`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 `FromPrimitive` (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/motor.rs:70:54
[INFO] [stdout]    |
[INFO] [stdout] 70 | #[derive(Copy, Clone, Debug, Default, PartialEq, Eq, FromPrimitive)]
[INFO] [stdout]    |                                                      ^------------
[INFO] [stdout]    |                                                      |
[INFO] [stdout]    |                                                      `FromPrimitive` is not local
[INFO] [stdout]    |                                                      move the `impl` block outside of this constant `_IMPL_NUM_FromPrimitive_FOR_RegulationMode`
[INFO] [stdout] 71 | #[repr(u8)]
[INFO] [stdout] 72 | pub enum RegulationMode {
[INFO] [stdout]    |          -------------- `RegulationMode` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `FromPrimitive` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `FromPrimitive` may come from an old version of the `num_derive` crate, try updating your dependency with `cargo update -p num_derive`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: items in an anonymous const item (`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 `FromPrimitive` (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/motor.rs:91:45
[INFO] [stdout]    |
[INFO] [stdout] 91 | #[derive(Copy, Clone, Debug, PartialEq, Eq, FromPrimitive)]
[INFO] [stdout]    |                                             ^------------
[INFO] [stdout]    |                                             |
[INFO] [stdout]    |                                             `FromPrimitive` is not local
[INFO] [stdout]    |                                             move the `impl` block outside of this constant `_IMPL_NUM_FromPrimitive_FOR_RunState`
[INFO] [stdout] 92 | #[repr(u8)]
[INFO] [stdout] 93 | pub enum RunState {
[INFO] [stdout]    |          -------- `RunState` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `FromPrimitive` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `FromPrimitive` may come from an old version of the `num_derive` crate, try updating your dependency with `cargo update -p num_derive`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: items in an anonymous const item (`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 `FromPrimitive` (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/protocol.rs:13:30
[INFO] [stdout]    |
[INFO] [stdout] 13 | #[derive(Copy, Clone, Debug, FromPrimitive, PartialEq, Eq)]
[INFO] [stdout]    |                              ^------------
[INFO] [stdout]    |                              |
[INFO] [stdout]    |                              `FromPrimitive` is not local
[INFO] [stdout]    |                              move the `impl` block outside of this constant `_IMPL_NUM_FromPrimitive_FOR_Opcode`
[INFO] [stdout] 14 | #[repr(u8)]
[INFO] [stdout] 15 | pub enum Opcode {
[INFO] [stdout]    |          ------ `Opcode` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `FromPrimitive` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `FromPrimitive` may come from an old version of the `num_derive` crate, try updating your dependency with `cargo update -p num_derive`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: items in an anonymous const item (`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 `FromPrimitive` (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/protocol.rs:96:30
[INFO] [stdout]    |
[INFO] [stdout] 96 | #[derive(Copy, Clone, Debug, FromPrimitive, thiserror::Error)]
[INFO] [stdout]    |                              ^------------
[INFO] [stdout]    |                              |
[INFO] [stdout]    |                              `FromPrimitive` is not local
[INFO] [stdout]    |                              move the `impl` block outside of this constant `_IMPL_NUM_FromPrimitive_FOR_DeviceError`
[INFO] [stdout] ...
[INFO] [stdout] 99 | pub enum DeviceError {
[INFO] [stdout]    |          ----------- `DeviceError` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `FromPrimitive` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `FromPrimitive` may come from an old version of the `num_derive` crate, try updating your dependency with `cargo update -p num_derive`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: items in an anonymous const item (`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 `FromPrimitive` (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/protocol.rs:196:30
[INFO] [stdout]     |
[INFO] [stdout] 196 | #[derive(Copy, Clone, Debug, FromPrimitive, PartialEq, Eq)]
[INFO] [stdout]     |                              ^------------
[INFO] [stdout]     |                              |
[INFO] [stdout]     |                              `FromPrimitive` is not local
[INFO] [stdout]     |                              move the `impl` block outside of this constant `_IMPL_NUM_FromPrimitive_FOR_PacketType`
[INFO] [stdout] ...
[INFO] [stdout] 199 | pub enum PacketType {
[INFO] [stdout]     |          ---------- `PacketType` is not local
[INFO] [stdout]     |
[INFO] [stdout]     = note: the derive macro `FromPrimitive` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]     = note: the derive macro `FromPrimitive` may come from an old version of the `num_derive` crate, try updating your dependency with `cargo update -p num_derive`
[INFO] [stdout]     = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]     = note: items in an anonymous const item (`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 `FromPrimitive` (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/sensor.rs:9:51
[INFO] [stdout]    |
[INFO] [stdout]  9 | #[derive(Debug, Copy, Clone, Hash, PartialEq, Eq, FromPrimitive)]
[INFO] [stdout]    |                                                   ^------------
[INFO] [stdout]    |                                                   |
[INFO] [stdout]    |                                                   `FromPrimitive` is not local
[INFO] [stdout]    |                                                   move the `impl` block outside of this constant `_IMPL_NUM_FromPrimitive_FOR_InPort`
[INFO] [stdout] ...
[INFO] [stdout] 13 | pub enum InPort {
[INFO] [stdout]    |          ------ `InPort` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `FromPrimitive` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `FromPrimitive` may come from an old version of the `num_derive` crate, try updating your dependency with `cargo update -p num_derive`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: items in an anonymous const item (`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 `FromPrimitive` (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/sensor.rs:28:54
[INFO] [stdout]    |
[INFO] [stdout] 28 | #[derive(Debug, Default, Copy, Clone, PartialEq, Eq, FromPrimitive)]
[INFO] [stdout]    |                                                      ^------------
[INFO] [stdout]    |                                                      |
[INFO] [stdout]    |                                                      `FromPrimitive` is not local
[INFO] [stdout]    |                                                      move the `impl` block outside of this constant `_IMPL_NUM_FromPrimitive_FOR_SensorType`
[INFO] [stdout] ...
[INFO] [stdout] 32 | pub enum SensorType {
[INFO] [stdout]    |          ---------- `SensorType` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `FromPrimitive` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `FromPrimitive` may come from an old version of the `num_derive` crate, try updating your dependency with `cargo update -p num_derive`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: items in an anonymous const item (`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 `FromPrimitive` (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/sensor.rs:68:54
[INFO] [stdout]    |
[INFO] [stdout] 68 | #[derive(Debug, Default, Copy, Clone, PartialEq, Eq, FromPrimitive)]
[INFO] [stdout]    |                                                      ^------------
[INFO] [stdout]    |                                                      |
[INFO] [stdout]    |                                                      `FromPrimitive` is not local
[INFO] [stdout]    |                                                      move the `impl` block outside of this constant `_IMPL_NUM_FromPrimitive_FOR_SensorMode`
[INFO] [stdout] ...
[INFO] [stdout] 72 | pub enum SensorMode {
[INFO] [stdout]    |          ---------- `SensorMode` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `FromPrimitive` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `FromPrimitive` may come from an old version of the `num_derive` crate, try updating your dependency with `cargo update -p num_derive`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: items in an anonymous const item (`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 `FromPrimitive` (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/motor.rs:17:51
[INFO] [stdout]    |
[INFO] [stdout] 17 | #[derive(Copy, Clone, Debug, Hash, PartialEq, Eq, FromPrimitive)]
[INFO] [stdout]    |                                                   ^------------
[INFO] [stdout]    |                                                   |
[INFO] [stdout]    |                                                   `FromPrimitive` is not local
[INFO] [stdout]    |                                                   move the `impl` block outside of this constant `_IMPL_NUM_FromPrimitive_FOR_OutPort`
[INFO] [stdout] ...
[INFO] [stdout] 20 | pub enum OutPort {
[INFO] [stdout]    |          ------- `OutPort` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `FromPrimitive` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `FromPrimitive` may come from an old version of the `num_derive` crate, try updating your dependency with `cargo update -p num_derive`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: items in an anonymous const 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 `FromPrimitive` (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/motor.rs:40:45
[INFO] [stdout]    |
[INFO] [stdout] 40 | #[derive(Copy, Clone, Debug, PartialEq, Eq, FromPrimitive)]
[INFO] [stdout]    |                                             ^------------
[INFO] [stdout]    |                                             |
[INFO] [stdout]    |                                             `FromPrimitive` is not local
[INFO] [stdout]    |                                             move the `impl` block outside of this constant `_IMPL_NUM_FromPrimitive_FOR_OutMode`
[INFO] [stdout] 41 | pub struct OutMode(pub(crate) u8);
[INFO] [stdout]    |            ------- `OutMode` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `FromPrimitive` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `FromPrimitive` may come from an old version of the `num_derive` crate, try updating your dependency with `cargo update -p num_derive`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: items in an anonymous const item (`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 `FromPrimitive` (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/motor.rs:70:54
[INFO] [stdout]    |
[INFO] [stdout] 70 | #[derive(Copy, Clone, Debug, Default, PartialEq, Eq, FromPrimitive)]
[INFO] [stdout]    |                                                      ^------------
[INFO] [stdout]    |                                                      |
[INFO] [stdout]    |                                                      `FromPrimitive` is not local
[INFO] [stdout]    |                                                      move the `impl` block outside of this constant `_IMPL_NUM_FromPrimitive_FOR_RegulationMode`
[INFO] [stdout] 71 | #[repr(u8)]
[INFO] [stdout] 72 | pub enum RegulationMode {
[INFO] [stdout]    |          -------------- `RegulationMode` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `FromPrimitive` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `FromPrimitive` may come from an old version of the `num_derive` crate, try updating your dependency with `cargo update -p num_derive`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: items in an anonymous const item (`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 `FromPrimitive` (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/motor.rs:91:45
[INFO] [stdout]    |
[INFO] [stdout] 91 | #[derive(Copy, Clone, Debug, PartialEq, Eq, FromPrimitive)]
[INFO] [stdout]    |                                             ^------------
[INFO] [stdout]    |                                             |
[INFO] [stdout]    |                                             `FromPrimitive` is not local
[INFO] [stdout]    |                                             move the `impl` block outside of this constant `_IMPL_NUM_FromPrimitive_FOR_RunState`
[INFO] [stdout] 92 | #[repr(u8)]
[INFO] [stdout] 93 | pub enum RunState {
[INFO] [stdout]    |          -------- `RunState` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `FromPrimitive` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `FromPrimitive` may come from an old version of the `num_derive` crate, try updating your dependency with `cargo update -p num_derive`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: items in an anonymous const item (`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 `FromPrimitive` (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/protocol.rs:13:30
[INFO] [stdout]    |
[INFO] [stdout] 13 | #[derive(Copy, Clone, Debug, FromPrimitive, PartialEq, Eq)]
[INFO] [stdout]    |                              ^------------
[INFO] [stdout]    |                              |
[INFO] [stdout]    |                              `FromPrimitive` is not local
[INFO] [stdout]    |                              move the `impl` block outside of this constant `_IMPL_NUM_FromPrimitive_FOR_Opcode`
[INFO] [stdout] 14 | #[repr(u8)]
[INFO] [stdout] 15 | pub enum Opcode {
[INFO] [stdout]    |          ------ `Opcode` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `FromPrimitive` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `FromPrimitive` may come from an old version of the `num_derive` crate, try updating your dependency with `cargo update -p num_derive`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: items in an anonymous const item (`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 `FromPrimitive` (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/protocol.rs:96:30
[INFO] [stdout]    |
[INFO] [stdout] 96 | #[derive(Copy, Clone, Debug, FromPrimitive, thiserror::Error)]
[INFO] [stdout]    |                              ^------------
[INFO] [stdout]    |                              |
[INFO] [stdout]    |                              `FromPrimitive` is not local
[INFO] [stdout]    |                              move the `impl` block outside of this constant `_IMPL_NUM_FromPrimitive_FOR_DeviceError`
[INFO] [stdout] ...
[INFO] [stdout] 99 | pub enum DeviceError {
[INFO] [stdout]    |          ----------- `DeviceError` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `FromPrimitive` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `FromPrimitive` may come from an old version of the `num_derive` crate, try updating your dependency with `cargo update -p num_derive`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: items in an anonymous const item (`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 `FromPrimitive` (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/protocol.rs:196:30
[INFO] [stdout]     |
[INFO] [stdout] 196 | #[derive(Copy, Clone, Debug, FromPrimitive, PartialEq, Eq)]
[INFO] [stdout]     |                              ^------------
[INFO] [stdout]     |                              |
[INFO] [stdout]     |                              `FromPrimitive` is not local
[INFO] [stdout]     |                              move the `impl` block outside of this constant `_IMPL_NUM_FromPrimitive_FOR_PacketType`
[INFO] [stdout] ...
[INFO] [stdout] 199 | pub enum PacketType {
[INFO] [stdout]     |          ---------- `PacketType` is not local
[INFO] [stdout]     |
[INFO] [stdout]     = note: the derive macro `FromPrimitive` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]     = note: the derive macro `FromPrimitive` may come from an old version of the `num_derive` crate, try updating your dependency with `cargo update -p num_derive`
[INFO] [stdout]     = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]     = note: items in an anonymous const item (`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 `FromPrimitive` (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/sensor.rs:9:51
[INFO] [stdout]    |
[INFO] [stdout]  9 | #[derive(Debug, Copy, Clone, Hash, PartialEq, Eq, FromPrimitive)]
[INFO] [stdout]    |                                                   ^------------
[INFO] [stdout]    |                                                   |
[INFO] [stdout]    |                                                   `FromPrimitive` is not local
[INFO] [stdout]    |                                                   move the `impl` block outside of this constant `_IMPL_NUM_FromPrimitive_FOR_InPort`
[INFO] [stdout] ...
[INFO] [stdout] 13 | pub enum InPort {
[INFO] [stdout]    |          ------ `InPort` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `FromPrimitive` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `FromPrimitive` may come from an old version of the `num_derive` crate, try updating your dependency with `cargo update -p num_derive`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: items in an anonymous const item (`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 `FromPrimitive` (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/sensor.rs:28:54
[INFO] [stdout]    |
[INFO] [stdout] 28 | #[derive(Debug, Default, Copy, Clone, PartialEq, Eq, FromPrimitive)]
[INFO] [stdout]    |                                                      ^------------
[INFO] [stdout]    |                                                      |
[INFO] [stdout]    |                                                      `FromPrimitive` is not local
[INFO] [stdout]    |                                                      move the `impl` block outside of this constant `_IMPL_NUM_FromPrimitive_FOR_SensorType`
[INFO] [stdout] ...
[INFO] [stdout] 32 | pub enum SensorType {
[INFO] [stdout]    |          ---------- `SensorType` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `FromPrimitive` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `FromPrimitive` may come from an old version of the `num_derive` crate, try updating your dependency with `cargo update -p num_derive`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: items in an anonymous const item (`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 `FromPrimitive` (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/sensor.rs:68:54
[INFO] [stdout]    |
[INFO] [stdout] 68 | #[derive(Debug, Default, Copy, Clone, PartialEq, Eq, FromPrimitive)]
[INFO] [stdout]    |                                                      ^------------
[INFO] [stdout]    |                                                      |
[INFO] [stdout]    |                                                      `FromPrimitive` is not local
[INFO] [stdout]    |                                                      move the `impl` block outside of this constant `_IMPL_NUM_FromPrimitive_FOR_SensorMode`
[INFO] [stdout] ...
[INFO] [stdout] 72 | pub enum SensorMode {
[INFO] [stdout]    |          ---------- `SensorMode` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `FromPrimitive` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `FromPrimitive` may come from an old version of the `num_derive` crate, try updating your dependency with `cargo update -p num_derive`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: items in an anonymous const item (`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 `FromPrimitive` (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 32.60s
[INFO] [stderr] warning: the following packages contain code that will be rejected by a future version of Rust: bluer v0.16.1
[INFO] [stderr] note: to see what the problems were, use the option `--future-incompat-report`, or run `cargo report future-incompatibilities --id 3`
[INFO] running `Command { std: "docker" "inspect" "5a392c18f21ac277ea81cf30a0c057aaf15627db2d3f82e1b07eaf178370ba07", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "5a392c18f21ac277ea81cf30a0c057aaf15627db2d3f82e1b07eaf178370ba07", kill_on_drop: false }`
[INFO] [stdout] 5a392c18f21ac277ea81cf30a0c057aaf15627db2d3f82e1b07eaf178370ba07
