[INFO] cloning repository https://github.com/ngraham20/sherlock_text_adv [INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/ngraham20/sherlock_text_adv" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fngraham20%2Fsherlock_text_adv", kill_on_drop: false }` [INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fngraham20%2Fsherlock_text_adv'... [INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }` [INFO] [stdout] dddbe887781cc9683ba5be590952d6a14cbbdf15 [INFO] testing ngraham20/sherlock_text_adv against beta-2024-12-08 for beta-1.84.0-4 [INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fngraham20%2Fsherlock_text_adv" "/workspace/builds/worker-5-tc2/source", kill_on_drop: false }` [INFO] [stderr] Cloning into '/workspace/builds/worker-5-tc2/source'... [INFO] [stderr] done. [INFO] validating manifest of git repo https://github.com/ngraham20/sherlock_text_adv on toolchain beta-2024-12-08 [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+beta-2024-12-08" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] started tweaking git repo https://github.com/ngraham20/sherlock_text_adv [INFO] finished tweaking git repo https://github.com/ngraham20/sherlock_text_adv [INFO] tweaked toml for git repo https://github.com/ngraham20/sherlock_text_adv written to /workspace/builds/worker-5-tc2/source/Cargo.toml [INFO] crate git repo https://github.com/ngraham20/sherlock_text_adv 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" "+beta-2024-12-08" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:f3a9d4ad9d972b27faf3965f35b62e55ba32bbce8f20bc8fe909558a86702fde" "/opt/rustwide/cargo-home/bin/cargo" "+beta-2024-12-08" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] b5e5209709d99473ff28c5c2aa094a90e97d86da71f05f29695879d0e760dc5e [INFO] running `Command { std: "docker" "start" "-a" "b5e5209709d99473ff28c5c2aa094a90e97d86da71f05f29695879d0e760dc5e", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "b5e5209709d99473ff28c5c2aa094a90e97d86da71f05f29695879d0e760dc5e", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "b5e5209709d99473ff28c5c2aa094a90e97d86da71f05f29695879d0e760dc5e", kill_on_drop: false }` [INFO] [stdout] b5e5209709d99473ff28c5c2aa094a90e97d86da71f05f29695879d0e760dc5e [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=warn" "-e" "RUSTDOCFLAGS=--cap-lints=warn" "-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:f3a9d4ad9d972b27faf3965f35b62e55ba32bbce8f20bc8fe909558a86702fde" "/opt/rustwide/cargo-home/bin/cargo" "+beta-2024-12-08" "build" "--frozen" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] 457ea86d268d0df84865a2f4fadb276d58e0ee17741559582872882be2d63e08 [INFO] running `Command { std: "docker" "start" "-a" "457ea86d268d0df84865a2f4fadb276d58e0ee17741559582872882be2d63e08", kill_on_drop: false }` [INFO] [stderr] Compiling proc-macro2 v1.0.9 [INFO] [stderr] Compiling unicode-xid v0.2.0 [INFO] [stderr] Compiling syn v1.0.16 [INFO] [stderr] Compiling serde v1.0.104 [INFO] [stderr] Compiling autocfg v1.0.0 [INFO] [stderr] Compiling byteorder v1.3.4 [INFO] [stderr] Compiling fnv v1.0.6 [INFO] [stderr] Compiling libc v0.2.67 [INFO] [stderr] Compiling pocket-resources v0.3.2 [INFO] [stderr] Compiling ryu v1.0.2 [INFO] [stderr] Compiling unicode-width v0.1.7 [INFO] [stderr] Compiling itoa v0.4.5 [INFO] [stderr] Compiling num-traits v0.2.11 [INFO] [stderr] Compiling term_size v0.3.1 [INFO] [stderr] Compiling quote v1.0.2 [INFO] [stderr] Compiling serde_derive v1.0.104 [INFO] [stderr] Compiling atlatl v0.1.2 [INFO] [stderr] Compiling bincode v1.2.1 [INFO] [stderr] Compiling serde_json v1.0.48 [INFO] [stderr] Compiling hyphenation_commons v0.7.1 [INFO] [stderr] Compiling hyphenation v0.7.1 [INFO] [stderr] Compiling textwrap v0.11.0 [INFO] [stderr] Compiling sherlock v0.1.0 (/opt/rustwide/workdir) [INFO] [stdout] warning: unused import: `crate::map::Map` [INFO] [stdout] --> src/game_state.rs:5:5 [INFO] [stdout] | [INFO] [stdout] 5 | use crate::map::Map; [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary braces around block return value [INFO] [stdout] --> src/map.rs:27:79 [INFO] [stdout] | [INFO] [stdout] 27 | data += if map.edges.contains(&(j, i, j+1, i)) && k % 3 == 1 {{&"-=-"}} else {{&" "}}; [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_braces)]` on by default [INFO] [stdout] help: remove these braces [INFO] [stdout] | [INFO] [stdout] 27 - data += if map.edges.contains(&(j, i, j+1, i)) && k % 3 == 1 {{&"-=-"}} else {{&" "}}; [INFO] [stdout] 27 + data += if map.edges.contains(&(j, i, j+1, i)) && k % 3 == 1 {&"-=-"} else {{&" "}}; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary braces around block return value [INFO] [stdout] --> src/map.rs:27:95 [INFO] [stdout] | [INFO] [stdout] 27 | data += if map.edges.contains(&(j, i, j+1, i)) && k % 3 == 1 {{&"-=-"}} else {{&" "}}; [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] help: remove these braces [INFO] [stdout] | [INFO] [stdout] 27 - data += if map.edges.contains(&(j, i, j+1, i)) && k % 3 == 1 {{&"-=-"}} else {{&" "}}; [INFO] [stdout] 27 + data += if map.edges.contains(&(j, i, j+1, i)) && k % 3 == 1 {{&"-=-"}} else {&" "}; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unexpected `cfg` condition value: `cargo-clippy` [INFO] [stdout] --> src/room.rs:5:17 [INFO] [stdout] | [INFO] [stdout] 5 | #[derive(Clone, Serialize, Deserialize)] [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: no expected values for `feature` [INFO] [stdout] = help: consider adding `cargo-clippy` as a feature in `Cargo.toml` [INFO] [stdout] = note: see for more information about checking conditional configuration [INFO] [stdout] = note: `#[warn(unexpected_cfgs)]` on by default [INFO] [stdout] = note: this warning originates in the derive macro `Serialize` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unexpected `cfg` condition value: `cargo-clippy` [INFO] [stdout] --> src/room.rs:5:28 [INFO] [stdout] | [INFO] [stdout] 5 | #[derive(Clone, Serialize, Deserialize)] [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: no expected values for `feature` [INFO] [stdout] = help: consider adding `cargo-clippy` as a feature in `Cargo.toml` [INFO] [stdout] = note: see for more information about checking conditional configuration [INFO] [stdout] = note: this warning originates in the derive macro `Deserialize` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unexpected `cfg` condition value: `cargo-clippy` [INFO] [stdout] --> src/room.rs:12:17 [INFO] [stdout] | [INFO] [stdout] 12 | #[derive(Clone, Serialize, Deserialize)] [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: no expected values for `feature` [INFO] [stdout] = help: consider adding `cargo-clippy` as a feature in `Cargo.toml` [INFO] [stdout] = note: see for more information about checking conditional configuration [INFO] [stdout] = note: this warning originates in the derive macro `Serialize` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unexpected `cfg` condition value: `cargo-clippy` [INFO] [stdout] --> src/room.rs:12:28 [INFO] [stdout] | [INFO] [stdout] 12 | #[derive(Clone, Serialize, Deserialize)] [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: no expected values for `feature` [INFO] [stdout] = help: consider adding `cargo-clippy` as a feature in `Cargo.toml` [INFO] [stdout] = note: see for more information about checking conditional configuration [INFO] [stdout] = note: this warning originates in the derive macro `Deserialize` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unexpected `cfg` condition value: `cargo-clippy` [INFO] [stdout] --> src/room.rs:23:17 [INFO] [stdout] | [INFO] [stdout] 23 | #[derive(Clone, Serialize, Deserialize)] [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: no expected values for `feature` [INFO] [stdout] = help: consider adding `cargo-clippy` as a feature in `Cargo.toml` [INFO] [stdout] = note: see for more information about checking conditional configuration [INFO] [stdout] = note: this warning originates in the derive macro `Serialize` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unexpected `cfg` condition value: `cargo-clippy` [INFO] [stdout] --> src/room.rs:23:28 [INFO] [stdout] | [INFO] [stdout] 23 | #[derive(Clone, Serialize, Deserialize)] [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: no expected values for `feature` [INFO] [stdout] = help: consider adding `cargo-clippy` as a feature in `Cargo.toml` [INFO] [stdout] = note: see for more information about checking conditional configuration [INFO] [stdout] = note: this warning originates in the derive macro `Deserialize` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unexpected `cfg` condition value: `cargo-clippy` [INFO] [stdout] --> src/room.rs:112:17 [INFO] [stdout] | [INFO] [stdout] 112 | #[derive(Clone, Serialize, Deserialize)] [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: no expected values for `feature` [INFO] [stdout] = help: consider adding `cargo-clippy` as a feature in `Cargo.toml` [INFO] [stdout] = note: see for more information about checking conditional configuration [INFO] [stdout] = note: this warning originates in the derive macro `Serialize` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unexpected `cfg` condition value: `cargo-clippy` [INFO] [stdout] --> src/room.rs:112:28 [INFO] [stdout] | [INFO] [stdout] 112 | #[derive(Clone, Serialize, Deserialize)] [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: no expected values for `feature` [INFO] [stdout] = help: consider adding `cargo-clippy` as a feature in `Cargo.toml` [INFO] [stdout] = note: see for more information about checking conditional configuration [INFO] [stdout] = note: this warning originates in the derive macro `Deserialize` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `room` [INFO] [stdout] --> src/room_state.rs:19:23 [INFO] [stdout] | [INFO] [stdout] 19 | fn calculate_lighting(room: &Room) -> Lighting { [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_room` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `GameSettings` is never constructed [INFO] [stdout] --> src/game_state.rs:7:12 [INFO] [stdout] | [INFO] [stdout] 7 | pub struct GameSettings { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `from` and `modify_setting` are never used [INFO] [stdout] --> src/game_state.rs:16:12 [INFO] [stdout] | [INFO] [stdout] 11 | impl GameSettings { [INFO] [stdout] | ----------------- associated items in this implementation [INFO] [stdout] ... [INFO] [stdout] 16 | pub fn from(screen_width: usize) -> Self { [INFO] [stdout] | ^^^^ [INFO] [stdout] ... [INFO] [stdout] 20 | pub fn modify_setting(&mut self, setting: GameSetting) { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `ScreenWidth` is never constructed [INFO] [stdout] --> src/game_state.rs:34:5 [INFO] [stdout] | [INFO] [stdout] 33 | pub enum GameSetting { [INFO] [stdout] | ----------- variant in this enum [INFO] [stdout] 34 | ScreenWidth, [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `GameSetting` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `begin` is never used [INFO] [stdout] --> src/game_state.rs:37:8 [INFO] [stdout] | [INFO] [stdout] 37 | pub fn begin(screen_width: usize) { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `new`, `display_menu`, and `update_settings` are never used [INFO] [stdout] --> src/menu.rs:13:12 [INFO] [stdout] | [INFO] [stdout] 12 | impl Menu { [INFO] [stdout] | --------- associated items in this implementation [INFO] [stdout] 13 | pub fn new( [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 54 | pub fn display_menu(&self) { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 58 | pub fn update_settings(&mut self, settings: &GameSettings) { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: multiple variants are never constructed [INFO] [stdout] --> src/menu.rs:86:5 [INFO] [stdout] | [INFO] [stdout] 85 | pub enum Command { [INFO] [stdout] | ------- variants in this enum [INFO] [stdout] 86 | SetMenu(Menu), [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] 87 | RunFunc(fn()), [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] 88 | ChangeSetting(GameSetting), [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] 89 | Play, [INFO] [stdout] | ^^^^ [INFO] [stdout] 90 | Back, [INFO] [stdout] | ^^^^ [INFO] [stdout] 91 | Continue, [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] 92 | InputError, [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] 93 | Quit, [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `Command` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `main_menu` is never used [INFO] [stdout] --> src/menu.rs:113:8 [INFO] [stdout] | [INFO] [stdout] 113 | pub fn main_menu(width: usize) -> Menu { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `settings_menu` is never used [INFO] [stdout] --> src/menu.rs:136:4 [INFO] [stdout] | [INFO] [stdout] 136 | fn settings_menu(width: usize) -> Menu { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `select_item` is never used [INFO] [stdout] --> src/menu_state.rs:5:4 [INFO] [stdout] | [INFO] [stdout] 5 | fn select_item(menu: Menu, item: &str) -> menu::Command { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `begin` is never used [INFO] [stdout] --> src/menu_state.rs:18:8 [INFO] [stdout] | [INFO] [stdout] 18 | pub fn begin(settings: &mut game_state::GameSettings) -> menu::Command { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `from` and `display` are never used [INFO] [stdout] --> src/room.rs:48:12 [INFO] [stdout] | [INFO] [stdout] 34 | impl Room { [INFO] [stdout] | --------- associated items in this implementation [INFO] [stdout] ... [INFO] [stdout] 48 | pub fn from( [INFO] [stdout] | ^^^^ [INFO] [stdout] ... [INFO] [stdout] 89 | pub fn display(&self) { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `begin` is never used [INFO] [stdout] --> src/room_state.rs:4:8 [INFO] [stdout] | [INFO] [stdout] 4 | pub fn begin(settings: &GameSettings) { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `calculate_lighting` is never used [INFO] [stdout] --> src/room_state.rs:19:4 [INFO] [stdout] | [INFO] [stdout] 19 | fn calculate_lighting(room: &Room) -> Lighting { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `lorem_ipsum` is never used [INFO] [stdout] --> src/room_state.rs:24:4 [INFO] [stdout] | [INFO] [stdout] 24 | fn lorem_ipsum(settings: &GameSettings) -> Room { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `get_next_instruction` is never used [INFO] [stdout] --> src/room_state.rs:36:4 [INFO] [stdout] | [INFO] [stdout] 36 | fn get_next_instruction() -> Command { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: enum `Command` is never used [INFO] [stdout] --> src/room_state.rs:56:6 [INFO] [stdout] | [INFO] [stdout] 56 | enum Command { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: enum `Direction` is never used [INFO] [stdout] --> src/room_state.rs:64:6 [INFO] [stdout] | [INFO] [stdout] 64 | enum Direction { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item [INFO] [stdout] --> src/room.rs:5:17 [INFO] [stdout] | [INFO] [stdout] 5 | #[derive(Clone, Serialize, Deserialize)] [INFO] [stdout] | ^-------- [INFO] [stdout] | | [INFO] [stdout] | `Serialize` is not local [INFO] [stdout] | move the `impl` block outside of this constant `_IMPL_SERIALIZE_FOR_DoorState` [INFO] [stdout] 6 | pub enum DoorState { [INFO] [stdout] | --------- `DoorState` is not local [INFO] [stdout] | [INFO] [stdout] = note: the derive macro `Serialize` defines the non-local `impl`, and may need to be changed [INFO] [stdout] = note: the derive macro `Serialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_derive` [INFO] [stdout] = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stdout] = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint [INFO] [stdout] = note: `#[warn(non_local_definitions)]` on by default [INFO] [stdout] = note: this warning originates in the derive macro `Serialize` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item [INFO] [stdout] --> src/room.rs:5:28 [INFO] [stdout] | [INFO] [stdout] 5 | #[derive(Clone, Serialize, Deserialize)] [INFO] [stdout] | ^---------- [INFO] [stdout] | | [INFO] [stdout] | `Deserialize` is not local [INFO] [stdout] | move the `impl` block outside of this constant `_IMPL_DESERIALIZE_FOR_DoorState` [INFO] [stdout] 6 | pub enum DoorState { [INFO] [stdout] | --------- `DoorState` is not local [INFO] [stdout] | [INFO] [stdout] = note: the derive macro `Deserialize` defines the non-local `impl`, and may need to be changed [INFO] [stdout] = note: the derive macro `Deserialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_derive` [INFO] [stdout] = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stdout] = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint [INFO] [stdout] = note: this warning originates in the derive macro `Deserialize` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item [INFO] [stdout] --> src/room.rs:12:17 [INFO] [stdout] | [INFO] [stdout] 12 | #[derive(Clone, Serialize, Deserialize)] [INFO] [stdout] | ^-------- [INFO] [stdout] | | [INFO] [stdout] | `Serialize` is not local [INFO] [stdout] | move the `impl` block outside of this constant `_IMPL_SERIALIZE_FOR_Door` [INFO] [stdout] 13 | pub enum Door { [INFO] [stdout] | ---- `Door` is not local [INFO] [stdout] | [INFO] [stdout] = note: the derive macro `Serialize` defines the non-local `impl`, and may need to be changed [INFO] [stdout] = note: the derive macro `Serialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_derive` [INFO] [stdout] = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stdout] = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint [INFO] [stdout] = note: this warning originates in the derive macro `Serialize` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item [INFO] [stdout] --> src/room.rs:12:28 [INFO] [stdout] | [INFO] [stdout] 12 | #[derive(Clone, Serialize, Deserialize)] [INFO] [stdout] | ^---------- [INFO] [stdout] | | [INFO] [stdout] | `Deserialize` is not local [INFO] [stdout] | move the `impl` block outside of this constant `_IMPL_DESERIALIZE_FOR_Door` [INFO] [stdout] 13 | pub enum Door { [INFO] [stdout] | ---- `Door` is not local [INFO] [stdout] | [INFO] [stdout] = note: the derive macro `Deserialize` defines the non-local `impl`, and may need to be changed [INFO] [stdout] = note: the derive macro `Deserialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_derive` [INFO] [stdout] = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stdout] = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint [INFO] [stdout] = note: this warning originates in the derive macro `Deserialize` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item [INFO] [stdout] --> src/room.rs:23:17 [INFO] [stdout] | [INFO] [stdout] 23 | #[derive(Clone, Serialize, Deserialize)] [INFO] [stdout] | ^-------- [INFO] [stdout] | | [INFO] [stdout] | `Serialize` is not local [INFO] [stdout] | move the `impl` block outside of this constant `_IMPL_SERIALIZE_FOR_Room` [INFO] [stdout] 24 | pub struct Room { [INFO] [stdout] | ---- `Room` is not local [INFO] [stdout] | [INFO] [stdout] = note: the derive macro `Serialize` defines the non-local `impl`, and may need to be changed [INFO] [stdout] = note: the derive macro `Serialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_derive` [INFO] [stdout] = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stdout] = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint [INFO] [stdout] = note: this warning originates in the derive macro `Serialize` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item [INFO] [stdout] --> src/room.rs:23:28 [INFO] [stdout] | [INFO] [stdout] 23 | #[derive(Clone, Serialize, Deserialize)] [INFO] [stdout] | ^---------- [INFO] [stdout] | | [INFO] [stdout] | `Deserialize` is not local [INFO] [stdout] | move the `impl` block outside of this constant `_IMPL_DESERIALIZE_FOR_Room` [INFO] [stdout] 24 | pub struct Room { [INFO] [stdout] | ---- `Room` is not local [INFO] [stdout] | [INFO] [stdout] = note: the derive macro `Deserialize` defines the non-local `impl`, and may need to be changed [INFO] [stdout] = note: the derive macro `Deserialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_derive` [INFO] [stdout] = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stdout] = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint [INFO] [stdout] = note: this warning originates in the derive macro `Deserialize` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item [INFO] [stdout] --> src/room.rs:112:17 [INFO] [stdout] | [INFO] [stdout] 112 | #[derive(Clone, Serialize, Deserialize)] [INFO] [stdout] | ^-------- [INFO] [stdout] | | [INFO] [stdout] | `Serialize` is not local [INFO] [stdout] | move the `impl` block outside of this constant `_IMPL_SERIALIZE_FOR_Lighting` [INFO] [stdout] 113 | pub enum Lighting { [INFO] [stdout] | -------- `Lighting` is not local [INFO] [stdout] | [INFO] [stdout] = note: the derive macro `Serialize` defines the non-local `impl`, and may need to be changed [INFO] [stdout] = note: the derive macro `Serialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_derive` [INFO] [stdout] = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stdout] = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint [INFO] [stdout] = note: this warning originates in the derive macro `Serialize` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item [INFO] [stdout] --> src/room.rs:112:28 [INFO] [stdout] | [INFO] [stdout] 112 | #[derive(Clone, Serialize, Deserialize)] [INFO] [stdout] | ^---------- [INFO] [stdout] | | [INFO] [stdout] | `Deserialize` is not local [INFO] [stdout] | move the `impl` block outside of this constant `_IMPL_DESERIALIZE_FOR_Lighting` [INFO] [stdout] 113 | pub enum Lighting { [INFO] [stdout] | -------- `Lighting` is not local [INFO] [stdout] | [INFO] [stdout] = note: the derive macro `Deserialize` defines the non-local `impl`, and may need to be changed [INFO] [stdout] = note: the derive macro `Deserialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_derive` [INFO] [stdout] = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stdout] = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint [INFO] [stdout] = note: this warning originates in the derive macro `Deserialize` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished `dev` profile [unoptimized + debuginfo] target(s) in 17.78s [INFO] running `Command { std: "docker" "inspect" "457ea86d268d0df84865a2f4fadb276d58e0ee17741559582872882be2d63e08", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "457ea86d268d0df84865a2f4fadb276d58e0ee17741559582872882be2d63e08", kill_on_drop: false }` [INFO] [stdout] 457ea86d268d0df84865a2f4fadb276d58e0ee17741559582872882be2d63e08 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=warn" "-e" "RUSTDOCFLAGS=--cap-lints=warn" "-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:f3a9d4ad9d972b27faf3965f35b62e55ba32bbce8f20bc8fe909558a86702fde" "/opt/rustwide/cargo-home/bin/cargo" "+beta-2024-12-08" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] aa2fcc3ca7ffb12a43b665fe21102a5be8d9bb9b6a90df76bd3268f1e1dcda84 [INFO] running `Command { std: "docker" "start" "-a" "aa2fcc3ca7ffb12a43b665fe21102a5be8d9bb9b6a90df76bd3268f1e1dcda84", kill_on_drop: false }` [INFO] [stderr] Compiling sherlock v0.1.0 (/opt/rustwide/workdir) [INFO] [stdout] warning: unused import: `crate::map::Map` [INFO] [stdout] --> src/game_state.rs:5:5 [INFO] [stdout] | [INFO] [stdout] 5 | use crate::map::Map; [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary braces around block return value [INFO] [stdout] --> src/map.rs:27:79 [INFO] [stdout] | [INFO] [stdout] 27 | data += if map.edges.contains(&(j, i, j+1, i)) && k % 3 == 1 {{&"-=-"}} else {{&" "}}; [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_braces)]` on by default [INFO] [stdout] help: remove these braces [INFO] [stdout] | [INFO] [stdout] 27 - data += if map.edges.contains(&(j, i, j+1, i)) && k % 3 == 1 {{&"-=-"}} else {{&" "}}; [INFO] [stdout] 27 + data += if map.edges.contains(&(j, i, j+1, i)) && k % 3 == 1 {&"-=-"} else {{&" "}}; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary braces around block return value [INFO] [stdout] --> src/map.rs:27:95 [INFO] [stdout] | [INFO] [stdout] 27 | data += if map.edges.contains(&(j, i, j+1, i)) && k % 3 == 1 {{&"-=-"}} else {{&" "}}; [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] help: remove these braces [INFO] [stdout] | [INFO] [stdout] 27 - data += if map.edges.contains(&(j, i, j+1, i)) && k % 3 == 1 {{&"-=-"}} else {{&" "}}; [INFO] [stdout] 27 + data += if map.edges.contains(&(j, i, j+1, i)) && k % 3 == 1 {{&"-=-"}} else {&" "}; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unexpected `cfg` condition value: `cargo-clippy` [INFO] [stdout] --> src/room.rs:5:17 [INFO] [stdout] | [INFO] [stdout] 5 | #[derive(Clone, Serialize, Deserialize)] [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: no expected values for `feature` [INFO] [stdout] = help: consider adding `cargo-clippy` as a feature in `Cargo.toml` [INFO] [stdout] = note: see for more information about checking conditional configuration [INFO] [stdout] = note: `#[warn(unexpected_cfgs)]` on by default [INFO] [stdout] = note: this warning originates in the derive macro `Serialize` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unexpected `cfg` condition value: `cargo-clippy` [INFO] [stdout] --> src/room.rs:5:28 [INFO] [stdout] | [INFO] [stdout] 5 | #[derive(Clone, Serialize, Deserialize)] [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: no expected values for `feature` [INFO] [stdout] = help: consider adding `cargo-clippy` as a feature in `Cargo.toml` [INFO] [stdout] = note: see for more information about checking conditional configuration [INFO] [stdout] = note: this warning originates in the derive macro `Deserialize` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unexpected `cfg` condition value: `cargo-clippy` [INFO] [stdout] --> src/room.rs:12:17 [INFO] [stdout] | [INFO] [stdout] 12 | #[derive(Clone, Serialize, Deserialize)] [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: no expected values for `feature` [INFO] [stdout] = help: consider adding `cargo-clippy` as a feature in `Cargo.toml` [INFO] [stdout] = note: see for more information about checking conditional configuration [INFO] [stdout] = note: this warning originates in the derive macro `Serialize` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unexpected `cfg` condition value: `cargo-clippy` [INFO] [stdout] --> src/room.rs:12:28 [INFO] [stdout] | [INFO] [stdout] 12 | #[derive(Clone, Serialize, Deserialize)] [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: no expected values for `feature` [INFO] [stdout] = help: consider adding `cargo-clippy` as a feature in `Cargo.toml` [INFO] [stdout] = note: see for more information about checking conditional configuration [INFO] [stdout] = note: this warning originates in the derive macro `Deserialize` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unexpected `cfg` condition value: `cargo-clippy` [INFO] [stdout] --> src/room.rs:23:17 [INFO] [stdout] | [INFO] [stdout] 23 | #[derive(Clone, Serialize, Deserialize)] [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: no expected values for `feature` [INFO] [stdout] = help: consider adding `cargo-clippy` as a feature in `Cargo.toml` [INFO] [stdout] = note: see for more information about checking conditional configuration [INFO] [stdout] = note: this warning originates in the derive macro `Serialize` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unexpected `cfg` condition value: `cargo-clippy` [INFO] [stdout] --> src/room.rs:23:28 [INFO] [stdout] | [INFO] [stdout] 23 | #[derive(Clone, Serialize, Deserialize)] [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: no expected values for `feature` [INFO] [stdout] = help: consider adding `cargo-clippy` as a feature in `Cargo.toml` [INFO] [stdout] = note: see for more information about checking conditional configuration [INFO] [stdout] = note: this warning originates in the derive macro `Deserialize` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unexpected `cfg` condition value: `cargo-clippy` [INFO] [stdout] --> src/room.rs:112:17 [INFO] [stdout] | [INFO] [stdout] 112 | #[derive(Clone, Serialize, Deserialize)] [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: no expected values for `feature` [INFO] [stdout] = help: consider adding `cargo-clippy` as a feature in `Cargo.toml` [INFO] [stdout] = note: see for more information about checking conditional configuration [INFO] [stdout] = note: this warning originates in the derive macro `Serialize` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unexpected `cfg` condition value: `cargo-clippy` [INFO] [stdout] --> src/room.rs:112:28 [INFO] [stdout] | [INFO] [stdout] 112 | #[derive(Clone, Serialize, Deserialize)] [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: no expected values for `feature` [INFO] [stdout] = help: consider adding `cargo-clippy` as a feature in `Cargo.toml` [INFO] [stdout] = note: see for more information about checking conditional configuration [INFO] [stdout] = note: this warning originates in the derive macro `Deserialize` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `room` [INFO] [stdout] --> src/room_state.rs:19:23 [INFO] [stdout] | [INFO] [stdout] 19 | fn calculate_lighting(room: &Room) -> Lighting { [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_room` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `GameSettings` is never constructed [INFO] [stdout] --> src/game_state.rs:7:12 [INFO] [stdout] | [INFO] [stdout] 7 | pub struct GameSettings { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `from` and `modify_setting` are never used [INFO] [stdout] --> src/game_state.rs:16:12 [INFO] [stdout] | [INFO] [stdout] 11 | impl GameSettings { [INFO] [stdout] | ----------------- associated items in this implementation [INFO] [stdout] ... [INFO] [stdout] 16 | pub fn from(screen_width: usize) -> Self { [INFO] [stdout] | ^^^^ [INFO] [stdout] ... [INFO] [stdout] 20 | pub fn modify_setting(&mut self, setting: GameSetting) { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `ScreenWidth` is never constructed [INFO] [stdout] --> src/game_state.rs:34:5 [INFO] [stdout] | [INFO] [stdout] 33 | pub enum GameSetting { [INFO] [stdout] | ----------- variant in this enum [INFO] [stdout] 34 | ScreenWidth, [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `GameSetting` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `begin` is never used [INFO] [stdout] --> src/game_state.rs:37:8 [INFO] [stdout] | [INFO] [stdout] 37 | pub fn begin(screen_width: usize) { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `new`, `display_menu`, and `update_settings` are never used [INFO] [stdout] --> src/menu.rs:13:12 [INFO] [stdout] | [INFO] [stdout] 12 | impl Menu { [INFO] [stdout] | --------- associated items in this implementation [INFO] [stdout] 13 | pub fn new( [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 54 | pub fn display_menu(&self) { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 58 | pub fn update_settings(&mut self, settings: &GameSettings) { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: multiple variants are never constructed [INFO] [stdout] --> src/menu.rs:86:5 [INFO] [stdout] | [INFO] [stdout] 85 | pub enum Command { [INFO] [stdout] | ------- variants in this enum [INFO] [stdout] 86 | SetMenu(Menu), [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] 87 | RunFunc(fn()), [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] 88 | ChangeSetting(GameSetting), [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] 89 | Play, [INFO] [stdout] | ^^^^ [INFO] [stdout] 90 | Back, [INFO] [stdout] | ^^^^ [INFO] [stdout] 91 | Continue, [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] 92 | InputError, [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] 93 | Quit, [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `Command` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `main_menu` is never used [INFO] [stdout] --> src/menu.rs:113:8 [INFO] [stdout] | [INFO] [stdout] 113 | pub fn main_menu(width: usize) -> Menu { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `settings_menu` is never used [INFO] [stdout] --> src/menu.rs:136:4 [INFO] [stdout] | [INFO] [stdout] 136 | fn settings_menu(width: usize) -> Menu { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `select_item` is never used [INFO] [stdout] --> src/menu_state.rs:5:4 [INFO] [stdout] | [INFO] [stdout] 5 | fn select_item(menu: Menu, item: &str) -> menu::Command { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `begin` is never used [INFO] [stdout] --> src/menu_state.rs:18:8 [INFO] [stdout] | [INFO] [stdout] 18 | pub fn begin(settings: &mut game_state::GameSettings) -> menu::Command { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `from` and `display` are never used [INFO] [stdout] --> src/room.rs:48:12 [INFO] [stdout] | [INFO] [stdout] 34 | impl Room { [INFO] [stdout] | --------- associated items in this implementation [INFO] [stdout] ... [INFO] [stdout] 48 | pub fn from( [INFO] [stdout] | ^^^^ [INFO] [stdout] ... [INFO] [stdout] 89 | pub fn display(&self) { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `begin` is never used [INFO] [stdout] --> src/room_state.rs:4:8 [INFO] [stdout] | [INFO] [stdout] 4 | pub fn begin(settings: &GameSettings) { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `calculate_lighting` is never used [INFO] [stdout] --> src/room_state.rs:19:4 [INFO] [stdout] | [INFO] [stdout] 19 | fn calculate_lighting(room: &Room) -> Lighting { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `lorem_ipsum` is never used [INFO] [stdout] --> src/room_state.rs:24:4 [INFO] [stdout] | [INFO] [stdout] 24 | fn lorem_ipsum(settings: &GameSettings) -> Room { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `get_next_instruction` is never used [INFO] [stdout] --> src/room_state.rs:36:4 [INFO] [stdout] | [INFO] [stdout] 36 | fn get_next_instruction() -> Command { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: enum `Command` is never used [INFO] [stdout] --> src/room_state.rs:56:6 [INFO] [stdout] | [INFO] [stdout] 56 | enum Command { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: enum `Direction` is never used [INFO] [stdout] --> src/room_state.rs:64:6 [INFO] [stdout] | [INFO] [stdout] 64 | enum Direction { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item [INFO] [stdout] --> src/room.rs:5:17 [INFO] [stdout] | [INFO] [stdout] 5 | #[derive(Clone, Serialize, Deserialize)] [INFO] [stdout] | ^-------- [INFO] [stdout] | | [INFO] [stdout] | `Serialize` is not local [INFO] [stdout] | move the `impl` block outside of this constant `_IMPL_SERIALIZE_FOR_DoorState` [INFO] [stdout] 6 | pub enum DoorState { [INFO] [stdout] | --------- `DoorState` is not local [INFO] [stdout] | [INFO] [stdout] = note: the derive macro `Serialize` defines the non-local `impl`, and may need to be changed [INFO] [stdout] = note: the derive macro `Serialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_derive` [INFO] [stdout] = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stdout] = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint [INFO] [stdout] = note: `#[warn(non_local_definitions)]` on by default [INFO] [stdout] = note: this warning originates in the derive macro `Serialize` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item [INFO] [stdout] --> src/room.rs:5:28 [INFO] [stdout] | [INFO] [stdout] 5 | #[derive(Clone, Serialize, Deserialize)] [INFO] [stdout] | ^---------- [INFO] [stdout] | | [INFO] [stdout] | `Deserialize` is not local [INFO] [stdout] | move the `impl` block outside of this constant `_IMPL_DESERIALIZE_FOR_DoorState` [INFO] [stdout] 6 | pub enum DoorState { [INFO] [stdout] | --------- `DoorState` is not local [INFO] [stdout] | [INFO] [stdout] = note: the derive macro `Deserialize` defines the non-local `impl`, and may need to be changed [INFO] [stdout] = note: the derive macro `Deserialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_derive` [INFO] [stdout] = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stdout] = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint [INFO] [stdout] = note: this warning originates in the derive macro `Deserialize` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item [INFO] [stdout] --> src/room.rs:12:17 [INFO] [stdout] | [INFO] [stdout] 12 | #[derive(Clone, Serialize, Deserialize)] [INFO] [stdout] | ^-------- [INFO] [stdout] | | [INFO] [stdout] | `Serialize` is not local [INFO] [stdout] | move the `impl` block outside of this constant `_IMPL_SERIALIZE_FOR_Door` [INFO] [stdout] 13 | pub enum Door { [INFO] [stdout] | ---- `Door` is not local [INFO] [stdout] | [INFO] [stdout] = note: the derive macro `Serialize` defines the non-local `impl`, and may need to be changed [INFO] [stdout] = note: the derive macro `Serialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_derive` [INFO] [stdout] = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stdout] = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint [INFO] [stdout] = note: this warning originates in the derive macro `Serialize` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item [INFO] [stdout] --> src/room.rs:12:28 [INFO] [stdout] | [INFO] [stdout] 12 | #[derive(Clone, Serialize, Deserialize)] [INFO] [stdout] | ^---------- [INFO] [stdout] | | [INFO] [stdout] | `Deserialize` is not local [INFO] [stdout] | move the `impl` block outside of this constant `_IMPL_DESERIALIZE_FOR_Door` [INFO] [stdout] 13 | pub enum Door { [INFO] [stdout] | ---- `Door` is not local [INFO] [stdout] | [INFO] [stdout] = note: the derive macro `Deserialize` defines the non-local `impl`, and may need to be changed [INFO] [stdout] = note: the derive macro `Deserialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_derive` [INFO] [stdout] = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stdout] = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint [INFO] [stdout] = note: this warning originates in the derive macro `Deserialize` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item [INFO] [stdout] --> src/room.rs:23:17 [INFO] [stdout] | [INFO] [stdout] 23 | #[derive(Clone, Serialize, Deserialize)] [INFO] [stdout] | ^-------- [INFO] [stdout] | | [INFO] [stdout] | `Serialize` is not local [INFO] [stdout] | move the `impl` block outside of this constant `_IMPL_SERIALIZE_FOR_Room` [INFO] [stdout] 24 | pub struct Room { [INFO] [stdout] | ---- `Room` is not local [INFO] [stdout] | [INFO] [stdout] = note: the derive macro `Serialize` defines the non-local `impl`, and may need to be changed [INFO] [stdout] = note: the derive macro `Serialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_derive` [INFO] [stdout] = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stdout] = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint [INFO] [stdout] = note: this warning originates in the derive macro `Serialize` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item [INFO] [stdout] --> src/room.rs:23:28 [INFO] [stdout] | [INFO] [stdout] 23 | #[derive(Clone, Serialize, Deserialize)] [INFO] [stdout] | ^---------- [INFO] [stdout] | | [INFO] [stdout] | `Deserialize` is not local [INFO] [stdout] | move the `impl` block outside of this constant `_IMPL_DESERIALIZE_FOR_Room` [INFO] [stdout] 24 | pub struct Room { [INFO] [stdout] | ---- `Room` is not local [INFO] [stdout] | [INFO] [stdout] = note: the derive macro `Deserialize` defines the non-local `impl`, and may need to be changed [INFO] [stdout] = note: the derive macro `Deserialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_derive` [INFO] [stdout] = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stdout] = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint [INFO] [stdout] = note: this warning originates in the derive macro `Deserialize` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item [INFO] [stdout] --> src/room.rs:112:17 [INFO] [stdout] | [INFO] [stdout] 112 | #[derive(Clone, Serialize, Deserialize)] [INFO] [stdout] | ^-------- [INFO] [stdout] | | [INFO] [stdout] | `Serialize` is not local [INFO] [stdout] | move the `impl` block outside of this constant `_IMPL_SERIALIZE_FOR_Lighting` [INFO] [stdout] 113 | pub enum Lighting { [INFO] [stdout] | -------- `Lighting` is not local [INFO] [stdout] | [INFO] [stdout] = note: the derive macro `Serialize` defines the non-local `impl`, and may need to be changed [INFO] [stdout] = note: the derive macro `Serialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_derive` [INFO] [stdout] = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stdout] = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint [INFO] [stdout] = note: this warning originates in the derive macro `Serialize` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item [INFO] [stdout] --> src/room.rs:112:28 [INFO] [stdout] | [INFO] [stdout] 112 | #[derive(Clone, Serialize, Deserialize)] [INFO] [stdout] | ^---------- [INFO] [stdout] | | [INFO] [stdout] | `Deserialize` is not local [INFO] [stdout] | move the `impl` block outside of this constant `_IMPL_DESERIALIZE_FOR_Lighting` [INFO] [stdout] 113 | pub enum Lighting { [INFO] [stdout] | -------- `Lighting` is not local [INFO] [stdout] | [INFO] [stdout] = note: the derive macro `Deserialize` defines the non-local `impl`, and may need to be changed [INFO] [stdout] = note: the derive macro `Deserialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_derive` [INFO] [stdout] = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stdout] = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint [INFO] [stdout] = note: this warning originates in the derive macro `Deserialize` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished `test` profile [unoptimized + debuginfo] target(s) in 0.72s [INFO] running `Command { std: "docker" "inspect" "aa2fcc3ca7ffb12a43b665fe21102a5be8d9bb9b6a90df76bd3268f1e1dcda84", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "aa2fcc3ca7ffb12a43b665fe21102a5be8d9bb9b6a90df76bd3268f1e1dcda84", kill_on_drop: false }` [INFO] [stdout] aa2fcc3ca7ffb12a43b665fe21102a5be8d9bb9b6a90df76bd3268f1e1dcda84 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=warn" "-e" "RUSTDOCFLAGS=--cap-lints=warn" "-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:f3a9d4ad9d972b27faf3965f35b62e55ba32bbce8f20bc8fe909558a86702fde" "/opt/rustwide/cargo-home/bin/cargo" "+beta-2024-12-08" "test" "--frozen", kill_on_drop: false }` [INFO] [stdout] df7449b949c4e3d6388b09d8f2539775507f9d0a62ff767884808cc567c0b339 [INFO] running `Command { std: "docker" "start" "-a" "df7449b949c4e3d6388b09d8f2539775507f9d0a62ff767884808cc567c0b339", kill_on_drop: false }` [INFO] [stderr] warning: unused import: `crate::map::Map` [INFO] [stderr] --> src/game_state.rs:5:5 [INFO] [stderr] | [INFO] [stderr] 5 | use crate::map::Map; [INFO] [stderr] | ^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_imports)]` on by default [INFO] [stderr] [INFO] [stderr] warning: unnecessary braces around block return value [INFO] [stderr] --> src/map.rs:27:79 [INFO] [stderr] | [INFO] [stderr] 27 | data += if map.edges.contains(&(j, i, j+1, i)) && k % 3 == 1 {{&"-=-"}} else {{&" "}}; [INFO] [stderr] | ^ ^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_braces)]` on by default [INFO] [stderr] help: remove these braces [INFO] [stderr] | [INFO] [stderr] 27 - data += if map.edges.contains(&(j, i, j+1, i)) && k % 3 == 1 {{&"-=-"}} else {{&" "}}; [INFO] [stderr] 27 + data += if map.edges.contains(&(j, i, j+1, i)) && k % 3 == 1 {&"-=-"} else {{&" "}}; [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: unnecessary braces around block return value [INFO] [stderr] --> src/map.rs:27:95 [INFO] [stderr] | [INFO] [stderr] 27 | data += if map.edges.contains(&(j, i, j+1, i)) && k % 3 == 1 {{&"-=-"}} else {{&" "}}; [INFO] [stderr] | ^ ^ [INFO] [stderr] | [INFO] [stderr] help: remove these braces [INFO] [stderr] | [INFO] [stderr] 27 - data += if map.edges.contains(&(j, i, j+1, i)) && k % 3 == 1 {{&"-=-"}} else {{&" "}}; [INFO] [stderr] 27 + data += if map.edges.contains(&(j, i, j+1, i)) && k % 3 == 1 {{&"-=-"}} else {&" "}; [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: unexpected `cfg` condition value: `cargo-clippy` [INFO] [stderr] --> src/room.rs:5:17 [INFO] [stderr] | [INFO] [stderr] 5 | #[derive(Clone, Serialize, Deserialize)] [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: no expected values for `feature` [INFO] [stderr] = help: consider adding `cargo-clippy` as a feature in `Cargo.toml` [INFO] [stderr] = note: see for more information about checking conditional configuration [INFO] [stderr] = note: `#[warn(unexpected_cfgs)]` on by default [INFO] [stderr] = note: this warning originates in the derive macro `Serialize` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: unexpected `cfg` condition value: `cargo-clippy` [INFO] [stderr] --> src/room.rs:5:28 [INFO] [stderr] | [INFO] [stderr] 5 | #[derive(Clone, Serialize, Deserialize)] [INFO] [stderr] | ^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: no expected values for `feature` [INFO] [stderr] = help: consider adding `cargo-clippy` as a feature in `Cargo.toml` [INFO] [stderr] = note: see for more information about checking conditional configuration [INFO] [stderr] = note: this warning originates in the derive macro `Deserialize` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: unexpected `cfg` condition value: `cargo-clippy` [INFO] [stderr] --> src/room.rs:12:17 [INFO] [stderr] | [INFO] [stderr] 12 | #[derive(Clone, Serialize, Deserialize)] [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: no expected values for `feature` [INFO] [stderr] = help: consider adding `cargo-clippy` as a feature in `Cargo.toml` [INFO] [stderr] = note: see for more information about checking conditional configuration [INFO] [stderr] = note: this warning originates in the derive macro `Serialize` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: unexpected `cfg` condition value: `cargo-clippy` [INFO] [stderr] --> src/room.rs:12:28 [INFO] [stderr] | [INFO] [stderr] 12 | #[derive(Clone, Serialize, Deserialize)] [INFO] [stderr] | ^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: no expected values for `feature` [INFO] [stderr] = help: consider adding `cargo-clippy` as a feature in `Cargo.toml` [INFO] [stderr] = note: see for more information about checking conditional configuration [INFO] [stderr] = note: this warning originates in the derive macro `Deserialize` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: unexpected `cfg` condition value: `cargo-clippy` [INFO] [stderr] --> src/room.rs:23:17 [INFO] [stderr] | [INFO] [stderr] 23 | #[derive(Clone, Serialize, Deserialize)] [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: no expected values for `feature` [INFO] [stderr] = help: consider adding `cargo-clippy` as a feature in `Cargo.toml` [INFO] [stderr] = note: see for more information about checking conditional configuration [INFO] [stderr] = note: this warning originates in the derive macro `Serialize` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: unexpected `cfg` condition value: `cargo-clippy` [INFO] [stderr] --> src/room.rs:23:28 [INFO] [stderr] | [INFO] [stderr] 23 | #[derive(Clone, Serialize, Deserialize)] [INFO] [stderr] | ^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: no expected values for `feature` [INFO] [stderr] = help: consider adding `cargo-clippy` as a feature in `Cargo.toml` [INFO] [stderr] = note: see for more information about checking conditional configuration [INFO] [stderr] = note: this warning originates in the derive macro `Deserialize` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: unexpected `cfg` condition value: `cargo-clippy` [INFO] [stderr] --> src/room.rs:112:17 [INFO] [stderr] | [INFO] [stderr] 112 | #[derive(Clone, Serialize, Deserialize)] [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: no expected values for `feature` [INFO] [stderr] = help: consider adding `cargo-clippy` as a feature in `Cargo.toml` [INFO] [stderr] = note: see for more information about checking conditional configuration [INFO] [stderr] = note: this warning originates in the derive macro `Serialize` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: unexpected `cfg` condition value: `cargo-clippy` [INFO] [stderr] --> src/room.rs:112:28 [INFO] [stderr] | [INFO] [stderr] 112 | #[derive(Clone, Serialize, Deserialize)] [INFO] [stderr] | ^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: no expected values for `feature` [INFO] [stderr] = help: consider adding `cargo-clippy` as a feature in `Cargo.toml` [INFO] [stderr] = note: see for more information about checking conditional configuration [INFO] [stderr] = note: this warning originates in the derive macro `Deserialize` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: unused variable: `room` [INFO] [stderr] --> src/room_state.rs:19:23 [INFO] [stderr] | [INFO] [stderr] 19 | fn calculate_lighting(room: &Room) -> Lighting { [INFO] [stderr] | ^^^^ help: if this is intentional, prefix it with an underscore: `_room` [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_variables)]` on by default [INFO] [stderr] [INFO] [stderr] warning: struct `GameSettings` is never constructed [INFO] [stderr] --> src/game_state.rs:7:12 [INFO] [stderr] | [INFO] [stderr] 7 | pub struct GameSettings { [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(dead_code)]` on by default [INFO] [stderr] [INFO] [stderr] warning: associated items `from` and `modify_setting` are never used [INFO] [stderr] --> src/game_state.rs:16:12 [INFO] [stderr] | [INFO] [stderr] 11 | impl GameSettings { [INFO] [stderr] | ----------------- associated items in this implementation [INFO] [stderr] ... [INFO] [stderr] 16 | pub fn from(screen_width: usize) -> Self { [INFO] [stderr] | ^^^^ [INFO] [stderr] ... [INFO] [stderr] 20 | pub fn modify_setting(&mut self, setting: GameSetting) { [INFO] [stderr] | ^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: variant `ScreenWidth` is never constructed [INFO] [stderr] --> src/game_state.rs:34:5 [INFO] [stderr] | [INFO] [stderr] 33 | pub enum GameSetting { [INFO] [stderr] | ----------- variant in this enum [INFO] [stderr] 34 | ScreenWidth, [INFO] [stderr] | ^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `GameSetting` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis [INFO] [stderr] [INFO] [stderr] warning: function `begin` is never used [INFO] [stderr] --> src/game_state.rs:37:8 [INFO] [stderr] | [INFO] [stderr] 37 | pub fn begin(screen_width: usize) { [INFO] [stderr] | ^^^^^ [INFO] [stderr] [INFO] [stderr] warning: associated items `new`, `display_menu`, and `update_settings` are never used [INFO] [stderr] --> src/menu.rs:13:12 [INFO] [stderr] | [INFO] [stderr] 12 | impl Menu { [INFO] [stderr] | --------- associated items in this implementation [INFO] [stderr] 13 | pub fn new( [INFO] [stderr] | ^^^ [INFO] [stderr] ... [INFO] [stderr] 54 | pub fn display_menu(&self) { [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 58 | pub fn update_settings(&mut self, settings: &GameSettings) { [INFO] [stderr] | ^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: multiple variants are never constructed [INFO] [stderr] --> src/menu.rs:86:5 [INFO] [stderr] | [INFO] [stderr] 85 | pub enum Command { [INFO] [stderr] | ------- variants in this enum [INFO] [stderr] 86 | SetMenu(Menu), [INFO] [stderr] | ^^^^^^^ [INFO] [stderr] 87 | RunFunc(fn()), [INFO] [stderr] | ^^^^^^^ [INFO] [stderr] 88 | ChangeSetting(GameSetting), [INFO] [stderr] | ^^^^^^^^^^^^^ [INFO] [stderr] 89 | Play, [INFO] [stderr] | ^^^^ [INFO] [stderr] 90 | Back, [INFO] [stderr] | ^^^^ [INFO] [stderr] 91 | Continue, [INFO] [stderr] | ^^^^^^^^ [INFO] [stderr] 92 | InputError, [INFO] [stderr] | ^^^^^^^^^^ [INFO] [stderr] 93 | Quit, [INFO] [stderr] | ^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `Command` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis [INFO] [stderr] [INFO] [stderr] warning: function `main_menu` is never used [INFO] [stderr] --> src/menu.rs:113:8 [INFO] [stderr] | [INFO] [stderr] 113 | pub fn main_menu(width: usize) -> Menu { [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function `settings_menu` is never used [INFO] [stderr] --> src/menu.rs:136:4 [INFO] [stderr] | [INFO] [stderr] 136 | fn settings_menu(width: usize) -> Menu { [INFO] [stderr] | ^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function `select_item` is never used [INFO] [stderr] --> src/menu_state.rs:5:4 [INFO] [stderr] | [INFO] [stderr] 5 | fn select_item(menu: Menu, item: &str) -> menu::Command { [INFO] [stderr] | ^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function `begin` is never used [INFO] [stderr] --> src/menu_state.rs:18:8 [INFO] [stderr] | [INFO] [stderr] 18 | pub fn begin(settings: &mut game_state::GameSettings) -> menu::Command { [INFO] [stderr] | ^^^^^ [INFO] [stderr] [INFO] [stderr] warning: associated items `from` and `display` are never used [INFO] [stderr] --> src/room.rs:48:12 [INFO] [stderr] | [INFO] [stderr] 34 | impl Room { [INFO] [stderr] | --------- associated items in this implementation [INFO] [stderr] ... [INFO] [stderr] 48 | pub fn from( [INFO] [stderr] | ^^^^ [INFO] [stderr] ... [INFO] [stderr] 89 | pub fn display(&self) { [INFO] [stderr] | ^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function `begin` is never used [INFO] [stderr] --> src/room_state.rs:4:8 [INFO] [stderr] | [INFO] [stderr] 4 | pub fn begin(settings: &GameSettings) { [INFO] [stderr] | ^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function `calculate_lighting` is never used [INFO] [stderr] --> src/room_state.rs:19:4 [INFO] [stderr] | [INFO] [stderr] 19 | fn calculate_lighting(room: &Room) -> Lighting { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function `lorem_ipsum` is never used [INFO] [stderr] --> src/room_state.rs:24:4 [INFO] [stderr] | [INFO] [stderr] 24 | fn lorem_ipsum(settings: &GameSettings) -> Room { [INFO] [stderr] | ^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function `get_next_instruction` is never used [INFO] [stderr] --> src/room_state.rs:36:4 [INFO] [stderr] | [INFO] [stderr] 36 | fn get_next_instruction() -> Command { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: enum `Command` is never used [INFO] [stderr] --> src/room_state.rs:56:6 [INFO] [stderr] | [INFO] [stderr] 56 | enum Command { [INFO] [stderr] | ^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: enum `Direction` is never used [INFO] [stderr] --> src/room_state.rs:64:6 [INFO] [stderr] | [INFO] [stderr] 64 | enum Direction { [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item [INFO] [stderr] --> src/room.rs:5:17 [INFO] [stderr] | [INFO] [stderr] 5 | #[derive(Clone, Serialize, Deserialize)] [INFO] [stderr] | ^-------- [INFO] [stderr] | | [INFO] [stderr] | `Serialize` is not local [INFO] [stderr] | move the `impl` block outside of this constant `_IMPL_SERIALIZE_FOR_DoorState` [INFO] [stderr] 6 | pub enum DoorState { [INFO] [stderr] | --------- `DoorState` is not local [INFO] [stderr] | [INFO] [stderr] = note: the derive macro `Serialize` defines the non-local `impl`, and may need to be changed [INFO] [stderr] = note: the derive macro `Serialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_derive` [INFO] [stderr] = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stderr] = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint [INFO] [stderr] = note: `#[warn(non_local_definitions)]` on by default [INFO] [stderr] = note: this warning originates in the derive macro `Serialize` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item [INFO] [stderr] --> src/room.rs:5:28 [INFO] [stderr] | [INFO] [stderr] 5 | #[derive(Clone, Serialize, Deserialize)] [INFO] [stderr] | ^---------- [INFO] [stderr] | | [INFO] [stderr] | `Deserialize` is not local [INFO] [stderr] | move the `impl` block outside of this constant `_IMPL_DESERIALIZE_FOR_DoorState` [INFO] [stderr] 6 | pub enum DoorState { [INFO] [stderr] | --------- `DoorState` is not local [INFO] [stderr] | [INFO] [stderr] = note: the derive macro `Deserialize` defines the non-local `impl`, and may need to be changed [INFO] [stderr] = note: the derive macro `Deserialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_derive` [INFO] [stderr] = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stderr] = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint [INFO] [stderr] = note: this warning originates in the derive macro `Deserialize` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item [INFO] [stderr] --> src/room.rs:12:17 [INFO] [stderr] | [INFO] [stderr] 12 | #[derive(Clone, Serialize, Deserialize)] [INFO] [stderr] | ^-------- [INFO] [stderr] | | [INFO] [stderr] | `Serialize` is not local [INFO] [stderr] | move the `impl` block outside of this constant `_IMPL_SERIALIZE_FOR_Door` [INFO] [stderr] 13 | pub enum Door { [INFO] [stderr] | ---- `Door` is not local [INFO] [stderr] | [INFO] [stderr] = note: the derive macro `Serialize` defines the non-local `impl`, and may need to be changed [INFO] [stderr] = note: the derive macro `Serialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_derive` [INFO] [stderr] = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stderr] = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint [INFO] [stderr] = note: this warning originates in the derive macro `Serialize` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item [INFO] [stderr] --> src/room.rs:12:28 [INFO] [stderr] | [INFO] [stderr] 12 | #[derive(Clone, Serialize, Deserialize)] [INFO] [stderr] | ^---------- [INFO] [stderr] | | [INFO] [stderr] | `Deserialize` is not local [INFO] [stderr] | move the `impl` block outside of this constant `_IMPL_DESERIALIZE_FOR_Door` [INFO] [stderr] 13 | pub enum Door { [INFO] [stderr] | ---- `Door` is not local [INFO] [stderr] | [INFO] [stderr] = note: the derive macro `Deserialize` defines the non-local `impl`, and may need to be changed [INFO] [stderr] = note: the derive macro `Deserialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_derive` [INFO] [stderr] = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stderr] = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint [INFO] [stderr] = note: this warning originates in the derive macro `Deserialize` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item [INFO] [stderr] --> src/room.rs:23:17 [INFO] [stderr] | [INFO] [stderr] 23 | #[derive(Clone, Serialize, Deserialize)] [INFO] [stderr] | ^-------- [INFO] [stderr] | | [INFO] [stderr] | `Serialize` is not local [INFO] [stderr] | move the `impl` block outside of this constant `_IMPL_SERIALIZE_FOR_Room` [INFO] [stderr] 24 | pub struct Room { [INFO] [stderr] | ---- `Room` is not local [INFO] [stderr] | [INFO] [stderr] = note: the derive macro `Serialize` defines the non-local `impl`, and may need to be changed [INFO] [stderr] = note: the derive macro `Serialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_derive` [INFO] [stderr] = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stderr] = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint [INFO] [stderr] = note: this warning originates in the derive macro `Serialize` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item [INFO] [stderr] --> src/room.rs:23:28 [INFO] [stderr] | [INFO] [stderr] 23 | #[derive(Clone, Serialize, Deserialize)] [INFO] [stderr] | ^---------- [INFO] [stderr] | | [INFO] [stderr] | `Deserialize` is not local [INFO] [stderr] | move the `impl` block outside of this constant `_IMPL_DESERIALIZE_FOR_Room` [INFO] [stderr] 24 | pub struct Room { [INFO] [stderr] | ---- `Room` is not local [INFO] [stderr] | [INFO] [stderr] = note: the derive macro `Deserialize` defines the non-local `impl`, and may need to be changed [INFO] [stderr] = note: the derive macro `Deserialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_derive` [INFO] [stderr] = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stderr] = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint [INFO] [stderr] = note: this warning originates in the derive macro `Deserialize` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item [INFO] [stderr] --> src/room.rs:112:17 [INFO] [stderr] | [INFO] [stderr] 112 | #[derive(Clone, Serialize, Deserialize)] [INFO] [stderr] | ^-------- [INFO] [stderr] | | [INFO] [stderr] | `Serialize` is not local [INFO] [stderr] | move the `impl` block outside of this constant `_IMPL_SERIALIZE_FOR_Lighting` [INFO] [stderr] 113 | pub enum Lighting { [INFO] [stderr] | -------- `Lighting` is not local [INFO] [stderr] | [INFO] [stderr] = note: the derive macro `Serialize` defines the non-local `impl`, and may need to be changed [INFO] [stderr] = note: the derive macro `Serialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_derive` [INFO] [stderr] = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stderr] = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint [INFO] [stderr] = note: this warning originates in the derive macro `Serialize` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item [INFO] [stderr] --> src/room.rs:112:28 [INFO] [stderr] | [INFO] [stderr] 112 | #[derive(Clone, Serialize, Deserialize)] [INFO] [stderr] | ^---------- [INFO] [stderr] | | [INFO] [stderr] | `Deserialize` is not local [INFO] [stderr] | move the `impl` block outside of this constant `_IMPL_DESERIALIZE_FOR_Lighting` [INFO] [stderr] 113 | pub enum Lighting { [INFO] [stderr] | -------- `Lighting` is not local [INFO] [stderr] | [INFO] [stderr] = note: the derive macro `Deserialize` defines the non-local `impl`, and may need to be changed [INFO] [stderr] = note: the derive macro `Deserialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_derive` [INFO] [stderr] = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stderr] = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint [INFO] [stderr] = note: this warning originates in the derive macro `Deserialize` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: `sherlock` (bin "sherlock" test) generated 37 warnings (run `cargo fix --bin "sherlock" --tests` to apply 3 suggestions) [INFO] [stderr] Finished `test` profile [unoptimized + debuginfo] target(s) in 0.06s [INFO] [stderr] Running unittests src/main.rs (/opt/rustwide/target/debug/deps/sherlock-2042c29f895990f4) [INFO] [stdout] [INFO] [stdout] running 0 tests [INFO] [stdout] [INFO] [stdout] test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s [INFO] [stdout] [INFO] running `Command { std: "docker" "inspect" "df7449b949c4e3d6388b09d8f2539775507f9d0a62ff767884808cc567c0b339", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "df7449b949c4e3d6388b09d8f2539775507f9d0a62ff767884808cc567c0b339", kill_on_drop: false }` [INFO] [stdout] df7449b949c4e3d6388b09d8f2539775507f9d0a62ff767884808cc567c0b339