[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/clippy-test-run/sources/stable/gh/silago/foxnotdead"` [INFO] [stderr] Cloning into 'work/ex/clippy-test-run/sources/stable/gh/silago/foxnotdead'... [INFO] [stderr] done. [INFO] running `"git" "clone" "work/cache/sources/gh/silago/foxnotdead" "work/ex/clippy-test-run/sources/stable+rustflags=-Dclippy%3A%3Ainto_iter_on_array/gh/silago/foxnotdead"` [INFO] [stderr] Cloning into 'work/ex/clippy-test-run/sources/stable+rustflags=-Dclippy%3A%3Ainto_iter_on_array/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 stable [INFO] running `"/mnt/big/crater/work/local/cargo-home/bin/cargo" "+stable" "read-manifest" "--manifest-path" "Cargo.toml"` [INFO] validating manifest of silago/foxnotdead on toolchain stable+rustflags=-Dclippy::into_iter_on_array [INFO] running `"/mnt/big/crater/work/local/cargo-home/bin/cargo" "+stable" "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/clippy-test-run/sources/stable/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/clippy-test-run/sources/stable+rustflags=-Dclippy%3A%3Ainto_iter_on_array/gh/silago/foxnotdead/Cargo.toml [INFO] crate silago/foxnotdead has a lockfile. skipping [INFO] running `"/mnt/big/crater/work/local/cargo-home/bin/cargo" "+stable" "fetch" "--locked" "--manifest-path" "Cargo.toml"` [INFO] running `"/mnt/big/crater/work/local/cargo-home/bin/cargo" "+stable" "fetch" "--locked" "--manifest-path" "Cargo.toml"` [INFO] linting silago/foxnotdead against stable for clippy-test-run [INFO] running `"docker" "create" "-v" "/mnt/big/crater/work/local/target-dirs/clippy-test-run/worker-2/stable:/opt/crater/target:rw,Z" "-v" "/mnt/big/crater/work/ex/clippy-test-run/sources/stable/gh/silago/foxnotdead:/opt/crater/workdir:ro,Z" "-v" "/mnt/big/crater/work/local/cargo-home:/opt/crater/cargo-home:ro,Z" "-v" "/mnt/big/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" "+stable" "clippy" "--frozen" "--all" "--all-targets"` [INFO] [stdout] 7188186cbc4cfa80deaab49600a2c19df5aac9bcede80a7c1f4c65abb255adb7 [INFO] running `"docker" "start" "-a" "7188186cbc4cfa80deaab49600a2c19df5aac9bcede80a7c1f4c65abb255adb7"` [INFO] [stderr] Compiling libsqlite3-sys v0.9.1 [INFO] [stderr] Checking error-chain v0.11.0 [INFO] [stderr] Checking telegram-bot-raw v0.6.1 [INFO] [stderr] Checking rusqlite v0.13.0 [INFO] [stderr] Checking telegram-bot v0.6.1 [INFO] [stderr] Checking foxnotdead v0.1.0 (/opt/crater/workdir) [INFO] [stderr] warning: module has the same name as its containing module [INFO] [stderr] --> src/input/mod.rs:1:1 [INFO] [stderr] | [INFO] [stderr] 1 | mod input; [INFO] [stderr] | ^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::module_inception)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#module_inception [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/input/mod.rs:11:5 [INFO] [stderr] | [INFO] [stderr] 11 | return input; [INFO] [stderr] | ^^^^^^^^^^^^^ help: remove `return` as shown: `input` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::needless_return)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [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: module has the same name as its containing module [INFO] [stderr] --> src/user/mod.rs:8:1 [INFO] [stderr] | [INFO] [stderr] 8 | mod user; [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#module_inception [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/user/mod.rs:27:9 [INFO] [stderr] | [INFO] [stderr] 27 | return User::new(""); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `User::new("")` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/user/mod.rs:65:9 [INFO] [stderr] | [INFO] [stderr] 65 | return num; [INFO] [stderr] | ^^^^^^^^^^^ help: remove `return` as shown: `num` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/user/mod.rs:74:36 [INFO] [stderr] | [INFO] [stderr] 74 | pub fn GetHealth(&self)->i32 {return self.health;} [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `self.health` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/user/mod.rs:77:9 [INFO] [stderr] | [INFO] [stderr] 77 | return self.health>0; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `self.health>0` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/user/mod.rs:85:5 [INFO] [stderr] | [INFO] [stderr] 85 | return user; [INFO] [stderr] | ^^^^^^^^^^^^ help: remove `return` as shown: `user` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [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 using `_conn` instead [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 using `_thief_class` instead [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 using `_fighter_class` instead [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 using `_class_input` instead [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 using `_damage` instead [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 using `_result` instead [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 using `_user` instead [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: module has the same name as its containing module [INFO] [stderr] --> src/input/mod.rs:1:1 [INFO] [stderr] | [INFO] [stderr] 1 | mod input; [INFO] [stderr] | ^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::module_inception)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#module_inception [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/input/mod.rs:11:5 [INFO] [stderr] | [INFO] [stderr] 11 | return input; [INFO] [stderr] | ^^^^^^^^^^^^^ help: remove `return` as shown: `input` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::needless_return)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [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: module has the same name as its containing module [INFO] [stderr] --> src/user/mod.rs:8:1 [INFO] [stderr] | [INFO] [stderr] 8 | mod user; [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#module_inception [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/user/mod.rs:27:9 [INFO] [stderr] | [INFO] [stderr] 27 | return User::new(""); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `User::new("")` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/user/mod.rs:65:9 [INFO] [stderr] | [INFO] [stderr] 65 | return num; [INFO] [stderr] | ^^^^^^^^^^^ help: remove `return` as shown: `num` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/user/mod.rs:74:36 [INFO] [stderr] | [INFO] [stderr] 74 | pub fn GetHealth(&self)->i32 {return self.health;} [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `self.health` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/user/mod.rs:77:9 [INFO] [stderr] | [INFO] [stderr] 77 | return self.health>0; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `self.health>0` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/user/mod.rs:85:5 [INFO] [stderr] | [INFO] [stderr] 85 | return user; [INFO] [stderr] | ^^^^^^^^^^^^ help: remove `return` as shown: `user` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [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: 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 such as `get_input` [INFO] [stderr] --> src/input/mod.rs:5:1 [INFO] [stderr] | [INFO] [stderr] 5 | / pub fn getInput(header : &str) -> String { [INFO] [stderr] 6 | | println!("{}: ",header); [INFO] [stderr] 7 | | let mut input = String::new(); [INFO] [stderr] 8 | | while (input.is_empty()) { [INFO] [stderr] ... | [INFO] [stderr] 11 | | return input; [INFO] [stderr] 12 | | } [INFO] [stderr] | |_^ [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 such as `min_damage` [INFO] [stderr] --> src/user/mod.rs:17:5 [INFO] [stderr] | [INFO] [stderr] 17 | minDamage : i32, [INFO] [stderr] | ^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: structure field `maxDamage` should have a snake case name such as `max_damage` [INFO] [stderr] --> src/user/mod.rs:18:5 [INFO] [stderr] | [INFO] [stderr] 18 | maxDamage : i32, [INFO] [stderr] | ^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: method `CreateBot` should have a snake case name such as `create_bot` [INFO] [stderr] --> src/user/mod.rs:26:5 [INFO] [stderr] | [INFO] [stderr] 26 | / pub fn CreateBot() -> Self { [INFO] [stderr] 27 | | return User::new(""); [INFO] [stderr] 28 | | } [INFO] [stderr] | |_____^ [INFO] [stderr] [INFO] [stderr] warning: method `GetInfo` should have a snake case name such as `get_info` [INFO] [stderr] --> src/user/mod.rs:41:5 [INFO] [stderr] | [INFO] [stderr] 41 | / pub fn GetInfo(&self) { [INFO] [stderr] 42 | | [INFO] [stderr] 43 | | } [INFO] [stderr] | |_____^ [INFO] [stderr] [INFO] [stderr] warning: method `SetClass` should have a snake case name such as `set_class` [INFO] [stderr] --> src/user/mod.rs:45:5 [INFO] [stderr] | [INFO] [stderr] 45 | / pub fn SetClass(&mut self, class : Class) [INFO] [stderr] 46 | | { [INFO] [stderr] 47 | | self.class = class; [INFO] [stderr] 48 | | } [INFO] [stderr] | |_____^ [INFO] [stderr] [INFO] [stderr] warning: method `Getname` should have a snake case name such as `getname` [INFO] [stderr] --> src/user/mod.rs:50:5 [INFO] [stderr] | [INFO] [stderr] 50 | / pub fn Getname(&self) -> &String { [INFO] [stderr] 51 | | &self.name [INFO] [stderr] 52 | | } [INFO] [stderr] | |_____^ [INFO] [stderr] [INFO] [stderr] warning: method `ToString` should have a snake case name such as `to_string` [INFO] [stderr] --> src/user/mod.rs:54:5 [INFO] [stderr] | [INFO] [stderr] 54 | / pub fn ToString(self) -> String { [INFO] [stderr] 55 | | self.name [INFO] [stderr] 56 | | } [INFO] [stderr] | |_____^ [INFO] [stderr] [INFO] [stderr] warning: method `GetDamage` should have a snake case name such as `get_damage` [INFO] [stderr] --> src/user/mod.rs:60:5 [INFO] [stderr] | [INFO] [stderr] 60 | / pub fn GetDamage(&self) -> i32 { [INFO] [stderr] 61 | | //let rng = rand::thread_rng(); [INFO] [stderr] 62 | | //let x = rng.get_range(self.minDamage, self.maxDamage); [INFO] [stderr] 63 | | [INFO] [stderr] 64 | | let num = rand::thread_rng().gen_range(self.minDamage, self.maxDamage); [INFO] [stderr] 65 | | return num; [INFO] [stderr] 66 | | } [INFO] [stderr] | |_____^ [INFO] [stderr] [INFO] [stderr] warning: method `RecieveDamage` should have a snake case name such as `recieve_damage` [INFO] [stderr] --> src/user/mod.rs:70:5 [INFO] [stderr] | [INFO] [stderr] 70 | / pub fn RecieveDamage(&mut self, x : i32) { [INFO] [stderr] 71 | | self.health-=x; [INFO] [stderr] 72 | | } [INFO] [stderr] | |_____^ [INFO] [stderr] [INFO] [stderr] warning: method `GetHealth` should have a snake case name such as `get_health` [INFO] [stderr] --> src/user/mod.rs:74:5 [INFO] [stderr] | [INFO] [stderr] 74 | pub fn GetHealth(&self)->i32 {return self.health;} [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: method `IsAlive` should have a snake case name such as `is_alive` [INFO] [stderr] --> src/user/mod.rs:76:5 [INFO] [stderr] | [INFO] [stderr] 76 | / pub fn IsAlive(self) -> bool { [INFO] [stderr] 77 | | return self.health>0; [INFO] [stderr] 78 | | } [INFO] [stderr] | |_____^ [INFO] [stderr] [INFO] [stderr] warning: function `createRandomBot` should have a snake case name such as `create_random_bot` [INFO] [stderr] --> src/user/mod.rs:83:1 [INFO] [stderr] | [INFO] [stderr] 83 | / fn createRandomBot() -> User { [INFO] [stderr] 84 | | let user: User = User::new(""); [INFO] [stderr] 85 | | return user; [INFO] [stderr] 86 | | } [INFO] [stderr] | |_^ [INFO] [stderr] [INFO] [stderr] warning: function `createUser` should have a snake case name such as `create_user` [INFO] [stderr] --> src/user/mod.rs:88:1 [INFO] [stderr] | [INFO] [stderr] 88 | / fn createUser() { [INFO] [stderr] 89 | | [INFO] [stderr] 90 | | } [INFO] [stderr] | |_^ [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: The function/method `kick` doesn't need a mutable reference [INFO] [stderr] --> src/main.rs:126:14 [INFO] [stderr] | [INFO] [stderr] 126 | kick(&mut bot, "enemy", user,"you"); [INFO] [stderr] | ^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::unnecessary_mut_passed)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unnecessary_mut_passed [INFO] [stderr] [INFO] [stderr] warning: function `gameLoop` should have a snake case name such as `game_loop` [INFO] [stderr] --> src/main.rs:150:1 [INFO] [stderr] | [INFO] [stderr] 150 | / fn gameLoop(user : &mut user::User) { [INFO] [stderr] 151 | | let mut i = input::getInput("Enter action");//.trim(); [INFO] [stderr] 152 | | println!("{}",i); [INFO] [stderr] 153 | | if (i.trim()=="w") { [INFO] [stderr] ... | [INFO] [stderr] 156 | | } [INFO] [stderr] 157 | | } [INFO] [stderr] | |_^ [INFO] [stderr] [INFO] [stderr] warning: function `tgLoop` should have a snake case name such as `tg_loop` [INFO] [stderr] --> src/main.rs:161:1 [INFO] [stderr] | [INFO] [stderr] 161 | / fn tgLoop(user : &mut user::User) { [INFO] [stderr] 162 | | let mut core = Core::new().unwrap(); [INFO] [stderr] 163 | | [INFO] [stderr] 164 | | let token = "590889402:AAG-OPeK9bJAPdNU_9h_WXYs7e8eLfZBy7E"; [INFO] [stderr] ... | [INFO] [stderr] 208 | | core.run(future).unwrap(); [INFO] [stderr] 209 | | } [INFO] [stderr] | |_^ [INFO] [stderr] [INFO] [stderr] warning: useless use of `format!` [INFO] [stderr] --> src/main.rs:187:47 [INFO] [stderr] | [INFO] [stderr] 187 | api.spawn( message.text_reply(format!("Nothing happens"))); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ help: consider using .to_string(): `"Nothing happens".to_string()` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::useless_format)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#useless_format [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 using `_conn` instead [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 using `_thief_class` instead [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 using `_fighter_class` instead [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 using `_class_input` instead [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 using `_damage` instead [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 using `_result` instead [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 using `_user` instead [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 such as `get_input` [INFO] [stderr] --> src/input/mod.rs:5:1 [INFO] [stderr] | [INFO] [stderr] 5 | / pub fn getInput(header : &str) -> String { [INFO] [stderr] 6 | | println!("{}: ",header); [INFO] [stderr] 7 | | let mut input = String::new(); [INFO] [stderr] 8 | | while (input.is_empty()) { [INFO] [stderr] ... | [INFO] [stderr] 11 | | return input; [INFO] [stderr] 12 | | } [INFO] [stderr] | |_^ [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 such as `min_damage` [INFO] [stderr] --> src/user/mod.rs:17:5 [INFO] [stderr] | [INFO] [stderr] 17 | minDamage : i32, [INFO] [stderr] | ^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: structure field `maxDamage` should have a snake case name such as `max_damage` [INFO] [stderr] --> src/user/mod.rs:18:5 [INFO] [stderr] | [INFO] [stderr] 18 | maxDamage : i32, [INFO] [stderr] | ^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: method `CreateBot` should have a snake case name such as `create_bot` [INFO] [stderr] --> src/user/mod.rs:26:5 [INFO] [stderr] | [INFO] [stderr] 26 | / pub fn CreateBot() -> Self { [INFO] [stderr] 27 | | return User::new(""); [INFO] [stderr] 28 | | } [INFO] [stderr] | |_____^ [INFO] [stderr] [INFO] [stderr] warning: method `GetInfo` should have a snake case name such as `get_info` [INFO] [stderr] --> src/user/mod.rs:41:5 [INFO] [stderr] | [INFO] [stderr] 41 | / pub fn GetInfo(&self) { [INFO] [stderr] 42 | | [INFO] [stderr] 43 | | } [INFO] [stderr] | |_____^ [INFO] [stderr] [INFO] [stderr] warning: method `SetClass` should have a snake case name such as `set_class` [INFO] [stderr] --> src/user/mod.rs:45:5 [INFO] [stderr] | [INFO] [stderr] 45 | / pub fn SetClass(&mut self, class : Class) [INFO] [stderr] 46 | | { [INFO] [stderr] 47 | | self.class = class; [INFO] [stderr] 48 | | } [INFO] [stderr] | |_____^ [INFO] [stderr] [INFO] [stderr] warning: method `Getname` should have a snake case name such as `getname` [INFO] [stderr] --> src/user/mod.rs:50:5 [INFO] [stderr] | [INFO] [stderr] 50 | / pub fn Getname(&self) -> &String { [INFO] [stderr] 51 | | &self.name [INFO] [stderr] 52 | | } [INFO] [stderr] | |_____^ [INFO] [stderr] [INFO] [stderr] warning: method `ToString` should have a snake case name such as `to_string` [INFO] [stderr] --> src/user/mod.rs:54:5 [INFO] [stderr] | [INFO] [stderr] 54 | / pub fn ToString(self) -> String { [INFO] [stderr] 55 | | self.name [INFO] [stderr] 56 | | } [INFO] [stderr] | |_____^ [INFO] [stderr] [INFO] [stderr] warning: method `GetDamage` should have a snake case name such as `get_damage` [INFO] [stderr] --> src/user/mod.rs:60:5 [INFO] [stderr] | [INFO] [stderr] 60 | / pub fn GetDamage(&self) -> i32 { [INFO] [stderr] 61 | | //let rng = rand::thread_rng(); [INFO] [stderr] 62 | | //let x = rng.get_range(self.minDamage, self.maxDamage); [INFO] [stderr] 63 | | [INFO] [stderr] 64 | | let num = rand::thread_rng().gen_range(self.minDamage, self.maxDamage); [INFO] [stderr] 65 | | return num; [INFO] [stderr] 66 | | } [INFO] [stderr] | |_____^ [INFO] [stderr] [INFO] [stderr] warning: method `RecieveDamage` should have a snake case name such as `recieve_damage` [INFO] [stderr] --> src/user/mod.rs:70:5 [INFO] [stderr] | [INFO] [stderr] 70 | / pub fn RecieveDamage(&mut self, x : i32) { [INFO] [stderr] 71 | | self.health-=x; [INFO] [stderr] 72 | | } [INFO] [stderr] | |_____^ [INFO] [stderr] [INFO] [stderr] warning: method `GetHealth` should have a snake case name such as `get_health` [INFO] [stderr] --> src/user/mod.rs:74:5 [INFO] [stderr] | [INFO] [stderr] 74 | pub fn GetHealth(&self)->i32 {return self.health;} [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: method `IsAlive` should have a snake case name such as `is_alive` [INFO] [stderr] --> src/user/mod.rs:76:5 [INFO] [stderr] | [INFO] [stderr] 76 | / pub fn IsAlive(self) -> bool { [INFO] [stderr] 77 | | return self.health>0; [INFO] [stderr] 78 | | } [INFO] [stderr] | |_____^ [INFO] [stderr] [INFO] [stderr] warning: function `createRandomBot` should have a snake case name such as `create_random_bot` [INFO] [stderr] --> src/user/mod.rs:83:1 [INFO] [stderr] | [INFO] [stderr] 83 | / fn createRandomBot() -> User { [INFO] [stderr] 84 | | let user: User = User::new(""); [INFO] [stderr] 85 | | return user; [INFO] [stderr] 86 | | } [INFO] [stderr] | |_^ [INFO] [stderr] [INFO] [stderr] warning: function `createUser` should have a snake case name such as `create_user` [INFO] [stderr] --> src/user/mod.rs:88:1 [INFO] [stderr] | [INFO] [stderr] 88 | / fn createUser() { [INFO] [stderr] 89 | | [INFO] [stderr] 90 | | } [INFO] [stderr] | |_^ [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: The function/method `kick` doesn't need a mutable reference [INFO] [stderr] --> src/main.rs:126:14 [INFO] [stderr] | [INFO] [stderr] 126 | kick(&mut bot, "enemy", user,"you"); [INFO] [stderr] | ^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::unnecessary_mut_passed)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unnecessary_mut_passed [INFO] [stderr] [INFO] [stderr] warning: function `gameLoop` should have a snake case name such as `game_loop` [INFO] [stderr] --> src/main.rs:150:1 [INFO] [stderr] | [INFO] [stderr] 150 | / fn gameLoop(user : &mut user::User) { [INFO] [stderr] 151 | | let mut i = input::getInput("Enter action");//.trim(); [INFO] [stderr] 152 | | println!("{}",i); [INFO] [stderr] 153 | | if (i.trim()=="w") { [INFO] [stderr] ... | [INFO] [stderr] 156 | | } [INFO] [stderr] 157 | | } [INFO] [stderr] | |_^ [INFO] [stderr] [INFO] [stderr] warning: function `tgLoop` should have a snake case name such as `tg_loop` [INFO] [stderr] --> src/main.rs:161:1 [INFO] [stderr] | [INFO] [stderr] 161 | / fn tgLoop(user : &mut user::User) { [INFO] [stderr] 162 | | let mut core = Core::new().unwrap(); [INFO] [stderr] 163 | | [INFO] [stderr] 164 | | let token = "590889402:AAG-OPeK9bJAPdNU_9h_WXYs7e8eLfZBy7E"; [INFO] [stderr] ... | [INFO] [stderr] 208 | | core.run(future).unwrap(); [INFO] [stderr] 209 | | } [INFO] [stderr] | |_^ [INFO] [stderr] [INFO] [stderr] warning: useless use of `format!` [INFO] [stderr] --> src/main.rs:187:47 [INFO] [stderr] | [INFO] [stderr] 187 | api.spawn( message.text_reply(format!("Nothing happens"))); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ help: consider using .to_string(): `"Nothing happens".to_string()` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::useless_format)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#useless_format [INFO] [stderr] [INFO] [stderr] Finished dev [unoptimized + debuginfo] target(s) in 14.48s [INFO] running `"docker" "inspect" "7188186cbc4cfa80deaab49600a2c19df5aac9bcede80a7c1f4c65abb255adb7"` [INFO] running `"docker" "rm" "-f" "7188186cbc4cfa80deaab49600a2c19df5aac9bcede80a7c1f4c65abb255adb7"` [INFO] [stdout] 7188186cbc4cfa80deaab49600a2c19df5aac9bcede80a7c1f4c65abb255adb7