[INFO] cloning repository https://github.com/ollielynas/minimalist_city_builder
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/ollielynas/minimalist_city_builder" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Follielynas%2Fminimalist_city_builder", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Follielynas%2Fminimalist_city_builder'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] 4870314d66e99fe9b62a58bef78e241ff8af3ee4
[INFO] checking ollielynas/minimalist_city_builder against 1.95.0 for pr-155915
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Follielynas%2Fminimalist_city_builder" "/workspace/builds/worker-5-tc1/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-5-tc1/source'...
[INFO] [stderr] done.
[INFO] started tweaking git repo https://github.com/ollielynas/minimalist_city_builder
[INFO] finished tweaking git repo https://github.com/ollielynas/minimalist_city_builder
[INFO] tweaked toml for git repo https://github.com/ollielynas/minimalist_city_builder written to /workspace/builds/worker-5-tc1/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/ollielynas/minimalist_city_builder on toolchain 1.95.0
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+1.95.0" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate git repo https://github.com/ollielynas/minimalist_city_builder already has a lockfile, it will not be regenerated
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+1.95.0" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Updating crates.io index
[INFO] [stderr]  Downloading crates ...
[INFO] [stderr]   Downloaded savefile-derive v0.13.0
[INFO] [stderr]   Downloaded bytemuck_derive v1.4.1
[INFO] [stderr]   Downloaded lazy-bytes-cast v5.0.1
[INFO] [stderr]   Downloaded macroquad_macro v0.1.7
[INFO] [stderr]   Downloaded hound v3.5.0
[INFO] [stderr]   Downloaded copypasta v0.8.2
[INFO] [stderr]   Downloaded egui-macroquad v0.15.0
[INFO] [stderr]   Downloaded clipboard-win v3.1.1
[INFO] [stderr]   Downloaded atomic_refcell v0.1.10
[INFO] [stderr]   Downloaded ecolor v0.21.0
[INFO] [stderr]   Downloaded x11-clipboard v0.7.1
[INFO] [stderr]   Downloaded webbrowser v0.5.5
[INFO] [stderr]   Downloaded smithay-clipboard v0.6.6
[INFO] [stderr]   Downloaded quad-url v0.1.1
[INFO] [stderr]   Downloaded emath v0.21.0
[INFO] [stderr]   Downloaded egui-miniquad v0.14.0
[INFO] [stderr]   Downloaded savefile v0.13.0
[INFO] [stderr]   Downloaded ab_glyph v0.2.21
[INFO] [stderr]   Downloaded miniquad v0.3.14
[INFO] [stderr]   Downloaded owned_ttf_parser v0.19.0
[INFO] [stderr]   Downloaded ttf-parser v0.19.0
[INFO] [stderr]   Downloaded egui-phosphor v0.1.0
[INFO] [stderr]   Downloaded egui v0.21.0
[INFO] [stderr]   Downloaded fontdue v0.7.3
[INFO] [stderr]   Downloaded macroquad v0.3.25
[INFO] [stderr]   Downloaded epaint v0.21.0
[INFO] [stderr]   Downloaded quad-snd v0.2.7
[INFO] [stderr]   Downloaded egui-toast v0.7.0
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+1.95.0" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] 2b0f2fa79e57cba3af30225647a9dae63242d4842f46e5c769003ca071ca71a1
[INFO] running `Command { std: "docker" "start" "-a" "2b0f2fa79e57cba3af30225647a9dae63242d4842f46e5c769003ca071ca71a1", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "2b0f2fa79e57cba3af30225647a9dae63242d4842f46e5c769003ca071ca71a1", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "2b0f2fa79e57cba3af30225647a9dae63242d4842f46e5c769003ca071ca71a1", kill_on_drop: false }`
[INFO] [stdout] 2b0f2fa79e57cba3af30225647a9dae63242d4842f46e5c769003ca071ca71a1
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+1.95.0" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 22f1619f65b14bbae2f75d9962e57356d4521364bf2d71dab292febeef33d097
[INFO] running `Command { std: "docker" "start" "-a" "22f1619f65b14bbae2f75d9962e57356d4521364bf2d71dab292febeef33d097", kill_on_drop: false }`
[INFO] [stderr]    Compiling proc-macro2 v1.0.56
[INFO] [stderr]    Compiling quote v1.0.26
[INFO] [stderr]    Compiling unicode-ident v1.0.8
[INFO] [stderr]    Compiling libc v0.2.142
[INFO] [stderr]     Checking once_cell v1.17.1
[INFO] [stderr]     Checking ttf-parser v0.19.0
[INFO] [stderr]     Checking simd-adler32 v0.3.5
[INFO] [stderr]    Compiling ahash v0.8.3
[INFO] [stderr]    Compiling quad-alsa-sys v0.3.2
[INFO] [stderr]     Checking smallvec v0.6.14
[INFO] [stderr]     Checking ogg v0.7.1
[INFO] [stderr]    Compiling num-rational v0.4.1
[INFO] [stderr]    Compiling syn v1.0.109
[INFO] [stderr]    Compiling miniquad v0.3.14
[INFO] [stderr]     Checking dasp_sample v0.11.0
[INFO] [stderr]     Checking num-integer v0.1.45
[INFO] [stderr]     Checking hound v3.5.0
[INFO] [stderr]    Compiling quad-snd v0.2.7
[INFO] [stderr]     Checking webbrowser v0.5.5
[INFO] [stderr]     Checking miniz_oxide v0.7.1
[INFO] [stderr]     Checking fdeflate v0.3.0
[INFO] [stderr]    Compiling serde v1.0.180
[INFO] [stderr]     Checking ttf-parser v0.15.2
[INFO] [stderr]     Checking quad-url v0.1.1
[INFO] [stderr]    Compiling savefile v0.13.0
[INFO] [stderr]    Compiling serde_json v1.0.104
[INFO] [stderr]     Checking bumpalo v3.12.1
[INFO] [stderr]    Compiling macroquad_macro v0.1.7
[INFO] [stderr]     Checking quad-rand v0.2.1
[INFO] [stderr]     Checking glam v0.21.3
[INFO] [stderr]     Checking lewton v0.9.4
[INFO] [stderr]     Checking dasp_frame v0.11.0
[INFO] [stderr]     Checking arrayvec v0.7.2
[INFO] [stderr]     Checking hashbrown v0.13.2
[INFO] [stderr]     Checking flate2 v1.0.26
[INFO] [stderr]     Checking parking_lot_core v0.9.7
[INFO] [stderr]     Checking fontdue v0.7.3
[INFO] [stderr]     Checking png v0.17.8
[INFO] [stderr]     Checking parking_lot v0.12.1
[INFO] [stderr]     Checking audrey v0.3.0
[INFO] [stderr]    Compiling syn v2.0.15
[INFO] [stderr]     Checking owned_ttf_parser v0.19.0
[INFO] [stderr]     Checking ab_glyph v0.2.21
[INFO] [stderr]    Compiling bytemuck_derive v1.4.1
[INFO] [stderr]    Compiling strum_macros v0.24.3
[INFO] [stderr]    Compiling savefile-derive v0.13.0
[INFO] [stderr]     Checking bytemuck v1.13.1
[INFO] [stderr]     Checking emath v0.21.0
[INFO] [stderr]     Checking ecolor v0.21.0
[INFO] [stderr]     Checking image v0.24.6
[INFO] [stderr]     Checking epaint v0.21.0
[INFO] [stderr]     Checking egui v0.21.0
[INFO] [stderr]     Checking strum v0.24.1
[INFO] [stderr]     Checking macroquad v0.3.25
[INFO] [stderr]     Checking egui-miniquad v0.14.0
[INFO] [stderr]     Checking egui-phosphor v0.1.0
[INFO] [stderr]     Checking egui-toast v0.7.0
[INFO] [stderr]     Checking egui-macroquad v0.15.0
[INFO] [stderr]     Checking text_automation v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unused imports: `Display` and `self`
[INFO] [stdout]   --> src/main.rs:14:26
[INFO] [stdout]    |
[INFO] [stdout] 14 |     time::Instant, fmt::{Display, self},
[INFO] [stdout]    |                          ^^^^^^^  ^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `serde_json`
[INFO] [stdout]   --> src/main.rs:17:5
[INFO] [stdout]    |
[INFO] [stdout] 17 | use serde_json;
[INFO] [stdout]    |     ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `emath`
[INFO] [stdout]   --> src/main.rs:22:54
[INFO] [stdout]    |
[INFO] [stdout] 22 |     self, Align2, Frame, Id, Pos2, TextStyle, Order, emath,
[INFO] [stdout]    |                                                      ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Color32`, `Frame`, `Pos2`, and `Rect`
[INFO] [stdout]  --> src/tile.rs:1:12
[INFO] [stdout]   |
[INFO] [stdout] 1 | use egui::{Color32, Frame, Id, Rect, Pos2};
[INFO] [stdout]   |            ^^^^^^^  ^^^^^      ^^^^  ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `macroquad::prelude::collections::storage`
[INFO] [stdout]  --> src/tile.rs:2:5
[INFO] [stdout]   |
[INFO] [stdout] 2 | use macroquad::prelude::collections::storage;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::time::Instant`
[INFO] [stdout]   --> src/tile.rs:10:5
[INFO] [stdout]    |
[INFO] [stdout] 10 | use std::time::Instant;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `guide::*`
[INFO] [stdout]   --> src/main.rs:40:5
[INFO] [stdout]    |
[INFO] [stdout] 40 | use guide::*;
[INFO] [stdout]    |     ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Display` and `self`
[INFO] [stdout]   --> src/main.rs:14:26
[INFO] [stdout]    |
[INFO] [stdout] 14 |     time::Instant, fmt::{Display, self},
[INFO] [stdout]    |                          ^^^^^^^  ^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `serde_json`
[INFO] [stdout]   --> src/main.rs:17:5
[INFO] [stdout]    |
[INFO] [stdout] 17 | use serde_json;
[INFO] [stdout]    |     ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `emath`
[INFO] [stdout]   --> src/main.rs:22:54
[INFO] [stdout]    |
[INFO] [stdout] 22 |     self, Align2, Frame, Id, Pos2, TextStyle, Order, emath,
[INFO] [stdout]    |                                                      ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Color32`, `Frame`, `Pos2`, and `Rect`
[INFO] [stdout]  --> src/tile.rs:1:12
[INFO] [stdout]   |
[INFO] [stdout] 1 | use egui::{Color32, Frame, Id, Rect, Pos2};
[INFO] [stdout]   |            ^^^^^^^  ^^^^^      ^^^^  ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `macroquad::prelude::collections::storage`
[INFO] [stdout]  --> src/tile.rs:2:5
[INFO] [stdout]   |
[INFO] [stdout] 2 | use macroquad::prelude::collections::storage;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::time::Instant`
[INFO] [stdout]   --> src/tile.rs:10:5
[INFO] [stdout]    |
[INFO] [stdout] 10 | use std::time::Instant;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `guide::*`
[INFO] [stdout]   --> src/main.rs:40:5
[INFO] [stdout]    |
[INFO] [stdout] 40 | use guide::*;
[INFO] [stdout]    |     ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/main.rs:447:9
[INFO] [stdout]     |
[INFO] [stdout] 447 |     let mut og_ppp = 0.0;
[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: variable does not need to be mutable
[INFO] [stdout]    --> src/main.rs:470:13
[INFO] [stdout]     |
[INFO] [stdout] 470 |         let mut hover_text: Option<String> = None;
[INFO] [stdout]     |             ----^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/main.rs:447:9
[INFO] [stdout]     |
[INFO] [stdout] 447 |     let mut og_ppp = 0.0;
[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: variable does not need to be mutable
[INFO] [stdout]    --> src/main.rs:470:13
[INFO] [stdout]     |
[INFO] [stdout] 470 |         let mut hover_text: Option<String> = None;
[INFO] [stdout]     |             ----^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `strum::IntoEnumIterator`
[INFO] [stdout]  --> src/building.rs:5:5
[INFO] [stdout]   |
[INFO] [stdout] 5 | use strum::IntoEnumIterator;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/tile.rs:250:33
[INFO] [stdout]     |
[INFO] [stdout] 250 | ...                   let mut potential_text = "".to_owned();
[INFO] [stdout]     |                           ----^^^^^^^^^^^^^^
[INFO] [stdout]     |                           |
[INFO] [stdout]     |                           help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `o`
[INFO] [stdout]    --> src/tile.rs:251:44
[INFO] [stdout]     |
[INFO] [stdout] 251 | ...                   ui.output_mut(|o| {
[INFO] [stdout]     |                                      ^ help: if this is intentional, prefix it with an underscore: `_o`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `strum::IntoEnumIterator`
[INFO] [stdout]  --> src/building.rs:5:5
[INFO] [stdout]   |
[INFO] [stdout] 5 | use strum::IntoEnumIterator;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `i`
[INFO] [stdout]    --> src/tile.rs:257:38
[INFO] [stdout]     |
[INFO] [stdout] 257 | ...                   for (i, c) in potential_text.chars().enumerate() {
[INFO] [stdout]     |                            ^ help: if this is intentional, prefix it with an underscore: `_i`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `c`
[INFO] [stdout]    --> src/tile.rs:257:41
[INFO] [stdout]     |
[INFO] [stdout] 257 | ...                   for (i, c) in potential_text.chars().enumerate() {
[INFO] [stdout]     |                               ^ help: if this is intentional, prefix it with an underscore: `_c`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]  --> src/guide.rs:9:9
[INFO] [stdout]   |
[INFO] [stdout] 9 |     let mut guide =  include_str!("guide.md");
[INFO] [stdout]   |         ----^^^^^
[INFO] [stdout]   |         |
[INFO] [stdout]   |         help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/main.rs:141:9
[INFO] [stdout]     |
[INFO] [stdout] 141 |     let mut toasts = Toasts::new()
[INFO] [stdout]     |         ----^^^^^^
[INFO] [stdout]     |         |
[INFO] [stdout]     |         help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `e`
[INFO] [stdout]    --> src/main.rs:442:13
[INFO] [stdout]     |
[INFO] [stdout] 442 |         Err(e) => {
[INFO] [stdout]     |             ^ help: if this is intentional, prefix it with an underscore: `_e`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `og_ppp`
[INFO] [stdout]    --> src/main.rs:447:9
[INFO] [stdout]     |
[INFO] [stdout] 447 |     let mut og_ppp = 0.0;
[INFO] [stdout]     |         ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_og_ppp`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `hover_text`
[INFO] [stdout]    --> src/main.rs:470:13
[INFO] [stdout]     |
[INFO] [stdout] 470 |         let mut hover_text: Option<String> = None;
[INFO] [stdout]     |             ^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_hover_text`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `warn` and `info` are never used
[INFO] [stdout]    --> src/main.rs:229:8
[INFO] [stdout]     |
[INFO] [stdout] 206 | impl Data {
[INFO] [stdout]     | --------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 229 |     fn warn<T>(&mut self, msg: T) where T: std::fmt::Debug {
[INFO] [stdout]     |        ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 243 |     fn info<T>(&mut self, msg: T) where T: std::fmt::Debug {
[INFO] [stdout]     |        ^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]    --> src/main.rs:151:10
[INFO] [stdout]     |
[INFO] [stdout] 151 | #[derive(Savefile)]
[INFO] [stdout]     |          ^-------
[INFO] [stdout]     |          |
[INFO] [stdout]     |          `Serialize` is not local
[INFO] [stdout]     |          move the `impl` block outside of this constant `_IMPL_SAVEFILE_SERIALIZE_FOR_Data`
[INFO] [stdout] 152 | pub struct Data {
[INFO] [stdout]     |            ---- `Data` is not local
[INFO] [stdout]     |
[INFO] [stdout]     = note: the derive macro `Savefile` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]     = note: the derive macro `Savefile` may come from an old version of the `savefile_derive` crate, try updating your dependency with `cargo update -p savefile_derive`
[INFO] [stdout]     = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]     = note: items in an anonymous const 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 `Savefile` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[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:151:10
[INFO] [stdout]     |
[INFO] [stdout] 151 | #[derive(Savefile)]
[INFO] [stdout]     |          ^-------
[INFO] [stdout]     |          |
[INFO] [stdout]     |          `Deserialize` is not local
[INFO] [stdout]     |          move the `impl` block outside of this constant `_IMPL_SAVEFILE_DESERIALIZE_FOR_Data`
[INFO] [stdout] 152 | pub struct Data {
[INFO] [stdout]     |            ---- `Data` is not local
[INFO] [stdout]     |
[INFO] [stdout]     = note: the derive macro `Savefile` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]     = note: the derive macro `Savefile` may come from an old version of the `savefile_derive` crate, try updating your dependency with `cargo update -p savefile_derive`
[INFO] [stdout]     = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]     = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]     = note: this warning originates in the derive macro `Savefile` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[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:151:10
[INFO] [stdout]     |
[INFO] [stdout] 151 | #[derive(Savefile)]
[INFO] [stdout]     |          ^-------
[INFO] [stdout]     |          |
[INFO] [stdout]     |          `WithSchema` is not local
[INFO] [stdout]     |          move the `impl` block outside of this constant `_IMPL_SAVEFILE_WITHSCHEMA_FOR_Data`
[INFO] [stdout] 152 | pub struct Data {
[INFO] [stdout]     |            ---- `Data` is not local
[INFO] [stdout]     |
[INFO] [stdout]     = note: the derive macro `Savefile` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]     = note: the derive macro `Savefile` may come from an old version of the `savefile_derive` crate, try updating your dependency with `cargo update -p savefile_derive`
[INFO] [stdout]     = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]     = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]     = note: this warning originates in the derive macro `Savefile` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[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:151:10
[INFO] [stdout]     |
[INFO] [stdout] 151 | #[derive(Savefile)]
[INFO] [stdout]     |          ^-------
[INFO] [stdout]     |          |
[INFO] [stdout]     |          `Introspect` is not local
[INFO] [stdout]     |          move the `impl` block outside of this constant `_IMPL_SAVEFILE_INTROSPECT_FOR_Data`
[INFO] [stdout] 152 | pub struct Data {
[INFO] [stdout]     |            ---- `Data` is not local
[INFO] [stdout]     |
[INFO] [stdout]     = note: the derive macro `Savefile` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]     = note: the derive macro `Savefile` may come from an old version of the `savefile_derive` crate, try updating your dependency with `cargo update -p savefile_derive`
[INFO] [stdout]     = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]     = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]     = note: this warning originates in the derive macro `Savefile` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/building.rs:7:10
[INFO] [stdout]    |
[INFO] [stdout]  7 | #[derive(Savefile)]
[INFO] [stdout]    |          ^-------
[INFO] [stdout]    |          |
[INFO] [stdout]    |          `Serialize` is not local
[INFO] [stdout]    |          move the `impl` block outside of this constant `_IMPL_SAVEFILE_SERIALIZE_FOR_Stage`
[INFO] [stdout] ...
[INFO] [stdout] 10 | pub struct Stage {
[INFO] [stdout]    |            ----- `Stage` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `Savefile` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `Savefile` may come from an old version of the `savefile_derive` crate, try updating your dependency with `cargo update -p savefile_derive`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]    = note: this warning originates in the derive macro `Savefile` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/building.rs:7:10
[INFO] [stdout]    |
[INFO] [stdout]  7 | #[derive(Savefile)]
[INFO] [stdout]    |          ^-------
[INFO] [stdout]    |          |
[INFO] [stdout]    |          `Deserialize` is not local
[INFO] [stdout]    |          move the `impl` block outside of this constant `_IMPL_SAVEFILE_DESERIALIZE_FOR_Stage`
[INFO] [stdout] ...
[INFO] [stdout] 10 | pub struct Stage {
[INFO] [stdout]    |            ----- `Stage` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `Savefile` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `Savefile` may come from an old version of the `savefile_derive` crate, try updating your dependency with `cargo update -p savefile_derive`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]    = note: this warning originates in the derive macro `Savefile` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/building.rs:7:10
[INFO] [stdout]    |
[INFO] [stdout]  7 | #[derive(Savefile)]
[INFO] [stdout]    |          ^-------
[INFO] [stdout]    |          |
[INFO] [stdout]    |          `WithSchema` is not local
[INFO] [stdout]    |          move the `impl` block outside of this constant `_IMPL_SAVEFILE_WITHSCHEMA_FOR_Stage`
[INFO] [stdout] ...
[INFO] [stdout] 10 | pub struct Stage {
[INFO] [stdout]    |            ----- `Stage` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `Savefile` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `Savefile` may come from an old version of the `savefile_derive` crate, try updating your dependency with `cargo update -p savefile_derive`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]    = note: this warning originates in the derive macro `Savefile` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/building.rs:7:10
[INFO] [stdout]    |
[INFO] [stdout]  7 | #[derive(Savefile)]
[INFO] [stdout]    |          ^-------
[INFO] [stdout]    |          |
[INFO] [stdout]    |          `Introspect` is not local
[INFO] [stdout]    |          move the `impl` block outside of this constant `_IMPL_SAVEFILE_INTROSPECT_FOR_Stage`
[INFO] [stdout] ...
[INFO] [stdout] 10 | pub struct Stage {
[INFO] [stdout]    |            ----- `Stage` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `Savefile` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `Savefile` may come from an old version of the `savefile_derive` crate, try updating your dependency with `cargo update -p savefile_derive`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]    = note: this warning originates in the derive macro `Savefile` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]    --> src/building.rs:116:54
[INFO] [stdout]     |
[INFO] [stdout] 116 | #[derive(PartialEq, Eq, Hash, Copy, Clone, EnumIter, Savefile)]
[INFO] [stdout]     |                                                      ^-------
[INFO] [stdout]     |                                                      |
[INFO] [stdout]     |                                                      `Serialize` is not local
[INFO] [stdout]     |                                                      move the `impl` block outside of this constant `_IMPL_SAVEFILE_SERIALIZE_FOR_BuildingType`
[INFO] [stdout] 117 | pub enum BuildingType {
[INFO] [stdout]     |          ------------ `BuildingType` is not local
[INFO] [stdout]     |
[INFO] [stdout]     = note: the derive macro `Savefile` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]     = note: the derive macro `Savefile` may come from an old version of the `savefile_derive` crate, try updating your dependency with `cargo update -p savefile_derive`
[INFO] [stdout]     = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]     = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]     = note: this warning originates in the derive macro `Savefile` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]    --> src/building.rs:116:54
[INFO] [stdout]     |
[INFO] [stdout] 116 | #[derive(PartialEq, Eq, Hash, Copy, Clone, EnumIter, Savefile)]
[INFO] [stdout]     |                                                      ^-------
[INFO] [stdout]     |                                                      |
[INFO] [stdout]     |                                                      `Deserialize` is not local
[INFO] [stdout]     |                                                      move the `impl` block outside of this constant `_IMPL_SAVEFILE_DESERIALIZE_FOR_BuildingType`
[INFO] [stdout] 117 | pub enum BuildingType {
[INFO] [stdout]     |          ------------ `BuildingType` is not local
[INFO] [stdout]     |
[INFO] [stdout]     = note: the derive macro `Savefile` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]     = note: the derive macro `Savefile` may come from an old version of the `savefile_derive` crate, try updating your dependency with `cargo update -p savefile_derive`
[INFO] [stdout]     = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]     = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]     = note: this warning originates in the derive macro `Savefile` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]    --> src/building.rs:116:54
[INFO] [stdout]     |
[INFO] [stdout] 116 | #[derive(PartialEq, Eq, Hash, Copy, Clone, EnumIter, Savefile)]
[INFO] [stdout]     |                                                      ^-------
[INFO] [stdout]     |                                                      |
[INFO] [stdout]     |                                                      `WithSchema` is not local
[INFO] [stdout]     |                                                      move the `impl` block outside of this constant `_IMPL_SAVEFILE_WITHSCHEMA_FOR_BuildingType`
[INFO] [stdout] 117 | pub enum BuildingType {
[INFO] [stdout]     |          ------------ `BuildingType` is not local
[INFO] [stdout]     |
[INFO] [stdout]     = note: the derive macro `Savefile` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]     = note: the derive macro `Savefile` may come from an old version of the `savefile_derive` crate, try updating your dependency with `cargo update -p savefile_derive`
[INFO] [stdout]     = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]     = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]     = note: this warning originates in the derive macro `Savefile` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]    --> src/building.rs:116:54
[INFO] [stdout]     |
[INFO] [stdout] 116 | #[derive(PartialEq, Eq, Hash, Copy, Clone, EnumIter, Savefile)]
[INFO] [stdout]     |                                                      ^-------
[INFO] [stdout]     |                                                      |
[INFO] [stdout]     |                                                      `Introspect` is not local
[INFO] [stdout]     |                                                      move the `impl` block outside of this constant `_IMPL_SAVEFILE_INTROSPECT_FOR_BuildingType`
[INFO] [stdout] 117 | pub enum BuildingType {
[INFO] [stdout]     |          ------------ `BuildingType` is not local
[INFO] [stdout]     |
[INFO] [stdout]     = note: the derive macro `Savefile` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]     = note: the derive macro `Savefile` may come from an old version of the `savefile_derive` crate, try updating your dependency with `cargo update -p savefile_derive`
[INFO] [stdout]     = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]     = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]     = note: this warning originates in the derive macro `Savefile` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]    --> src/building.rs:354:54
[INFO] [stdout]     |
[INFO] [stdout] 354 | #[derive(PartialEq, Eq, Hash, Copy, Clone, EnumIter, Savefile)]
[INFO] [stdout]     |                                                      ^-------
[INFO] [stdout]     |                                                      |
[INFO] [stdout]     |                                                      `Serialize` is not local
[INFO] [stdout]     |                                                      move the `impl` block outside of this constant `_IMPL_SAVEFILE_SERIALIZE_FOR_Resource`
[INFO] [stdout] 355 | pub enum Resource {
[INFO] [stdout]     |          -------- `Resource` is not local
[INFO] [stdout]     |
[INFO] [stdout]     = note: the derive macro `Savefile` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]     = note: the derive macro `Savefile` may come from an old version of the `savefile_derive` crate, try updating your dependency with `cargo update -p savefile_derive`
[INFO] [stdout]     = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]     = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]     = note: this warning originates in the derive macro `Savefile` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]    --> src/building.rs:354:54
[INFO] [stdout]     |
[INFO] [stdout] 354 | #[derive(PartialEq, Eq, Hash, Copy, Clone, EnumIter, Savefile)]
[INFO] [stdout]     |                                                      ^-------
[INFO] [stdout]     |                                                      |
[INFO] [stdout]     |                                                      `Deserialize` is not local
[INFO] [stdout]     |                                                      move the `impl` block outside of this constant `_IMPL_SAVEFILE_DESERIALIZE_FOR_Resource`
[INFO] [stdout] 355 | pub enum Resource {
[INFO] [stdout]     |          -------- `Resource` is not local
[INFO] [stdout]     |
[INFO] [stdout]     = note: the derive macro `Savefile` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]     = note: the derive macro `Savefile` may come from an old version of the `savefile_derive` crate, try updating your dependency with `cargo update -p savefile_derive`
[INFO] [stdout]     = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]     = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]     = note: this warning originates in the derive macro `Savefile` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]    --> src/building.rs:354:54
[INFO] [stdout]     |
[INFO] [stdout] 354 | #[derive(PartialEq, Eq, Hash, Copy, Clone, EnumIter, Savefile)]
[INFO] [stdout]     |                                                      ^-------
[INFO] [stdout]     |                                                      |
[INFO] [stdout]     |                                                      `WithSchema` is not local
[INFO] [stdout]     |                                                      move the `impl` block outside of this constant `_IMPL_SAVEFILE_WITHSCHEMA_FOR_Resource`
[INFO] [stdout] 355 | pub enum Resource {
[INFO] [stdout]     |          -------- `Resource` is not local
[INFO] [stdout]     |
[INFO] [stdout]     = note: the derive macro `Savefile` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]     = note: the derive macro `Savefile` may come from an old version of the `savefile_derive` crate, try updating your dependency with `cargo update -p savefile_derive`
[INFO] [stdout]     = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]     = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]     = note: this warning originates in the derive macro `Savefile` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]    --> src/building.rs:354:54
[INFO] [stdout]     |
[INFO] [stdout] 354 | #[derive(PartialEq, Eq, Hash, Copy, Clone, EnumIter, Savefile)]
[INFO] [stdout]     |                                                      ^-------
[INFO] [stdout]     |                                                      |
[INFO] [stdout]     |                                                      `Introspect` is not local
[INFO] [stdout]     |                                                      move the `impl` block outside of this constant `_IMPL_SAVEFILE_INTROSPECT_FOR_Resource`
[INFO] [stdout] 355 | pub enum Resource {
[INFO] [stdout]     |          -------- `Resource` is not local
[INFO] [stdout]     |
[INFO] [stdout]     = note: the derive macro `Savefile` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]     = note: the derive macro `Savefile` may come from an old version of the `savefile_derive` crate, try updating your dependency with `cargo update -p savefile_derive`
[INFO] [stdout]     = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]     = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]     = note: this warning originates in the derive macro `Savefile` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]    --> src/building.rs:419:38
[INFO] [stdout]     |
[INFO] [stdout] 419 | #[derive(PartialEq, Eq, Hash, Clone, Savefile)]
[INFO] [stdout]     |                                      ^-------
[INFO] [stdout]     |                                      |
[INFO] [stdout]     |                                      `Serialize` is not local
[INFO] [stdout]     |                                      move the `impl` block outside of this constant `_IMPL_SAVEFILE_SERIALIZE_FOR_Building`
[INFO] [stdout] 420 | pub struct Building {
[INFO] [stdout]     |            -------- `Building` is not local
[INFO] [stdout]     |
[INFO] [stdout]     = note: the derive macro `Savefile` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]     = note: the derive macro `Savefile` may come from an old version of the `savefile_derive` crate, try updating your dependency with `cargo update -p savefile_derive`
[INFO] [stdout]     = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]     = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]     = note: this warning originates in the derive macro `Savefile` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]    --> src/building.rs:419:38
[INFO] [stdout]     |
[INFO] [stdout] 419 | #[derive(PartialEq, Eq, Hash, Clone, Savefile)]
[INFO] [stdout]     |                                      ^-------
[INFO] [stdout]     |                                      |
[INFO] [stdout]     |                                      `Deserialize` is not local
[INFO] [stdout]     |                                      move the `impl` block outside of this constant `_IMPL_SAVEFILE_DESERIALIZE_FOR_Building`
[INFO] [stdout] 420 | pub struct Building {
[INFO] [stdout]     |            -------- `Building` is not local
[INFO] [stdout]     |
[INFO] [stdout]     = note: the derive macro `Savefile` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]     = note: the derive macro `Savefile` may come from an old version of the `savefile_derive` crate, try updating your dependency with `cargo update -p savefile_derive`
[INFO] [stdout]     = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]     = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]     = note: this warning originates in the derive macro `Savefile` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]    --> src/building.rs:419:38
[INFO] [stdout]     |
[INFO] [stdout] 419 | #[derive(PartialEq, Eq, Hash, Clone, Savefile)]
[INFO] [stdout]     |                                      ^-------
[INFO] [stdout]     |                                      |
[INFO] [stdout]     |                                      `WithSchema` is not local
[INFO] [stdout]     |                                      move the `impl` block outside of this constant `_IMPL_SAVEFILE_WITHSCHEMA_FOR_Building`
[INFO] [stdout] 420 | pub struct Building {
[INFO] [stdout]     |            -------- `Building` is not local
[INFO] [stdout]     |
[INFO] [stdout]     = note: the derive macro `Savefile` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]     = note: the derive macro `Savefile` may come from an old version of the `savefile_derive` crate, try updating your dependency with `cargo update -p savefile_derive`
[INFO] [stdout]     = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]     = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]     = note: this warning originates in the derive macro `Savefile` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]    --> src/building.rs:419:38
[INFO] [stdout]     |
[INFO] [stdout] 419 | #[derive(PartialEq, Eq, Hash, Clone, Savefile)]
[INFO] [stdout]     |                                      ^-------
[INFO] [stdout]     |                                      |
[INFO] [stdout]     |                                      `Introspect` is not local
[INFO] [stdout]     |                                      move the `impl` block outside of this constant `_IMPL_SAVEFILE_INTROSPECT_FOR_Building`
[INFO] [stdout] 420 | pub struct Building {
[INFO] [stdout]     |            -------- `Building` is not local
[INFO] [stdout]     |
[INFO] [stdout]     = note: the derive macro `Savefile` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]     = note: the derive macro `Savefile` may come from an old version of the `savefile_derive` crate, try updating your dependency with `cargo update -p savefile_derive`
[INFO] [stdout]     = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]     = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]     = note: this warning originates in the derive macro `Savefile` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/tile.rs:12:44
[INFO] [stdout]    |
[INFO] [stdout] 12 | #[derive(PartialEq, Eq, Hash, Copy, Clone, Savefile)]
[INFO] [stdout]    |                                            ^-------
[INFO] [stdout]    |                                            |
[INFO] [stdout]    |                                            `Serialize` is not local
[INFO] [stdout]    |                                            move the `impl` block outside of this constant `_IMPL_SAVEFILE_SERIALIZE_FOR_Pos`
[INFO] [stdout] 13 | pub struct Pos {
[INFO] [stdout]    |            --- `Pos` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `Savefile` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `Savefile` may come from an old version of the `savefile_derive` crate, try updating your dependency with `cargo update -p savefile_derive`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]    = note: this warning originates in the derive macro `Savefile` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/tile.rs:12:44
[INFO] [stdout]    |
[INFO] [stdout] 12 | #[derive(PartialEq, Eq, Hash, Copy, Clone, Savefile)]
[INFO] [stdout]    |                                            ^-------
[INFO] [stdout]    |                                            |
[INFO] [stdout]    |                                            `Deserialize` is not local
[INFO] [stdout]    |                                            move the `impl` block outside of this constant `_IMPL_SAVEFILE_DESERIALIZE_FOR_Pos`
[INFO] [stdout] 13 | pub struct Pos {
[INFO] [stdout]    |            --- `Pos` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `Savefile` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `Savefile` may come from an old version of the `savefile_derive` crate, try updating your dependency with `cargo update -p savefile_derive`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]    = note: this warning originates in the derive macro `Savefile` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/tile.rs:12:44
[INFO] [stdout]    |
[INFO] [stdout] 12 | #[derive(PartialEq, Eq, Hash, Copy, Clone, Savefile)]
[INFO] [stdout]    |                                            ^-------
[INFO] [stdout]    |                                            |
[INFO] [stdout]    |                                            `WithSchema` is not local
[INFO] [stdout]    |                                            move the `impl` block outside of this constant `_IMPL_SAVEFILE_WITHSCHEMA_FOR_Pos`
[INFO] [stdout] 13 | pub struct Pos {
[INFO] [stdout]    |            --- `Pos` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `Savefile` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `Savefile` may come from an old version of the `savefile_derive` crate, try updating your dependency with `cargo update -p savefile_derive`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]    = note: this warning originates in the derive macro `Savefile` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/tile.rs:12:44
[INFO] [stdout]    |
[INFO] [stdout] 12 | #[derive(PartialEq, Eq, Hash, Copy, Clone, Savefile)]
[INFO] [stdout]    |                                            ^-------
[INFO] [stdout]    |                                            |
[INFO] [stdout]    |                                            `Introspect` is not local
[INFO] [stdout]    |                                            move the `impl` block outside of this constant `_IMPL_SAVEFILE_INTROSPECT_FOR_Pos`
[INFO] [stdout] 13 | pub struct Pos {
[INFO] [stdout]    |            --- `Pos` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `Savefile` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `Savefile` may come from an old version of the `savefile_derive` crate, try updating your dependency with `cargo update -p savefile_derive`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]    = note: this warning originates in the derive macro `Savefile` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/tile.rs:27:10
[INFO] [stdout]    |
[INFO] [stdout] 27 | #[derive(Savefile)]
[INFO] [stdout]    |          ^-------
[INFO] [stdout]    |          |
[INFO] [stdout]    |          `Serialize` is not local
[INFO] [stdout]    |          move the `impl` block outside of this constant `_IMPL_SAVEFILE_SERIALIZE_FOR_Tile`
[INFO] [stdout] 28 |
[INFO] [stdout] 29 | pub struct Tile {
[INFO] [stdout]    |            ---- `Tile` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `Savefile` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `Savefile` may come from an old version of the `savefile_derive` crate, try updating your dependency with `cargo update -p savefile_derive`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]    = note: this warning originates in the derive macro `Savefile` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/tile.rs:27:10
[INFO] [stdout]    |
[INFO] [stdout] 27 | #[derive(Savefile)]
[INFO] [stdout]    |          ^-------
[INFO] [stdout]    |          |
[INFO] [stdout]    |          `Deserialize` is not local
[INFO] [stdout]    |          move the `impl` block outside of this constant `_IMPL_SAVEFILE_DESERIALIZE_FOR_Tile`
[INFO] [stdout] 28 |
[INFO] [stdout] 29 | pub struct Tile {
[INFO] [stdout]    |            ---- `Tile` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `Savefile` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `Savefile` may come from an old version of the `savefile_derive` crate, try updating your dependency with `cargo update -p savefile_derive`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]    = note: this warning originates in the derive macro `Savefile` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/tile.rs:27:10
[INFO] [stdout]    |
[INFO] [stdout] 27 | #[derive(Savefile)]
[INFO] [stdout]    |          ^-------
[INFO] [stdout]    |          |
[INFO] [stdout]    |          `WithSchema` is not local
[INFO] [stdout]    |          move the `impl` block outside of this constant `_IMPL_SAVEFILE_WITHSCHEMA_FOR_Tile`
[INFO] [stdout] 28 |
[INFO] [stdout] 29 | pub struct Tile {
[INFO] [stdout]    |            ---- `Tile` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `Savefile` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `Savefile` may come from an old version of the `savefile_derive` crate, try updating your dependency with `cargo update -p savefile_derive`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]    = note: this warning originates in the derive macro `Savefile` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/tile.rs:27:10
[INFO] [stdout]    |
[INFO] [stdout] 27 | #[derive(Savefile)]
[INFO] [stdout]    |          ^-------
[INFO] [stdout]    |          |
[INFO] [stdout]    |          `Introspect` is not local
[INFO] [stdout]    |          move the `impl` block outside of this constant `_IMPL_SAVEFILE_INTROSPECT_FOR_Tile`
[INFO] [stdout] 28 |
[INFO] [stdout] 29 | pub struct Tile {
[INFO] [stdout]    |            ---- `Tile` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `Savefile` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `Savefile` may come from an old version of the `savefile_derive` crate, try updating your dependency with `cargo update -p savefile_derive`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]    = note: this warning originates in the derive macro `Savefile` (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/tile.rs:250:33
[INFO] [stdout]     |
[INFO] [stdout] 250 | ...                   let mut potential_text = "".to_owned();
[INFO] [stdout]     |                           ----^^^^^^^^^^^^^^
[INFO] [stdout]     |                           |
[INFO] [stdout]     |                           help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `o`
[INFO] [stdout]    --> src/tile.rs:251:44
[INFO] [stdout]     |
[INFO] [stdout] 251 | ...                   ui.output_mut(|o| {
[INFO] [stdout]     |                                      ^ help: if this is intentional, prefix it with an underscore: `_o`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `i`
[INFO] [stdout]    --> src/tile.rs:257:38
[INFO] [stdout]     |
[INFO] [stdout] 257 | ...                   for (i, c) in potential_text.chars().enumerate() {
[INFO] [stdout]     |                            ^ help: if this is intentional, prefix it with an underscore: `_i`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `c`
[INFO] [stdout]    --> src/tile.rs:257:41
[INFO] [stdout]     |
[INFO] [stdout] 257 | ...                   for (i, c) in potential_text.chars().enumerate() {
[INFO] [stdout]     |                               ^ help: if this is intentional, prefix it with an underscore: `_c`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]  --> src/guide.rs:9:9
[INFO] [stdout]   |
[INFO] [stdout] 9 |     let mut guide =  include_str!("guide.md");
[INFO] [stdout]   |         ----^^^^^
[INFO] [stdout]   |         |
[INFO] [stdout]   |         help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/main.rs:141:9
[INFO] [stdout]     |
[INFO] [stdout] 141 |     let mut toasts = Toasts::new()
[INFO] [stdout]     |         ----^^^^^^
[INFO] [stdout]     |         |
[INFO] [stdout]     |         help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `e`
[INFO] [stdout]    --> src/main.rs:442:13
[INFO] [stdout]     |
[INFO] [stdout] 442 |         Err(e) => {
[INFO] [stdout]     |             ^ help: if this is intentional, prefix it with an underscore: `_e`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `og_ppp`
[INFO] [stdout]    --> src/main.rs:447:9
[INFO] [stdout]     |
[INFO] [stdout] 447 |     let mut og_ppp = 0.0;
[INFO] [stdout]     |         ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_og_ppp`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `hover_text`
[INFO] [stdout]    --> src/main.rs:470:13
[INFO] [stdout]     |
[INFO] [stdout] 470 |         let mut hover_text: Option<String> = None;
[INFO] [stdout]     |             ^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_hover_text`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `warn` and `info` are never used
[INFO] [stdout]    --> src/main.rs:229:8
[INFO] [stdout]     |
[INFO] [stdout] 206 | impl Data {
[INFO] [stdout]     | --------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 229 |     fn warn<T>(&mut self, msg: T) where T: std::fmt::Debug {
[INFO] [stdout]     |        ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 243 |     fn info<T>(&mut self, msg: T) where T: std::fmt::Debug {
[INFO] [stdout]     |        ^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]    --> src/main.rs:151:10
[INFO] [stdout]     |
[INFO] [stdout] 151 | #[derive(Savefile)]
[INFO] [stdout]     |          ^-------
[INFO] [stdout]     |          |
[INFO] [stdout]     |          `Serialize` is not local
[INFO] [stdout]     |          move the `impl` block outside of this constant `_IMPL_SAVEFILE_SERIALIZE_FOR_Data`
[INFO] [stdout] 152 | pub struct Data {
[INFO] [stdout]     |            ---- `Data` is not local
[INFO] [stdout]     |
[INFO] [stdout]     = note: the derive macro `Savefile` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]     = note: the derive macro `Savefile` may come from an old version of the `savefile_derive` crate, try updating your dependency with `cargo update -p savefile_derive`
[INFO] [stdout]     = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]     = note: items in an anonymous const 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 `Savefile` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[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:151:10
[INFO] [stdout]     |
[INFO] [stdout] 151 | #[derive(Savefile)]
[INFO] [stdout]     |          ^-------
[INFO] [stdout]     |          |
[INFO] [stdout]     |          `Deserialize` is not local
[INFO] [stdout]     |          move the `impl` block outside of this constant `_IMPL_SAVEFILE_DESERIALIZE_FOR_Data`
[INFO] [stdout] 152 | pub struct Data {
[INFO] [stdout]     |            ---- `Data` is not local
[INFO] [stdout]     |
[INFO] [stdout]     = note: the derive macro `Savefile` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]     = note: the derive macro `Savefile` may come from an old version of the `savefile_derive` crate, try updating your dependency with `cargo update -p savefile_derive`
[INFO] [stdout]     = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]     = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]     = note: this warning originates in the derive macro `Savefile` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[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:151:10
[INFO] [stdout]     |
[INFO] [stdout] 151 | #[derive(Savefile)]
[INFO] [stdout]     |          ^-------
[INFO] [stdout]     |          |
[INFO] [stdout]     |          `WithSchema` is not local
[INFO] [stdout]     |          move the `impl` block outside of this constant `_IMPL_SAVEFILE_WITHSCHEMA_FOR_Data`
[INFO] [stdout] 152 | pub struct Data {
[INFO] [stdout]     |            ---- `Data` is not local
[INFO] [stdout]     |
[INFO] [stdout]     = note: the derive macro `Savefile` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]     = note: the derive macro `Savefile` may come from an old version of the `savefile_derive` crate, try updating your dependency with `cargo update -p savefile_derive`
[INFO] [stdout]     = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]     = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]     = note: this warning originates in the derive macro `Savefile` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[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:151:10
[INFO] [stdout]     |
[INFO] [stdout] 151 | #[derive(Savefile)]
[INFO] [stdout]     |          ^-------
[INFO] [stdout]     |          |
[INFO] [stdout]     |          `Introspect` is not local
[INFO] [stdout]     |          move the `impl` block outside of this constant `_IMPL_SAVEFILE_INTROSPECT_FOR_Data`
[INFO] [stdout] 152 | pub struct Data {
[INFO] [stdout]     |            ---- `Data` is not local
[INFO] [stdout]     |
[INFO] [stdout]     = note: the derive macro `Savefile` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]     = note: the derive macro `Savefile` may come from an old version of the `savefile_derive` crate, try updating your dependency with `cargo update -p savefile_derive`
[INFO] [stdout]     = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]     = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]     = note: this warning originates in the derive macro `Savefile` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/building.rs:7:10
[INFO] [stdout]    |
[INFO] [stdout]  7 | #[derive(Savefile)]
[INFO] [stdout]    |          ^-------
[INFO] [stdout]    |          |
[INFO] [stdout]    |          `Serialize` is not local
[INFO] [stdout]    |          move the `impl` block outside of this constant `_IMPL_SAVEFILE_SERIALIZE_FOR_Stage`
[INFO] [stdout] ...
[INFO] [stdout] 10 | pub struct Stage {
[INFO] [stdout]    |            ----- `Stage` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `Savefile` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `Savefile` may come from an old version of the `savefile_derive` crate, try updating your dependency with `cargo update -p savefile_derive`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]    = note: this warning originates in the derive macro `Savefile` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/building.rs:7:10
[INFO] [stdout]    |
[INFO] [stdout]  7 | #[derive(Savefile)]
[INFO] [stdout]    |          ^-------
[INFO] [stdout]    |          |
[INFO] [stdout]    |          `Deserialize` is not local
[INFO] [stdout]    |          move the `impl` block outside of this constant `_IMPL_SAVEFILE_DESERIALIZE_FOR_Stage`
[INFO] [stdout] ...
[INFO] [stdout] 10 | pub struct Stage {
[INFO] [stdout]    |            ----- `Stage` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `Savefile` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `Savefile` may come from an old version of the `savefile_derive` crate, try updating your dependency with `cargo update -p savefile_derive`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]    = note: this warning originates in the derive macro `Savefile` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/building.rs:7:10
[INFO] [stdout]    |
[INFO] [stdout]  7 | #[derive(Savefile)]
[INFO] [stdout]    |          ^-------
[INFO] [stdout]    |          |
[INFO] [stdout]    |          `WithSchema` is not local
[INFO] [stdout]    |          move the `impl` block outside of this constant `_IMPL_SAVEFILE_WITHSCHEMA_FOR_Stage`
[INFO] [stdout] ...
[INFO] [stdout] 10 | pub struct Stage {
[INFO] [stdout]    |            ----- `Stage` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `Savefile` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `Savefile` may come from an old version of the `savefile_derive` crate, try updating your dependency with `cargo update -p savefile_derive`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]    = note: this warning originates in the derive macro `Savefile` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/building.rs:7:10
[INFO] [stdout]    |
[INFO] [stdout]  7 | #[derive(Savefile)]
[INFO] [stdout]    |          ^-------
[INFO] [stdout]    |          |
[INFO] [stdout]    |          `Introspect` is not local
[INFO] [stdout]    |          move the `impl` block outside of this constant `_IMPL_SAVEFILE_INTROSPECT_FOR_Stage`
[INFO] [stdout] ...
[INFO] [stdout] 10 | pub struct Stage {
[INFO] [stdout]    |            ----- `Stage` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `Savefile` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `Savefile` may come from an old version of the `savefile_derive` crate, try updating your dependency with `cargo update -p savefile_derive`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]    = note: this warning originates in the derive macro `Savefile` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]    --> src/building.rs:116:54
[INFO] [stdout]     |
[INFO] [stdout] 116 | #[derive(PartialEq, Eq, Hash, Copy, Clone, EnumIter, Savefile)]
[INFO] [stdout]     |                                                      ^-------
[INFO] [stdout]     |                                                      |
[INFO] [stdout]     |                                                      `Serialize` is not local
[INFO] [stdout]     |                                                      move the `impl` block outside of this constant `_IMPL_SAVEFILE_SERIALIZE_FOR_BuildingType`
[INFO] [stdout] 117 | pub enum BuildingType {
[INFO] [stdout]     |          ------------ `BuildingType` is not local
[INFO] [stdout]     |
[INFO] [stdout]     = note: the derive macro `Savefile` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]     = note: the derive macro `Savefile` may come from an old version of the `savefile_derive` crate, try updating your dependency with `cargo update -p savefile_derive`
[INFO] [stdout]     = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]     = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]     = note: this warning originates in the derive macro `Savefile` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]    --> src/building.rs:116:54
[INFO] [stdout]     |
[INFO] [stdout] 116 | #[derive(PartialEq, Eq, Hash, Copy, Clone, EnumIter, Savefile)]
[INFO] [stdout]     |                                                      ^-------
[INFO] [stdout]     |                                                      |
[INFO] [stdout]     |                                                      `Deserialize` is not local
[INFO] [stdout]     |                                                      move the `impl` block outside of this constant `_IMPL_SAVEFILE_DESERIALIZE_FOR_BuildingType`
[INFO] [stdout] 117 | pub enum BuildingType {
[INFO] [stdout]     |          ------------ `BuildingType` is not local
[INFO] [stdout]     |
[INFO] [stdout]     = note: the derive macro `Savefile` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]     = note: the derive macro `Savefile` may come from an old version of the `savefile_derive` crate, try updating your dependency with `cargo update -p savefile_derive`
[INFO] [stdout]     = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]     = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]     = note: this warning originates in the derive macro `Savefile` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]    --> src/building.rs:116:54
[INFO] [stdout]     |
[INFO] [stdout] 116 | #[derive(PartialEq, Eq, Hash, Copy, Clone, EnumIter, Savefile)]
[INFO] [stdout]     |                                                      ^-------
[INFO] [stdout]     |                                                      |
[INFO] [stdout]     |                                                      `WithSchema` is not local
[INFO] [stdout]     |                                                      move the `impl` block outside of this constant `_IMPL_SAVEFILE_WITHSCHEMA_FOR_BuildingType`
[INFO] [stdout] 117 | pub enum BuildingType {
[INFO] [stdout]     |          ------------ `BuildingType` is not local
[INFO] [stdout]     |
[INFO] [stdout]     = note: the derive macro `Savefile` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]     = note: the derive macro `Savefile` may come from an old version of the `savefile_derive` crate, try updating your dependency with `cargo update -p savefile_derive`
[INFO] [stdout]     = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]     = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]     = note: this warning originates in the derive macro `Savefile` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]    --> src/building.rs:116:54
[INFO] [stdout]     |
[INFO] [stdout] 116 | #[derive(PartialEq, Eq, Hash, Copy, Clone, EnumIter, Savefile)]
[INFO] [stdout]     |                                                      ^-------
[INFO] [stdout]     |                                                      |
[INFO] [stdout]     |                                                      `Introspect` is not local
[INFO] [stdout]     |                                                      move the `impl` block outside of this constant `_IMPL_SAVEFILE_INTROSPECT_FOR_BuildingType`
[INFO] [stdout] 117 | pub enum BuildingType {
[INFO] [stdout]     |          ------------ `BuildingType` is not local
[INFO] [stdout]     |
[INFO] [stdout]     = note: the derive macro `Savefile` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]     = note: the derive macro `Savefile` may come from an old version of the `savefile_derive` crate, try updating your dependency with `cargo update -p savefile_derive`
[INFO] [stdout]     = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]     = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]     = note: this warning originates in the derive macro `Savefile` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]    --> src/building.rs:354:54
[INFO] [stdout]     |
[INFO] [stdout] 354 | #[derive(PartialEq, Eq, Hash, Copy, Clone, EnumIter, Savefile)]
[INFO] [stdout]     |                                                      ^-------
[INFO] [stdout]     |                                                      |
[INFO] [stdout]     |                                                      `Serialize` is not local
[INFO] [stdout]     |                                                      move the `impl` block outside of this constant `_IMPL_SAVEFILE_SERIALIZE_FOR_Resource`
[INFO] [stdout] 355 | pub enum Resource {
[INFO] [stdout]     |          -------- `Resource` is not local
[INFO] [stdout]     |
[INFO] [stdout]     = note: the derive macro `Savefile` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]     = note: the derive macro `Savefile` may come from an old version of the `savefile_derive` crate, try updating your dependency with `cargo update -p savefile_derive`
[INFO] [stdout]     = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]     = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]     = note: this warning originates in the derive macro `Savefile` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]    --> src/building.rs:354:54
[INFO] [stdout]     |
[INFO] [stdout] 354 | #[derive(PartialEq, Eq, Hash, Copy, Clone, EnumIter, Savefile)]
[INFO] [stdout]     |                                                      ^-------
[INFO] [stdout]     |                                                      |
[INFO] [stdout]     |                                                      `Deserialize` is not local
[INFO] [stdout]     |                                                      move the `impl` block outside of this constant `_IMPL_SAVEFILE_DESERIALIZE_FOR_Resource`
[INFO] [stdout] 355 | pub enum Resource {
[INFO] [stdout]     |          -------- `Resource` is not local
[INFO] [stdout]     |
[INFO] [stdout]     = note: the derive macro `Savefile` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]     = note: the derive macro `Savefile` may come from an old version of the `savefile_derive` crate, try updating your dependency with `cargo update -p savefile_derive`
[INFO] [stdout]     = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]     = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]     = note: this warning originates in the derive macro `Savefile` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]    --> src/building.rs:354:54
[INFO] [stdout]     |
[INFO] [stdout] 354 | #[derive(PartialEq, Eq, Hash, Copy, Clone, EnumIter, Savefile)]
[INFO] [stdout]     |                                                      ^-------
[INFO] [stdout]     |                                                      |
[INFO] [stdout]     |                                                      `WithSchema` is not local
[INFO] [stdout]     |                                                      move the `impl` block outside of this constant `_IMPL_SAVEFILE_WITHSCHEMA_FOR_Resource`
[INFO] [stdout] 355 | pub enum Resource {
[INFO] [stdout]     |          -------- `Resource` is not local
[INFO] [stdout]     |
[INFO] [stdout]     = note: the derive macro `Savefile` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]     = note: the derive macro `Savefile` may come from an old version of the `savefile_derive` crate, try updating your dependency with `cargo update -p savefile_derive`
[INFO] [stdout]     = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]     = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]     = note: this warning originates in the derive macro `Savefile` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]    --> src/building.rs:354:54
[INFO] [stdout]     |
[INFO] [stdout] 354 | #[derive(PartialEq, Eq, Hash, Copy, Clone, EnumIter, Savefile)]
[INFO] [stdout]     |                                                      ^-------
[INFO] [stdout]     |                                                      |
[INFO] [stdout]     |                                                      `Introspect` is not local
[INFO] [stdout]     |                                                      move the `impl` block outside of this constant `_IMPL_SAVEFILE_INTROSPECT_FOR_Resource`
[INFO] [stdout] 355 | pub enum Resource {
[INFO] [stdout]     |          -------- `Resource` is not local
[INFO] [stdout]     |
[INFO] [stdout]     = note: the derive macro `Savefile` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]     = note: the derive macro `Savefile` may come from an old version of the `savefile_derive` crate, try updating your dependency with `cargo update -p savefile_derive`
[INFO] [stdout]     = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]     = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]     = note: this warning originates in the derive macro `Savefile` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]    --> src/building.rs:419:38
[INFO] [stdout]     |
[INFO] [stdout] 419 | #[derive(PartialEq, Eq, Hash, Clone, Savefile)]
[INFO] [stdout]     |                                      ^-------
[INFO] [stdout]     |                                      |
[INFO] [stdout]     |                                      `Serialize` is not local
[INFO] [stdout]     |                                      move the `impl` block outside of this constant `_IMPL_SAVEFILE_SERIALIZE_FOR_Building`
[INFO] [stdout] 420 | pub struct Building {
[INFO] [stdout]     |            -------- `Building` is not local
[INFO] [stdout]     |
[INFO] [stdout]     = note: the derive macro `Savefile` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]     = note: the derive macro `Savefile` may come from an old version of the `savefile_derive` crate, try updating your dependency with `cargo update -p savefile_derive`
[INFO] [stdout]     = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]     = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]     = note: this warning originates in the derive macro `Savefile` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]    --> src/building.rs:419:38
[INFO] [stdout]     |
[INFO] [stdout] 419 | #[derive(PartialEq, Eq, Hash, Clone, Savefile)]
[INFO] [stdout]     |                                      ^-------
[INFO] [stdout]     |                                      |
[INFO] [stdout]     |                                      `Deserialize` is not local
[INFO] [stdout]     |                                      move the `impl` block outside of this constant `_IMPL_SAVEFILE_DESERIALIZE_FOR_Building`
[INFO] [stdout] 420 | pub struct Building {
[INFO] [stdout]     |            -------- `Building` is not local
[INFO] [stdout]     |
[INFO] [stdout]     = note: the derive macro `Savefile` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]     = note: the derive macro `Savefile` may come from an old version of the `savefile_derive` crate, try updating your dependency with `cargo update -p savefile_derive`
[INFO] [stdout]     = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]     = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]     = note: this warning originates in the derive macro `Savefile` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]    --> src/building.rs:419:38
[INFO] [stdout]     |
[INFO] [stdout] 419 | #[derive(PartialEq, Eq, Hash, Clone, Savefile)]
[INFO] [stdout]     |                                      ^-------
[INFO] [stdout]     |                                      |
[INFO] [stdout]     |                                      `WithSchema` is not local
[INFO] [stdout]     |                                      move the `impl` block outside of this constant `_IMPL_SAVEFILE_WITHSCHEMA_FOR_Building`
[INFO] [stdout] 420 | pub struct Building {
[INFO] [stdout]     |            -------- `Building` is not local
[INFO] [stdout]     |
[INFO] [stdout]     = note: the derive macro `Savefile` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]     = note: the derive macro `Savefile` may come from an old version of the `savefile_derive` crate, try updating your dependency with `cargo update -p savefile_derive`
[INFO] [stdout]     = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]     = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]     = note: this warning originates in the derive macro `Savefile` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]    --> src/building.rs:419:38
[INFO] [stdout]     |
[INFO] [stdout] 419 | #[derive(PartialEq, Eq, Hash, Clone, Savefile)]
[INFO] [stdout]     |                                      ^-------
[INFO] [stdout]     |                                      |
[INFO] [stdout]     |                                      `Introspect` is not local
[INFO] [stdout]     |                                      move the `impl` block outside of this constant `_IMPL_SAVEFILE_INTROSPECT_FOR_Building`
[INFO] [stdout] 420 | pub struct Building {
[INFO] [stdout]     |            -------- `Building` is not local
[INFO] [stdout]     |
[INFO] [stdout]     = note: the derive macro `Savefile` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]     = note: the derive macro `Savefile` may come from an old version of the `savefile_derive` crate, try updating your dependency with `cargo update -p savefile_derive`
[INFO] [stdout]     = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]     = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]     = note: this warning originates in the derive macro `Savefile` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/tile.rs:12:44
[INFO] [stdout]    |
[INFO] [stdout] 12 | #[derive(PartialEq, Eq, Hash, Copy, Clone, Savefile)]
[INFO] [stdout]    |                                            ^-------
[INFO] [stdout]    |                                            |
[INFO] [stdout]    |                                            `Serialize` is not local
[INFO] [stdout]    |                                            move the `impl` block outside of this constant `_IMPL_SAVEFILE_SERIALIZE_FOR_Pos`
[INFO] [stdout] 13 | pub struct Pos {
[INFO] [stdout]    |            --- `Pos` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `Savefile` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `Savefile` may come from an old version of the `savefile_derive` crate, try updating your dependency with `cargo update -p savefile_derive`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]    = note: this warning originates in the derive macro `Savefile` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/tile.rs:12:44
[INFO] [stdout]    |
[INFO] [stdout] 12 | #[derive(PartialEq, Eq, Hash, Copy, Clone, Savefile)]
[INFO] [stdout]    |                                            ^-------
[INFO] [stdout]    |                                            |
[INFO] [stdout]    |                                            `Deserialize` is not local
[INFO] [stdout]    |                                            move the `impl` block outside of this constant `_IMPL_SAVEFILE_DESERIALIZE_FOR_Pos`
[INFO] [stdout] 13 | pub struct Pos {
[INFO] [stdout]    |            --- `Pos` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `Savefile` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `Savefile` may come from an old version of the `savefile_derive` crate, try updating your dependency with `cargo update -p savefile_derive`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]    = note: this warning originates in the derive macro `Savefile` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/tile.rs:12:44
[INFO] [stdout]    |
[INFO] [stdout] 12 | #[derive(PartialEq, Eq, Hash, Copy, Clone, Savefile)]
[INFO] [stdout]    |                                            ^-------
[INFO] [stdout]    |                                            |
[INFO] [stdout]    |                                            `WithSchema` is not local
[INFO] [stdout]    |                                            move the `impl` block outside of this constant `_IMPL_SAVEFILE_WITHSCHEMA_FOR_Pos`
[INFO] [stdout] 13 | pub struct Pos {
[INFO] [stdout]    |            --- `Pos` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `Savefile` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `Savefile` may come from an old version of the `savefile_derive` crate, try updating your dependency with `cargo update -p savefile_derive`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]    = note: this warning originates in the derive macro `Savefile` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/tile.rs:12:44
[INFO] [stdout]    |
[INFO] [stdout] 12 | #[derive(PartialEq, Eq, Hash, Copy, Clone, Savefile)]
[INFO] [stdout]    |                                            ^-------
[INFO] [stdout]    |                                            |
[INFO] [stdout]    |                                            `Introspect` is not local
[INFO] [stdout]    |                                            move the `impl` block outside of this constant `_IMPL_SAVEFILE_INTROSPECT_FOR_Pos`
[INFO] [stdout] 13 | pub struct Pos {
[INFO] [stdout]    |            --- `Pos` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `Savefile` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `Savefile` may come from an old version of the `savefile_derive` crate, try updating your dependency with `cargo update -p savefile_derive`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]    = note: this warning originates in the derive macro `Savefile` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/tile.rs:27:10
[INFO] [stdout]    |
[INFO] [stdout] 27 | #[derive(Savefile)]
[INFO] [stdout]    |          ^-------
[INFO] [stdout]    |          |
[INFO] [stdout]    |          `Serialize` is not local
[INFO] [stdout]    |          move the `impl` block outside of this constant `_IMPL_SAVEFILE_SERIALIZE_FOR_Tile`
[INFO] [stdout] 28 |
[INFO] [stdout] 29 | pub struct Tile {
[INFO] [stdout]    |            ---- `Tile` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `Savefile` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `Savefile` may come from an old version of the `savefile_derive` crate, try updating your dependency with `cargo update -p savefile_derive`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]    = note: this warning originates in the derive macro `Savefile` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/tile.rs:27:10
[INFO] [stdout]    |
[INFO] [stdout] 27 | #[derive(Savefile)]
[INFO] [stdout]    |          ^-------
[INFO] [stdout]    |          |
[INFO] [stdout]    |          `Deserialize` is not local
[INFO] [stdout]    |          move the `impl` block outside of this constant `_IMPL_SAVEFILE_DESERIALIZE_FOR_Tile`
[INFO] [stdout] 28 |
[INFO] [stdout] 29 | pub struct Tile {
[INFO] [stdout]    |            ---- `Tile` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `Savefile` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `Savefile` may come from an old version of the `savefile_derive` crate, try updating your dependency with `cargo update -p savefile_derive`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]    = note: this warning originates in the derive macro `Savefile` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/tile.rs:27:10
[INFO] [stdout]    |
[INFO] [stdout] 27 | #[derive(Savefile)]
[INFO] [stdout]    |          ^-------
[INFO] [stdout]    |          |
[INFO] [stdout]    |          `WithSchema` is not local
[INFO] [stdout]    |          move the `impl` block outside of this constant `_IMPL_SAVEFILE_WITHSCHEMA_FOR_Tile`
[INFO] [stdout] 28 |
[INFO] [stdout] 29 | pub struct Tile {
[INFO] [stdout]    |            ---- `Tile` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `Savefile` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `Savefile` may come from an old version of the `savefile_derive` crate, try updating your dependency with `cargo update -p savefile_derive`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]    = note: this warning originates in the derive macro `Savefile` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/tile.rs:27:10
[INFO] [stdout]    |
[INFO] [stdout] 27 | #[derive(Savefile)]
[INFO] [stdout]    |          ^-------
[INFO] [stdout]    |          |
[INFO] [stdout]    |          `Introspect` is not local
[INFO] [stdout]    |          move the `impl` block outside of this constant `_IMPL_SAVEFILE_INTROSPECT_FOR_Tile`
[INFO] [stdout] 28 |
[INFO] [stdout] 29 | pub struct Tile {
[INFO] [stdout]    |            ---- `Tile` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `Savefile` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `Savefile` may come from an old version of the `savefile_derive` crate, try updating your dependency with `cargo update -p savefile_derive`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]    = note: this warning originates in the derive macro `Savefile` (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 18.95s
[INFO] running `Command { std: "docker" "inspect" "22f1619f65b14bbae2f75d9962e57356d4521364bf2d71dab292febeef33d097", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "22f1619f65b14bbae2f75d9962e57356d4521364bf2d71dab292febeef33d097", kill_on_drop: false }`
[INFO] [stdout] 22f1619f65b14bbae2f75d9962e57356d4521364bf2d71dab292febeef33d097
