[INFO] cloning repository https://github.com/spiveeworks/tactics
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/spiveeworks/tactics" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fspiveeworks%2Ftactics", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fspiveeworks%2Ftactics'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] 28fc3e6456adeb8ab78bbea5617c92b7982e837c
[INFO] checking spiveeworks/tactics against master#ab26b175979ee7b2cb3302dce204b99df96f7efb for pr-157696
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fspiveeworks%2Ftactics" "/workspace/builds/worker-3-tc1/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-3-tc1/source'...
[INFO] [stderr] done.
[INFO] started tweaking git repo https://github.com/spiveeworks/tactics
[INFO] finished tweaking git repo https://github.com/spiveeworks/tactics
[INFO] tweaked toml for git repo https://github.com/spiveeworks/tactics written to /workspace/builds/worker-3-tc1/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/spiveeworks/tactics on toolchain ab26b175979ee7b2cb3302dce204b99df96f7efb
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+ab26b175979ee7b2cb3302dce204b99df96f7efb" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate git repo https://github.com/spiveeworks/tactics 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" "+ab26b175979ee7b2cb3302dce204b99df96f7efb" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr] warning: Cargo.toml: `package.edition` is unspecified, defaulting to `2015` while the latest is `2024`
[INFO] [stderr] warning: `tactics` (manifest) generated 1 warning
[INFO] [stderr]     Updating git repository `https://github.com/spiveeworks/piston_app`
[INFO] [stderr]     Updating crates.io index
[INFO] [stderr]  Downloading crates ...
[INFO] [stderr]   Downloaded syn v0.15.21
[INFO] [stderr]   Downloaded vecmath v0.3.1
[INFO] [stderr]   Downloaded piston-float v0.3.0
[INFO] [stderr]   Downloaded ron v0.4.0
[INFO] [stderr]   Downloaded base64 v0.9.3
[INFO] [stderr]   Downloaded libloading v0.5.0
[INFO] [stderr]   Downloaded wayland-sys v0.21.4
[INFO] [stderr]   Downloaded wayland-scanner v0.21.4
[INFO] [stderr]   Downloaded andrew v0.1.4
[INFO] [stderr]   Downloaded xdg v2.1.0
[INFO] [stderr]   Downloaded downcast-rs v1.0.3
[INFO] [stderr]   Downloaded gfx_gl v0.5.0
[INFO] [stderr]   Downloaded memmap v0.6.2
[INFO] [stderr]   Downloaded piston-viewport v0.5.0
[INFO] [stderr]   Downloaded pkg-config v0.3.14
[INFO] [stderr]   Downloaded shader_version v0.3.0
[INFO] [stderr]   Downloaded wayland-commons v0.21.4
[INFO] [stderr]   Downloaded pistoncore-window v0.34.0
[INFO] [stderr]   Downloaded approx v0.3.0
[INFO] [stderr]   Downloaded piston-shaders_graphics2d v0.3.1
[INFO] [stderr]   Downloaded inflate v0.4.3
[INFO] [stderr]   Downloaded num-derive v0.2.3
[INFO] [stderr]   Downloaded safemem v0.3.0
[INFO] [stderr]   Downloaded piston v0.39.0
[INFO] [stderr]   Downloaded ordered-float v1.0.1
[INFO] [stderr]   Downloaded read_color v1.0.0
[INFO] [stderr]   Downloaded gl v0.11.0
[INFO] [stderr]   Downloaded piston-texture v0.6.0
[INFO] [stderr]   Downloaded piston-gfx_texture v0.34.0
[INFO] [stderr]   Downloaded interpolation v0.1.0
[INFO] [stderr]   Downloaded pistoncore-event_loop v0.39.0
[INFO] [stderr]   Downloaded gl_generator v0.10.0
[INFO] [stderr]   Downloaded jpeg-decoder v0.1.15
[INFO] [stderr]   Downloaded stb_truetype v0.2.4
[INFO] [stderr]   Downloaded adler32 v1.0.3
[INFO] [stderr]   Downloaded gfx v0.17.1
[INFO] [stderr]   Downloaded png v0.12.0
[INFO] [stderr]   Downloaded pistoncore-input v0.23.0
[INFO] [stderr]   Downloaded gif v0.10.1
[INFO] [stderr]   Downloaded gleam v0.6.7
[INFO] [stderr]   Downloaded gl_generator v0.9.0
[INFO] [stderr]   Downloaded core-foundation v0.6.3
[INFO] [stderr]   Downloaded smallvec v0.6.6
[INFO] [stderr]   Downloaded gfx_core v0.8.3
[INFO] [stderr]   Downloaded xml-rs v0.7.0
[INFO] [stderr]   Downloaded objc v0.2.5
[INFO] [stderr]   Downloaded cocoa v0.18.4
[INFO] [stderr]   Downloaded derivative v1.0.2
[INFO] [stderr]   Downloaded glutin v0.19.0
[INFO] [stderr]   Downloaded gfx_device_gl v0.15.3
[INFO] [stderr]   Downloaded wayland-client v0.21.4
[INFO] [stderr]   Downloaded pistoncore-glutin_window v0.51.1
[INFO] [stderr]   Downloaded rusttype v0.7.3
[INFO] [stderr]   Downloaded x11-dl v2.18.3
[INFO] [stderr]   Downloaded wayland-protocols v0.21.4
[INFO] [stderr]   Downloaded piston2d-graphics v0.28.0
[INFO] [stderr]   Downloaded smithay-client-toolkit v0.4.2
[INFO] [stderr]   Downloaded deflate v0.7.19
[INFO] [stderr]   Downloaded image v0.20.1
[INFO] [stderr]   Downloaded nix v0.11.0
[INFO] [stderr]   Downloaded winit v0.18.0
[INFO] [stderr]   Downloaded piston2d-gfx_graphics v0.54.0
[INFO] [stderr]   Downloaded khronos_api v2.2.0
[INFO] [stderr]   Downloaded khronos_api v3.0.0
[INFO] [stderr]   Downloaded tiff v0.2.1
[INFO] [stderr]   Downloaded piston_window v0.85.0
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc1/target:/opt/rustwide/target:rw,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" "-m" "1610612736" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:3a6becf2bc8dde7f3fa57ede90e4f284e72d296796fc446bbb1e2c7cc0530151" "sleep" "infinity", kill_on_drop: false }`
[INFO] [stdout] d95c44e7ad927d76347f742df3fe5e65273ea7d37de1b8c31fae6e07df0f5e25
[INFO] running `Command { std: "docker" "start" "d95c44e7ad927d76347f742df3fe5e65273ea7d37de1b8c31fae6e07df0f5e25", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "exec" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-w" "/opt/rustwide/workdir" "--user" "0:0" "d95c44e7ad927d76347f742df3fe5e65273ea7d37de1b8c31fae6e07df0f5e25" "/opt/rustwide/cargo-home/bin/cargo" "+ab26b175979ee7b2cb3302dce204b99df96f7efb" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "d95c44e7ad927d76347f742df3fe5e65273ea7d37de1b8c31fae6e07df0f5e25", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "exec" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-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" "-w" "/opt/rustwide/workdir" "--user" "0:0" "d95c44e7ad927d76347f742df3fe5e65273ea7d37de1b8c31fae6e07df0f5e25" "/opt/rustwide/cargo-home/bin/cargo" "+ab26b175979ee7b2cb3302dce204b99df96f7efb" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stderr] warning: Cargo.toml: `package.edition` is unspecified, defaulting to `2015` while the latest is `2024`
[INFO] [stderr] warning: `tactics` (manifest) generated 1 warning
[INFO] [stderr]     Checking libc v0.2.43
[INFO] [stderr]    Compiling proc-macro2 v0.4.24
[INFO] [stderr]    Compiling num-traits v0.2.6
[INFO] [stderr]     Checking cfg-if v0.1.6
[INFO] [stderr]     Checking lazy_static v1.2.0
[INFO] [stderr]     Checking byteorder v1.2.7
[INFO] [stderr]     Checking nodrop v0.1.13
[INFO] [stderr]     Checking scopeguard v0.3.3
[INFO] [stderr]    Compiling cc v1.0.25
[INFO] [stderr]    Compiling khronos_api v3.0.0
[INFO] [stderr]    Compiling nix v0.11.0
[INFO] [stderr]    Compiling wayland-scanner v0.21.4
[INFO] [stderr]    Compiling serde v1.0.80
[INFO] [stderr]     Checking piston-float v0.3.0
[INFO] [stderr]     Checking rand_core v0.3.0
[INFO] [stderr]    Compiling log v0.4.6
[INFO] [stderr]     Checking crossbeam-utils v0.2.2
[INFO] [stderr]    Compiling rayon-core v1.4.1
[INFO] [stderr]     Checking arrayvec v0.4.7
[INFO] [stderr]    Compiling num-integer v0.1.39
[INFO] [stderr]     Checking memoffset v0.2.1
[INFO] [stderr]     Checking rand_core v0.2.2
[INFO] [stderr]     Checking piston-viewport v0.5.0
[INFO] [stderr]    Compiling khronos_api v2.2.0
[INFO] [stderr]    Compiling parking_lot_core v0.3.1
[INFO] [stderr]     Checking stb_truetype v0.2.4
[INFO] [stderr]     Checking unreachable v1.0.0
[INFO] [stderr]     Checking downcast-rs v1.0.3
[INFO] [stderr]    Compiling bitflags v1.0.4
[INFO] [stderr]    Compiling pkg-config v0.3.14
[INFO] [stderr]     Checking crossbeam-epoch v0.3.1
[INFO] [stderr]    Compiling rayon v1.0.3
[INFO] [stderr]    Compiling num-iter v0.1.37
[INFO] [stderr]     Checking stable_deref_trait v1.1.1
[INFO] [stderr]    Compiling num-derive v0.2.3
[INFO] [stderr]     Checking adler32 v1.0.3
[INFO] [stderr]     Checking owning_ref v0.4.0
[INFO] [stderr]    Compiling gl_generator v0.10.0
[INFO] [stderr]     Checking smallvec v0.6.6
[INFO] [stderr]    Compiling xml-rs v0.7.0
[INFO] [stderr]     Checking draw_state v0.8.0
[INFO] [stderr]    Compiling x11-dl v2.18.3
[INFO] [stderr]     Checking either v1.5.0
[INFO] [stderr]    Compiling num-rational v0.2.1
[INFO] [stderr]     Checking xdg v2.1.0
[INFO] [stderr]     Checking shader_version v0.3.0
[INFO] [stderr]     Checking crossbeam-deque v0.2.0
[INFO] [stderr]     Checking inflate v0.4.3
[INFO] [stderr]     Checking num_cpus v1.8.0
[INFO] [stderr]     Checking rand v0.5.5
[INFO] [stderr]     Checking memmap v0.6.2
[INFO] [stderr]     Checking deflate v0.7.19
[INFO] [stderr]     Checking lock_api v0.1.5
[INFO] [stderr]     Checking gif v0.10.1
[INFO] [stderr]     Checking shared_library v0.1.9
[INFO] [stderr]     Checking percent-encoding v1.0.1
[INFO] [stderr]    Compiling quote v0.6.10
[INFO] [stderr]    Compiling glutin v0.19.0
[INFO] [stderr]    Compiling gl v0.11.0
[INFO] [stderr]     Checking piston-texture v0.6.0
[INFO] [stderr]    Compiling syn v0.15.21
[INFO] [stderr]     Checking osmesa-sys v0.1.2
[INFO] [stderr]     Checking vecmath v0.3.1
[INFO] [stderr]    Compiling wayland-client v0.21.4
[INFO] [stderr]    Compiling wayland-protocols v0.21.4
[INFO] [stderr]     Checking read_color v1.0.0
[INFO] [stderr]     Checking interpolation v0.1.0
[INFO] [stderr]     Checking piston-shaders_graphics2d v0.3.1
[INFO] [stderr]     Checking safemem v0.3.0
[INFO] [stderr]     Checking base64 v0.9.3
[INFO] [stderr]     Checking approx v0.3.0
[INFO] [stderr]    Compiling libloading v0.5.0
[INFO] [stderr]     Checking ordered-float v1.0.1
[INFO] [stderr]     Checking line_drawing v0.7.0
[INFO] [stderr]    Compiling gl_generator v0.9.0
[INFO] [stderr]     Checking rusttype v0.7.3
[INFO] [stderr]     Checking dlib v0.4.1
[INFO] [stderr]     Checking wayland-sys v0.21.4
[INFO] [stderr]     Checking png v0.12.0
[INFO] [stderr]     Checking andrew v0.1.4
[INFO] [stderr]     Checking piston2d-graphics v0.28.0
[INFO] [stderr]     Checking parking_lot v0.6.4
[INFO] [stderr]    Compiling gfx_gl v0.5.0
[INFO] [stderr]     Checking jpeg-decoder v0.1.15
[INFO] [stderr]     Checking wayland-commons v0.21.4
[INFO] [stderr]    Compiling serde_derive v1.0.80
[INFO] [stderr]    Compiling derivative v1.0.2
[INFO] [stderr]     Checking smithay-client-toolkit v0.4.2
[INFO] [stderr]     Checking tiff v0.2.1
[INFO] [stderr]     Checking winit v0.18.0
[INFO] [stderr]     Checking image v0.20.1
[INFO] [stderr]     Checking gfx_core v0.8.3
[INFO] [stderr]     Checking gfx v0.17.1
[INFO] [stderr]     Checking gfx_device_gl v0.15.3
[INFO] [stderr]     Checking piston-gfx_texture v0.34.0
[INFO] [stderr]     Checking piston2d-gfx_graphics v0.54.0
[INFO] [stderr]     Checking pistoncore-input v0.23.0
[INFO] [stderr]     Checking bincode v1.0.1
[INFO] [stderr]     Checking ron v0.4.0
[INFO] [stderr]     Checking pistoncore-window v0.34.0
[INFO] [stderr]     Checking pistoncore-event_loop v0.39.0
[INFO] [stderr]     Checking pistoncore-glutin_window v0.51.1
[INFO] [stderr]     Checking piston v0.39.0
[INFO] [stderr]     Checking piston_window v0.85.0
[INFO] [stderr]     Checking piston_app v0.1.0 (https://github.com/spiveeworks/piston_app#d204b860)
[INFO] [stderr]     Checking tactics v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unexpected `cfg` condition value: `cargo-clippy`
[INFO] [stdout]  --> src/model.rs:7:45
[INFO] [stdout]   |
[INFO] [stdout] 7 | #[derive(Clone, Copy, PartialEq, Eq, Debug, Serialize, Deserialize)]
[INFO] [stdout]   |                                             ^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: no expected values for `feature`
[INFO] [stdout]   = note: using a cfg inside a derive macro will use the cfgs from the destination crate and not the ones from the defining crate
[INFO] [stdout]   = help: try referring to `Serialize` crate for guidance on how handle this unexpected cfg
[INFO] [stdout]   = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stdout]   = note: `#[warn(unexpected_cfgs)]` 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: unexpected `cfg` condition value: `cargo-clippy`
[INFO] [stdout]  --> src/model.rs:7:56
[INFO] [stdout]   |
[INFO] [stdout] 7 | #[derive(Clone, Copy, PartialEq, Eq, Debug, Serialize, Deserialize)]
[INFO] [stdout]   |                                                        ^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: no expected values for `feature`
[INFO] [stdout]   = note: using a cfg inside a derive macro will use the cfgs from the destination crate and not the ones from the defining crate
[INFO] [stdout]   = help: try referring to `Deserialize` crate for guidance on how handle this unexpected cfg
[INFO] [stdout]   = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[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: unexpected `cfg` condition value: `cargo-clippy`
[INFO] [stdout]   --> src/model.rs:12:45
[INFO] [stdout]    |
[INFO] [stdout] 12 | #[derive(Clone, Copy, PartialEq, Eq, Debug, Serialize, Deserialize)]
[INFO] [stdout]    |                                             ^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: no expected values for `feature`
[INFO] [stdout]    = note: using a cfg inside a derive macro will use the cfgs from the destination crate and not the ones from the defining crate
[INFO] [stdout]    = help: try referring to `Serialize` crate for guidance on how handle this unexpected cfg
[INFO] [stdout]    = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[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: unexpected `cfg` condition value: `cargo-clippy`
[INFO] [stdout]   --> src/model.rs:12:56
[INFO] [stdout]    |
[INFO] [stdout] 12 | #[derive(Clone, Copy, PartialEq, Eq, Debug, Serialize, Deserialize)]
[INFO] [stdout]    |                                                        ^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: no expected values for `feature`
[INFO] [stdout]    = note: using a cfg inside a derive macro will use the cfgs from the destination crate and not the ones from the defining crate
[INFO] [stdout]    = help: try referring to `Deserialize` crate for guidance on how handle this unexpected cfg
[INFO] [stdout]    = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[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: unexpected `cfg` condition value: `cargo-clippy`
[INFO] [stdout]   --> src/model.rs:19:41
[INFO] [stdout]    |
[INFO] [stdout] 19 | #[derive(Clone, Copy, PartialEq, Debug, Serialize, Deserialize)]
[INFO] [stdout]    |                                         ^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: no expected values for `feature`
[INFO] [stdout]    = note: using a cfg inside a derive macro will use the cfgs from the destination crate and not the ones from the defining crate
[INFO] [stdout]    = help: try referring to `Serialize` crate for guidance on how handle this unexpected cfg
[INFO] [stdout]    = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[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: unexpected `cfg` condition value: `cargo-clippy`
[INFO] [stdout]   --> src/model.rs:19:52
[INFO] [stdout]    |
[INFO] [stdout] 19 | #[derive(Clone, Copy, PartialEq, Debug, Serialize, Deserialize)]
[INFO] [stdout]    |                                                    ^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: no expected values for `feature`
[INFO] [stdout]    = note: using a cfg inside a derive macro will use the cfgs from the destination crate and not the ones from the defining crate
[INFO] [stdout]    = help: try referring to `Deserialize` crate for guidance on how handle this unexpected cfg
[INFO] [stdout]    = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[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: unexpected `cfg` condition value: `cargo-clippy`
[INFO] [stdout]   --> src/model.rs:32:17
[INFO] [stdout]    |
[INFO] [stdout] 32 | #[derive(Clone, Serialize, Deserialize)]
[INFO] [stdout]    |                 ^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: no expected values for `feature`
[INFO] [stdout]    = note: using a cfg inside a derive macro will use the cfgs from the destination crate and not the ones from the defining crate
[INFO] [stdout]    = help: try referring to `Serialize` crate for guidance on how handle this unexpected cfg
[INFO] [stdout]    = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[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: unexpected `cfg` condition value: `cargo-clippy`
[INFO] [stdout]   --> src/model.rs:32:28
[INFO] [stdout]    |
[INFO] [stdout] 32 | #[derive(Clone, Serialize, Deserialize)]
[INFO] [stdout]    |                            ^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: no expected values for `feature`
[INFO] [stdout]    = note: using a cfg inside a derive macro will use the cfgs from the destination crate and not the ones from the defining crate
[INFO] [stdout]    = help: try referring to `Deserialize` crate for guidance on how handle this unexpected cfg
[INFO] [stdout]    = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[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: unexpected `cfg` condition value: `cargo-clippy`
[INFO] [stdout]   --> src/model.rs:66:17
[INFO] [stdout]    |
[INFO] [stdout] 66 | #[derive(Clone, Serialize, Deserialize)]
[INFO] [stdout]    |                 ^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: no expected values for `feature`
[INFO] [stdout]    = note: using a cfg inside a derive macro will use the cfgs from the destination crate and not the ones from the defining crate
[INFO] [stdout]    = help: try referring to `Serialize` crate for guidance on how handle this unexpected cfg
[INFO] [stdout]    = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[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: unexpected `cfg` condition value: `cargo-clippy`
[INFO] [stdout]   --> src/model.rs:66:28
[INFO] [stdout]    |
[INFO] [stdout] 66 | #[derive(Clone, Serialize, Deserialize)]
[INFO] [stdout]    |                            ^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: no expected values for `feature`
[INFO] [stdout]    = note: using a cfg inside a derive macro will use the cfgs from the destination crate and not the ones from the defining crate
[INFO] [stdout]    = help: try referring to `Deserialize` crate for guidance on how handle this unexpected cfg
[INFO] [stdout]    = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[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: unexpected `cfg` condition value: `cargo-clippy`
[INFO] [stdout]  --> src/save.rs:8:10
[INFO] [stdout]   |
[INFO] [stdout] 8 | #[derive(Serialize, Deserialize)]
[INFO] [stdout]   |          ^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: no expected values for `feature`
[INFO] [stdout]   = note: using a cfg inside a derive macro will use the cfgs from the destination crate and not the ones from the defining crate
[INFO] [stdout]   = help: try referring to `Serialize` crate for guidance on how handle this unexpected cfg
[INFO] [stdout]   = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[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: unexpected `cfg` condition value: `cargo-clippy`
[INFO] [stdout]  --> src/save.rs:8:21
[INFO] [stdout]   |
[INFO] [stdout] 8 | #[derive(Serialize, Deserialize)]
[INFO] [stdout]   |                     ^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: no expected values for `feature`
[INFO] [stdout]   = note: using a cfg inside a derive macro will use the cfgs from the destination crate and not the ones from the defining crate
[INFO] [stdout]   = help: try referring to `Deserialize` crate for guidance on how handle this unexpected cfg
[INFO] [stdout]   = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[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: unexpected `cfg` condition value: `cargo-clippy`
[INFO] [stdout]   --> src/save.rs:14:10
[INFO] [stdout]    |
[INFO] [stdout] 14 | #[derive(Serialize, Deserialize)]
[INFO] [stdout]    |          ^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: no expected values for `feature`
[INFO] [stdout]    = note: using a cfg inside a derive macro will use the cfgs from the destination crate and not the ones from the defining crate
[INFO] [stdout]    = help: try referring to `Serialize` crate for guidance on how handle this unexpected cfg
[INFO] [stdout]    = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[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: unexpected `cfg` condition value: `cargo-clippy`
[INFO] [stdout]   --> src/save.rs:14:21
[INFO] [stdout]    |
[INFO] [stdout] 14 | #[derive(Serialize, Deserialize)]
[INFO] [stdout]    |                     ^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: no expected values for `feature`
[INFO] [stdout]    = note: using a cfg inside a derive macro will use the cfgs from the destination crate and not the ones from the defining crate
[INFO] [stdout]    = help: try referring to `Deserialize` crate for guidance on how handle this unexpected cfg
[INFO] [stdout]    = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[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: unexpected `cfg` condition value: `cargo-clippy`
[INFO] [stdout]   --> src/main.rs:32:27
[INFO] [stdout]    |
[INFO] [stdout] 32 |     #[derive(Clone, Copy, Serialize, Deserialize)]
[INFO] [stdout]    |                           ^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: no expected values for `feature`
[INFO] [stdout]    = note: using a cfg inside a derive macro will use the cfgs from the destination crate and not the ones from the defining crate
[INFO] [stdout]    = help: try referring to `Serialize` crate for guidance on how handle this unexpected cfg
[INFO] [stdout]    = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[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: unexpected `cfg` condition value: `cargo-clippy`
[INFO] [stdout]   --> src/main.rs:32:38
[INFO] [stdout]    |
[INFO] [stdout] 32 |     #[derive(Clone, Copy, Serialize, Deserialize)]
[INFO] [stdout]    |                                      ^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: no expected values for `feature`
[INFO] [stdout]    = note: using a cfg inside a derive macro will use the cfgs from the destination crate and not the ones from the defining crate
[INFO] [stdout]    = help: try referring to `Deserialize` crate for guidance on how handle this unexpected cfg
[INFO] [stdout]    = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[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: unexpected `cfg` condition value: `cargo-clippy`
[INFO] [stdout]  --> src/model.rs:7:45
[INFO] [stdout]   |
[INFO] [stdout] 7 | #[derive(Clone, Copy, PartialEq, Eq, Debug, Serialize, Deserialize)]
[INFO] [stdout]   |                                             ^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: no expected values for `feature`
[INFO] [stdout]   = note: using a cfg inside a derive macro will use the cfgs from the destination crate and not the ones from the defining crate
[INFO] [stdout]   = help: try referring to `Serialize` crate for guidance on how handle this unexpected cfg
[INFO] [stdout]   = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stdout]   = note: `#[warn(unexpected_cfgs)]` 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: unexpected `cfg` condition value: `cargo-clippy`
[INFO] [stdout]  --> src/model.rs:7:56
[INFO] [stdout]   |
[INFO] [stdout] 7 | #[derive(Clone, Copy, PartialEq, Eq, Debug, Serialize, Deserialize)]
[INFO] [stdout]   |                                                        ^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: no expected values for `feature`
[INFO] [stdout]   = note: using a cfg inside a derive macro will use the cfgs from the destination crate and not the ones from the defining crate
[INFO] [stdout]   = help: try referring to `Deserialize` crate for guidance on how handle this unexpected cfg
[INFO] [stdout]   = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[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: unexpected `cfg` condition value: `cargo-clippy`
[INFO] [stdout]   --> src/model.rs:12:45
[INFO] [stdout]    |
[INFO] [stdout] 12 | #[derive(Clone, Copy, PartialEq, Eq, Debug, Serialize, Deserialize)]
[INFO] [stdout]    |                                             ^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: no expected values for `feature`
[INFO] [stdout]    = note: using a cfg inside a derive macro will use the cfgs from the destination crate and not the ones from the defining crate
[INFO] [stdout]    = help: try referring to `Serialize` crate for guidance on how handle this unexpected cfg
[INFO] [stdout]    = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[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: unexpected `cfg` condition value: `cargo-clippy`
[INFO] [stdout]   --> src/model.rs:12:56
[INFO] [stdout]    |
[INFO] [stdout] 12 | #[derive(Clone, Copy, PartialEq, Eq, Debug, Serialize, Deserialize)]
[INFO] [stdout]    |                                                        ^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: no expected values for `feature`
[INFO] [stdout]    = note: using a cfg inside a derive macro will use the cfgs from the destination crate and not the ones from the defining crate
[INFO] [stdout]    = help: try referring to `Deserialize` crate for guidance on how handle this unexpected cfg
[INFO] [stdout]    = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[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: unexpected `cfg` condition value: `cargo-clippy`
[INFO] [stdout]   --> src/model.rs:19:41
[INFO] [stdout]    |
[INFO] [stdout] 19 | #[derive(Clone, Copy, PartialEq, Debug, Serialize, Deserialize)]
[INFO] [stdout]    |                                         ^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: no expected values for `feature`
[INFO] [stdout]    = note: using a cfg inside a derive macro will use the cfgs from the destination crate and not the ones from the defining crate
[INFO] [stdout]    = help: try referring to `Serialize` crate for guidance on how handle this unexpected cfg
[INFO] [stdout]    = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[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: unexpected `cfg` condition value: `cargo-clippy`
[INFO] [stdout]   --> src/model.rs:19:52
[INFO] [stdout]    |
[INFO] [stdout] 19 | #[derive(Clone, Copy, PartialEq, Debug, Serialize, Deserialize)]
[INFO] [stdout]    |                                                    ^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: no expected values for `feature`
[INFO] [stdout]    = note: using a cfg inside a derive macro will use the cfgs from the destination crate and not the ones from the defining crate
[INFO] [stdout]    = help: try referring to `Deserialize` crate for guidance on how handle this unexpected cfg
[INFO] [stdout]    = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[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: unexpected `cfg` condition value: `cargo-clippy`
[INFO] [stdout]   --> src/model.rs:32:17
[INFO] [stdout]    |
[INFO] [stdout] 32 | #[derive(Clone, Serialize, Deserialize)]
[INFO] [stdout]    |                 ^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: no expected values for `feature`
[INFO] [stdout]    = note: using a cfg inside a derive macro will use the cfgs from the destination crate and not the ones from the defining crate
[INFO] [stdout]    = help: try referring to `Serialize` crate for guidance on how handle this unexpected cfg
[INFO] [stdout]    = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[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: unexpected `cfg` condition value: `cargo-clippy`
[INFO] [stdout]   --> src/model.rs:32:28
[INFO] [stdout]    |
[INFO] [stdout] 32 | #[derive(Clone, Serialize, Deserialize)]
[INFO] [stdout]    |                            ^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: no expected values for `feature`
[INFO] [stdout]    = note: using a cfg inside a derive macro will use the cfgs from the destination crate and not the ones from the defining crate
[INFO] [stdout]    = help: try referring to `Deserialize` crate for guidance on how handle this unexpected cfg
[INFO] [stdout]    = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[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: unexpected `cfg` condition value: `cargo-clippy`
[INFO] [stdout]   --> src/model.rs:66:17
[INFO] [stdout]    |
[INFO] [stdout] 66 | #[derive(Clone, Serialize, Deserialize)]
[INFO] [stdout]    |                 ^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: no expected values for `feature`
[INFO] [stdout]    = note: using a cfg inside a derive macro will use the cfgs from the destination crate and not the ones from the defining crate
[INFO] [stdout]    = help: try referring to `Serialize` crate for guidance on how handle this unexpected cfg
[INFO] [stdout]    = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[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: unexpected `cfg` condition value: `cargo-clippy`
[INFO] [stdout]   --> src/model.rs:66:28
[INFO] [stdout]    |
[INFO] [stdout] 66 | #[derive(Clone, Serialize, Deserialize)]
[INFO] [stdout]    |                            ^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: no expected values for `feature`
[INFO] [stdout]    = note: using a cfg inside a derive macro will use the cfgs from the destination crate and not the ones from the defining crate
[INFO] [stdout]    = help: try referring to `Deserialize` crate for guidance on how handle this unexpected cfg
[INFO] [stdout]    = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[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: unexpected `cfg` condition value: `cargo-clippy`
[INFO] [stdout]  --> src/save.rs:8:10
[INFO] [stdout]   |
[INFO] [stdout] 8 | #[derive(Serialize, Deserialize)]
[INFO] [stdout]   |          ^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: no expected values for `feature`
[INFO] [stdout]   = note: using a cfg inside a derive macro will use the cfgs from the destination crate and not the ones from the defining crate
[INFO] [stdout]   = help: try referring to `Serialize` crate for guidance on how handle this unexpected cfg
[INFO] [stdout]   = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[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: unexpected `cfg` condition value: `cargo-clippy`
[INFO] [stdout]  --> src/save.rs:8:21
[INFO] [stdout]   |
[INFO] [stdout] 8 | #[derive(Serialize, Deserialize)]
[INFO] [stdout]   |                     ^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: no expected values for `feature`
[INFO] [stdout]   = note: using a cfg inside a derive macro will use the cfgs from the destination crate and not the ones from the defining crate
[INFO] [stdout]   = help: try referring to `Deserialize` crate for guidance on how handle this unexpected cfg
[INFO] [stdout]   = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[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: unexpected `cfg` condition value: `cargo-clippy`
[INFO] [stdout]   --> src/save.rs:14:10
[INFO] [stdout]    |
[INFO] [stdout] 14 | #[derive(Serialize, Deserialize)]
[INFO] [stdout]    |          ^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: no expected values for `feature`
[INFO] [stdout]    = note: using a cfg inside a derive macro will use the cfgs from the destination crate and not the ones from the defining crate
[INFO] [stdout]    = help: try referring to `Serialize` crate for guidance on how handle this unexpected cfg
[INFO] [stdout]    = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[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: unexpected `cfg` condition value: `cargo-clippy`
[INFO] [stdout]   --> src/save.rs:14:21
[INFO] [stdout]    |
[INFO] [stdout] 14 | #[derive(Serialize, Deserialize)]
[INFO] [stdout]    |                     ^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: no expected values for `feature`
[INFO] [stdout]    = note: using a cfg inside a derive macro will use the cfgs from the destination crate and not the ones from the defining crate
[INFO] [stdout]    = help: try referring to `Deserialize` crate for guidance on how handle this unexpected cfg
[INFO] [stdout]    = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[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: unexpected `cfg` condition value: `cargo-clippy`
[INFO] [stdout]   --> src/main.rs:32:27
[INFO] [stdout]    |
[INFO] [stdout] 32 |     #[derive(Clone, Copy, Serialize, Deserialize)]
[INFO] [stdout]    |                           ^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: no expected values for `feature`
[INFO] [stdout]    = note: using a cfg inside a derive macro will use the cfgs from the destination crate and not the ones from the defining crate
[INFO] [stdout]    = help: try referring to `Serialize` crate for guidance on how handle this unexpected cfg
[INFO] [stdout]    = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[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: unexpected `cfg` condition value: `cargo-clippy`
[INFO] [stdout]   --> src/main.rs:32:38
[INFO] [stdout]    |
[INFO] [stdout] 32 |     #[derive(Clone, Copy, Serialize, Deserialize)]
[INFO] [stdout]    |                                      ^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: no expected values for `feature`
[INFO] [stdout]    = note: using a cfg inside a derive macro will use the cfgs from the destination crate and not the ones from the defining crate
[INFO] [stdout]    = help: try referring to `Deserialize` crate for guidance on how handle this unexpected cfg
[INFO] [stdout]    = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[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 variable: `map`
[INFO] [stdout]   --> src/path.rs:93:18
[INFO] [stdout]    |
[INFO] [stdout] 93 | pub fn test_coll(map: &Map, p1: Vec2, p2: Vec2, radius: f64) -> Option<Vec2> {
[INFO] [stdout]    |                  ^^^ help: if this is intentional, prefix it with an underscore: `_map`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `p1`
[INFO] [stdout]   --> src/path.rs:93:29
[INFO] [stdout]    |
[INFO] [stdout] 93 | pub fn test_coll(map: &Map, p1: Vec2, p2: Vec2, radius: f64) -> Option<Vec2> {
[INFO] [stdout]    |                             ^^ help: if this is intentional, prefix it with an underscore: `_p1`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `p2`
[INFO] [stdout]   --> src/path.rs:93:39
[INFO] [stdout]    |
[INFO] [stdout] 93 | pub fn test_coll(map: &Map, p1: Vec2, p2: Vec2, radius: f64) -> Option<Vec2> {
[INFO] [stdout]    |                                       ^^ help: if this is intentional, prefix it with an underscore: `_p2`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `radius`
[INFO] [stdout]   --> src/path.rs:93:49
[INFO] [stdout]    |
[INFO] [stdout] 93 | pub fn test_coll(map: &Map, p1: Vec2, p2: Vec2, radius: f64) -> Option<Vec2> {
[INFO] [stdout]    |                                                 ^^^^^^ help: if this is intentional, prefix it with an underscore: `_radius`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `trig`
[INFO] [stdout]    --> src/path.rs:102:15
[INFO] [stdout]     |
[INFO] [stdout] 102 | fn trig_lines(trig: &Trig, radius: f64) -> [Line; 6] {
[INFO] [stdout]     |               ^^^^ help: if this is intentional, prefix it with an underscore: `_trig`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `radius`
[INFO] [stdout]    --> src/path.rs:102:28
[INFO] [stdout]     |
[INFO] [stdout] 102 | fn trig_lines(trig: &Trig, radius: f64) -> [Line; 6] {
[INFO] [stdout]     |                            ^^^^^^ help: if this is intentional, prefix it with an underscore: `_radius`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/client.rs:237:17
[INFO] [stdout]     |
[INFO] [stdout] 237 |             let mut expected = expected
[INFO] [stdout]     |                 ----^^^^^^^^
[INFO] [stdout]     |                 |
[INFO] [stdout]     |                 help: remove this `mut`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `map`
[INFO] [stdout]   --> src/path.rs:93:18
[INFO] [stdout]    |
[INFO] [stdout] 93 | pub fn test_coll(map: &Map, p1: Vec2, p2: Vec2, radius: f64) -> Option<Vec2> {
[INFO] [stdout]    |                  ^^^ help: if this is intentional, prefix it with an underscore: `_map`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `p1`
[INFO] [stdout]   --> src/path.rs:93:29
[INFO] [stdout]    |
[INFO] [stdout] 93 | pub fn test_coll(map: &Map, p1: Vec2, p2: Vec2, radius: f64) -> Option<Vec2> {
[INFO] [stdout]    |                             ^^ help: if this is intentional, prefix it with an underscore: `_p1`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `p2`
[INFO] [stdout]   --> src/path.rs:93:39
[INFO] [stdout]    |
[INFO] [stdout] 93 | pub fn test_coll(map: &Map, p1: Vec2, p2: Vec2, radius: f64) -> Option<Vec2> {
[INFO] [stdout]    |                                       ^^ help: if this is intentional, prefix it with an underscore: `_p2`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `radius`
[INFO] [stdout]   --> src/path.rs:93:49
[INFO] [stdout]    |
[INFO] [stdout] 93 | pub fn test_coll(map: &Map, p1: Vec2, p2: Vec2, radius: f64) -> Option<Vec2> {
[INFO] [stdout]    |                                                 ^^^^^^ help: if this is intentional, prefix it with an underscore: `_radius`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `trig`
[INFO] [stdout]    --> src/path.rs:102:15
[INFO] [stdout]     |
[INFO] [stdout] 102 | fn trig_lines(trig: &Trig, radius: f64) -> [Line; 6] {
[INFO] [stdout]     |               ^^^^ help: if this is intentional, prefix it with an underscore: `_trig`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `radius`
[INFO] [stdout]    --> src/path.rs:102:28
[INFO] [stdout]     |
[INFO] [stdout] 102 | fn trig_lines(trig: &Trig, radius: f64) -> [Line; 6] {
[INFO] [stdout]     |                            ^^^^^^ help: if this is intentional, prefix it with an underscore: `_radius`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `as_fun` is never used
[INFO] [stdout]   --> src/path.rs:24:8
[INFO] [stdout]    |
[INFO] [stdout] 16 | impl Line {
[INFO] [stdout]    | --------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 24 |     fn as_fun(self: Self, t: f64) -> Vec2 {
[INFO] [stdout]    |        ^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `NavMesh` is never constructed
[INFO] [stdout]   --> src/path.rs:82:12
[INFO] [stdout]    |
[INFO] [stdout] 82 | pub struct NavMesh {
[INFO] [stdout]    |            ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `intersect_lines` is never used
[INFO] [stdout]   --> src/path.rs:88:4
[INFO] [stdout]    |
[INFO] [stdout] 88 | fn intersect_lines(l1: Line, l2: Line) -> Vec2 {
[INFO] [stdout]    |    ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `test_coll` is never used
[INFO] [stdout]   --> src/path.rs:93:8
[INFO] [stdout]    |
[INFO] [stdout] 93 | pub fn test_coll(map: &Map, p1: Vec2, p2: Vec2, radius: f64) -> Option<Vec2> {
[INFO] [stdout]    |        ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `trig_nav` is never used
[INFO] [stdout]   --> src/path.rs:97:4
[INFO] [stdout]    |
[INFO] [stdout] 97 | fn trig_nav(trig: &Trig, radius: f64) -> [Vec2; 6] {
[INFO] [stdout]    |    ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `trig_lines` is never used
[INFO] [stdout]    --> src/path.rs:102:4
[INFO] [stdout]     |
[INFO] [stdout] 102 | fn trig_lines(trig: &Trig, radius: f64) -> [Line; 6] {
[INFO] [stdout]     |    ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `hex_points` is never used
[INFO] [stdout]    --> src/path.rs:130:4
[INFO] [stdout]     |
[INFO] [stdout] 130 | fn hex_points(lines: [Line; 6]) -> [Vec2; 6] {
[INFO] [stdout]     |    ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `access_ind`, `access`, `set_access`, `generate`, `generate_points`, and `generate_access` are never used
[INFO] [stdout]    --> src/path.rs:140:8
[INFO] [stdout]     |
[INFO] [stdout] 139 | impl NavMesh {
[INFO] [stdout]     | ------------ associated items in this implementation
[INFO] [stdout] 140 |     fn access_ind(self: &Self, p1: usize, p2: usize) -> usize {
[INFO] [stdout]     |        ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 144 |     fn access(self: &Self, p1: usize, p2: usize) -> bool {
[INFO] [stdout]     |        ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 147 |     fn set_access(self: &mut Self, p1: usize, p2: usize, val: bool) {
[INFO] [stdout]     |        ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 152 |     pub fn generate(map: &Map, radius: f64) -> Self {
[INFO] [stdout]     |            ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 164 |     fn generate_points(self: &mut Self, map: &Map, radius: f64) {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 173 |     fn generate_access(self: &mut Self, map: &Map, radius: f64) {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]  --> src/model.rs:7:45
[INFO] [stdout]   |
[INFO] [stdout] 7 | #[derive(Clone, Copy, PartialEq, Eq, Debug, Serialize, Deserialize)]
[INFO] [stdout]   |                                             ^--------
[INFO] [stdout]   |                                             |
[INFO] [stdout]   |                                             `Serialize` is not local
[INFO] [stdout]   |                                             move the `impl` block outside of this constant `_IMPL_SERIALIZE_FOR_Weapon`
[INFO] [stdout] 8 | pub enum Weapon {
[INFO] [stdout]   |          ------ `Weapon` 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/model.rs:7:56
[INFO] [stdout]   |
[INFO] [stdout] 7 | #[derive(Clone, Copy, PartialEq, Eq, Debug, Serialize, Deserialize)]
[INFO] [stdout]   |                                                        ^----------
[INFO] [stdout]   |                                                        |
[INFO] [stdout]   |                                                        `Deserialize` is not local
[INFO] [stdout]   |                                                        move the `impl` block outside of this constant `_IMPL_DESERIALIZE_FOR_Weapon`
[INFO] [stdout] 8 | pub enum Weapon {
[INFO] [stdout]   |          ------ `Weapon` 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/model.rs:12:45
[INFO] [stdout]    |
[INFO] [stdout] 12 | #[derive(Clone, Copy, PartialEq, Eq, Debug, Serialize, Deserialize)]
[INFO] [stdout]    |                                             ^--------
[INFO] [stdout]    |                                             |
[INFO] [stdout]    |                                             `Serialize` is not local
[INFO] [stdout]    |                                             move the `impl` block outside of this constant `_IMPL_SERIALIZE_FOR_Action`
[INFO] [stdout] 13 | pub enum Action {
[INFO] [stdout]    |          ------ `Action` 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/model.rs:12:56
[INFO] [stdout]    |
[INFO] [stdout] 12 | #[derive(Clone, Copy, PartialEq, Eq, Debug, Serialize, Deserialize)]
[INFO] [stdout]    |                                                        ^----------
[INFO] [stdout]    |                                                        |
[INFO] [stdout]    |                                                        `Deserialize` is not local
[INFO] [stdout]    |                                                        move the `impl` block outside of this constant `_IMPL_DESERIALIZE_FOR_Action`
[INFO] [stdout] 13 | pub enum Action {
[INFO] [stdout]    |          ------ `Action` 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/model.rs:19:41
[INFO] [stdout]    |
[INFO] [stdout] 19 | #[derive(Clone, Copy, PartialEq, Debug, Serialize, Deserialize)]
[INFO] [stdout]    |                                         ^--------
[INFO] [stdout]    |                                         |
[INFO] [stdout]    |                                         `Serialize` is not local
[INFO] [stdout]    |                                         move the `impl` block outside of this constant `_IMPL_SERIALIZE_FOR_UnitState`
[INFO] [stdout] 20 | pub struct UnitState {
[INFO] [stdout]    |            --------- `UnitState` 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/model.rs:19:52
[INFO] [stdout]    |
[INFO] [stdout] 19 | #[derive(Clone, Copy, PartialEq, Debug, Serialize, Deserialize)]
[INFO] [stdout]    |                                                    ^----------
[INFO] [stdout]    |                                                    |
[INFO] [stdout]    |                                                    `Deserialize` is not local
[INFO] [stdout]    |                                                    move the `impl` block outside of this constant `_IMPL_DESERIALIZE_FOR_UnitState`
[INFO] [stdout] 20 | pub struct UnitState {
[INFO] [stdout]    |            --------- `UnitState` 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/model.rs:32:17
[INFO] [stdout]    |
[INFO] [stdout] 32 | #[derive(Clone, Serialize, Deserialize)]
[INFO] [stdout]    |                 ^--------
[INFO] [stdout]    |                 |
[INFO] [stdout]    |                 `Serialize` is not local
[INFO] [stdout]    |                 move the `impl` block outside of this constant `_IMPL_SERIALIZE_FOR_Timeline`
[INFO] [stdout] 33 | pub struct Timeline {
[INFO] [stdout]    |            -------- `Timeline` 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/model.rs:32:28
[INFO] [stdout]    |
[INFO] [stdout] 32 | #[derive(Clone, Serialize, Deserialize)]
[INFO] [stdout]    |                            ^----------
[INFO] [stdout]    |                            |
[INFO] [stdout]    |                            `Deserialize` is not local
[INFO] [stdout]    |                            move the `impl` block outside of this constant `_IMPL_DESERIALIZE_FOR_Timeline`
[INFO] [stdout] 33 | pub struct Timeline {
[INFO] [stdout]    |            -------- `Timeline` 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/model.rs:66:17
[INFO] [stdout]    |
[INFO] [stdout] 66 | #[derive(Clone, Serialize, Deserialize)]
[INFO] [stdout]    |                 ^--------
[INFO] [stdout]    |                 |
[INFO] [stdout]    |                 `Serialize` is not local
[INFO] [stdout]    |                 move the `impl` block outside of this constant `_IMPL_SERIALIZE_FOR_Snapshot`
[INFO] [stdout] 67 | pub struct Snapshot {
[INFO] [stdout]    |            -------- `Snapshot` 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/model.rs:66:28
[INFO] [stdout]    |
[INFO] [stdout] 66 | #[derive(Clone, Serialize, Deserialize)]
[INFO] [stdout]    |                            ^----------
[INFO] [stdout]    |                            |
[INFO] [stdout]    |                            `Deserialize` is not local
[INFO] [stdout]    |                            move the `impl` block outside of this constant `_IMPL_DESERIALIZE_FOR_Snapshot`
[INFO] [stdout] 67 | pub struct Snapshot {
[INFO] [stdout]    |            -------- `Snapshot` 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/save.rs:8:10
[INFO] [stdout]   |
[INFO] [stdout] 8 | #[derive(Serialize, Deserialize)]
[INFO] [stdout]   |          ^--------
[INFO] [stdout]   |          |
[INFO] [stdout]   |          `Serialize` is not local
[INFO] [stdout]   |          move the `impl` block outside of this constant `_IMPL_SERIALIZE_FOR_Unit`
[INFO] [stdout] 9 | struct Unit {
[INFO] [stdout]   |        ---- `Unit` 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/save.rs:8:21
[INFO] [stdout]   |
[INFO] [stdout] 8 | #[derive(Serialize, Deserialize)]
[INFO] [stdout]   |                     ^----------
[INFO] [stdout]   |                     |
[INFO] [stdout]   |                     `Deserialize` is not local
[INFO] [stdout]   |                     move the `impl` block outside of this constant `_IMPL_DESERIALIZE_FOR_Unit`
[INFO] [stdout] 9 | struct Unit {
[INFO] [stdout]   |        ---- `Unit` 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/save.rs:14:10
[INFO] [stdout]    |
[INFO] [stdout] 14 | #[derive(Serialize, Deserialize)]
[INFO] [stdout]    |          ^--------
[INFO] [stdout]    |          |
[INFO] [stdout]    |          `Serialize` is not local
[INFO] [stdout]    |          move the `impl` block outside of this constant `_IMPL_SERIALIZE_FOR_Scenario`
[INFO] [stdout] 15 | struct Scenario {
[INFO] [stdout]    |        -------- `Scenario` 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/save.rs:14:21
[INFO] [stdout]    |
[INFO] [stdout] 14 | #[derive(Serialize, Deserialize)]
[INFO] [stdout]    |                     ^----------
[INFO] [stdout]    |                     |
[INFO] [stdout]    |                     `Deserialize` is not local
[INFO] [stdout]    |                     move the `impl` block outside of this constant `_IMPL_DESERIALIZE_FOR_Scenario`
[INFO] [stdout] 15 | struct Scenario {
[INFO] [stdout]    |        -------- `Scenario` 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/main.rs:32:27
[INFO] [stdout]    |
[INFO] [stdout] 32 |     #[derive(Clone, Copy, Serialize, Deserialize)]
[INFO] [stdout]    |                           ^--------
[INFO] [stdout]    |                           |
[INFO] [stdout]    |                           `Serialize` is not local
[INFO] [stdout]    |                           move the `impl` block outside of this constant `_IMPL_SERIALIZE_FOR_Time`
[INFO] [stdout] 33 |     pub struct Time(pub f64);
[INFO] [stdout]    |                ---- `Time` 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/main.rs:32:38
[INFO] [stdout]    |
[INFO] [stdout] 32 |     #[derive(Clone, Copy, Serialize, Deserialize)]
[INFO] [stdout]    |                                      ^----------
[INFO] [stdout]    |                                      |
[INFO] [stdout]    |                                      `Deserialize` is not local
[INFO] [stdout]    |                                      move the `impl` block outside of this constant `_IMPL_DESERIALIZE_FOR_Time`
[INFO] [stdout] 33 |     pub struct Time(pub f64);
[INFO] [stdout]    |                ---- `Time` 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: variable does not need to be mutable
[INFO] [stdout]    --> src/client.rs:237:17
[INFO] [stdout]     |
[INFO] [stdout] 237 |             let mut expected = expected
[INFO] [stdout]     |                 ----^^^^^^^^
[INFO] [stdout]     |                 |
[INFO] [stdout]     |                 help: remove this `mut`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `as_fun` is never used
[INFO] [stdout]   --> src/path.rs:24:8
[INFO] [stdout]    |
[INFO] [stdout] 16 | impl Line {
[INFO] [stdout]    | --------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 24 |     fn as_fun(self: Self, t: f64) -> Vec2 {
[INFO] [stdout]    |        ^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `NavMesh` is never constructed
[INFO] [stdout]   --> src/path.rs:82:12
[INFO] [stdout]    |
[INFO] [stdout] 82 | pub struct NavMesh {
[INFO] [stdout]    |            ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `intersect_lines` is never used
[INFO] [stdout]   --> src/path.rs:88:4
[INFO] [stdout]    |
[INFO] [stdout] 88 | fn intersect_lines(l1: Line, l2: Line) -> Vec2 {
[INFO] [stdout]    |    ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `test_coll` is never used
[INFO] [stdout]   --> src/path.rs:93:8
[INFO] [stdout]    |
[INFO] [stdout] 93 | pub fn test_coll(map: &Map, p1: Vec2, p2: Vec2, radius: f64) -> Option<Vec2> {
[INFO] [stdout]    |        ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `trig_nav` is never used
[INFO] [stdout]   --> src/path.rs:97:4
[INFO] [stdout]    |
[INFO] [stdout] 97 | fn trig_nav(trig: &Trig, radius: f64) -> [Vec2; 6] {
[INFO] [stdout]    |    ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `trig_lines` is never used
[INFO] [stdout]    --> src/path.rs:102:4
[INFO] [stdout]     |
[INFO] [stdout] 102 | fn trig_lines(trig: &Trig, radius: f64) -> [Line; 6] {
[INFO] [stdout]     |    ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `hex_points` is never used
[INFO] [stdout]    --> src/path.rs:130:4
[INFO] [stdout]     |
[INFO] [stdout] 130 | fn hex_points(lines: [Line; 6]) -> [Vec2; 6] {
[INFO] [stdout]     |    ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `access_ind`, `access`, `set_access`, `generate`, `generate_points`, and `generate_access` are never used
[INFO] [stdout]    --> src/path.rs:140:8
[INFO] [stdout]     |
[INFO] [stdout] 139 | impl NavMesh {
[INFO] [stdout]     | ------------ associated items in this implementation
[INFO] [stdout] 140 |     fn access_ind(self: &Self, p1: usize, p2: usize) -> usize {
[INFO] [stdout]     |        ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 144 |     fn access(self: &Self, p1: usize, p2: usize) -> bool {
[INFO] [stdout]     |        ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 147 |     fn set_access(self: &mut Self, p1: usize, p2: usize, val: bool) {
[INFO] [stdout]     |        ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 152 |     pub fn generate(map: &Map, radius: f64) -> Self {
[INFO] [stdout]     |            ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 164 |     fn generate_points(self: &mut Self, map: &Map, radius: f64) {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 173 |     fn generate_access(self: &mut Self, map: &Map, radius: f64) {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]  --> src/model.rs:7:45
[INFO] [stdout]   |
[INFO] [stdout] 7 | #[derive(Clone, Copy, PartialEq, Eq, Debug, Serialize, Deserialize)]
[INFO] [stdout]   |                                             ^--------
[INFO] [stdout]   |                                             |
[INFO] [stdout]   |                                             `Serialize` is not local
[INFO] [stdout]   |                                             move the `impl` block outside of this constant `_IMPL_SERIALIZE_FOR_Weapon`
[INFO] [stdout] 8 | pub enum Weapon {
[INFO] [stdout]   |          ------ `Weapon` 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/model.rs:7:56
[INFO] [stdout]   |
[INFO] [stdout] 7 | #[derive(Clone, Copy, PartialEq, Eq, Debug, Serialize, Deserialize)]
[INFO] [stdout]   |                                                        ^----------
[INFO] [stdout]   |                                                        |
[INFO] [stdout]   |                                                        `Deserialize` is not local
[INFO] [stdout]   |                                                        move the `impl` block outside of this constant `_IMPL_DESERIALIZE_FOR_Weapon`
[INFO] [stdout] 8 | pub enum Weapon {
[INFO] [stdout]   |          ------ `Weapon` 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/model.rs:12:45
[INFO] [stdout]    |
[INFO] [stdout] 12 | #[derive(Clone, Copy, PartialEq, Eq, Debug, Serialize, Deserialize)]
[INFO] [stdout]    |                                             ^--------
[INFO] [stdout]    |                                             |
[INFO] [stdout]    |                                             `Serialize` is not local
[INFO] [stdout]    |                                             move the `impl` block outside of this constant `_IMPL_SERIALIZE_FOR_Action`
[INFO] [stdout] 13 | pub enum Action {
[INFO] [stdout]    |          ------ `Action` 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/model.rs:12:56
[INFO] [stdout]    |
[INFO] [stdout] 12 | #[derive(Clone, Copy, PartialEq, Eq, Debug, Serialize, Deserialize)]
[INFO] [stdout]    |                                                        ^----------
[INFO] [stdout]    |                                                        |
[INFO] [stdout]    |                                                        `Deserialize` is not local
[INFO] [stdout]    |                                                        move the `impl` block outside of this constant `_IMPL_DESERIALIZE_FOR_Action`
[INFO] [stdout] 13 | pub enum Action {
[INFO] [stdout]    |          ------ `Action` 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/model.rs:19:41
[INFO] [stdout]    |
[INFO] [stdout] 19 | #[derive(Clone, Copy, PartialEq, Debug, Serialize, Deserialize)]
[INFO] [stdout]    |                                         ^--------
[INFO] [stdout]    |                                         |
[INFO] [stdout]    |                                         `Serialize` is not local
[INFO] [stdout]    |                                         move the `impl` block outside of this constant `_IMPL_SERIALIZE_FOR_UnitState`
[INFO] [stdout] 20 | pub struct UnitState {
[INFO] [stdout]    |            --------- `UnitState` 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/model.rs:19:52
[INFO] [stdout]    |
[INFO] [stdout] 19 | #[derive(Clone, Copy, PartialEq, Debug, Serialize, Deserialize)]
[INFO] [stdout]    |                                                    ^----------
[INFO] [stdout]    |                                                    |
[INFO] [stdout]    |                                                    `Deserialize` is not local
[INFO] [stdout]    |                                                    move the `impl` block outside of this constant `_IMPL_DESERIALIZE_FOR_UnitState`
[INFO] [stdout] 20 | pub struct UnitState {
[INFO] [stdout]    |            --------- `UnitState` 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/model.rs:32:17
[INFO] [stdout]    |
[INFO] [stdout] 32 | #[derive(Clone, Serialize, Deserialize)]
[INFO] [stdout]    |                 ^--------
[INFO] [stdout]    |                 |
[INFO] [stdout]    |                 `Serialize` is not local
[INFO] [stdout]    |                 move the `impl` block outside of this constant `_IMPL_SERIALIZE_FOR_Timeline`
[INFO] [stdout] 33 | pub struct Timeline {
[INFO] [stdout]    |            -------- `Timeline` 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/model.rs:32:28
[INFO] [stdout]    |
[INFO] [stdout] 32 | #[derive(Clone, Serialize, Deserialize)]
[INFO] [stdout]    |                            ^----------
[INFO] [stdout]    |                            |
[INFO] [stdout]    |                            `Deserialize` is not local
[INFO] [stdout]    |                            move the `impl` block outside of this constant `_IMPL_DESERIALIZE_FOR_Timeline`
[INFO] [stdout] 33 | pub struct Timeline {
[INFO] [stdout]    |            -------- `Timeline` 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/model.rs:66:17
[INFO] [stdout]    |
[INFO] [stdout] 66 | #[derive(Clone, Serialize, Deserialize)]
[INFO] [stdout]    |                 ^--------
[INFO] [stdout]    |                 |
[INFO] [stdout]    |                 `Serialize` is not local
[INFO] [stdout]    |                 move the `impl` block outside of this constant `_IMPL_SERIALIZE_FOR_Snapshot`
[INFO] [stdout] 67 | pub struct Snapshot {
[INFO] [stdout]    |            -------- `Snapshot` 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/model.rs:66:28
[INFO] [stdout]    |
[INFO] [stdout] 66 | #[derive(Clone, Serialize, Deserialize)]
[INFO] [stdout]    |                            ^----------
[INFO] [stdout]    |                            |
[INFO] [stdout]    |                            `Deserialize` is not local
[INFO] [stdout]    |                            move the `impl` block outside of this constant `_IMPL_DESERIALIZE_FOR_Snapshot`
[INFO] [stdout] 67 | pub struct Snapshot {
[INFO] [stdout]    |            -------- `Snapshot` 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/save.rs:8:10
[INFO] [stdout]   |
[INFO] [stdout] 8 | #[derive(Serialize, Deserialize)]
[INFO] [stdout]   |          ^--------
[INFO] [stdout]   |          |
[INFO] [stdout]   |          `Serialize` is not local
[INFO] [stdout]   |          move the `impl` block outside of this constant `_IMPL_SERIALIZE_FOR_Unit`
[INFO] [stdout] 9 | struct Unit {
[INFO] [stdout]   |        ---- `Unit` 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/save.rs:8:21
[INFO] [stdout]   |
[INFO] [stdout] 8 | #[derive(Serialize, Deserialize)]
[INFO] [stdout]   |                     ^----------
[INFO] [stdout]   |                     |
[INFO] [stdout]   |                     `Deserialize` is not local
[INFO] [stdout]   |                     move the `impl` block outside of this constant `_IMPL_DESERIALIZE_FOR_Unit`
[INFO] [stdout] 9 | struct Unit {
[INFO] [stdout]   |        ---- `Unit` 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/save.rs:14:10
[INFO] [stdout]    |
[INFO] [stdout] 14 | #[derive(Serialize, Deserialize)]
[INFO] [stdout]    |          ^--------
[INFO] [stdout]    |          |
[INFO] [stdout]    |          `Serialize` is not local
[INFO] [stdout]    |          move the `impl` block outside of this constant `_IMPL_SERIALIZE_FOR_Scenario`
[INFO] [stdout] 15 | struct Scenario {
[INFO] [stdout]    |        -------- `Scenario` 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/save.rs:14:21
[INFO] [stdout]    |
[INFO] [stdout] 14 | #[derive(Serialize, Deserialize)]
[INFO] [stdout]    |                     ^----------
[INFO] [stdout]    |                     |
[INFO] [stdout]    |                     `Deserialize` is not local
[INFO] [stdout]    |                     move the `impl` block outside of this constant `_IMPL_DESERIALIZE_FOR_Scenario`
[INFO] [stdout] 15 | struct Scenario {
[INFO] [stdout]    |        -------- `Scenario` 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/main.rs:32:27
[INFO] [stdout]    |
[INFO] [stdout] 32 |     #[derive(Clone, Copy, Serialize, Deserialize)]
[INFO] [stdout]    |                           ^--------
[INFO] [stdout]    |                           |
[INFO] [stdout]    |                           `Serialize` is not local
[INFO] [stdout]    |                           move the `impl` block outside of this constant `_IMPL_SERIALIZE_FOR_Time`
[INFO] [stdout] 33 |     pub struct Time(pub f64);
[INFO] [stdout]    |                ---- `Time` 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/main.rs:32:38
[INFO] [stdout]    |
[INFO] [stdout] 32 |     #[derive(Clone, Copy, Serialize, Deserialize)]
[INFO] [stdout]    |                                      ^----------
[INFO] [stdout]    |                                      |
[INFO] [stdout]    |                                      `Deserialize` is not local
[INFO] [stdout]    |                                      move the `impl` block outside of this constant `_IMPL_DESERIALIZE_FOR_Time`
[INFO] [stdout] 33 |     pub struct Time(pub f64);
[INFO] [stdout]    |                ---- `Time` 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 31.30s
[INFO] [stderr] warning: the following packages contain code that will be rejected by a future version of Rust: glutin v0.19.0, winit v0.18.0
[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" "d95c44e7ad927d76347f742df3fe5e65273ea7d37de1b8c31fae6e07df0f5e25", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "d95c44e7ad927d76347f742df3fe5e65273ea7d37de1b8c31fae6e07df0f5e25", kill_on_drop: false }`
[INFO] [stdout] d95c44e7ad927d76347f742df3fe5e65273ea7d37de1b8c31fae6e07df0f5e25
