[INFO] updating cached repository silago/foxnotdead [INFO] running `"git" "fetch" "--all"` [INFO] [stdout] Fetching origin [INFO] [stderr] From git://github.com/silago/foxnotdead [INFO] [stderr] * branch HEAD -> FETCH_HEAD [INFO] running `"git" "clone" "work/cache/sources/gh/silago/foxnotdead" "work/ex/pr-59199/sources/master#bc44841ad2a2ad5f6c5e67b9e35ed8e7e71d4dc7/gh/silago/foxnotdead"` [INFO] [stderr] Cloning into 'work/ex/pr-59199/sources/master#bc44841ad2a2ad5f6c5e67b9e35ed8e7e71d4dc7/gh/silago/foxnotdead'... [INFO] [stderr] done. [INFO] running `"git" "clone" "work/cache/sources/gh/silago/foxnotdead" "work/ex/pr-59199/sources/try#68fcf881bd1e4dbfc21e22f8c7a56b8a5d8e8f7b/gh/silago/foxnotdead"` [INFO] [stderr] Cloning into 'work/ex/pr-59199/sources/try#68fcf881bd1e4dbfc21e22f8c7a56b8a5d8e8f7b/gh/silago/foxnotdead'... [INFO] [stderr] done. [INFO] running `"git" "rev-parse" "HEAD"` [INFO] [stdout] 6c44da5ae75837e256ae029dd73c2c6761b8b8eb [INFO] sha for GitHub repo silago/foxnotdead: 6c44da5ae75837e256ae029dd73c2c6761b8b8eb [INFO] validating manifest of silago/foxnotdead on toolchain master#bc44841ad2a2ad5f6c5e67b9e35ed8e7e71d4dc7 [INFO] running `"/mnt/crater-raid/crater/work/local/cargo-home/bin/cargo" "+bc44841ad2a2ad5f6c5e67b9e35ed8e7e71d4dc7-alt" "read-manifest" "--manifest-path" "Cargo.toml"` [INFO] validating manifest of silago/foxnotdead on toolchain try#68fcf881bd1e4dbfc21e22f8c7a56b8a5d8e8f7b [INFO] running `"/mnt/crater-raid/crater/work/local/cargo-home/bin/cargo" "+68fcf881bd1e4dbfc21e22f8c7a56b8a5d8e8f7b-alt" "read-manifest" "--manifest-path" "Cargo.toml"` [INFO] started frobbing silago/foxnotdead [INFO] finished frobbing silago/foxnotdead [INFO] frobbed toml for silago/foxnotdead written to work/ex/pr-59199/sources/master#bc44841ad2a2ad5f6c5e67b9e35ed8e7e71d4dc7/gh/silago/foxnotdead/Cargo.toml [INFO] started frobbing silago/foxnotdead [INFO] finished frobbing silago/foxnotdead [INFO] frobbed toml for silago/foxnotdead written to work/ex/pr-59199/sources/try#68fcf881bd1e4dbfc21e22f8c7a56b8a5d8e8f7b/gh/silago/foxnotdead/Cargo.toml [INFO] crate silago/foxnotdead already has a lockfile, it will not be regenerated [INFO] running `"/mnt/crater-raid/crater/work/local/cargo-home/bin/cargo" "+bc44841ad2a2ad5f6c5e67b9e35ed8e7e71d4dc7-alt" "fetch" "--locked" "--manifest-path" "Cargo.toml"` [INFO] running `"/mnt/crater-raid/crater/work/local/cargo-home/bin/cargo" "+68fcf881bd1e4dbfc21e22f8c7a56b8a5d8e8f7b-alt" "fetch" "--locked" "--manifest-path" "Cargo.toml"` [INFO] checking silago/foxnotdead against try#68fcf881bd1e4dbfc21e22f8c7a56b8a5d8e8f7b for pr-59199 [INFO] running `"docker" "create" "-v" "/mnt/crater-raid/crater/work/local/target-dirs/pr-59199/worker-0/try#68fcf881bd1e4dbfc21e22f8c7a56b8a5d8e8f7b:/opt/crater/target:rw,Z" "-v" "/mnt/crater-raid/crater/work/ex/pr-59199/sources/try#68fcf881bd1e4dbfc21e22f8c7a56b8a5d8e8f7b/gh/silago/foxnotdead:/opt/crater/workdir:ro,Z" "-v" "/mnt/crater-raid/crater/work/local/cargo-home:/opt/crater/cargo-home:ro,Z" "-v" "/mnt/crater-raid/crater/work/local/rustup-home:/opt/crater/rustup-home:ro,Z" "-e" "USER_ID=1000" "-e" "SOURCE_DIR=/opt/crater/workdir" "-e" "MAP_USER_ID=1000" "-e" "CARGO_TARGET_DIR=/opt/crater/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/crater/cargo-home" "-e" "RUSTUP_HOME=/opt/crater/rustup-home" "-w" "/opt/crater/workdir" "-m" "1536M" "--network" "none" "rustops/crates-build-env" "/opt/crater/cargo-home/bin/cargo" "+68fcf881bd1e4dbfc21e22f8c7a56b8a5d8e8f7b-alt" "check" "--frozen" "--all" "--all-targets"` [INFO] [stdout] 067b269d6b5359e90399eadbc0af9467a4d9e6510d0e0a127cda17d5731cc88c [INFO] running `"docker" "start" "-a" "067b269d6b5359e90399eadbc0af9467a4d9e6510d0e0a127cda17d5731cc88c"` [INFO] [stderr] Checking serde v1.0.37 [INFO] [stderr] Compiling openssl-sys v0.9.28 [INFO] [stderr] Compiling libsqlite3-sys v0.9.1 [INFO] [stderr] Checking base64 v0.9.0 [INFO] [stderr] Checking bytes v0.4.6 [INFO] [stderr] Checking tokio-timer v0.2.1 [INFO] [stderr] Compiling quote v0.5.1 [INFO] [stderr] Checking tokio-threadpool v0.1.2 [INFO] [stderr] Checking error-chain v0.11.0 [INFO] [stderr] Compiling syn v0.13.1 [INFO] [stderr] Compiling openssl v0.9.24 [INFO] [stderr] Checking tokio-io v0.1.6 [INFO] [stderr] Checking rusqlite v0.13.0 [INFO] [stderr] Checking tokio-reactor v0.1.1 [INFO] [stderr] Checking tokio-udp v0.1.0 [INFO] [stderr] Checking tokio-tcp v0.1.0 [INFO] [stderr] Checking tokio v0.1.5 [INFO] [stderr] Checking tokio-core v0.1.16 [INFO] [stderr] Checking native-tls v0.1.5 [INFO] [stderr] Checking tokio-proto v0.1.1 [INFO] [stderr] Checking tokio-tls v0.1.4 [INFO] [stderr] Compiling serde_derive_internals v0.23.0 [INFO] [stderr] Checking hyper v0.11.25 [INFO] [stderr] Compiling serde_derive v1.0.37 [INFO] [stderr] Checking serde_json v1.0.13 [INFO] [stderr] Checking hyper-tls v0.1.3 [INFO] [stderr] Checking telegram-bot-raw v0.6.1 [INFO] [stderr] Checking telegram-bot v0.6.1 [INFO] [stderr] Checking foxnotdead v0.1.0 (/opt/crater/workdir) [INFO] [stderr] warning: unnecessary parentheses around `while` condition [INFO] [stderr] --> src/input/mod.rs:8:11 [INFO] [stderr] | [INFO] [stderr] 8 | while (input.is_empty()) { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ help: remove these parentheses [INFO] [stderr] | [INFO] [stderr] = note: #[warn(unused_parens)] on by default [INFO] [stderr] [INFO] [stderr] warning: unused import: `std::env` [INFO] [stderr] --> src/tg.rs:6:5 [INFO] [stderr] | [INFO] [stderr] 6 | use std::env; [INFO] [stderr] | ^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(unused_imports)] on by default [INFO] [stderr] [INFO] [stderr] warning: unused import: `self::futures::Stream` [INFO] [stderr] --> src/tg.rs:8:5 [INFO] [stderr] | [INFO] [stderr] 8 | use self::futures::Stream; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `self::tokio_core::reactor::Core` [INFO] [stderr] --> src/tg.rs:9:5 [INFO] [stderr] | [INFO] [stderr] 9 | use self::tokio_core::reactor::Core; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `self::telegram_bot::*` [INFO] [stderr] --> src/tg.rs:10:5 [INFO] [stderr] | [INFO] [stderr] 10 | use self::telegram_bot::*; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `std::env` [INFO] [stderr] --> src/main.rs:13:5 [INFO] [stderr] | [INFO] [stderr] 13 | use std::env; [INFO] [stderr] | ^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `std::io` [INFO] [stderr] --> src/main.rs:28:5 [INFO] [stderr] | [INFO] [stderr] 28 | use std::io; [INFO] [stderr] | ^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unnecessary parentheses around `while` condition [INFO] [stderr] --> src/main.rs:118:11 [INFO] [stderr] | [INFO] [stderr] 118 | while (true) { [INFO] [stderr] | ^^^^^^ help: remove these parentheses [INFO] [stderr] [INFO] [stderr] warning: unnecessary parentheses around `if` condition [INFO] [stderr] --> src/main.rs:120:12 [INFO] [stderr] | [INFO] [stderr] 120 | if (bot.GetHealth()<=0) { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ help: remove these parentheses [INFO] [stderr] [INFO] [stderr] warning: unnecessary parentheses around `if` condition [INFO] [stderr] --> src/main.rs:128:12 [INFO] [stderr] | [INFO] [stderr] 128 | if (user.GetHealth()<=0) { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^ help: remove these parentheses [INFO] [stderr] [INFO] [stderr] warning: unnecessary parentheses around `if` condition [INFO] [stderr] --> src/main.rs:140:8 [INFO] [stderr] | [INFO] [stderr] 140 | if (r == 0 ) { [INFO] [stderr] | ^^^^^^^^^ help: remove these parentheses [INFO] [stderr] [INFO] [stderr] warning: unnecessary parentheses around `if` condition [INFO] [stderr] --> src/main.rs:153:12 [INFO] [stderr] | [INFO] [stderr] 153 | if (i.trim()=="w") { [INFO] [stderr] | ^^^^^^^^^^^^^^^ help: remove these parentheses [INFO] [stderr] [INFO] [stderr] warning: unnecessary parentheses around `if` condition [INFO] [stderr] --> src/main.rs:184:20 [INFO] [stderr] | [INFO] [stderr] 184 | if (data.trim()=="w") { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ help: remove these parentheses [INFO] [stderr] [INFO] [stderr] warning: unnecessary parentheses around `while` condition [INFO] [stderr] --> src/input/mod.rs:8:11 [INFO] [stderr] | [INFO] [stderr] 8 | while (input.is_empty()) { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ help: remove these parentheses [INFO] [stderr] | [INFO] [stderr] = note: #[warn(unused_parens)] on by default [INFO] [stderr] [INFO] [stderr] warning: unused import: `std::env` [INFO] [stderr] --> src/tg.rs:6:5 [INFO] [stderr] | [INFO] [stderr] 6 | use std::env; [INFO] [stderr] | ^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(unused_imports)] on by default [INFO] [stderr] [INFO] [stderr] warning: unused import: `self::futures::Stream` [INFO] [stderr] --> src/tg.rs:8:5 [INFO] [stderr] | [INFO] [stderr] 8 | use self::futures::Stream; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `self::tokio_core::reactor::Core` [INFO] [stderr] --> src/tg.rs:9:5 [INFO] [stderr] | [INFO] [stderr] 9 | use self::tokio_core::reactor::Core; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `self::telegram_bot::*` [INFO] [stderr] --> src/tg.rs:10:5 [INFO] [stderr] | [INFO] [stderr] 10 | use self::telegram_bot::*; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `std::env` [INFO] [stderr] --> src/main.rs:13:5 [INFO] [stderr] | [INFO] [stderr] 13 | use std::env; [INFO] [stderr] | ^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `std::io` [INFO] [stderr] --> src/main.rs:28:5 [INFO] [stderr] | [INFO] [stderr] 28 | use std::io; [INFO] [stderr] | ^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unnecessary parentheses around `while` condition [INFO] [stderr] --> src/main.rs:118:11 [INFO] [stderr] | [INFO] [stderr] 118 | while (true) { [INFO] [stderr] | ^^^^^^ help: remove these parentheses [INFO] [stderr] [INFO] [stderr] warning: unnecessary parentheses around `if` condition [INFO] [stderr] --> src/main.rs:120:12 [INFO] [stderr] | [INFO] [stderr] 120 | if (bot.GetHealth()<=0) { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ help: remove these parentheses [INFO] [stderr] [INFO] [stderr] warning: unnecessary parentheses around `if` condition [INFO] [stderr] --> src/main.rs:128:12 [INFO] [stderr] | [INFO] [stderr] 128 | if (user.GetHealth()<=0) { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^ help: remove these parentheses [INFO] [stderr] [INFO] [stderr] warning: unnecessary parentheses around `if` condition [INFO] [stderr] --> src/main.rs:140:8 [INFO] [stderr] | [INFO] [stderr] 140 | if (r == 0 ) { [INFO] [stderr] | ^^^^^^^^^ help: remove these parentheses [INFO] [stderr] [INFO] [stderr] warning: unnecessary parentheses around `if` condition [INFO] [stderr] --> src/main.rs:153:12 [INFO] [stderr] | [INFO] [stderr] 153 | if (i.trim()=="w") { [INFO] [stderr] | ^^^^^^^^^^^^^^^ help: remove these parentheses [INFO] [stderr] [INFO] [stderr] warning: unnecessary parentheses around `if` condition [INFO] [stderr] --> src/main.rs:184:20 [INFO] [stderr] | [INFO] [stderr] 184 | if (data.trim()=="w") { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ help: remove these parentheses [INFO] [stderr] [INFO] [stderr] warning: unused variable: `conn` [INFO] [stderr] --> src/main.rs:67:9 [INFO] [stderr] | [INFO] [stderr] 67 | let conn = Connection::open_in_memory().unwrap(); [INFO] [stderr] | ^^^^ help: consider prefixing with an underscore: `_conn` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(unused_variables)] on by default [INFO] [stderr] [INFO] [stderr] warning: unused variable: `thief_class` [INFO] [stderr] --> src/main.rs:68:9 [INFO] [stderr] | [INFO] [stderr] 68 | let thief_class = user::Class{ id: 0, name: "" }; [INFO] [stderr] | ^^^^^^^^^^^ help: consider prefixing with an underscore: `_thief_class` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `fighter_class` [INFO] [stderr] --> src/main.rs:69:9 [INFO] [stderr] | [INFO] [stderr] 69 | let fighter_class = user::Class{ id: 0, name: "" }; [INFO] [stderr] | ^^^^^^^^^^^^^ help: consider prefixing with an underscore: `_fighter_class` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `class_input` [INFO] [stderr] --> src/main.rs:77:9 [INFO] [stderr] | [INFO] [stderr] 77 | let class_input = input::getInput("Choose your class:"); [INFO] [stderr] | ^^^^^^^^^^^ help: consider prefixing with an underscore: `_class_input` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `damage` [INFO] [stderr] --> src/main.rs:117:9 [INFO] [stderr] | [INFO] [stderr] 117 | let damage : i32; [INFO] [stderr] | ^^^^^^ help: consider prefixing with an underscore: `_damage` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `result` [INFO] [stderr] --> src/main.rs:183:21 [INFO] [stderr] | [INFO] [stderr] 183 | let result = String::new(); [INFO] [stderr] | ^^^^^^ help: consider prefixing with an underscore: `_result` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `user` [INFO] [stderr] --> src/main.rs:161:11 [INFO] [stderr] | [INFO] [stderr] 161 | fn tgLoop(user : &mut user::User) { [INFO] [stderr] | ^^^^ help: consider prefixing with an underscore: `_user` [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/main.rs:151:13 [INFO] [stderr] | [INFO] [stderr] 151 | let mut i = input::getInput("Enter action");//.trim(); [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: function is never used: `createRandomBot` [INFO] [stderr] --> src/user/mod.rs:83:1 [INFO] [stderr] | [INFO] [stderr] 83 | fn createRandomBot() -> User { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(dead_code)] on by default [INFO] [stderr] [INFO] [stderr] warning: function is never used: `createUser` [INFO] [stderr] --> src/user/mod.rs:88:1 [INFO] [stderr] | [INFO] [stderr] 88 | fn createUser() { [INFO] [stderr] | ^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: struct is never constructed: `ParamsHolder` [INFO] [stderr] --> src/main.rs:33:1 [INFO] [stderr] | [INFO] [stderr] 33 | struct ParamsHolder { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: struct is never constructed: `ClassLevelParams` [INFO] [stderr] --> src/main.rs:40:1 [INFO] [stderr] | [INFO] [stderr] 40 | struct ClassLevelParams { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: struct is never constructed: `Location` [INFO] [stderr] --> src/main.rs:48:1 [INFO] [stderr] | [INFO] [stderr] 48 | struct Location { [INFO] [stderr] | ^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: struct is never constructed: `LocationAction` [INFO] [stderr] --> src/main.rs:53:1 [INFO] [stderr] | [INFO] [stderr] 53 | struct LocationAction { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `kick` [INFO] [stderr] --> src/main.rs:102:1 [INFO] [stderr] | [INFO] [stderr] 102 | fn kick(auser : &user::User, aname : &str, buser: &mut user::User, bname : &str) { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `battle` [INFO] [stderr] --> src/main.rs:110:1 [INFO] [stderr] | [INFO] [stderr] 110 | fn battle(user : &mut user::User) { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `walk` [INFO] [stderr] --> src/main.rs:138:1 [INFO] [stderr] | [INFO] [stderr] 138 | fn walk(user : &mut user::User) { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `gameLoop` [INFO] [stderr] --> src/main.rs:150:1 [INFO] [stderr] | [INFO] [stderr] 150 | fn gameLoop(user : &mut user::User) { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function `getInput` should have a snake case name [INFO] [stderr] --> src/input/mod.rs:5:8 [INFO] [stderr] | [INFO] [stderr] 5 | pub fn getInput(header : &str) -> String { [INFO] [stderr] | ^^^^^^^^ help: convert the identifier to snake case: `get_input` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(non_snake_case)] on by default [INFO] [stderr] [INFO] [stderr] warning: unused `std::result::Result` that must be used [INFO] [stderr] --> src/input/mod.rs:9:9 [INFO] [stderr] | [INFO] [stderr] 9 | io::stdin().read_line(&mut input); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(unused_must_use)] on by default [INFO] [stderr] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stderr] [INFO] [stderr] warning: structure field `minDamage` should have a snake case name [INFO] [stderr] --> src/user/mod.rs:17:5 [INFO] [stderr] | [INFO] [stderr] 17 | minDamage : i32, [INFO] [stderr] | ^^^^^^^^^ help: convert the identifier to snake case: `min_damage` [INFO] [stderr] [INFO] [stderr] warning: structure field `maxDamage` should have a snake case name [INFO] [stderr] --> src/user/mod.rs:18:5 [INFO] [stderr] | [INFO] [stderr] 18 | maxDamage : i32, [INFO] [stderr] | ^^^^^^^^^ help: convert the identifier to snake case: `max_damage` [INFO] [stderr] [INFO] [stderr] warning: method `CreateBot` should have a snake case name [INFO] [stderr] --> src/user/mod.rs:26:12 [INFO] [stderr] | [INFO] [stderr] 26 | pub fn CreateBot() -> Self { [INFO] [stderr] | ^^^^^^^^^ help: convert the identifier to snake case: `create_bot` [INFO] [stderr] [INFO] [stderr] warning: method `GetInfo` should have a snake case name [INFO] [stderr] --> src/user/mod.rs:41:12 [INFO] [stderr] | [INFO] [stderr] 41 | pub fn GetInfo(&self) { [INFO] [stderr] | ^^^^^^^ help: convert the identifier to snake case: `get_info` [INFO] [stderr] [INFO] [stderr] warning: method `SetClass` should have a snake case name [INFO] [stderr] --> src/user/mod.rs:45:12 [INFO] [stderr] | [INFO] [stderr] 45 | pub fn SetClass(&mut self, class : Class) [INFO] [stderr] | ^^^^^^^^ help: convert the identifier to snake case: `set_class` [INFO] [stderr] [INFO] [stderr] warning: method `Getname` should have a snake case name [INFO] [stderr] --> src/user/mod.rs:50:12 [INFO] [stderr] | [INFO] [stderr] 50 | pub fn Getname(&self) -> &String { [INFO] [stderr] | ^^^^^^^ help: convert the identifier to snake case: `getname` [INFO] [stderr] [INFO] [stderr] warning: method `ToString` should have a snake case name [INFO] [stderr] --> src/user/mod.rs:54:12 [INFO] [stderr] | [INFO] [stderr] 54 | pub fn ToString(self) -> String { [INFO] [stderr] | ^^^^^^^^ help: convert the identifier to snake case: `to_string` [INFO] [stderr] [INFO] [stderr] warning: method `GetDamage` should have a snake case name [INFO] [stderr] --> src/user/mod.rs:60:12 [INFO] [stderr] | [INFO] [stderr] 60 | pub fn GetDamage(&self) -> i32 { [INFO] [stderr] | ^^^^^^^^^ help: convert the identifier to snake case: `get_damage` [INFO] [stderr] [INFO] [stderr] warning: method `RecieveDamage` should have a snake case name [INFO] [stderr] --> src/user/mod.rs:70:12 [INFO] [stderr] | [INFO] [stderr] 70 | pub fn RecieveDamage(&mut self, x : i32) { [INFO] [stderr] | ^^^^^^^^^^^^^ help: convert the identifier to snake case: `recieve_damage` [INFO] [stderr] [INFO] [stderr] warning: method `GetHealth` should have a snake case name [INFO] [stderr] --> src/user/mod.rs:74:12 [INFO] [stderr] | [INFO] [stderr] 74 | pub fn GetHealth(&self)->i32 {return self.health;} [INFO] [stderr] | ^^^^^^^^^ help: convert the identifier to snake case: `get_health` [INFO] [stderr] [INFO] [stderr] warning: method `IsAlive` should have a snake case name [INFO] [stderr] --> src/user/mod.rs:76:12 [INFO] [stderr] | [INFO] [stderr] 76 | pub fn IsAlive(self) -> bool { [INFO] [stderr] | ^^^^^^^ help: convert the identifier to snake case: `is_alive` [INFO] [stderr] [INFO] [stderr] warning: function `createRandomBot` should have a snake case name [INFO] [stderr] --> src/user/mod.rs:83:4 [INFO] [stderr] | [INFO] [stderr] 83 | fn createRandomBot() -> User { [INFO] [stderr] | ^^^^^^^^^^^^^^^ help: convert the identifier to snake case: `create_random_bot` [INFO] [stderr] [INFO] [stderr] warning: function `createUser` should have a snake case name [INFO] [stderr] --> src/user/mod.rs:88:4 [INFO] [stderr] | [INFO] [stderr] 88 | fn createUser() { [INFO] [stderr] | ^^^^^^^^^^ help: convert the identifier to snake case: `create_user` [INFO] [stderr] [INFO] [stderr] warning: denote infinite loops with `loop { ... }` [INFO] [stderr] --> src/main.rs:118:5 [INFO] [stderr] | [INFO] [stderr] 118 | while (true) { [INFO] [stderr] | ^^^^^^^^^^^^ help: use `loop` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(while_true)] on by default [INFO] [stderr] [INFO] [stderr] warning: unused return value of `core::str::::trim` that must be used [INFO] [stderr] --> src/main.rs:133:9 [INFO] [stderr] | [INFO] [stderr] 133 | input::getInput("").trim(); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: this returns the trimmed string as a slice, without modifying the original [INFO] [stderr] [INFO] [stderr] warning: function `gameLoop` should have a snake case name [INFO] [stderr] --> src/main.rs:150:4 [INFO] [stderr] | [INFO] [stderr] 150 | fn gameLoop(user : &mut user::User) { [INFO] [stderr] | ^^^^^^^^ help: convert the identifier to snake case: `game_loop` [INFO] [stderr] [INFO] [stderr] warning: function `tgLoop` should have a snake case name [INFO] [stderr] --> src/main.rs:161:4 [INFO] [stderr] | [INFO] [stderr] 161 | fn tgLoop(user : &mut user::User) { [INFO] [stderr] | ^^^^^^ help: convert the identifier to snake case: `tg_loop` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `conn` [INFO] [stderr] --> src/main.rs:67:9 [INFO] [stderr] | [INFO] [stderr] 67 | let conn = Connection::open_in_memory().unwrap(); [INFO] [stderr] | ^^^^ help: consider prefixing with an underscore: `_conn` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(unused_variables)] on by default [INFO] [stderr] [INFO] [stderr] warning: unused variable: `thief_class` [INFO] [stderr] --> src/main.rs:68:9 [INFO] [stderr] | [INFO] [stderr] 68 | let thief_class = user::Class{ id: 0, name: "" }; [INFO] [stderr] | ^^^^^^^^^^^ help: consider prefixing with an underscore: `_thief_class` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `fighter_class` [INFO] [stderr] --> src/main.rs:69:9 [INFO] [stderr] | [INFO] [stderr] 69 | let fighter_class = user::Class{ id: 0, name: "" }; [INFO] [stderr] | ^^^^^^^^^^^^^ help: consider prefixing with an underscore: `_fighter_class` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `class_input` [INFO] [stderr] --> src/main.rs:77:9 [INFO] [stderr] | [INFO] [stderr] 77 | let class_input = input::getInput("Choose your class:"); [INFO] [stderr] | ^^^^^^^^^^^ help: consider prefixing with an underscore: `_class_input` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `damage` [INFO] [stderr] --> src/main.rs:117:9 [INFO] [stderr] | [INFO] [stderr] 117 | let damage : i32; [INFO] [stderr] | ^^^^^^ help: consider prefixing with an underscore: `_damage` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `result` [INFO] [stderr] --> src/main.rs:183:21 [INFO] [stderr] | [INFO] [stderr] 183 | let result = String::new(); [INFO] [stderr] | ^^^^^^ help: consider prefixing with an underscore: `_result` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `user` [INFO] [stderr] --> src/main.rs:161:11 [INFO] [stderr] | [INFO] [stderr] 161 | fn tgLoop(user : &mut user::User) { [INFO] [stderr] | ^^^^ help: consider prefixing with an underscore: `_user` [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/main.rs:151:13 [INFO] [stderr] | [INFO] [stderr] 151 | let mut i = input::getInput("Enter action");//.trim(); [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: function is never used: `createRandomBot` [INFO] [stderr] --> src/user/mod.rs:83:1 [INFO] [stderr] | [INFO] [stderr] 83 | fn createRandomBot() -> User { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(dead_code)] on by default [INFO] [stderr] [INFO] [stderr] warning: function is never used: `createUser` [INFO] [stderr] --> src/user/mod.rs:88:1 [INFO] [stderr] | [INFO] [stderr] 88 | fn createUser() { [INFO] [stderr] | ^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: struct is never constructed: `ParamsHolder` [INFO] [stderr] --> src/main.rs:33:1 [INFO] [stderr] | [INFO] [stderr] 33 | struct ParamsHolder { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: struct is never constructed: `ClassLevelParams` [INFO] [stderr] --> src/main.rs:40:1 [INFO] [stderr] | [INFO] [stderr] 40 | struct ClassLevelParams { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: struct is never constructed: `Location` [INFO] [stderr] --> src/main.rs:48:1 [INFO] [stderr] | [INFO] [stderr] 48 | struct Location { [INFO] [stderr] | ^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: struct is never constructed: `LocationAction` [INFO] [stderr] --> src/main.rs:53:1 [INFO] [stderr] | [INFO] [stderr] 53 | struct LocationAction { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `kick` [INFO] [stderr] --> src/main.rs:102:1 [INFO] [stderr] | [INFO] [stderr] 102 | fn kick(auser : &user::User, aname : &str, buser: &mut user::User, bname : &str) { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `battle` [INFO] [stderr] --> src/main.rs:110:1 [INFO] [stderr] | [INFO] [stderr] 110 | fn battle(user : &mut user::User) { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `walk` [INFO] [stderr] --> src/main.rs:138:1 [INFO] [stderr] | [INFO] [stderr] 138 | fn walk(user : &mut user::User) { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `gameLoop` [INFO] [stderr] --> src/main.rs:150:1 [INFO] [stderr] | [INFO] [stderr] 150 | fn gameLoop(user : &mut user::User) { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function `getInput` should have a snake case name [INFO] [stderr] --> src/input/mod.rs:5:8 [INFO] [stderr] | [INFO] [stderr] 5 | pub fn getInput(header : &str) -> String { [INFO] [stderr] | ^^^^^^^^ help: convert the identifier to snake case: `get_input` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(non_snake_case)] on by default [INFO] [stderr] [INFO] [stderr] warning: unused `std::result::Result` that must be used [INFO] [stderr] --> src/input/mod.rs:9:9 [INFO] [stderr] | [INFO] [stderr] 9 | io::stdin().read_line(&mut input); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(unused_must_use)] on by default [INFO] [stderr] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stderr] [INFO] [stderr] warning: structure field `minDamage` should have a snake case name [INFO] [stderr] --> src/user/mod.rs:17:5 [INFO] [stderr] | [INFO] [stderr] 17 | minDamage : i32, [INFO] [stderr] | ^^^^^^^^^ help: convert the identifier to snake case: `min_damage` [INFO] [stderr] [INFO] [stderr] warning: structure field `maxDamage` should have a snake case name [INFO] [stderr] --> src/user/mod.rs:18:5 [INFO] [stderr] | [INFO] [stderr] 18 | maxDamage : i32, [INFO] [stderr] | ^^^^^^^^^ help: convert the identifier to snake case: `max_damage` [INFO] [stderr] [INFO] [stderr] warning: method `CreateBot` should have a snake case name [INFO] [stderr] --> src/user/mod.rs:26:12 [INFO] [stderr] | [INFO] [stderr] 26 | pub fn CreateBot() -> Self { [INFO] [stderr] | ^^^^^^^^^ help: convert the identifier to snake case: `create_bot` [INFO] [stderr] [INFO] [stderr] warning: method `GetInfo` should have a snake case name [INFO] [stderr] --> src/user/mod.rs:41:12 [INFO] [stderr] | [INFO] [stderr] 41 | pub fn GetInfo(&self) { [INFO] [stderr] | ^^^^^^^ help: convert the identifier to snake case: `get_info` [INFO] [stderr] [INFO] [stderr] warning: method `SetClass` should have a snake case name [INFO] [stderr] --> src/user/mod.rs:45:12 [INFO] [stderr] | [INFO] [stderr] 45 | pub fn SetClass(&mut self, class : Class) [INFO] [stderr] | ^^^^^^^^ help: convert the identifier to snake case: `set_class` [INFO] [stderr] [INFO] [stderr] warning: method `Getname` should have a snake case name [INFO] [stderr] --> src/user/mod.rs:50:12 [INFO] [stderr] | [INFO] [stderr] 50 | pub fn Getname(&self) -> &String { [INFO] [stderr] | ^^^^^^^ help: convert the identifier to snake case: `getname` [INFO] [stderr] [INFO] [stderr] warning: method `ToString` should have a snake case name [INFO] [stderr] --> src/user/mod.rs:54:12 [INFO] [stderr] | [INFO] [stderr] 54 | pub fn ToString(self) -> String { [INFO] [stderr] | ^^^^^^^^ help: convert the identifier to snake case: `to_string` [INFO] [stderr] [INFO] [stderr] warning: method `GetDamage` should have a snake case name [INFO] [stderr] --> src/user/mod.rs:60:12 [INFO] [stderr] | [INFO] [stderr] 60 | pub fn GetDamage(&self) -> i32 { [INFO] [stderr] | ^^^^^^^^^ help: convert the identifier to snake case: `get_damage` [INFO] [stderr] [INFO] [stderr] warning: method `RecieveDamage` should have a snake case name [INFO] [stderr] --> src/user/mod.rs:70:12 [INFO] [stderr] | [INFO] [stderr] 70 | pub fn RecieveDamage(&mut self, x : i32) { [INFO] [stderr] | ^^^^^^^^^^^^^ help: convert the identifier to snake case: `recieve_damage` [INFO] [stderr] [INFO] [stderr] warning: method `GetHealth` should have a snake case name [INFO] [stderr] --> src/user/mod.rs:74:12 [INFO] [stderr] | [INFO] [stderr] 74 | pub fn GetHealth(&self)->i32 {return self.health;} [INFO] [stderr] | ^^^^^^^^^ help: convert the identifier to snake case: `get_health` [INFO] [stderr] [INFO] [stderr] warning: method `IsAlive` should have a snake case name [INFO] [stderr] --> src/user/mod.rs:76:12 [INFO] [stderr] | [INFO] [stderr] 76 | pub fn IsAlive(self) -> bool { [INFO] [stderr] | ^^^^^^^ help: convert the identifier to snake case: `is_alive` [INFO] [stderr] [INFO] [stderr] warning: function `createRandomBot` should have a snake case name [INFO] [stderr] --> src/user/mod.rs:83:4 [INFO] [stderr] | [INFO] [stderr] 83 | fn createRandomBot() -> User { [INFO] [stderr] | ^^^^^^^^^^^^^^^ help: convert the identifier to snake case: `create_random_bot` [INFO] [stderr] [INFO] [stderr] warning: function `createUser` should have a snake case name [INFO] [stderr] --> src/user/mod.rs:88:4 [INFO] [stderr] | [INFO] [stderr] 88 | fn createUser() { [INFO] [stderr] | ^^^^^^^^^^ help: convert the identifier to snake case: `create_user` [INFO] [stderr] [INFO] [stderr] warning: denote infinite loops with `loop { ... }` [INFO] [stderr] --> src/main.rs:118:5 [INFO] [stderr] | [INFO] [stderr] 118 | while (true) { [INFO] [stderr] | ^^^^^^^^^^^^ help: use `loop` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(while_true)] on by default [INFO] [stderr] [INFO] [stderr] warning: unused return value of `core::str::::trim` that must be used [INFO] [stderr] --> src/main.rs:133:9 [INFO] [stderr] | [INFO] [stderr] 133 | input::getInput("").trim(); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: this returns the trimmed string as a slice, without modifying the original [INFO] [stderr] [INFO] [stderr] warning: function `gameLoop` should have a snake case name [INFO] [stderr] --> src/main.rs:150:4 [INFO] [stderr] | [INFO] [stderr] 150 | fn gameLoop(user : &mut user::User) { [INFO] [stderr] | ^^^^^^^^ help: convert the identifier to snake case: `game_loop` [INFO] [stderr] [INFO] [stderr] warning: function `tgLoop` should have a snake case name [INFO] [stderr] --> src/main.rs:161:4 [INFO] [stderr] | [INFO] [stderr] 161 | fn tgLoop(user : &mut user::User) { [INFO] [stderr] | ^^^^^^ help: convert the identifier to snake case: `tg_loop` [INFO] [stderr] [INFO] [stderr] Finished dev [unoptimized + debuginfo] target(s) in 35.17s [INFO] running `"docker" "inspect" "067b269d6b5359e90399eadbc0af9467a4d9e6510d0e0a127cda17d5731cc88c"` [INFO] running `"docker" "rm" "-f" "067b269d6b5359e90399eadbc0af9467a4d9e6510d0e0a127cda17d5731cc88c"` [INFO] [stdout] 067b269d6b5359e90399eadbc0af9467a4d9e6510d0e0a127cda17d5731cc88c