[INFO] cloning repository https://github.com/qeebr/rust-like [INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/qeebr/rust-like" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fqeebr%2Frust-like", kill_on_drop: false }` [INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fqeebr%2Frust-like'... [INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }` [INFO] [stdout] 2c9ba445e7b84fd88087ac424dc26676468d4698 [INFO] testing qeebr/rust-like against 1.60.0 for beta-1.61-1 [INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fqeebr%2Frust-like" "/workspace/builds/worker-97/source", kill_on_drop: false }` [INFO] [stderr] Cloning into '/workspace/builds/worker-97/source'... [INFO] [stderr] done. [INFO] validating manifest of git repo https://github.com/qeebr/rust-like on toolchain 1.60.0 [INFO] running `Command { std: "/workspace/cargo-home/bin/cargo" "+1.60.0" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] started tweaking git repo https://github.com/qeebr/rust-like [INFO] finished tweaking git repo https://github.com/qeebr/rust-like [INFO] tweaked toml for git repo https://github.com/qeebr/rust-like written to /workspace/builds/worker-97/source/Cargo.toml [INFO] crate git repo https://github.com/qeebr/rust-like already has a lockfile, it will not be regenerated [INFO] running `Command { std: "/workspace/cargo-home/bin/cargo" "+1.60.0" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] [stderr] Blocking waiting for file lock on package cache [INFO] [stderr] Blocking waiting for file lock on package cache [INFO] [stderr] Downloading crates ... [INFO] [stderr] Downloaded ncurses v5.84.0 [INFO] [stderr] Downloaded libc v0.2.17 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-97/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-97/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:b0c94ce3c1162fcb8e57cac5b65ec2f72eabb1eebea4fcc35e269e823f681646" "/opt/rustwide/cargo-home/bin/cargo" "+1.60.0" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] c7f946f90bb885c0818bf72bb0b5da762096c96e23ece1f1755a7a994139b625 [INFO] running `Command { std: "docker" "start" "-a" "c7f946f90bb885c0818bf72bb0b5da762096c96e23ece1f1755a7a994139b625", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "c7f946f90bb885c0818bf72bb0b5da762096c96e23ece1f1755a7a994139b625", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "c7f946f90bb885c0818bf72bb0b5da762096c96e23ece1f1755a7a994139b625", kill_on_drop: false }` [INFO] [stdout] c7f946f90bb885c0818bf72bb0b5da762096c96e23ece1f1755a7a994139b625 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-97/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-97/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" "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:b0c94ce3c1162fcb8e57cac5b65ec2f72eabb1eebea4fcc35e269e823f681646" "/opt/rustwide/cargo-home/bin/cargo" "+1.60.0" "build" "--frozen" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] da2c1da2d52c815c2a24a9c1090df19f4ab2f78aca33b4a5b8739cfba8fd8e9f [INFO] running `Command { std: "docker" "start" "-a" "da2c1da2d52c815c2a24a9c1090df19f4ab2f78aca33b4a5b8739cfba8fd8e9f", kill_on_drop: false }` [INFO] [stderr] Blocking waiting for file lock on package cache [INFO] [stderr] Compiling libc v0.2.17 [INFO] [stderr] Compiling ncurses v5.84.0 [INFO] [stderr] Compiling rand v0.3.15 [INFO] [stderr] Compiling rpg v0.1.0 (/opt/rustwide/workdir) [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/game.rs:32:22 [INFO] [stdout] | [INFO] [stdout] 32 | effects: Vec>, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(bare_trait_objects)]` on by default [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: use `dyn` [INFO] [stdout] | [INFO] [stdout] 32 - effects: Vec>, [INFO] [stdout] 32 + effects: Vec>, [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/ki.rs:6:101 [INFO] [stdout] | [INFO] [stdout] 6 | pub fn handle_ki(map: &Level, player: &mut Entity, enemies: &mut Vec, effects: &mut Vec>) { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: use `dyn` [INFO] [stdout] | [INFO] [stdout] 6 - pub fn handle_ki(map: &Level, player: &mut Entity, enemies: &mut Vec, effects: &mut Vec>) { [INFO] [stdout] 6 + pub fn handle_ki(map: &Level, player: &mut Entity, enemies: &mut Vec, effects: &mut Vec>) { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/effect.rs:8:39 [INFO] [stdout] | [INFO] [stdout] 8 | fn valid(&self, effects: &Vec>) -> bool { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: use `dyn` [INFO] [stdout] | [INFO] [stdout] 8 - fn valid(&self, effects: &Vec>) -> bool { [INFO] [stdout] 8 + fn valid(&self, effects: &Vec>) -> bool { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/game.rs:470:25 [INFO] [stdout] | [INFO] [stdout] 470 | let effect: Box = match direction { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: use `dyn` [INFO] [stdout] | [INFO] [stdout] 470 - let effect: Box = match direction { [INFO] [stdout] 470 + let effect: Box = match direction { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/game.rs:494:34 [INFO] [stdout] | [INFO] [stdout] 494 | let hit: Box = if self.player_special_one { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: use `dyn` [INFO] [stdout] | [INFO] [stdout] 494 - let hit: Box = if self.player_special_one { [INFO] [stdout] 494 + let hit: Box = if self.player_special_one { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `map` [INFO] [stdout] --> src/effect.rs:59:42 [INFO] [stdout] | [INFO] [stdout] 59 | fn execute(&mut self, log: &mut Log, map: &mut Level, me: &mut Entity, mut other: &mut Entity) { [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_map` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `me` [INFO] [stdout] --> src/effect.rs:63:24 [INFO] [stdout] | [INFO] [stdout] 63 | fn done(&mut self, me: &mut Entity, map: &mut Level) -> bool { [INFO] [stdout] | ^^ help: if this is intentional, prefix it with an underscore: `_me` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `map` [INFO] [stdout] --> src/effect.rs:63:41 [INFO] [stdout] | [INFO] [stdout] 63 | fn done(&mut self, me: &mut Entity, map: &mut Level) -> bool { [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_map` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `map` [INFO] [stdout] --> src/effect.rs:262:42 [INFO] [stdout] | [INFO] [stdout] 262 | fn execute(&mut self, log: &mut Log, map: &mut Level, me: &mut Entity, other: &mut Entity) { [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_map` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `me` [INFO] [stdout] --> src/effect.rs:268:24 [INFO] [stdout] | [INFO] [stdout] 268 | fn done(&mut self, me: &mut Entity, map: &mut Level) -> bool { [INFO] [stdout] | ^^ help: if this is intentional, prefix it with an underscore: `_me` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `map` [INFO] [stdout] --> src/effect.rs:268:41 [INFO] [stdout] | [INFO] [stdout] 268 | fn done(&mut self, me: &mut Entity, map: &mut Level) -> bool { [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_map` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/effect.rs:59:76 [INFO] [stdout] | [INFO] [stdout] 59 | fn execute(&mut self, log: &mut Log, map: &mut Level, me: &mut Entity, mut other: &mut Entity) { [INFO] [stdout] | ----^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_mut)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: panic message contains an unused formatting placeholder [INFO] [stdout] --> src/character/item.rs:86:22 [INFO] [stdout] | [INFO] [stdout] 86 | panic!("Item {:?} is not clothing!"); [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(non_fmt_panics)]` on by default [INFO] [stdout] = note: this message is not used as a format string when given without arguments, but will be in Rust 2021 [INFO] [stdout] help: add the missing argument [INFO] [stdout] | [INFO] [stdout] 86 | panic!("Item {:?} is not clothing!", ...); [INFO] [stdout] | +++++ [INFO] [stdout] help: or add a "{}" format string to use the message literally [INFO] [stdout] | [INFO] [stdout] 86 | panic!("{}", "Item {:?} is not clothing!"); [INFO] [stdout] | +++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: panic message contains an unused formatting placeholder [INFO] [stdout] --> src/character/item.rs:99:22 [INFO] [stdout] | [INFO] [stdout] 99 | panic!("Item {:?} is not a Weapon!"); [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this message is not used as a format string when given without arguments, but will be in Rust 2021 [INFO] [stdout] help: add the missing argument [INFO] [stdout] | [INFO] [stdout] 99 | panic!("Item {:?} is not a Weapon!", ...); [INFO] [stdout] | +++++ [INFO] [stdout] help: or add a "{}" format string to use the message literally [INFO] [stdout] | [INFO] [stdout] 99 | panic!("{}", "Item {:?} is not a Weapon!"); [INFO] [stdout] | +++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 14 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished dev [unoptimized + debuginfo] target(s) in 5.57s [INFO] running `Command { std: "docker" "inspect" "da2c1da2d52c815c2a24a9c1090df19f4ab2f78aca33b4a5b8739cfba8fd8e9f", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "da2c1da2d52c815c2a24a9c1090df19f4ab2f78aca33b4a5b8739cfba8fd8e9f", kill_on_drop: false }` [INFO] [stdout] da2c1da2d52c815c2a24a9c1090df19f4ab2f78aca33b4a5b8739cfba8fd8e9f [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-97/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-97/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" "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:b0c94ce3c1162fcb8e57cac5b65ec2f72eabb1eebea4fcc35e269e823f681646" "/opt/rustwide/cargo-home/bin/cargo" "+1.60.0" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] 81516fe45970b6790c4a93bde7adb2381a76f8e34b580ddab8866ba1e1e2a78d [INFO] running `Command { std: "docker" "start" "-a" "81516fe45970b6790c4a93bde7adb2381a76f8e34b580ddab8866ba1e1e2a78d", kill_on_drop: false }` [INFO] [stderr] Blocking waiting for file lock on package cache [INFO] [stderr] Compiling rpg v0.1.0 (/opt/rustwide/workdir) [INFO] [stdout] warning: unused import: `super::super::item::*` [INFO] [stdout] --> src/character/backpack.rs:105:9 [INFO] [stdout] | [INFO] [stdout] 105 | use super::super::item::*; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/game.rs:32:22 [INFO] [stdout] | [INFO] [stdout] 32 | effects: Vec>, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(bare_trait_objects)]` on by default [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: use `dyn` [INFO] [stdout] | [INFO] [stdout] 32 - effects: Vec>, [INFO] [stdout] 32 + effects: Vec>, [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/ki.rs:6:101 [INFO] [stdout] | [INFO] [stdout] 6 | pub fn handle_ki(map: &Level, player: &mut Entity, enemies: &mut Vec, effects: &mut Vec>) { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: use `dyn` [INFO] [stdout] | [INFO] [stdout] 6 - pub fn handle_ki(map: &Level, player: &mut Entity, enemies: &mut Vec, effects: &mut Vec>) { [INFO] [stdout] 6 + pub fn handle_ki(map: &Level, player: &mut Entity, enemies: &mut Vec, effects: &mut Vec>) { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/effect.rs:8:39 [INFO] [stdout] | [INFO] [stdout] 8 | fn valid(&self, effects: &Vec>) -> bool { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: use `dyn` [INFO] [stdout] | [INFO] [stdout] 8 - fn valid(&self, effects: &Vec>) -> bool { [INFO] [stdout] 8 + fn valid(&self, effects: &Vec>) -> bool { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/game.rs:470:25 [INFO] [stdout] | [INFO] [stdout] 470 | let effect: Box = match direction { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: use `dyn` [INFO] [stdout] | [INFO] [stdout] 470 - let effect: Box = match direction { [INFO] [stdout] 470 + let effect: Box = match direction { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/game.rs:494:34 [INFO] [stdout] | [INFO] [stdout] 494 | let hit: Box = if self.player_special_one { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: use `dyn` [INFO] [stdout] | [INFO] [stdout] 494 - let hit: Box = if self.player_special_one { [INFO] [stdout] 494 + let hit: Box = if self.player_special_one { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `map` [INFO] [stdout] --> src/effect.rs:59:42 [INFO] [stdout] | [INFO] [stdout] 59 | fn execute(&mut self, log: &mut Log, map: &mut Level, me: &mut Entity, mut other: &mut Entity) { [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_map` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `me` [INFO] [stdout] --> src/effect.rs:63:24 [INFO] [stdout] | [INFO] [stdout] 63 | fn done(&mut self, me: &mut Entity, map: &mut Level) -> bool { [INFO] [stdout] | ^^ help: if this is intentional, prefix it with an underscore: `_me` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `map` [INFO] [stdout] --> src/effect.rs:63:41 [INFO] [stdout] | [INFO] [stdout] 63 | fn done(&mut self, me: &mut Entity, map: &mut Level) -> bool { [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_map` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `map` [INFO] [stdout] --> src/effect.rs:262:42 [INFO] [stdout] | [INFO] [stdout] 262 | fn execute(&mut self, log: &mut Log, map: &mut Level, me: &mut Entity, other: &mut Entity) { [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_map` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `me` [INFO] [stdout] --> src/effect.rs:268:24 [INFO] [stdout] | [INFO] [stdout] 268 | fn done(&mut self, me: &mut Entity, map: &mut Level) -> bool { [INFO] [stdout] | ^^ help: if this is intentional, prefix it with an underscore: `_me` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `map` [INFO] [stdout] --> src/effect.rs:268:41 [INFO] [stdout] | [INFO] [stdout] 268 | fn done(&mut self, me: &mut Entity, map: &mut Level) -> bool { [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_map` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/effect.rs:59:76 [INFO] [stdout] | [INFO] [stdout] 59 | fn execute(&mut self, log: &mut Log, map: &mut Level, me: &mut Entity, mut other: &mut Entity) { [INFO] [stdout] | ----^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_mut)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: panic message contains an unused formatting placeholder [INFO] [stdout] --> src/character/item.rs:86:22 [INFO] [stdout] | [INFO] [stdout] 86 | panic!("Item {:?} is not clothing!"); [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(non_fmt_panics)]` on by default [INFO] [stdout] = note: this message is not used as a format string when given without arguments, but will be in Rust 2021 [INFO] [stdout] help: add the missing argument [INFO] [stdout] | [INFO] [stdout] 86 | panic!("Item {:?} is not clothing!", ...); [INFO] [stdout] | +++++ [INFO] [stdout] help: or add a "{}" format string to use the message literally [INFO] [stdout] | [INFO] [stdout] 86 | panic!("{}", "Item {:?} is not clothing!"); [INFO] [stdout] | +++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: panic message contains an unused formatting placeholder [INFO] [stdout] --> src/character/item.rs:99:22 [INFO] [stdout] | [INFO] [stdout] 99 | panic!("Item {:?} is not a Weapon!"); [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this message is not used as a format string when given without arguments, but will be in Rust 2021 [INFO] [stdout] help: add the missing argument [INFO] [stdout] | [INFO] [stdout] 99 | panic!("Item {:?} is not a Weapon!", ...); [INFO] [stdout] | +++++ [INFO] [stdout] help: or add a "{}" format string to use the message literally [INFO] [stdout] | [INFO] [stdout] 99 | panic!("{}", "Item {:?} is not a Weapon!"); [INFO] [stdout] | +++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 15 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished test [unoptimized + debuginfo] target(s) in 1.22s [INFO] running `Command { std: "docker" "inspect" "81516fe45970b6790c4a93bde7adb2381a76f8e34b580ddab8866ba1e1e2a78d", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "81516fe45970b6790c4a93bde7adb2381a76f8e34b580ddab8866ba1e1e2a78d", kill_on_drop: false }` [INFO] [stdout] 81516fe45970b6790c4a93bde7adb2381a76f8e34b580ddab8866ba1e1e2a78d [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-97/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-97/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" "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:b0c94ce3c1162fcb8e57cac5b65ec2f72eabb1eebea4fcc35e269e823f681646" "/opt/rustwide/cargo-home/bin/cargo" "+1.60.0" "test" "--frozen", kill_on_drop: false }` [INFO] [stdout] 67d2b989d648b3587f5e86463bee87ca48faf7b9366ff9f2a98ed55efede8d78 [INFO] running `Command { std: "docker" "start" "-a" "67d2b989d648b3587f5e86463bee87ca48faf7b9366ff9f2a98ed55efede8d78", kill_on_drop: false }` [INFO] [stderr] warning: unused import: `super::super::item::*` [INFO] [stderr] --> src/character/backpack.rs:105:9 [INFO] [stderr] | [INFO] [stderr] 105 | use super::super::item::*; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_imports)]` on by default [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/game.rs:32:22 [INFO] [stderr] | [INFO] [stderr] 32 | effects: Vec>, [INFO] [stderr] | ^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(bare_trait_objects)]` on by default [INFO] [stderr] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stderr] = note: for more information, see [INFO] [stderr] help: use `dyn` [INFO] [stderr] | [INFO] [stderr] 32 - effects: Vec>, [INFO] [stderr] 32 + effects: Vec>, [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/ki.rs:6:101 [INFO] [stderr] | [INFO] [stderr] 6 | pub fn handle_ki(map: &Level, player: &mut Entity, enemies: &mut Vec, effects: &mut Vec>) { [INFO] [stderr] | ^^^^^^ [INFO] [stderr] | [INFO] [stderr] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stderr] = note: for more information, see [INFO] [stderr] help: use `dyn` [INFO] [stderr] | [INFO] [stderr] 6 - pub fn handle_ki(map: &Level, player: &mut Entity, enemies: &mut Vec, effects: &mut Vec>) { [INFO] [stderr] 6 + pub fn handle_ki(map: &Level, player: &mut Entity, enemies: &mut Vec, effects: &mut Vec>) { [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/effect.rs:8:39 [INFO] [stderr] | [INFO] [stderr] 8 | fn valid(&self, effects: &Vec>) -> bool { [INFO] [stderr] | ^^^^^^ [INFO] [stderr] | [INFO] [stderr] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stderr] = note: for more information, see [INFO] [stderr] help: use `dyn` [INFO] [stderr] | [INFO] [stderr] 8 - fn valid(&self, effects: &Vec>) -> bool { [INFO] [stderr] 8 + fn valid(&self, effects: &Vec>) -> bool { [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/game.rs:470:25 [INFO] [stderr] | [INFO] [stderr] 470 | let effect: Box = match direction { [INFO] [stderr] | ^^^^^^ [INFO] [stderr] | [INFO] [stderr] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stderr] = note: for more information, see [INFO] [stderr] help: use `dyn` [INFO] [stderr] | [INFO] [stderr] 470 - let effect: Box = match direction { [INFO] [stderr] 470 + let effect: Box = match direction { [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/game.rs:494:34 [INFO] [stderr] | [INFO] [stderr] 494 | let hit: Box = if self.player_special_one { [INFO] [stderr] | ^^^^^^ [INFO] [stderr] | [INFO] [stderr] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stderr] = note: for more information, see [INFO] [stderr] help: use `dyn` [INFO] [stderr] | [INFO] [stderr] 494 - let hit: Box = if self.player_special_one { [INFO] [stderr] 494 + let hit: Box = if self.player_special_one { [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: unused variable: `map` [INFO] [stderr] --> src/effect.rs:59:42 [INFO] [stderr] | [INFO] [stderr] 59 | fn execute(&mut self, log: &mut Log, map: &mut Level, me: &mut Entity, mut other: &mut Entity) { [INFO] [stderr] | ^^^ help: if this is intentional, prefix it with an underscore: `_map` [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_variables)]` on by default [INFO] [stderr] [INFO] [stderr] warning: unused variable: `me` [INFO] [stderr] --> src/effect.rs:63:24 [INFO] [stderr] | [INFO] [stderr] 63 | fn done(&mut self, me: &mut Entity, map: &mut Level) -> bool { [INFO] [stderr] | ^^ help: if this is intentional, prefix it with an underscore: `_me` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `map` [INFO] [stderr] --> src/effect.rs:63:41 [INFO] [stderr] | [INFO] [stderr] 63 | fn done(&mut self, me: &mut Entity, map: &mut Level) -> bool { [INFO] [stderr] | ^^^ help: if this is intentional, prefix it with an underscore: `_map` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `map` [INFO] [stderr] --> src/effect.rs:262:42 [INFO] [stderr] | [INFO] [stderr] 262 | fn execute(&mut self, log: &mut Log, map: &mut Level, me: &mut Entity, other: &mut Entity) { [INFO] [stderr] | ^^^ help: if this is intentional, prefix it with an underscore: `_map` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `me` [INFO] [stderr] --> src/effect.rs:268:24 [INFO] [stderr] | [INFO] [stderr] 268 | fn done(&mut self, me: &mut Entity, map: &mut Level) -> bool { [INFO] [stderr] | ^^ help: if this is intentional, prefix it with an underscore: `_me` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `map` [INFO] [stderr] --> src/effect.rs:268:41 [INFO] [stderr] | [INFO] [stderr] 268 | fn done(&mut self, me: &mut Entity, map: &mut Level) -> bool { [INFO] [stderr] | ^^^ help: if this is intentional, prefix it with an underscore: `_map` [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/effect.rs:59:76 [INFO] [stderr] | [INFO] [stderr] 59 | fn execute(&mut self, log: &mut Log, map: &mut Level, me: &mut Entity, mut other: &mut Entity) { [INFO] [stderr] | ----^^^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_mut)]` on by default [INFO] [stderr] [INFO] [stderr] warning: panic message contains an unused formatting placeholder [INFO] [stderr] --> src/character/item.rs:86:22 [INFO] [stderr] | [INFO] [stderr] 86 | panic!("Item {:?} is not clothing!"); [INFO] [stderr] | ^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(non_fmt_panics)]` on by default [INFO] [stderr] = note: this message is not used as a format string when given without arguments, but will be in Rust 2021 [INFO] [stderr] help: add the missing argument [INFO] [stderr] | [INFO] [stderr] 86 | panic!("Item {:?} is not clothing!", ...); [INFO] [stderr] | +++++ [INFO] [stderr] help: or add a "{}" format string to use the message literally [INFO] [stderr] | [INFO] [stderr] 86 | panic!("{}", "Item {:?} is not clothing!"); [INFO] [stderr] | +++++ [INFO] [stderr] [INFO] [stderr] warning: panic message contains an unused formatting placeholder [INFO] [stderr] --> src/character/item.rs:99:22 [INFO] [stderr] | [INFO] [stderr] 99 | panic!("Item {:?} is not a Weapon!"); [INFO] [stderr] | ^^^^ [INFO] [stderr] | [INFO] [stderr] = note: this message is not used as a format string when given without arguments, but will be in Rust 2021 [INFO] [stderr] help: add the missing argument [INFO] [stderr] | [INFO] [stderr] 99 | panic!("Item {:?} is not a Weapon!", ...); [INFO] [stderr] | +++++ [INFO] [stderr] help: or add a "{}" format string to use the message literally [INFO] [stderr] | [INFO] [stderr] 99 | panic!("{}", "Item {:?} is not a Weapon!"); [INFO] [stderr] | +++++ [INFO] [stderr] [INFO] [stderr] warning: `rpg` (bin "rpg" test) generated 15 warnings [INFO] [stderr] Finished test [unoptimized + debuginfo] target(s) in 0.04s [INFO] [stderr] Running unittests (/opt/rustwide/target/debug/deps/rpg-465a5b61e66d8836) [INFO] [stdout] [INFO] [stdout] running 11 tests [INFO] [stdout] test character::backpack::tests::test_backpack ... ok [INFO] [stdout] test gen::level::test_not_intersect ... ok [INFO] [stdout] test character::item::test_malformed_weapon ... ok [INFO] [stdout] test combat::fight::test_death ... ok [INFO] [stdout] test gen::level::test_intersect ... ok [INFO] [stdout] test character::entity::test_change_item ... ok [INFO] [stdout] test log::test_log ... ok [INFO] [stdout] test character::entity::test_add_stat ... ok [INFO] [stdout] test character::item::test_clothing_check ... ok [INFO] [stdout] test combat::fight::test_damage ... ok [INFO] [stdout] test character::item::test_weapon_check ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 11 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.02s [INFO] [stdout] [INFO] running `Command { std: "docker" "inspect" "67d2b989d648b3587f5e86463bee87ca48faf7b9366ff9f2a98ed55efede8d78", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "67d2b989d648b3587f5e86463bee87ca48faf7b9366ff9f2a98ed55efede8d78", kill_on_drop: false }` [INFO] [stdout] 67d2b989d648b3587f5e86463bee87ca48faf7b9366ff9f2a98ed55efede8d78