[INFO] cloning repository https://github.com/uenoku/othello-camel [INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/uenoku/othello-camel" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fuenoku%2Fothello-camel", kill_on_drop: false }` [INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fuenoku%2Fothello-camel'... [INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }` [INFO] [stdout] e6d54cb384ae13226fddf13f0d583a5cdcebf3c5 [INFO] checking uenoku/othello-camel against master#a609fb45efad59dfd459c76e50899be9f0583b5a for pr-80579 [INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fuenoku%2Fothello-camel" "/workspace/builds/worker-0/source", kill_on_drop: false }` [INFO] [stderr] Cloning into '/workspace/builds/worker-0/source'... [INFO] [stderr] done. [INFO] validating manifest of git repo https://github.com/uenoku/othello-camel on toolchain a609fb45efad59dfd459c76e50899be9f0583b5a [INFO] running `Command { std: "/workspace/cargo-home/bin/cargo" "+a609fb45efad59dfd459c76e50899be9f0583b5a" "read-manifest" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] started tweaking git repo https://github.com/uenoku/othello-camel [INFO] finished tweaking git repo https://github.com/uenoku/othello-camel [INFO] tweaked toml for git repo https://github.com/uenoku/othello-camel written to /workspace/builds/worker-0/source/Cargo.toml [INFO] crate git repo https://github.com/uenoku/othello-camel already has a lockfile, it will not be regenerated [INFO] running `Command { std: "/workspace/cargo-home/bin/cargo" "+a609fb45efad59dfd459c76e50899be9f0583b5a" "fetch" "--locked" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] [stderr] Updating crates.io index [INFO] [stderr] error: the lock file /workspace/builds/worker-0/source/Cargo.lock needs to be updated but --locked was passed to prevent this [INFO] [stderr] If you want to try to generate the lock file without accessing the network, use the --offline flag. [INFO] the lockfile is outdated, regenerating it [INFO] running `Command { std: "/workspace/cargo-home/bin/cargo" "+a609fb45efad59dfd459c76e50899be9f0583b5a" "generate-lockfile" "--manifest-path" "Cargo.toml" "-Zno-index-update", kill_on_drop: false }` [INFO] running `Command { std: "/workspace/cargo-home/bin/cargo" "+a609fb45efad59dfd459c76e50899be9f0583b5a" "fetch" "--locked" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-0/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-0/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" "rustops/crates-build-env@sha256:b8eeb62f26c39b23691079a6cb6de528d8e88b4d71a8f6b1d30f8ba7d9c16de9" "/opt/rustwide/cargo-home/bin/cargo" "+a609fb45efad59dfd459c76e50899be9f0583b5a" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stderr] WARNING: Your kernel does not support swap limit capabilities or the cgroup is not mounted. Memory limited without swap. [INFO] [stdout] 83da2a35af954da1e57815c79888acc4854f4786270bce941b70175c2b3d50eb [INFO] running `Command { std: "docker" "start" "-a" "83da2a35af954da1e57815c79888acc4854f4786270bce941b70175c2b3d50eb", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "83da2a35af954da1e57815c79888acc4854f4786270bce941b70175c2b3d50eb", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "83da2a35af954da1e57815c79888acc4854f4786270bce941b70175c2b3d50eb", kill_on_drop: false }` [INFO] [stdout] 83da2a35af954da1e57815c79888acc4854f4786270bce941b70175c2b3d50eb [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-0/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-0/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "rustops/crates-build-env@sha256:b8eeb62f26c39b23691079a6cb6de528d8e88b4d71a8f6b1d30f8ba7d9c16de9" "/opt/rustwide/cargo-home/bin/cargo" "+a609fb45efad59dfd459c76e50899be9f0583b5a" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] e7fe41669809d16083bd6ec406fdb5bb9589616bd793af1f434e905b09ba2b47 [INFO] [stderr] WARNING: Your kernel does not support swap limit capabilities or the cgroup is not mounted. Memory limited without swap. [INFO] running `Command { std: "docker" "start" "-a" "e7fe41669809d16083bd6ec406fdb5bb9589616bd793af1f434e905b09ba2b47", kill_on_drop: false }` [INFO] [stderr] Compiling memchr v2.3.4 [INFO] [stderr] Checking lazy_static v1.4.0 [INFO] [stderr] Checking regex-syntax v0.6.21 [INFO] [stderr] Compiling nom v4.2.3 [INFO] [stderr] Checking rand_core v0.3.1 [INFO] [stderr] Checking rand v0.5.6 [INFO] [stderr] Checking thread_local v1.0.1 [INFO] [stderr] Checking aho-corasick v0.7.15 [INFO] [stderr] Checking regex v1.4.2 [INFO] [stderr] Checking othello-rust v0.1.0 (/opt/rustwide/workdir) [INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stdout] --> src/arg_parse.rs:43:16 [INFO] [stdout] | [INFO] [stdout] 43 | let args = try!(opts.parse(args).or_else(geterr)); [INFO] [stdout] | ^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(deprecated)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stdout] --> src/arg_parse.rs:47:16 [INFO] [stdout] | [INFO] [stdout] 47 | let port = try!(port.parse().or_else(geterr)); [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `mcts::mcts` [INFO] [stdout] --> src/client.rs:4:5 [INFO] [stdout] | [INFO] [stdout] 4 | use mcts::mcts; [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `SocketAddr` [INFO] [stdout] --> src/client.rs:11:16 [INFO] [stdout] | [INFO] [stdout] 11 | use std::net::{SocketAddr, TcpStream}; [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `valuation::*` [INFO] [stdout] --> src/client.rs:15:5 [INFO] [stdout] | [INFO] [stdout] 15 | use valuation::*; [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `valuation::*` [INFO] [stdout] --> src/client.rs:16:5 [INFO] [stdout] | [INFO] [stdout] 16 | use valuation::*; [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around `if` condition [INFO] [stdout] --> src/client.rs:243:38 [INFO] [stdout] | [INFO] [stdout] 243 | let (mask, flip, value) = if (turn < thre) { [INFO] [stdout] | ^^^^^^^^^^^^^ help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_parens)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: type `wl` should have an upper camel case name [INFO] [stdout] --> src/client.rs:294:10 [INFO] [stdout] | [INFO] [stdout] 294 | pub enum wl { [INFO] [stdout] | ^^ help: convert the identifier to upper camel case (notice the capitalization): `Wl` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(non_camel_case_types)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: type `command` should have an upper camel case name [INFO] [stdout] --> src/client.rs:300:6 [INFO] [stdout] | [INFO] [stdout] 300 | enum command { [INFO] [stdout] | ^^^^^^^ help: convert the identifier to upper camel case (notice the capitalization): `Command` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/client.rs:324:49 [INFO] [stdout] | [INFO] [stdout] 324 | pub fn execute(name: &str, ip: &str, play: &Box (Move, Num)>) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Fn((u64, u64), i64) -> (Move, Num)` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(bare_trait_objects)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `tag_s`: Please use `tag` instead [INFO] [stdout] --> src/client.rs:340:5 [INFO] [stdout] | [INFO] [stdout] 340 | / named!(get_open<&str,command>, [INFO] [stdout] 341 | | do_parse!( ws!(tag_s!("OPEN")) >> [INFO] [stdout] 342 | | name :is_not!(" \n\t") >> [INFO] [stdout] 343 | | get_eoc >> [INFO] [stdout] 344 | | (command::Open(String::from(name))) [INFO] [stdout] 345 | | )); [INFO] [stdout] | |_________________^ [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `tag_s`: Please use `tag` instead [INFO] [stdout] --> src/client.rs:346:5 [INFO] [stdout] | [INFO] [stdout] 346 | / named!(get_wl<&str,wl>, [INFO] [stdout] 347 | | alt!( [INFO] [stdout] 348 | | do_parse!(tag_s!("WIN") >> [INFO] [stdout] 349 | | (wl::Win)) | [INFO] [stdout] ... | [INFO] [stdout] 354 | | ) [INFO] [stdout] 355 | | ); [INFO] [stdout] | |_____________^ [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `tag_s`: Please use `tag` instead [INFO] [stdout] --> src/client.rs:346:5 [INFO] [stdout] | [INFO] [stdout] 346 | / named!(get_wl<&str,wl>, [INFO] [stdout] 347 | | alt!( [INFO] [stdout] 348 | | do_parse!(tag_s!("WIN") >> [INFO] [stdout] 349 | | (wl::Win)) | [INFO] [stdout] ... | [INFO] [stdout] 354 | | ) [INFO] [stdout] 355 | | ); [INFO] [stdout] | |_____________^ [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `tag_s`: Please use `tag` instead [INFO] [stdout] --> src/client.rs:346:5 [INFO] [stdout] | [INFO] [stdout] 346 | / named!(get_wl<&str,wl>, [INFO] [stdout] 347 | | alt!( [INFO] [stdout] 348 | | do_parse!(tag_s!("WIN") >> [INFO] [stdout] 349 | | (wl::Win)) | [INFO] [stdout] ... | [INFO] [stdout] 354 | | ) [INFO] [stdout] 355 | | ); [INFO] [stdout] | |_____________^ [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `tag_s`: Please use `tag` instead [INFO] [stdout] --> src/client.rs:356:5 [INFO] [stdout] | [INFO] [stdout] 356 | / named!(get_eoc<&str,&str> , [INFO] [stdout] 357 | | alt!(tag_s!("\t")|tag_s!("\n")|eof!())); [INFO] [stdout] | |___________________________________________________^ [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `tag_s`: Please use `tag` instead [INFO] [stdout] --> src/client.rs:356:5 [INFO] [stdout] | [INFO] [stdout] 356 | / named!(get_eoc<&str,&str> , [INFO] [stdout] 357 | | alt!(tag_s!("\t")|tag_s!("\n")|eof!())); [INFO] [stdout] | |___________________________________________________^ [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `tag_s`: Please use `tag` instead [INFO] [stdout] --> src/client.rs:363:5 [INFO] [stdout] | [INFO] [stdout] 363 | / named!(get_end<&str,command>, [INFO] [stdout] 364 | | do_parse!( [INFO] [stdout] 365 | | ws!(tag_s!("END")) >> [INFO] [stdout] 366 | | res : ws!(get_wl) >> [INFO] [stdout] ... | [INFO] [stdout] 372 | | command::End(res,win_count.unwrap() as usize,lose_count.unwrap() as usize,String::from(reason))) [INFO] [stdout] 373 | | )); [INFO] [stdout] | |_________________^ [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `tag_s`: Please use `tag` instead [INFO] [stdout] --> src/client.rs:374:5 [INFO] [stdout] | [INFO] [stdout] 374 | / named!(get_move<&str,command>, [INFO] [stdout] 375 | | do_parse!( [INFO] [stdout] 376 | | ws!(tag_s!("MOVE")) >> [INFO] [stdout] 377 | | a : alt!( [INFO] [stdout] ... | [INFO] [stdout] 385 | | (a) [INFO] [stdout] 386 | | )); [INFO] [stdout] | |_________________^ [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `tag_s`: Please use `tag` instead [INFO] [stdout] --> src/client.rs:374:5 [INFO] [stdout] | [INFO] [stdout] 374 | / named!(get_move<&str,command>, [INFO] [stdout] 375 | | do_parse!( [INFO] [stdout] 376 | | ws!(tag_s!("MOVE")) >> [INFO] [stdout] 377 | | a : alt!( [INFO] [stdout] ... | [INFO] [stdout] 385 | | (a) [INFO] [stdout] 386 | | )); [INFO] [stdout] | |_________________^ [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `tag_s`: Please use `tag` instead [INFO] [stdout] --> src/client.rs:374:5 [INFO] [stdout] | [INFO] [stdout] 374 | / named!(get_move<&str,command>, [INFO] [stdout] 375 | | do_parse!( [INFO] [stdout] 376 | | ws!(tag_s!("MOVE")) >> [INFO] [stdout] 377 | | a : alt!( [INFO] [stdout] ... | [INFO] [stdout] 385 | | (a) [INFO] [stdout] 386 | | )); [INFO] [stdout] | |_________________^ [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `tag_s`: Please use `tag` instead [INFO] [stdout] --> src/client.rs:388:5 [INFO] [stdout] | [INFO] [stdout] 388 | / named!(get_wb<&str,i64>, [INFO] [stdout] 389 | | alt!( [INFO] [stdout] 390 | | do_parse!(ws!(tag_s!("WHITE")) >> [INFO] [stdout] 391 | | (-1) ) | [INFO] [stdout] 392 | | do_parse!(ws!(tag_s!("BLACK")) >> [INFO] [stdout] 393 | | (1))) [INFO] [stdout] 394 | | ); [INFO] [stdout] | |______________^ [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `tag_s`: Please use `tag` instead [INFO] [stdout] --> src/client.rs:388:5 [INFO] [stdout] | [INFO] [stdout] 388 | / named!(get_wb<&str,i64>, [INFO] [stdout] 389 | | alt!( [INFO] [stdout] 390 | | do_parse!(ws!(tag_s!("WHITE")) >> [INFO] [stdout] 391 | | (-1) ) | [INFO] [stdout] 392 | | do_parse!(ws!(tag_s!("BLACK")) >> [INFO] [stdout] 393 | | (1))) [INFO] [stdout] 394 | | ); [INFO] [stdout] | |______________^ [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `tag_s`: Please use `tag` instead [INFO] [stdout] --> src/client.rs:396:5 [INFO] [stdout] | [INFO] [stdout] 396 | / named!(get_start<&str,command>, [INFO] [stdout] 397 | | do_parse! (ws!( [INFO] [stdout] 398 | | tag_s!("START")) >> [INFO] [stdout] 399 | | a : ws!(get_wb) >> [INFO] [stdout] ... | [INFO] [stdout] 404 | | command::Start(a,String::from(s),t.unwrap())) [INFO] [stdout] 405 | | )); [INFO] [stdout] | |__________________^ [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `tag_s`: Please use `tag` instead [INFO] [stdout] --> src/client.rs:407:5 [INFO] [stdout] | [INFO] [stdout] 407 | / named!(get_ack<&str,command>, [INFO] [stdout] 408 | | do_parse!( [INFO] [stdout] 409 | | ws!(tag_s!("ACK")) >> [INFO] [stdout] 410 | | a : int32 >> [INFO] [stdout] 411 | | get_eoc >> [INFO] [stdout] 412 | | (command::Ack(a.unwrap() )))); [INFO] [stdout] | |_____________________________________________^ [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `tag_s`: Please use `tag` instead [INFO] [stdout] --> src/client.rs:414:5 [INFO] [stdout] | [INFO] [stdout] 414 | / named!(get_bye<&str,command>, [INFO] [stdout] 415 | | do_parse!( [INFO] [stdout] 416 | | tag_s!("BYE") >> [INFO] [stdout] 417 | | (command::Bye))); [INFO] [stdout] | |________________________________^ [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `data_loader` [INFO] [stdout] --> src/data_loader.rs:4:5 [INFO] [stdout] | [INFO] [stdout] 4 | use data_loader; [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::cmp::min` [INFO] [stdout] --> src/data_loader.rs:9:5 [INFO] [stdout] | [INFO] [stdout] 9 | use std::cmp::min; [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `tag_s`: Please use `tag` instead [INFO] [stdout] --> src/data_loader.rs:68:5 [INFO] [stdout] | [INFO] [stdout] 68 | / named!(get_value<&str,Num>, [INFO] [stdout] 69 | | do_parse! ( [INFO] [stdout] 70 | | val : float_s >> [INFO] [stdout] 71 | | tag_s!(",") >> [INFO] [stdout] 72 | | (val as Num))); [INFO] [stdout] | |___________________^ [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `tag_s`: Please use `tag` instead [INFO] [stdout] --> src/data_loader.rs:89:5 [INFO] [stdout] | [INFO] [stdout] 89 | / named!(get_move<&str,(Move,i64)>, [INFO] [stdout] 90 | | do_parse!( [INFO] [stdout] 91 | | color : alt!(do_parse!(tag_s!("+") >> (1))| do_parse!(tag_s!("-") >> (-1))) >> [INFO] [stdout] 92 | | i : alt!( [INFO] [stdout] ... | [INFO] [stdout] 109 | | do_parse!(tag_s!("8") >> (7)) ) >> [INFO] [stdout] 110 | | (Move::Mv(j,i),color))); [INFO] [stdout] | |_______________________________________^ [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `tag_s`: Please use `tag` instead [INFO] [stdout] --> src/data_loader.rs:89:5 [INFO] [stdout] | [INFO] [stdout] 89 | / named!(get_move<&str,(Move,i64)>, [INFO] [stdout] 90 | | do_parse!( [INFO] [stdout] 91 | | color : alt!(do_parse!(tag_s!("+") >> (1))| do_parse!(tag_s!("-") >> (-1))) >> [INFO] [stdout] 92 | | i : alt!( [INFO] [stdout] ... | [INFO] [stdout] 109 | | do_parse!(tag_s!("8") >> (7)) ) >> [INFO] [stdout] 110 | | (Move::Mv(j,i),color))); [INFO] [stdout] | |_______________________________________^ [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `tag_s`: Please use `tag` instead [INFO] [stdout] --> src/data_loader.rs:89:5 [INFO] [stdout] | [INFO] [stdout] 89 | / named!(get_move<&str,(Move,i64)>, [INFO] [stdout] 90 | | do_parse!( [INFO] [stdout] 91 | | color : alt!(do_parse!(tag_s!("+") >> (1))| do_parse!(tag_s!("-") >> (-1))) >> [INFO] [stdout] 92 | | i : alt!( [INFO] [stdout] ... | [INFO] [stdout] 109 | | do_parse!(tag_s!("8") >> (7)) ) >> [INFO] [stdout] 110 | | (Move::Mv(j,i),color))); [INFO] [stdout] | |_______________________________________^ [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `tag_s`: Please use `tag` instead [INFO] [stdout] --> src/data_loader.rs:89:5 [INFO] [stdout] | [INFO] [stdout] 89 | / named!(get_move<&str,(Move,i64)>, [INFO] [stdout] 90 | | do_parse!( [INFO] [stdout] 91 | | color : alt!(do_parse!(tag_s!("+") >> (1))| do_parse!(tag_s!("-") >> (-1))) >> [INFO] [stdout] 92 | | i : alt!( [INFO] [stdout] ... | [INFO] [stdout] 109 | | do_parse!(tag_s!("8") >> (7)) ) >> [INFO] [stdout] 110 | | (Move::Mv(j,i),color))); [INFO] [stdout] | |_______________________________________^ [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `tag_s`: Please use `tag` instead [INFO] [stdout] --> src/data_loader.rs:89:5 [INFO] [stdout] | [INFO] [stdout] 89 | / named!(get_move<&str,(Move,i64)>, [INFO] [stdout] 90 | | do_parse!( [INFO] [stdout] 91 | | color : alt!(do_parse!(tag_s!("+") >> (1))| do_parse!(tag_s!("-") >> (-1))) >> [INFO] [stdout] 92 | | i : alt!( [INFO] [stdout] ... | [INFO] [stdout] 109 | | do_parse!(tag_s!("8") >> (7)) ) >> [INFO] [stdout] 110 | | (Move::Mv(j,i),color))); [INFO] [stdout] | |_______________________________________^ [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `tag_s`: Please use `tag` instead [INFO] [stdout] --> src/data_loader.rs:89:5 [INFO] [stdout] | [INFO] [stdout] 89 | / named!(get_move<&str,(Move,i64)>, [INFO] [stdout] 90 | | do_parse!( [INFO] [stdout] 91 | | color : alt!(do_parse!(tag_s!("+") >> (1))| do_parse!(tag_s!("-") >> (-1))) >> [INFO] [stdout] 92 | | i : alt!( [INFO] [stdout] ... | [INFO] [stdout] 109 | | do_parse!(tag_s!("8") >> (7)) ) >> [INFO] [stdout] 110 | | (Move::Mv(j,i),color))); [INFO] [stdout] | |_______________________________________^ [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `tag_s`: Please use `tag` instead [INFO] [stdout] --> src/data_loader.rs:89:5 [INFO] [stdout] | [INFO] [stdout] 89 | / named!(get_move<&str,(Move,i64)>, [INFO] [stdout] 90 | | do_parse!( [INFO] [stdout] 91 | | color : alt!(do_parse!(tag_s!("+") >> (1))| do_parse!(tag_s!("-") >> (-1))) >> [INFO] [stdout] 92 | | i : alt!( [INFO] [stdout] ... | [INFO] [stdout] 109 | | do_parse!(tag_s!("8") >> (7)) ) >> [INFO] [stdout] 110 | | (Move::Mv(j,i),color))); [INFO] [stdout] | |_______________________________________^ [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `tag_s`: Please use `tag` instead [INFO] [stdout] --> src/data_loader.rs:89:5 [INFO] [stdout] | [INFO] [stdout] 89 | / named!(get_move<&str,(Move,i64)>, [INFO] [stdout] 90 | | do_parse!( [INFO] [stdout] 91 | | color : alt!(do_parse!(tag_s!("+") >> (1))| do_parse!(tag_s!("-") >> (-1))) >> [INFO] [stdout] 92 | | i : alt!( [INFO] [stdout] ... | [INFO] [stdout] 109 | | do_parse!(tag_s!("8") >> (7)) ) >> [INFO] [stdout] 110 | | (Move::Mv(j,i),color))); [INFO] [stdout] | |_______________________________________^ [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `tag_s`: Please use `tag` instead [INFO] [stdout] --> src/data_loader.rs:89:5 [INFO] [stdout] | [INFO] [stdout] 89 | / named!(get_move<&str,(Move,i64)>, [INFO] [stdout] 90 | | do_parse!( [INFO] [stdout] 91 | | color : alt!(do_parse!(tag_s!("+") >> (1))| do_parse!(tag_s!("-") >> (-1))) >> [INFO] [stdout] 92 | | i : alt!( [INFO] [stdout] ... | [INFO] [stdout] 109 | | do_parse!(tag_s!("8") >> (7)) ) >> [INFO] [stdout] 110 | | (Move::Mv(j,i),color))); [INFO] [stdout] | |_______________________________________^ [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stdout] --> src/arg_parse.rs:43:16 [INFO] [stdout] | [INFO] [stdout] 43 | let args = try!(opts.parse(args).or_else(geterr)); [INFO] [stdout] | ^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(deprecated)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stdout] --> src/arg_parse.rs:47:16 [INFO] [stdout] | [INFO] [stdout] 47 | let port = try!(port.parse().or_else(geterr)); [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `mcts::mcts` [INFO] [stdout] --> src/client.rs:4:5 [INFO] [stdout] | [INFO] [stdout] 4 | use mcts::mcts; [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `SocketAddr` [INFO] [stdout] --> src/client.rs:11:16 [INFO] [stdout] | [INFO] [stdout] 11 | use std::net::{SocketAddr, TcpStream}; [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `valuation::*` [INFO] [stdout] --> src/client.rs:15:5 [INFO] [stdout] | [INFO] [stdout] 15 | use valuation::*; [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `valuation::*` [INFO] [stdout] --> src/client.rs:16:5 [INFO] [stdout] | [INFO] [stdout] 16 | use valuation::*; [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around `if` condition [INFO] [stdout] --> src/client.rs:243:38 [INFO] [stdout] | [INFO] [stdout] 243 | let (mask, flip, value) = if (turn < thre) { [INFO] [stdout] | ^^^^^^^^^^^^^ help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_parens)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: type `wl` should have an upper camel case name [INFO] [stdout] --> src/client.rs:294:10 [INFO] [stdout] | [INFO] [stdout] 294 | pub enum wl { [INFO] [stdout] | ^^ help: convert the identifier to upper camel case (notice the capitalization): `Wl` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(non_camel_case_types)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: type `command` should have an upper camel case name [INFO] [stdout] --> src/client.rs:300:6 [INFO] [stdout] | [INFO] [stdout] 300 | enum command { [INFO] [stdout] | ^^^^^^^ help: convert the identifier to upper camel case (notice the capitalization): `Command` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/client.rs:324:49 [INFO] [stdout] | [INFO] [stdout] 324 | pub fn execute(name: &str, ip: &str, play: &Box (Move, Num)>) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Fn((u64, u64), i64) -> (Move, Num)` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(bare_trait_objects)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `tag_s`: Please use `tag` instead [INFO] [stdout] --> src/data_loader.rs:89:5 [INFO] [stdout] | [INFO] [stdout] 89 | / named!(get_move<&str,(Move,i64)>, [INFO] [stdout] 90 | | do_parse!( [INFO] [stdout] 91 | | color : alt!(do_parse!(tag_s!("+") >> (1))| do_parse!(tag_s!("-") >> (-1))) >> [INFO] [stdout] 92 | | i : alt!( [INFO] [stdout] ... | [INFO] [stdout] 109 | | do_parse!(tag_s!("8") >> (7)) ) >> [INFO] [stdout] 110 | | (Move::Mv(j,i),color))); [INFO] [stdout] | |_______________________________________^ [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `tag_s`: Please use `tag` instead [INFO] [stdout] --> src/client.rs:340:5 [INFO] [stdout] | [INFO] [stdout] 340 | / named!(get_open<&str,command>, [INFO] [stdout] 341 | | do_parse!( ws!(tag_s!("OPEN")) >> [INFO] [stdout] 342 | | name :is_not!(" \n\t") >> [INFO] [stdout] 343 | | get_eoc >> [INFO] [stdout] 344 | | (command::Open(String::from(name))) [INFO] [stdout] 345 | | )); [INFO] [stdout] | |_________________^ [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `tag_s`: Please use `tag` instead [INFO] [stdout] --> src/data_loader.rs:89:5 [INFO] [stdout] | [INFO] [stdout] 89 | / named!(get_move<&str,(Move,i64)>, [INFO] [stdout] 90 | | do_parse!( [INFO] [stdout] 91 | | color : alt!(do_parse!(tag_s!("+") >> (1))| do_parse!(tag_s!("-") >> (-1))) >> [INFO] [stdout] 92 | | i : alt!( [INFO] [stdout] ... | [INFO] [stdout] 109 | | do_parse!(tag_s!("8") >> (7)) ) >> [INFO] [stdout] 110 | | (Move::Mv(j,i),color))); [INFO] [stdout] | |_______________________________________^ [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `tag_s`: Please use `tag` instead [INFO] [stdout] --> src/client.rs:346:5 [INFO] [stdout] | [INFO] [stdout] 346 | / named!(get_wl<&str,wl>, [INFO] [stdout] 347 | | alt!( [INFO] [stdout] 348 | | do_parse!(tag_s!("WIN") >> [INFO] [stdout] 349 | | (wl::Win)) | [INFO] [stdout] ... | [INFO] [stdout] 354 | | ) [INFO] [stdout] 355 | | ); [INFO] [stdout] | |_____________^ [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `tag_s`: Please use `tag` instead [INFO] [stdout] --> src/client.rs:346:5 [INFO] [stdout] | [INFO] [stdout] 346 | / named!(get_wl<&str,wl>, [INFO] [stdout] 347 | | alt!( [INFO] [stdout] 348 | | do_parse!(tag_s!("WIN") >> [INFO] [stdout] 349 | | (wl::Win)) | [INFO] [stdout] ... | [INFO] [stdout] 354 | | ) [INFO] [stdout] 355 | | ); [INFO] [stdout] | |_____________^ [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `tag_s`: Please use `tag` instead [INFO] [stdout] --> src/data_loader.rs:89:5 [INFO] [stdout] | [INFO] [stdout] 89 | / named!(get_move<&str,(Move,i64)>, [INFO] [stdout] 90 | | do_parse!( [INFO] [stdout] 91 | | color : alt!(do_parse!(tag_s!("+") >> (1))| do_parse!(tag_s!("-") >> (-1))) >> [INFO] [stdout] 92 | | i : alt!( [INFO] [stdout] ... | [INFO] [stdout] 109 | | do_parse!(tag_s!("8") >> (7)) ) >> [INFO] [stdout] 110 | | (Move::Mv(j,i),color))); [INFO] [stdout] | |_______________________________________^ [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `tag_s`: Please use `tag` instead [INFO] [stdout] --> src/client.rs:346:5 [INFO] [stdout] | [INFO] [stdout] 346 | / named!(get_wl<&str,wl>, [INFO] [stdout] 347 | | alt!( [INFO] [stdout] 348 | | do_parse!(tag_s!("WIN") >> [INFO] [stdout] 349 | | (wl::Win)) | [INFO] [stdout] ... | [INFO] [stdout] 354 | | ) [INFO] [stdout] 355 | | ); [INFO] [stdout] | |_____________^ [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `tag_s`: Please use `tag` instead [INFO] [stdout] --> src/data_loader.rs:89:5 [INFO] [stdout] | [INFO] [stdout] 89 | / named!(get_move<&str,(Move,i64)>, [INFO] [stdout] 90 | | do_parse!( [INFO] [stdout] 91 | | color : alt!(do_parse!(tag_s!("+") >> (1))| do_parse!(tag_s!("-") >> (-1))) >> [INFO] [stdout] 92 | | i : alt!( [INFO] [stdout] ... | [INFO] [stdout] 109 | | do_parse!(tag_s!("8") >> (7)) ) >> [INFO] [stdout] 110 | | (Move::Mv(j,i),color))); [INFO] [stdout] | |_______________________________________^ [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `tag_s`: Please use `tag` instead [INFO] [stdout] --> src/client.rs:356:5 [INFO] [stdout] | [INFO] [stdout] 356 | / named!(get_eoc<&str,&str> , [INFO] [stdout] 357 | | alt!(tag_s!("\t")|tag_s!("\n")|eof!())); [INFO] [stdout] | |___________________________________________________^ [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `tag_s`: Please use `tag` instead [INFO] [stdout] --> src/data_loader.rs:89:5 [INFO] [stdout] | [INFO] [stdout] 89 | / named!(get_move<&str,(Move,i64)>, [INFO] [stdout] 90 | | do_parse!( [INFO] [stdout] 91 | | color : alt!(do_parse!(tag_s!("+") >> (1))| do_parse!(tag_s!("-") >> (-1))) >> [INFO] [stdout] 92 | | i : alt!( [INFO] [stdout] ... | [INFO] [stdout] 109 | | do_parse!(tag_s!("8") >> (7)) ) >> [INFO] [stdout] 110 | | (Move::Mv(j,i),color))); [INFO] [stdout] | |_______________________________________^ [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `tag_s`: Please use `tag` instead [INFO] [stdout] --> src/data_loader.rs:89:5 [INFO] [stdout] | [INFO] [stdout] 89 | / named!(get_move<&str,(Move,i64)>, [INFO] [stdout] 90 | | do_parse!( [INFO] [stdout] 91 | | color : alt!(do_parse!(tag_s!("+") >> (1))| do_parse!(tag_s!("-") >> (-1))) >> [INFO] [stdout] 92 | | i : alt!( [INFO] [stdout] ... | [INFO] [stdout] 109 | | do_parse!(tag_s!("8") >> (7)) ) >> [INFO] [stdout] 110 | | (Move::Mv(j,i),color))); [INFO] [stdout] | |_______________________________________^ [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `tag_s`: Please use `tag` instead [INFO] [stdout] --> src/data_loader.rs:89:5 [INFO] [stdout] | [INFO] [stdout] 89 | / named!(get_move<&str,(Move,i64)>, [INFO] [stdout] 90 | | do_parse!( [INFO] [stdout] 91 | | color : alt!(do_parse!(tag_s!("+") >> (1))| do_parse!(tag_s!("-") >> (-1))) >> [INFO] [stdout] 92 | | i : alt!( [INFO] [stdout] ... | [INFO] [stdout] 109 | | do_parse!(tag_s!("8") >> (7)) ) >> [INFO] [stdout] 110 | | (Move::Mv(j,i),color))); [INFO] [stdout] | |_______________________________________^ [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `tag_s`: Please use `tag` instead [INFO] [stdout] --> src/data_loader.rs:89:5 [INFO] [stdout] | [INFO] [stdout] 89 | / named!(get_move<&str,(Move,i64)>, [INFO] [stdout] 90 | | do_parse!( [INFO] [stdout] 91 | | color : alt!(do_parse!(tag_s!("+") >> (1))| do_parse!(tag_s!("-") >> (-1))) >> [INFO] [stdout] 92 | | i : alt!( [INFO] [stdout] ... | [INFO] [stdout] 109 | | do_parse!(tag_s!("8") >> (7)) ) >> [INFO] [stdout] 110 | | (Move::Mv(j,i),color))); [INFO] [stdout] | |_______________________________________^ [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `tag_s`: Please use `tag` instead [INFO] [stdout] --> src/client.rs:356:5 [INFO] [stdout] | [INFO] [stdout] 356 | / named!(get_eoc<&str,&str> , [INFO] [stdout] 357 | | alt!(tag_s!("\t")|tag_s!("\n")|eof!())); [INFO] [stdout] | |___________________________________________________^ [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `tag_s`: Please use `tag` instead [INFO] [stdout] --> src/data_loader.rs:89:5 [INFO] [stdout] | [INFO] [stdout] 89 | / named!(get_move<&str,(Move,i64)>, [INFO] [stdout] 90 | | do_parse!( [INFO] [stdout] 91 | | color : alt!(do_parse!(tag_s!("+") >> (1))| do_parse!(tag_s!("-") >> (-1))) >> [INFO] [stdout] 92 | | i : alt!( [INFO] [stdout] ... | [INFO] [stdout] 109 | | do_parse!(tag_s!("8") >> (7)) ) >> [INFO] [stdout] 110 | | (Move::Mv(j,i),color))); [INFO] [stdout] | |_______________________________________^ [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `tag_s`: Please use `tag` instead [INFO] [stdout] --> src/client.rs:363:5 [INFO] [stdout] | [INFO] [stdout] 363 | / named!(get_end<&str,command>, [INFO] [stdout] 364 | | do_parse!( [INFO] [stdout] 365 | | ws!(tag_s!("END")) >> [INFO] [stdout] 366 | | res : ws!(get_wl) >> [INFO] [stdout] ... | [INFO] [stdout] 372 | | command::End(res,win_count.unwrap() as usize,lose_count.unwrap() as usize,String::from(reason))) [INFO] [stdout] 373 | | )); [INFO] [stdout] | |_________________^ [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `tag_s`: Please use `tag` instead [INFO] [stdout] --> src/client.rs:374:5 [INFO] [stdout] | [INFO] [stdout] 374 | / named!(get_move<&str,command>, [INFO] [stdout] 375 | | do_parse!( [INFO] [stdout] 376 | | ws!(tag_s!("MOVE")) >> [INFO] [stdout] 377 | | a : alt!( [INFO] [stdout] ... | [INFO] [stdout] 385 | | (a) [INFO] [stdout] 386 | | )); [INFO] [stdout] | |_________________^ [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `tag_s`: Please use `tag` instead [INFO] [stdout] --> src/client.rs:374:5 [INFO] [stdout] | [INFO] [stdout] 374 | / named!(get_move<&str,command>, [INFO] [stdout] 375 | | do_parse!( [INFO] [stdout] 376 | | ws!(tag_s!("MOVE")) >> [INFO] [stdout] 377 | | a : alt!( [INFO] [stdout] ... | [INFO] [stdout] 385 | | (a) [INFO] [stdout] 386 | | )); [INFO] [stdout] | |_________________^ [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `tag_s`: Please use `tag` instead [INFO] [stdout] --> src/client.rs:374:5 [INFO] [stdout] | [INFO] [stdout] 374 | / named!(get_move<&str,command>, [INFO] [stdout] 375 | | do_parse!( [INFO] [stdout] 376 | | ws!(tag_s!("MOVE")) >> [INFO] [stdout] 377 | | a : alt!( [INFO] [stdout] ... | [INFO] [stdout] 385 | | (a) [INFO] [stdout] 386 | | )); [INFO] [stdout] | |_________________^ [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `tag_s`: Please use `tag` instead [INFO] [stdout] --> src/data_loader.rs:116:5 [INFO] [stdout] | [INFO] [stdout] 116 | / named!(get_int<&str,i64>, [INFO] [stdout] 117 | | alt!(do_parse!(s : int32 >> ((s.unwrap())as i64))|do_parse!(tag_s!("+") >> s : int32 >> ((s.unwrap())as i64)) | do_parse!(tag_s!("-") >> s : int32 >> (-(s.unwrap() )as i64))) ); [INFO] [stdout] | |_____________________________________________________________________________________________________________________________________________________________________________________________^ [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `tag_s`: Please use `tag` instead [INFO] [stdout] --> src/client.rs:388:5 [INFO] [stdout] | [INFO] [stdout] 388 | / named!(get_wb<&str,i64>, [INFO] [stdout] 389 | | alt!( [INFO] [stdout] 390 | | do_parse!(ws!(tag_s!("WHITE")) >> [INFO] [stdout] 391 | | (-1) ) | [INFO] [stdout] 392 | | do_parse!(ws!(tag_s!("BLACK")) >> [INFO] [stdout] 393 | | (1))) [INFO] [stdout] 394 | | ); [INFO] [stdout] | |______________^ [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `tag_s`: Please use `tag` instead [INFO] [stdout] --> src/data_loader.rs:116:5 [INFO] [stdout] | [INFO] [stdout] 116 | / named!(get_int<&str,i64>, [INFO] [stdout] 117 | | alt!(do_parse!(s : int32 >> ((s.unwrap())as i64))|do_parse!(tag_s!("+") >> s : int32 >> ((s.unwrap())as i64)) | do_parse!(tag_s!("-") >> s : int32 >> (-(s.unwrap() )as i64))) ); [INFO] [stdout] | |_____________________________________________________________________________________________________________________________________________________________________________________________^ [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `tag_s`: Please use `tag` instead [INFO] [stdout] --> src/client.rs:388:5 [INFO] [stdout] | [INFO] [stdout] 388 | / named!(get_wb<&str,i64>, [INFO] [stdout] 389 | | alt!( [INFO] [stdout] 390 | | do_parse!(ws!(tag_s!("WHITE")) >> [INFO] [stdout] 391 | | (-1) ) | [INFO] [stdout] 392 | | do_parse!(ws!(tag_s!("BLACK")) >> [INFO] [stdout] 393 | | (1))) [INFO] [stdout] 394 | | ); [INFO] [stdout] | |______________^ [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `tag_s`: Please use `tag` instead [INFO] [stdout] --> src/data_loader.rs:120:5 [INFO] [stdout] | [INFO] [stdout] 120 | / named!(get_line<&str,(Vec<(Move,i64)>,i64)>, [INFO] [stdout] 121 | | do_parse!( [INFO] [stdout] 122 | | moves : get_moves >> [INFO] [stdout] 123 | | tag_s!(": ") >> [INFO] [stdout] ... | [INFO] [stdout] 127 | | (moves,score) [INFO] [stdout] 128 | | )); [INFO] [stdout] | |___________^ [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `tag_s`: Please use `tag` instead [INFO] [stdout] --> src/client.rs:396:5 [INFO] [stdout] | [INFO] [stdout] 396 | / named!(get_start<&str,command>, [INFO] [stdout] 397 | | do_parse! (ws!( [INFO] [stdout] 398 | | tag_s!("START")) >> [INFO] [stdout] 399 | | a : ws!(get_wb) >> [INFO] [stdout] ... | [INFO] [stdout] 404 | | command::Start(a,String::from(s),t.unwrap())) [INFO] [stdout] 405 | | )); [INFO] [stdout] | |__________________^ [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `tag_s`: Please use `tag` instead [INFO] [stdout] --> src/data_loader.rs:140:5 [INFO] [stdout] | [INFO] [stdout] 140 | / named!(get_value<&str,Num>, [INFO] [stdout] 141 | | do_parse! ( [INFO] [stdout] 142 | | val : float_s >> [INFO] [stdout] 143 | | tag_s!(",") >> [INFO] [stdout] 144 | | (val as Num))); [INFO] [stdout] | |___________________^ [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `client` [INFO] [stdout] --> src/game.rs:2:5 [INFO] [stdout] | [INFO] [stdout] 2 | use client; [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `main` [INFO] [stdout] --> src/game.rs:3:5 [INFO] [stdout] | [INFO] [stdout] 3 | use main; [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `W` [INFO] [stdout] --> src/game.rs:9:66 [INFO] [stdout] | [INFO] [stdout] 9 | use pattern::{calculate, get_feature_vector_from_board, state_f, W, WS}; [INFO] [stdout] | ^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `last_search_hash` [INFO] [stdout] --> src/game.rs:11:14 [INFO] [stdout] | [INFO] [stdout] 11 | use search::{last_search_hash, ELSE, PASS}; [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/game.rs:259:60 [INFO] [stdout] | [INFO] [stdout] 259 | pub fn gen_player(w: WS, depth: usize, last: usize) -> Box (Move, Num)> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Fn((u64, u64), i64) -> (Move, Num)` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/game.rs:355:21 [INFO] [stdout] | [INFO] [stdout] 355 | play1: &Box (Move, Num)>, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Fn((u64, u64), i64) -> (Move, Num)` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/game.rs:356:21 [INFO] [stdout] | [INFO] [stdout] 356 | play2: &Box (Move, Num)>, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Fn((u64, u64), i64) -> (Move, Num)` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/game.rs:391:21 [INFO] [stdout] | [INFO] [stdout] 391 | play1: &Box (Move, Num)>, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Fn((u64, u64), i64) -> (Move, Num)` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/game.rs:392:21 [INFO] [stdout] | [INFO] [stdout] 392 | play2: &Box (Move, Num)>, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Fn((u64, u64), i64) -> (Move, Num)` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::collections::HashMap` [INFO] [stdout] --> src/mcts.rs:1:5 [INFO] [stdout] | [INFO] [stdout] 1 | use std::collections::HashMap; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `random_play`, `self_play`, `shallow_alpha_beta` [INFO] [stdout] --> src/mcts.rs:7:14 [INFO] [stdout] | [INFO] [stdout] 7 | use client::{random_play, self_play, self_play_sub, shallow_alpha_beta, wl}; [INFO] [stdout] | ^^^^^^^^^^^ ^^^^^^^^^ ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `PASS` [INFO] [stdout] --> src/mcts.rs:9:20 [INFO] [stdout] | [INFO] [stdout] 9 | use search::{ELSE, PASS}; [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `Duration` [INFO] [stdout] --> src/mcts.rs:12:17 [INFO] [stdout] | [INFO] [stdout] 12 | use std::time::{Duration, SystemTime}; [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around assigned value [INFO] [stdout] --> src/mcts.rs:82:29 [INFO] [stdout] | [INFO] [stdout] 82 | let score = (q + u); [INFO] [stdout] | ^^^^^^^ help: remove these parentheses [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `E` [INFO] [stdout] --> src/pattern.rs:4:21 [INFO] [stdout] | [INFO] [stdout] 4 | use constant::{Num, E, STAGE}; [INFO] [stdout] | ^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `data_loader::*` [INFO] [stdout] --> src/pattern.rs:5:5 [INFO] [stdout] | [INFO] [stdout] 5 | use data_loader::*; [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `mcts::*` [INFO] [stdout] --> src/pattern.rs:6:5 [INFO] [stdout] | [INFO] [stdout] 6 | use mcts::*; [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `tag_s`: Please use `tag` instead [INFO] [stdout] --> src/client.rs:407:5 [INFO] [stdout] | [INFO] [stdout] 407 | / named!(get_ack<&str,command>, [INFO] [stdout] 408 | | do_parse!( [INFO] [stdout] 409 | | ws!(tag_s!("ACK")) >> [INFO] [stdout] 410 | | a : int32 >> [INFO] [stdout] 411 | | get_eoc >> [INFO] [stdout] 412 | | (command::Ack(a.unwrap() )))); [INFO] [stdout] | |_____________________________________________^ [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `search::*` [INFO] [stdout] --> src/pattern.rs:8:5 [INFO] [stdout] | [INFO] [stdout] 8 | use search::*; [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `tag_s`: Please use `tag` instead [INFO] [stdout] --> src/client.rs:414:5 [INFO] [stdout] | [INFO] [stdout] 414 | / named!(get_bye<&str,command>, [INFO] [stdout] 415 | | do_parse!( [INFO] [stdout] 416 | | tag_s!("BYE") >> [INFO] [stdout] 417 | | (command::Bye))); [INFO] [stdout] | |________________________________^ [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `data_loader` [INFO] [stdout] --> src/data_loader.rs:4:5 [INFO] [stdout] | [INFO] [stdout] 4 | use data_loader; [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::cmp::min` [INFO] [stdout] --> src/data_loader.rs:9:5 [INFO] [stdout] | [INFO] [stdout] 9 | use std::cmp::min; [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::fs::File` [INFO] [stdout] --> src/pattern.rs:10:5 [INFO] [stdout] | [INFO] [stdout] 10 | use std::fs::File; [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `Rng`, `thread_rng` [INFO] [stdout] --> src/pattern.rs:13:12 [INFO] [stdout] | [INFO] [stdout] 13 | use rand::{thread_rng, Rng}; [INFO] [stdout] | ^^^^^^^^^^ ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `SystemTime`, `UNIX_EPOCH` [INFO] [stdout] --> src/pattern.rs:15:17 [INFO] [stdout] | [INFO] [stdout] 15 | use std::time::{SystemTime, UNIX_EPOCH}; [INFO] [stdout] | ^^^^^^^^^^ ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::io::prelude::*` [INFO] [stdout] --> src/pattern.rs:17:5 [INFO] [stdout] | [INFO] [stdout] 17 | use std::io::prelude::*; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `BufWriter`, `Write` [INFO] [stdout] --> src/pattern.rs:18:15 [INFO] [stdout] | [INFO] [stdout] 18 | use std::io::{BufWriter, Write}; [INFO] [stdout] | ^^^^^^^^^ ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused macro definition [INFO] [stdout] --> src/pattern.rs:97:1 [INFO] [stdout] | [INFO] [stdout] 97 | / macro_rules! get_idx { [INFO] [stdout] 98 | | (diag_4) => { [INFO] [stdout] 99 | | (0) [INFO] [stdout] 100 | | }; [INFO] [stdout] ... | [INFO] [stdout] 139 | | }; [INFO] [stdout] 140 | | } [INFO] [stdout] | |_^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_macros)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused macro definition [INFO] [stdout] --> src/pattern.rs:141:1 [INFO] [stdout] | [INFO] [stdout] 141 | / macro_rules! get_wsize { [INFO] [stdout] 142 | | (diag_4) => { [INFO] [stdout] 143 | | (POW_THREE[4]) [INFO] [stdout] 144 | | }; [INFO] [stdout] ... | [INFO] [stdout] 183 | | }; [INFO] [stdout] 184 | | } [INFO] [stdout] | |_^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `bitboard` [INFO] [stdout] --> src/learn.rs:1:5 [INFO] [stdout] | [INFO] [stdout] 1 | use bitboard; [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `SystemTime`, `UNIX_EPOCH` [INFO] [stdout] --> src/learn.rs:2:17 [INFO] [stdout] | [INFO] [stdout] 2 | use std::time::{SystemTime, UNIX_EPOCH}; [INFO] [stdout] | ^^^^^^^^^^ ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `client` [INFO] [stdout] --> src/learn.rs:4:5 [INFO] [stdout] | [INFO] [stdout] 4 | use client; [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `client::*` [INFO] [stdout] --> src/learn.rs:11:5 [INFO] [stdout] | [INFO] [stdout] 11 | use client::*; [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around block return value [INFO] [stdout] --> src/learn.rs:71:21 [INFO] [stdout] | [INFO] [stdout] 71 | (-teacher_winrate * E.log(eval_winrate)) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove these parentheses [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `last_optimization` [INFO] [stdout] --> src/search.rs:1:5 [INFO] [stdout] | [INFO] [stdout] 1 | use last_optimization; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `params::PARARELL` [INFO] [stdout] --> src/search.rs:4:5 [INFO] [stdout] | [INFO] [stdout] 4 | use params::PARARELL; [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `pattern::*` [INFO] [stdout] --> src/search.rs:5:5 [INFO] [stdout] | [INFO] [stdout] 5 | use pattern::*; [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::cell::RefCell` [INFO] [stdout] --> src/valuation.rs:5:5 [INFO] [stdout] | [INFO] [stdout] 5 | use std::cell::RefCell; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `Num` [INFO] [stdout] --> src/main.rs:27:16 [INFO] [stdout] | [INFO] [stdout] 27 | use constant::{Num, STAGE}; [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `learn::LAMBDA` [INFO] [stdout] --> src/main.rs:28:5 [INFO] [stdout] | [INFO] [stdout] 28 | use learn::LAMBDA; [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `optimizer::Optimizer` [INFO] [stdout] --> src/main.rs:29:5 [INFO] [stdout] | [INFO] [stdout] 29 | use optimizer::Optimizer; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::collections::HashMap` [INFO] [stdout] --> src/main.rs:31:5 [INFO] [stdout] | [INFO] [stdout] 31 | use std::collections::HashMap; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `IpAddr`, `Ipv4Addr`, `SocketAddr` [INFO] [stdout] --> src/main.rs:33:16 [INFO] [stdout] | [INFO] [stdout] 33 | use std::net::{IpAddr, Ipv4Addr, SocketAddr}; [INFO] [stdout] | ^^^^^^ ^^^^^^^^ ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated function `nom::float_s`: Please use `float` instead [INFO] [stdout] --> src/data_loader.rs:68:5 [INFO] [stdout] | [INFO] [stdout] 68 | / named!(get_value<&str,Num>, [INFO] [stdout] 69 | | do_parse! ( [INFO] [stdout] 70 | | val : float_s >> [INFO] [stdout] 71 | | tag_s!(",") >> [INFO] [stdout] 72 | | (val as Num))); [INFO] [stdout] | |___________________^ [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated function `nom::float_s`: Please use `float` instead [INFO] [stdout] --> src/data_loader.rs:140:5 [INFO] [stdout] | [INFO] [stdout] 140 | / named!(get_value<&str,Num>, [INFO] [stdout] 141 | | do_parse! ( [INFO] [stdout] 142 | | val : float_s >> [INFO] [stdout] 143 | | tag_s!(",") >> [INFO] [stdout] 144 | | (val as Num))); [INFO] [stdout] | |___________________^ [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `tag_s`: Please use `tag` instead [INFO] [stdout] --> src/data_loader.rs:68:5 [INFO] [stdout] | [INFO] [stdout] 68 | / named!(get_value<&str,Num>, [INFO] [stdout] 69 | | do_parse! ( [INFO] [stdout] 70 | | val : float_s >> [INFO] [stdout] 71 | | tag_s!(",") >> [INFO] [stdout] 72 | | (val as Num))); [INFO] [stdout] | |___________________^ [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `tag_s`: Please use `tag` instead [INFO] [stdout] --> src/data_loader.rs:89:5 [INFO] [stdout] | [INFO] [stdout] 89 | / named!(get_move<&str,(Move,i64)>, [INFO] [stdout] 90 | | do_parse!( [INFO] [stdout] 91 | | color : alt!(do_parse!(tag_s!("+") >> (1))| do_parse!(tag_s!("-") >> (-1))) >> [INFO] [stdout] 92 | | i : alt!( [INFO] [stdout] ... | [INFO] [stdout] 109 | | do_parse!(tag_s!("8") >> (7)) ) >> [INFO] [stdout] 110 | | (Move::Mv(j,i),color))); [INFO] [stdout] | |_______________________________________^ [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `tag_s`: Please use `tag` instead [INFO] [stdout] --> src/data_loader.rs:89:5 [INFO] [stdout] | [INFO] [stdout] 89 | / named!(get_move<&str,(Move,i64)>, [INFO] [stdout] 90 | | do_parse!( [INFO] [stdout] 91 | | color : alt!(do_parse!(tag_s!("+") >> (1))| do_parse!(tag_s!("-") >> (-1))) >> [INFO] [stdout] 92 | | i : alt!( [INFO] [stdout] ... | [INFO] [stdout] 109 | | do_parse!(tag_s!("8") >> (7)) ) >> [INFO] [stdout] 110 | | (Move::Mv(j,i),color))); [INFO] [stdout] | |_______________________________________^ [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `tag_s`: Please use `tag` instead [INFO] [stdout] --> src/data_loader.rs:89:5 [INFO] [stdout] | [INFO] [stdout] 89 | / named!(get_move<&str,(Move,i64)>, [INFO] [stdout] 90 | | do_parse!( [INFO] [stdout] 91 | | color : alt!(do_parse!(tag_s!("+") >> (1))| do_parse!(tag_s!("-") >> (-1))) >> [INFO] [stdout] 92 | | i : alt!( [INFO] [stdout] ... | [INFO] [stdout] 109 | | do_parse!(tag_s!("8") >> (7)) ) >> [INFO] [stdout] 110 | | (Move::Mv(j,i),color))); [INFO] [stdout] | |_______________________________________^ [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `tag_s`: Please use `tag` instead [INFO] [stdout] --> src/data_loader.rs:89:5 [INFO] [stdout] | [INFO] [stdout] 89 | / named!(get_move<&str,(Move,i64)>, [INFO] [stdout] 90 | | do_parse!( [INFO] [stdout] 91 | | color : alt!(do_parse!(tag_s!("+") >> (1))| do_parse!(tag_s!("-") >> (-1))) >> [INFO] [stdout] 92 | | i : alt!( [INFO] [stdout] ... | [INFO] [stdout] 109 | | do_parse!(tag_s!("8") >> (7)) ) >> [INFO] [stdout] 110 | | (Move::Mv(j,i),color))); [INFO] [stdout] | |_______________________________________^ [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `tag_s`: Please use `tag` instead [INFO] [stdout] --> src/data_loader.rs:89:5 [INFO] [stdout] | [INFO] [stdout] 89 | / named!(get_move<&str,(Move,i64)>, [INFO] [stdout] 90 | | do_parse!( [INFO] [stdout] 91 | | color : alt!(do_parse!(tag_s!("+") >> (1))| do_parse!(tag_s!("-") >> (-1))) >> [INFO] [stdout] 92 | | i : alt!( [INFO] [stdout] ... | [INFO] [stdout] 109 | | do_parse!(tag_s!("8") >> (7)) ) >> [INFO] [stdout] 110 | | (Move::Mv(j,i),color))); [INFO] [stdout] | |_______________________________________^ [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `tag_s`: Please use `tag` instead [INFO] [stdout] --> src/data_loader.rs:89:5 [INFO] [stdout] | [INFO] [stdout] 89 | / named!(get_move<&str,(Move,i64)>, [INFO] [stdout] 90 | | do_parse!( [INFO] [stdout] 91 | | color : alt!(do_parse!(tag_s!("+") >> (1))| do_parse!(tag_s!("-") >> (-1))) >> [INFO] [stdout] 92 | | i : alt!( [INFO] [stdout] ... | [INFO] [stdout] 109 | | do_parse!(tag_s!("8") >> (7)) ) >> [INFO] [stdout] 110 | | (Move::Mv(j,i),color))); [INFO] [stdout] | |_______________________________________^ [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `tag_s`: Please use `tag` instead [INFO] [stdout] --> src/data_loader.rs:89:5 [INFO] [stdout] | [INFO] [stdout] 89 | / named!(get_move<&str,(Move,i64)>, [INFO] [stdout] 90 | | do_parse!( [INFO] [stdout] 91 | | color : alt!(do_parse!(tag_s!("+") >> (1))| do_parse!(tag_s!("-") >> (-1))) >> [INFO] [stdout] 92 | | i : alt!( [INFO] [stdout] ... | [INFO] [stdout] 109 | | do_parse!(tag_s!("8") >> (7)) ) >> [INFO] [stdout] 110 | | (Move::Mv(j,i),color))); [INFO] [stdout] | |_______________________________________^ [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `tag_s`: Please use `tag` instead [INFO] [stdout] --> src/data_loader.rs:89:5 [INFO] [stdout] | [INFO] [stdout] 89 | / named!(get_move<&str,(Move,i64)>, [INFO] [stdout] 90 | | do_parse!( [INFO] [stdout] 91 | | color : alt!(do_parse!(tag_s!("+") >> (1))| do_parse!(tag_s!("-") >> (-1))) >> [INFO] [stdout] 92 | | i : alt!( [INFO] [stdout] ... | [INFO] [stdout] 109 | | do_parse!(tag_s!("8") >> (7)) ) >> [INFO] [stdout] 110 | | (Move::Mv(j,i),color))); [INFO] [stdout] | |_______________________________________^ [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `tag_s`: Please use `tag` instead [INFO] [stdout] --> src/data_loader.rs:89:5 [INFO] [stdout] | [INFO] [stdout] 89 | / named!(get_move<&str,(Move,i64)>, [INFO] [stdout] 90 | | do_parse!( [INFO] [stdout] 91 | | color : alt!(do_parse!(tag_s!("+") >> (1))| do_parse!(tag_s!("-") >> (-1))) >> [INFO] [stdout] 92 | | i : alt!( [INFO] [stdout] ... | [INFO] [stdout] 109 | | do_parse!(tag_s!("8") >> (7)) ) >> [INFO] [stdout] 110 | | (Move::Mv(j,i),color))); [INFO] [stdout] | |_______________________________________^ [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `tag_s`: Please use `tag` instead [INFO] [stdout] --> src/data_loader.rs:89:5 [INFO] [stdout] | [INFO] [stdout] 89 | / named!(get_move<&str,(Move,i64)>, [INFO] [stdout] 90 | | do_parse!( [INFO] [stdout] 91 | | color : alt!(do_parse!(tag_s!("+") >> (1))| do_parse!(tag_s!("-") >> (-1))) >> [INFO] [stdout] 92 | | i : alt!( [INFO] [stdout] ... | [INFO] [stdout] 109 | | do_parse!(tag_s!("8") >> (7)) ) >> [INFO] [stdout] 110 | | (Move::Mv(j,i),color))); [INFO] [stdout] | |_______________________________________^ [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `tag_s`: Please use `tag` instead [INFO] [stdout] --> src/data_loader.rs:89:5 [INFO] [stdout] | [INFO] [stdout] 89 | / named!(get_move<&str,(Move,i64)>, [INFO] [stdout] 90 | | do_parse!( [INFO] [stdout] 91 | | color : alt!(do_parse!(tag_s!("+") >> (1))| do_parse!(tag_s!("-") >> (-1))) >> [INFO] [stdout] 92 | | i : alt!( [INFO] [stdout] ... | [INFO] [stdout] 109 | | do_parse!(tag_s!("8") >> (7)) ) >> [INFO] [stdout] 110 | | (Move::Mv(j,i),color))); [INFO] [stdout] | |_______________________________________^ [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `tag_s`: Please use `tag` instead [INFO] [stdout] --> src/data_loader.rs:89:5 [INFO] [stdout] | [INFO] [stdout] 89 | / named!(get_move<&str,(Move,i64)>, [INFO] [stdout] 90 | | do_parse!( [INFO] [stdout] 91 | | color : alt!(do_parse!(tag_s!("+") >> (1))| do_parse!(tag_s!("-") >> (-1))) >> [INFO] [stdout] 92 | | i : alt!( [INFO] [stdout] ... | [INFO] [stdout] 109 | | do_parse!(tag_s!("8") >> (7)) ) >> [INFO] [stdout] 110 | | (Move::Mv(j,i),color))); [INFO] [stdout] | |_______________________________________^ [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `tag_s`: Please use `tag` instead [INFO] [stdout] --> src/data_loader.rs:89:5 [INFO] [stdout] | [INFO] [stdout] 89 | / named!(get_move<&str,(Move,i64)>, [INFO] [stdout] 90 | | do_parse!( [INFO] [stdout] 91 | | color : alt!(do_parse!(tag_s!("+") >> (1))| do_parse!(tag_s!("-") >> (-1))) >> [INFO] [stdout] 92 | | i : alt!( [INFO] [stdout] ... | [INFO] [stdout] 109 | | do_parse!(tag_s!("8") >> (7)) ) >> [INFO] [stdout] 110 | | (Move::Mv(j,i),color))); [INFO] [stdout] | |_______________________________________^ [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `tag_s`: Please use `tag` instead [INFO] [stdout] --> src/data_loader.rs:89:5 [INFO] [stdout] | [INFO] [stdout] 89 | / named!(get_move<&str,(Move,i64)>, [INFO] [stdout] 90 | | do_parse!( [INFO] [stdout] 91 | | color : alt!(do_parse!(tag_s!("+") >> (1))| do_parse!(tag_s!("-") >> (-1))) >> [INFO] [stdout] 92 | | i : alt!( [INFO] [stdout] ... | [INFO] [stdout] 109 | | do_parse!(tag_s!("8") >> (7)) ) >> [INFO] [stdout] 110 | | (Move::Mv(j,i),color))); [INFO] [stdout] | |_______________________________________^ [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated associated function `std::error::Error::description`: use the Display impl or to_string() [INFO] [stdout] --> src/arg_parse.rs:93:13 [INFO] [stdout] | [INFO] [stdout] 93 | Err(err.description().to_owned()) [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `tag_s`: Please use `tag` instead [INFO] [stdout] --> src/data_loader.rs:89:5 [INFO] [stdout] | [INFO] [stdout] 89 | / named!(get_move<&str,(Move,i64)>, [INFO] [stdout] 90 | | do_parse!( [INFO] [stdout] 91 | | color : alt!(do_parse!(tag_s!("+") >> (1))| do_parse!(tag_s!("-") >> (-1))) >> [INFO] [stdout] 92 | | i : alt!( [INFO] [stdout] ... | [INFO] [stdout] 109 | | do_parse!(tag_s!("8") >> (7)) ) >> [INFO] [stdout] 110 | | (Move::Mv(j,i),color))); [INFO] [stdout] | |_______________________________________^ [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `tag_s`: Please use `tag` instead [INFO] [stdout] --> src/data_loader.rs:89:5 [INFO] [stdout] | [INFO] [stdout] 89 | / named!(get_move<&str,(Move,i64)>, [INFO] [stdout] 90 | | do_parse!( [INFO] [stdout] 91 | | color : alt!(do_parse!(tag_s!("+") >> (1))| do_parse!(tag_s!("-") >> (-1))) >> [INFO] [stdout] 92 | | i : alt!( [INFO] [stdout] ... | [INFO] [stdout] 109 | | do_parse!(tag_s!("8") >> (7)) ) >> [INFO] [stdout] 110 | | (Move::Mv(j,i),color))); [INFO] [stdout] | |_______________________________________^ [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `tag_s`: Please use `tag` instead [INFO] [stdout] --> src/data_loader.rs:89:5 [INFO] [stdout] | [INFO] [stdout] 89 | / named!(get_move<&str,(Move,i64)>, [INFO] [stdout] 90 | | do_parse!( [INFO] [stdout] 91 | | color : alt!(do_parse!(tag_s!("+") >> (1))| do_parse!(tag_s!("-") >> (-1))) >> [INFO] [stdout] 92 | | i : alt!( [INFO] [stdout] ... | [INFO] [stdout] 109 | | do_parse!(tag_s!("8") >> (7)) ) >> [INFO] [stdout] 110 | | (Move::Mv(j,i),color))); [INFO] [stdout] | |_______________________________________^ [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `tag_s`: Please use `tag` instead [INFO] [stdout] --> src/data_loader.rs:89:5 [INFO] [stdout] | [INFO] [stdout] 89 | / named!(get_move<&str,(Move,i64)>, [INFO] [stdout] 90 | | do_parse!( [INFO] [stdout] 91 | | color : alt!(do_parse!(tag_s!("+") >> (1))| do_parse!(tag_s!("-") >> (-1))) >> [INFO] [stdout] 92 | | i : alt!( [INFO] [stdout] ... | [INFO] [stdout] 109 | | do_parse!(tag_s!("8") >> (7)) ) >> [INFO] [stdout] 110 | | (Move::Mv(j,i),color))); [INFO] [stdout] | |_______________________________________^ [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `tag_s`: Please use `tag` instead [INFO] [stdout] --> src/data_loader.rs:116:5 [INFO] [stdout] | [INFO] [stdout] 116 | / named!(get_int<&str,i64>, [INFO] [stdout] 117 | | alt!(do_parse!(s : int32 >> ((s.unwrap())as i64))|do_parse!(tag_s!("+") >> s : int32 >> ((s.unwrap())as i64)) | do_parse!(tag_s!("-") >> s : int32 >> (-(s.unwrap() )as i64))) ); [INFO] [stdout] | |_____________________________________________________________________________________________________________________________________________________________________________________________^ [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `tag_s`: Please use `tag` instead [INFO] [stdout] --> src/data_loader.rs:116:5 [INFO] [stdout] | [INFO] [stdout] 116 | / named!(get_int<&str,i64>, [INFO] [stdout] 117 | | alt!(do_parse!(s : int32 >> ((s.unwrap())as i64))|do_parse!(tag_s!("+") >> s : int32 >> ((s.unwrap())as i64)) | do_parse!(tag_s!("-") >> s : int32 >> (-(s.unwrap() )as i64))) ); [INFO] [stdout] | |_____________________________________________________________________________________________________________________________________________________________________________________________^ [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `tag_s`: Please use `tag` instead [INFO] [stdout] --> src/data_loader.rs:120:5 [INFO] [stdout] | [INFO] [stdout] 120 | / named!(get_line<&str,(Vec<(Move,i64)>,i64)>, [INFO] [stdout] 121 | | do_parse!( [INFO] [stdout] 122 | | moves : get_moves >> [INFO] [stdout] 123 | | tag_s!(": ") >> [INFO] [stdout] ... | [INFO] [stdout] 127 | | (moves,score) [INFO] [stdout] 128 | | )); [INFO] [stdout] | |___________^ [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `tag_s`: Please use `tag` instead [INFO] [stdout] --> src/data_loader.rs:140:5 [INFO] [stdout] | [INFO] [stdout] 140 | / named!(get_value<&str,Num>, [INFO] [stdout] 141 | | do_parse! ( [INFO] [stdout] 142 | | val : float_s >> [INFO] [stdout] 143 | | tag_s!(",") >> [INFO] [stdout] 144 | | (val as Num))); [INFO] [stdout] | |___________________^ [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `client` [INFO] [stdout] --> src/game.rs:2:5 [INFO] [stdout] | [INFO] [stdout] 2 | use client; [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `main` [INFO] [stdout] --> src/game.rs:3:5 [INFO] [stdout] | [INFO] [stdout] 3 | use main; [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `W` [INFO] [stdout] --> src/game.rs:9:66 [INFO] [stdout] | [INFO] [stdout] 9 | use pattern::{calculate, get_feature_vector_from_board, state_f, W, WS}; [INFO] [stdout] | ^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `last_search_hash` [INFO] [stdout] --> src/game.rs:11:14 [INFO] [stdout] | [INFO] [stdout] 11 | use search::{last_search_hash, ELSE, PASS}; [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/game.rs:259:60 [INFO] [stdout] | [INFO] [stdout] 259 | pub fn gen_player(w: WS, depth: usize, last: usize) -> Box (Move, Num)> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Fn((u64, u64), i64) -> (Move, Num)` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/game.rs:355:21 [INFO] [stdout] | [INFO] [stdout] 355 | play1: &Box (Move, Num)>, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Fn((u64, u64), i64) -> (Move, Num)` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/game.rs:356:21 [INFO] [stdout] | [INFO] [stdout] 356 | play2: &Box (Move, Num)>, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Fn((u64, u64), i64) -> (Move, Num)` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/game.rs:391:21 [INFO] [stdout] | [INFO] [stdout] 391 | play1: &Box (Move, Num)>, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Fn((u64, u64), i64) -> (Move, Num)` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/game.rs:392:21 [INFO] [stdout] | [INFO] [stdout] 392 | play2: &Box (Move, Num)>, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Fn((u64, u64), i64) -> (Move, Num)` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::collections::HashMap` [INFO] [stdout] --> src/mcts.rs:1:5 [INFO] [stdout] | [INFO] [stdout] 1 | use std::collections::HashMap; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `random_play`, `self_play`, `shallow_alpha_beta` [INFO] [stdout] --> src/mcts.rs:7:14 [INFO] [stdout] | [INFO] [stdout] 7 | use client::{random_play, self_play, self_play_sub, shallow_alpha_beta, wl}; [INFO] [stdout] | ^^^^^^^^^^^ ^^^^^^^^^ ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `PASS` [INFO] [stdout] --> src/mcts.rs:9:20 [INFO] [stdout] | [INFO] [stdout] 9 | use search::{ELSE, PASS}; [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `Duration` [INFO] [stdout] --> src/mcts.rs:12:17 [INFO] [stdout] | [INFO] [stdout] 12 | use std::time::{Duration, SystemTime}; [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around assigned value [INFO] [stdout] --> src/mcts.rs:82:29 [INFO] [stdout] | [INFO] [stdout] 82 | let score = (q + u); [INFO] [stdout] | ^^^^^^^ help: remove these parentheses [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `E` [INFO] [stdout] --> src/pattern.rs:4:21 [INFO] [stdout] | [INFO] [stdout] 4 | use constant::{Num, E, STAGE}; [INFO] [stdout] | ^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `data_loader::*` [INFO] [stdout] --> src/pattern.rs:5:5 [INFO] [stdout] | [INFO] [stdout] 5 | use data_loader::*; [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `mcts::*` [INFO] [stdout] --> src/pattern.rs:6:5 [INFO] [stdout] | [INFO] [stdout] 6 | use mcts::*; [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `search::*` [INFO] [stdout] --> src/pattern.rs:8:5 [INFO] [stdout] | [INFO] [stdout] 8 | use search::*; [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::fs::File` [INFO] [stdout] --> src/pattern.rs:10:5 [INFO] [stdout] | [INFO] [stdout] 10 | use std::fs::File; [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `Rng`, `thread_rng` [INFO] [stdout] --> src/pattern.rs:13:12 [INFO] [stdout] | [INFO] [stdout] 13 | use rand::{thread_rng, Rng}; [INFO] [stdout] | ^^^^^^^^^^ ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `SystemTime`, `UNIX_EPOCH` [INFO] [stdout] --> src/pattern.rs:15:17 [INFO] [stdout] | [INFO] [stdout] 15 | use std::time::{SystemTime, UNIX_EPOCH}; [INFO] [stdout] | ^^^^^^^^^^ ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::io::prelude::*` [INFO] [stdout] --> src/pattern.rs:17:5 [INFO] [stdout] | [INFO] [stdout] 17 | use std::io::prelude::*; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `BufWriter`, `Write` [INFO] [stdout] --> src/pattern.rs:18:15 [INFO] [stdout] | [INFO] [stdout] 18 | use std::io::{BufWriter, Write}; [INFO] [stdout] | ^^^^^^^^^ ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused macro definition [INFO] [stdout] --> src/pattern.rs:97:1 [INFO] [stdout] | [INFO] [stdout] 97 | / macro_rules! get_idx { [INFO] [stdout] 98 | | (diag_4) => { [INFO] [stdout] 99 | | (0) [INFO] [stdout] 100 | | }; [INFO] [stdout] ... | [INFO] [stdout] 139 | | }; [INFO] [stdout] 140 | | } [INFO] [stdout] | |_^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_macros)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused macro definition [INFO] [stdout] --> src/pattern.rs:141:1 [INFO] [stdout] | [INFO] [stdout] 141 | / macro_rules! get_wsize { [INFO] [stdout] 142 | | (diag_4) => { [INFO] [stdout] 143 | | (POW_THREE[4]) [INFO] [stdout] 144 | | }; [INFO] [stdout] ... | [INFO] [stdout] 183 | | }; [INFO] [stdout] 184 | | } [INFO] [stdout] | |_^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `bitboard` [INFO] [stdout] --> src/learn.rs:1:5 [INFO] [stdout] | [INFO] [stdout] 1 | use bitboard; [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `SystemTime`, `UNIX_EPOCH` [INFO] [stdout] --> src/learn.rs:2:17 [INFO] [stdout] | [INFO] [stdout] 2 | use std::time::{SystemTime, UNIX_EPOCH}; [INFO] [stdout] | ^^^^^^^^^^ ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `client` [INFO] [stdout] --> src/learn.rs:4:5 [INFO] [stdout] | [INFO] [stdout] 4 | use client; [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `client::*` [INFO] [stdout] --> src/learn.rs:11:5 [INFO] [stdout] | [INFO] [stdout] 11 | use client::*; [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around block return value [INFO] [stdout] --> src/learn.rs:71:21 [INFO] [stdout] | [INFO] [stdout] 71 | (-teacher_winrate * E.log(eval_winrate)) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove these parentheses [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `last_optimization` [INFO] [stdout] --> src/search.rs:1:5 [INFO] [stdout] | [INFO] [stdout] 1 | use last_optimization; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `params::PARARELL` [INFO] [stdout] --> src/search.rs:4:5 [INFO] [stdout] | [INFO] [stdout] 4 | use params::PARARELL; [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `pattern::*` [INFO] [stdout] --> src/search.rs:5:5 [INFO] [stdout] | [INFO] [stdout] 5 | use pattern::*; [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::cell::RefCell` [INFO] [stdout] --> src/valuation.rs:5:5 [INFO] [stdout] | [INFO] [stdout] 5 | use std::cell::RefCell; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `Num` [INFO] [stdout] --> src/main.rs:27:16 [INFO] [stdout] | [INFO] [stdout] 27 | use constant::{Num, STAGE}; [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `learn::LAMBDA` [INFO] [stdout] --> src/main.rs:28:5 [INFO] [stdout] | [INFO] [stdout] 28 | use learn::LAMBDA; [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `optimizer::Optimizer` [INFO] [stdout] --> src/main.rs:29:5 [INFO] [stdout] | [INFO] [stdout] 29 | use optimizer::Optimizer; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::collections::HashMap` [INFO] [stdout] --> src/main.rs:31:5 [INFO] [stdout] | [INFO] [stdout] 31 | use std::collections::HashMap; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `IpAddr`, `Ipv4Addr`, `SocketAddr` [INFO] [stdout] --> src/main.rs:33:16 [INFO] [stdout] | [INFO] [stdout] 33 | use std::net::{IpAddr, Ipv4Addr, SocketAddr}; [INFO] [stdout] | ^^^^^^ ^^^^^^^^ ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `super::*` [INFO] [stdout] --> src/main.rs:183:9 [INFO] [stdout] | [INFO] [stdout] 183 | use super::*; [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated function `nom::float_s`: Please use `float` instead [INFO] [stdout] --> src/data_loader.rs:68:5 [INFO] [stdout] | [INFO] [stdout] 68 | / named!(get_value<&str,Num>, [INFO] [stdout] 69 | | do_parse! ( [INFO] [stdout] 70 | | val : float_s >> [INFO] [stdout] 71 | | tag_s!(",") >> [INFO] [stdout] 72 | | (val as Num))); [INFO] [stdout] | |___________________^ [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated function `nom::float_s`: Please use `float` instead [INFO] [stdout] --> src/data_loader.rs:140:5 [INFO] [stdout] | [INFO] [stdout] 140 | / named!(get_value<&str,Num>, [INFO] [stdout] 141 | | do_parse! ( [INFO] [stdout] 142 | | val : float_s >> [INFO] [stdout] 143 | | tag_s!(",") >> [INFO] [stdout] 144 | | (val as Num))); [INFO] [stdout] | |___________________^ [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated associated function `std::error::Error::description`: use the Display impl or to_string() [INFO] [stdout] --> src/arg_parse.rs:93:13 [INFO] [stdout] | [INFO] [stdout] 93 | Err(err.description().to_owned()) [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unreachable pattern [INFO] [stdout] --> src/mcts.rs:109:13 [INFO] [stdout] | [INFO] [stdout] 109 | _ => panic!("mem error"), [INFO] [stdout] | ^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unreachable_patterns)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unreachable pattern [INFO] [stdout] --> src/mcts.rs:198:21 [INFO] [stdout] | [INFO] [stdout] 198 | _ => (), [INFO] [stdout] | ^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unreachable pattern [INFO] [stdout] --> src/mcts.rs:294:21 [INFO] [stdout] | [INFO] [stdout] 294 | _ => (), [INFO] [stdout] | ^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `eval` [INFO] [stdout] --> src/main.rs:150:17 [INFO] [stdout] | [INFO] [stdout] 150 | let eval = ""; [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_eval` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: value assigned to `flipped` is never read [INFO] [stdout] --> src/bitboard.rs:43:9 [INFO] [stdout] | [INFO] [stdout] 43 | let mut flipped = 0; [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_assignments)]` on by default [INFO] [stdout] = help: maybe it is overwritten before being read? [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `outflank` [INFO] [stdout] --> src/bitboard.rs:44:9 [INFO] [stdout] | [INFO] [stdout] 44 | let mut outflank = 0; [INFO] [stdout] | ^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_outflank` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: value assigned to `outflank` is never read [INFO] [stdout] --> src/bitboard.rs:45:9 [INFO] [stdout] | [INFO] [stdout] 45 | let mut outflank = 0; [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: maybe it is overwritten before being read? [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `i` [INFO] [stdout] --> src/client.rs:32:9 [INFO] [stdout] | [INFO] [stdout] 32 | for i in 0..n { [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_i` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `i` [INFO] [stdout] --> src/client.rs:46:9 [INFO] [stdout] | [INFO] [stdout] 46 | for i in 0..n { [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_i` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `b_c` [INFO] [stdout] --> src/client.rs:77:9 [INFO] [stdout] | [INFO] [stdout] 77 | let b_c = b.count_ones(); [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_b_c` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `w_c` [INFO] [stdout] --> src/client.rs:78:9 [INFO] [stdout] | [INFO] [stdout] 78 | let w_c = w.count_ones(); [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_w_c` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `turn` [INFO] [stdout] --> src/client.rs:194:9 [INFO] [stdout] | [INFO] [stdout] 194 | let turn = get_turn(board); [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_turn` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `thre` [INFO] [stdout] --> src/client.rs:195:9 [INFO] [stdout] | [INFO] [stdout] 195 | let thre = 64 - LAST; [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_thre` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `value` [INFO] [stdout] --> src/client.rs:199:26 [INFO] [stdout] | [INFO] [stdout] 199 | let (mask, flip, value) = select_best_move(board, color, 2, false); [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_value` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `turn` [INFO] [stdout] --> src/client.rs:224:9 [INFO] [stdout] | [INFO] [stdout] 224 | let turn = get_turn(board); [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_turn` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `thre` [INFO] [stdout] --> src/client.rs:225:9 [INFO] [stdout] | [INFO] [stdout] 225 | let thre = 64 - LAST; [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_thre` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `value` [INFO] [stdout] --> src/client.rs:229:26 [INFO] [stdout] | [INFO] [stdout] 229 | let (mask, flip, value) = select_best_move(board, color, DEPTH, false); [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_value` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `piyo` [INFO] [stdout] --> src/client.rs:447:13 [INFO] [stdout] | [INFO] [stdout] 447 | let mut piyo = 0; [INFO] [stdout] | ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_piyo` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `color` [INFO] [stdout] --> src/client.rs:448:13 [INFO] [stdout] | [INFO] [stdout] 448 | let mut color = 1; [INFO] [stdout] | ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_color` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `s` [INFO] [stdout] --> src/client.rs:453:17 [INFO] [stdout] | [INFO] [stdout] 453 | let s = stream.read(ret); [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_s` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `s` [INFO] [stdout] --> src/client.rs:458:28 [INFO] [stdout] | [INFO] [stdout] 458 | if let Ok((s, cmds)) = get_command_vec(st) { [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_s` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `win` [INFO] [stdout] --> src/client.rs:461:46 [INFO] [stdout] | [INFO] [stdout] 461 | ... command::End(wl, win, lose, riyu) => match wl { [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_win` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `lose` [INFO] [stdout] --> src/client.rs:461:51 [INFO] [stdout] | [INFO] [stdout] 461 | ... command::End(wl, win, lose, riyu) => match wl { [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_lose` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `riyu` [INFO] [stdout] --> src/client.rs:461:57 [INFO] [stdout] | [INFO] [stdout] 461 | ... command::End(wl, win, lose, riyu) => match wl { [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_riyu` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `mask` [INFO] [stdout] --> src/client.rs:496:49 [INFO] [stdout] | [INFO] [stdout] 496 | ... Move::MoveM(mask, flip) => (), [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_mask` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `flip` [INFO] [stdout] --> src/client.rs:496:55 [INFO] [stdout] | [INFO] [stdout] 496 | ... Move::MoveM(mask, flip) => (), [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_flip` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `b` [INFO] [stdout] --> src/client.rs:542:42 [INFO] [stdout] | [INFO] [stdout] 542 | ... let (b, w) = board; [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_b` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `w` [INFO] [stdout] --> src/client.rs:542:45 [INFO] [stdout] | [INFO] [stdout] 542 | ... let (b, w) = board; [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_w` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `s` [INFO] [stdout] --> src/client.rs:579:43 [INFO] [stdout] | [INFO] [stdout] 579 | ... command::Open(s) => {} [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_s` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: value assigned to `action` is never read [INFO] [stdout] --> src/game.rs:193:13 [INFO] [stdout] | [INFO] [stdout] 193 | let mut action = 0; [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: maybe it is overwritten before being read? [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: value assigned to `will_flip` is never read [INFO] [stdout] --> src/game.rs:194:13 [INFO] [stdout] | [INFO] [stdout] 194 | let mut will_flip = 0; [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: maybe it is overwritten before being read? [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `bd` [INFO] [stdout] --> src/game.rs:267:57 [INFO] [stdout] | [INFO] [stdout] 267 | select_best(board, color, depth, true, |bd| 0.0) [INFO] [stdout] | ^^ help: if this is intentional, prefix it with an underscore: `_bd` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `i` [INFO] [stdout] --> src/game.rs:296:13 [INFO] [stdout] | [INFO] [stdout] 296 | for i in 0..n { [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_i` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `board` [INFO] [stdout] --> src/game.rs:331:14 [INFO] [stdout] | [INFO] [stdout] 331 | for (ref board, ref mv, color, teacher_eval) in &self.history { [INFO] [stdout] | ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_board` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `flip` [INFO] [stdout] --> src/game.rs:333:35 [INFO] [stdout] | [INFO] [stdout] 333 | Move::MoveM(mask, flip) => { [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_flip` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `ptrs` [INFO] [stdout] --> src/mcts.rs:34:28 [INFO] [stdout] | [INFO] [stdout] 34 | let Tree::Node(ref ptrs, ref info) = *Rc::into_raw(p); [INFO] [stdout] | ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_ptrs` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `my_color` [INFO] [stdout] --> src/mcts.rs:159:9 [INFO] [stdout] | [INFO] [stdout] 159 | let my_color = color; [INFO] [stdout] | ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_my_color` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `start` [INFO] [stdout] --> src/mcts.rs:161:9 [INFO] [stdout] | [INFO] [stdout] 161 | let start = SystemTime::now(); [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_start` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `i` [INFO] [stdout] --> src/mcts.rs:164:9 [INFO] [stdout] | [INFO] [stdout] 164 | for i in 0..CONST_SIM { [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_i` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `i` [INFO] [stdout] --> src/mcts.rs:182:17 [INFO] [stdout] | [INFO] [stdout] 182 | for i in 0..ONE_SIM { [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_i` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `ptrs` [INFO] [stdout] --> src/mcts.rs:235:32 [INFO] [stdout] | [INFO] [stdout] 235 | let Tree::Node(ptrs, info) = &*v; [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_ptrs` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `Nonde` [INFO] [stdout] --> src/mcts.rs:241:13 [INFO] [stdout] | [INFO] [stdout] 241 | Nonde => { [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_Nonde` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `my_color` [INFO] [stdout] --> src/mcts.rs:255:9 [INFO] [stdout] | [INFO] [stdout] 255 | let my_color = color; [INFO] [stdout] | ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_my_color` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `start` [INFO] [stdout] --> src/mcts.rs:257:9 [INFO] [stdout] | [INFO] [stdout] 257 | let start = SystemTime::now(); [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_start` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `i` [INFO] [stdout] --> src/mcts.rs:260:9 [INFO] [stdout] | [INFO] [stdout] 260 | for i in 0..const_sim { [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_i` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `i` [INFO] [stdout] --> src/mcts.rs:278:17 [INFO] [stdout] | [INFO] [stdout] 278 | for i in 0..one_sim { [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_i` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `ptrs` [INFO] [stdout] --> src/mcts.rs:327:32 [INFO] [stdout] | [INFO] [stdout] 327 | let Tree::Node(ptrs, info) = &*v; [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_ptrs` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `Nonde` [INFO] [stdout] --> src/mcts.rs:334:13 [INFO] [stdout] | [INFO] [stdout] 334 | Nonde => { [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_Nonde` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `mm` [INFO] [stdout] --> src/policy.rs:27:9 [INFO] [stdout] | [INFO] [stdout] 27 | let mut mm = 10; [INFO] [stdout] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_mm` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `turn` [INFO] [stdout] --> src/search.rs:101:17 [INFO] [stdout] | [INFO] [stdout] 101 | let turn = get_turn(board); [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_turn` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: value assigned to `action` is never read [INFO] [stdout] --> src/search.rs:350:13 [INFO] [stdout] | [INFO] [stdout] 350 | let mut action = 0; [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: maybe it is overwritten before being read? [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: value assigned to `will_flip` is never read [INFO] [stdout] --> src/search.rs:351:13 [INFO] [stdout] | [INFO] [stdout] 351 | let mut will_flip = 0; [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: maybe it is overwritten before being read? [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: value assigned to `p` is never read [INFO] [stdout] --> src/search.rs:448:9 [INFO] [stdout] | [INFO] [stdout] 448 | let mut p = None; [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: maybe it is overwritten before being read? [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `turn` [INFO] [stdout] --> src/search.rs:472:21 [INFO] [stdout] | [INFO] [stdout] 472 | let turn = get_turn(board); [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_turn` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `b` [INFO] [stdout] --> src/valuation.rs:29:10 [INFO] [stdout] | [INFO] [stdout] 29 | let (b, w) = board; [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_b` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `w` [INFO] [stdout] --> src/valuation.rs:29:13 [INFO] [stdout] | [INFO] [stdout] 29 | let (b, w) = board; [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_w` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `turn` [INFO] [stdout] --> src/valuation.rs:33:9 [INFO] [stdout] | [INFO] [stdout] 33 | let turn = get_turn(board); [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_turn` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `b` [INFO] [stdout] --> src/valuation.rs:38:10 [INFO] [stdout] | [INFO] [stdout] 38 | let (b, w) = board; [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_b` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `w` [INFO] [stdout] --> src/valuation.rs:38:13 [INFO] [stdout] | [INFO] [stdout] 38 | let (b, w) = board; [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_w` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/main.rs:55:9 [INFO] [stdout] | [INFO] [stdout] 55 | let mut logger = game::GameLogger::new( [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: variable does not need to be mutable [INFO] [stdout] --> src/bitboard.rs:44:9 [INFO] [stdout] | [INFO] [stdout] 44 | let mut outflank = 0; [INFO] [stdout] | ----^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/bitboard.rs:49:9 [INFO] [stdout] | [INFO] [stdout] 49 | let mut me = me; [INFO] [stdout] | ----^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unreachable pattern [INFO] [stdout] --> src/mcts.rs:109:13 [INFO] [stdout] | [INFO] [stdout] 109 | _ => panic!("mem error"), [INFO] [stdout] | ^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unreachable_patterns)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unreachable pattern [INFO] [stdout] --> src/mcts.rs:198:21 [INFO] [stdout] | [INFO] [stdout] 198 | _ => (), [INFO] [stdout] | ^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unreachable pattern [INFO] [stdout] --> src/mcts.rs:294:21 [INFO] [stdout] | [INFO] [stdout] 294 | _ => (), [INFO] [stdout] | ^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/client.rs:181:9 [INFO] [stdout] | [INFO] [stdout] 181 | let mut ms = valid_moves(board, color); [INFO] [stdout] | ----^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/client.rs:192:9 [INFO] [stdout] | [INFO] [stdout] 192 | let mut ms = valid_moves(board, color); [INFO] [stdout] | ----^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/client.rs:222:9 [INFO] [stdout] | [INFO] [stdout] 222 | let mut ms = valid_moves(board, color); [INFO] [stdout] | ----^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `eval` [INFO] [stdout] --> src/main.rs:150:17 [INFO] [stdout] | [INFO] [stdout] 150 | let eval = ""; [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_eval` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: value assigned to `flipped` is never read [INFO] [stdout] --> src/bitboard.rs:43:9 [INFO] [stdout] | [INFO] [stdout] 43 | let mut flipped = 0; [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_assignments)]` on by default [INFO] [stdout] = help: maybe it is overwritten before being read? [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `outflank` [INFO] [stdout] --> src/bitboard.rs:44:9 [INFO] [stdout] | [INFO] [stdout] 44 | let mut outflank = 0; [INFO] [stdout] | ^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_outflank` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: value assigned to `outflank` is never read [INFO] [stdout] --> src/bitboard.rs:45:9 [INFO] [stdout] | [INFO] [stdout] 45 | let mut outflank = 0; [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: maybe it is overwritten before being read? [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `i` [INFO] [stdout] --> src/client.rs:32:9 [INFO] [stdout] | [INFO] [stdout] 32 | for i in 0..n { [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_i` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `i` [INFO] [stdout] --> src/client.rs:46:9 [INFO] [stdout] | [INFO] [stdout] 46 | for i in 0..n { [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_i` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/client.rs:235:9 [INFO] [stdout] | [INFO] [stdout] 235 | let mut ms = valid_moves(board, color); [INFO] [stdout] | ----^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `b_c` [INFO] [stdout] --> src/client.rs:77:9 [INFO] [stdout] | [INFO] [stdout] 77 | let b_c = b.count_ones(); [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_b_c` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `w_c` [INFO] [stdout] --> src/client.rs:78:9 [INFO] [stdout] | [INFO] [stdout] 78 | let w_c = w.count_ones(); [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_w_c` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `turn` [INFO] [stdout] --> src/client.rs:194:9 [INFO] [stdout] | [INFO] [stdout] 194 | let turn = get_turn(board); [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_turn` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `thre` [INFO] [stdout] --> src/client.rs:195:9 [INFO] [stdout] | [INFO] [stdout] 195 | let thre = 64 - LAST; [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_thre` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `value` [INFO] [stdout] --> src/client.rs:199:26 [INFO] [stdout] | [INFO] [stdout] 199 | let (mask, flip, value) = select_best_move(board, color, 2, false); [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_value` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `turn` [INFO] [stdout] --> src/client.rs:224:9 [INFO] [stdout] | [INFO] [stdout] 224 | let turn = get_turn(board); [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_turn` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `thre` [INFO] [stdout] --> src/client.rs:225:9 [INFO] [stdout] | [INFO] [stdout] 225 | let thre = 64 - LAST; [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_thre` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `value` [INFO] [stdout] --> src/client.rs:229:26 [INFO] [stdout] | [INFO] [stdout] 229 | let (mask, flip, value) = select_best_move(board, color, DEPTH, false); [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_value` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `piyo` [INFO] [stdout] --> src/client.rs:447:13 [INFO] [stdout] | [INFO] [stdout] 447 | let mut piyo = 0; [INFO] [stdout] | ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_piyo` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `color` [INFO] [stdout] --> src/client.rs:448:13 [INFO] [stdout] | [INFO] [stdout] 448 | let mut color = 1; [INFO] [stdout] | ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_color` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `s` [INFO] [stdout] --> src/client.rs:453:17 [INFO] [stdout] | [INFO] [stdout] 453 | let s = stream.read(ret); [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_s` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `s` [INFO] [stdout] --> src/client.rs:458:28 [INFO] [stdout] | [INFO] [stdout] 458 | if let Ok((s, cmds)) = get_command_vec(st) { [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_s` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `win` [INFO] [stdout] --> src/client.rs:461:46 [INFO] [stdout] | [INFO] [stdout] 461 | ... command::End(wl, win, lose, riyu) => match wl { [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_win` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `lose` [INFO] [stdout] --> src/client.rs:461:51 [INFO] [stdout] | [INFO] [stdout] 461 | ... command::End(wl, win, lose, riyu) => match wl { [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_lose` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `riyu` [INFO] [stdout] --> src/client.rs:461:57 [INFO] [stdout] | [INFO] [stdout] 461 | ... command::End(wl, win, lose, riyu) => match wl { [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_riyu` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `mask` [INFO] [stdout] --> src/client.rs:496:49 [INFO] [stdout] | [INFO] [stdout] 496 | ... Move::MoveM(mask, flip) => (), [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_mask` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `flip` [INFO] [stdout] --> src/client.rs:496:55 [INFO] [stdout] | [INFO] [stdout] 496 | ... Move::MoveM(mask, flip) => (), [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_flip` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `b` [INFO] [stdout] --> src/client.rs:542:42 [INFO] [stdout] | [INFO] [stdout] 542 | ... let (b, w) = board; [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_b` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `w` [INFO] [stdout] --> src/client.rs:542:45 [INFO] [stdout] | [INFO] [stdout] 542 | ... let (b, w) = board; [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_w` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `s` [INFO] [stdout] --> src/client.rs:579:43 [INFO] [stdout] | [INFO] [stdout] 579 | ... command::Open(s) => {} [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_s` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: value assigned to `action` is never read [INFO] [stdout] --> src/game.rs:193:13 [INFO] [stdout] | [INFO] [stdout] 193 | let mut action = 0; [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: maybe it is overwritten before being read? [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: value assigned to `will_flip` is never read [INFO] [stdout] --> src/game.rs:194:13 [INFO] [stdout] | [INFO] [stdout] 194 | let mut will_flip = 0; [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: maybe it is overwritten before being read? [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `bd` [INFO] [stdout] --> src/game.rs:267:57 [INFO] [stdout] | [INFO] [stdout] 267 | select_best(board, color, depth, true, |bd| 0.0) [INFO] [stdout] | ^^ help: if this is intentional, prefix it with an underscore: `_bd` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `i` [INFO] [stdout] --> src/game.rs:296:13 [INFO] [stdout] | [INFO] [stdout] 296 | for i in 0..n { [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_i` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `board` [INFO] [stdout] --> src/game.rs:331:14 [INFO] [stdout] | [INFO] [stdout] 331 | for (ref board, ref mv, color, teacher_eval) in &self.history { [INFO] [stdout] | ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_board` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `flip` [INFO] [stdout] --> src/game.rs:333:35 [INFO] [stdout] | [INFO] [stdout] 333 | Move::MoveM(mask, flip) => { [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_flip` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `ptrs` [INFO] [stdout] --> src/mcts.rs:34:28 [INFO] [stdout] | [INFO] [stdout] 34 | let Tree::Node(ref ptrs, ref info) = *Rc::into_raw(p); [INFO] [stdout] | ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_ptrs` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `my_color` [INFO] [stdout] --> src/mcts.rs:159:9 [INFO] [stdout] | [INFO] [stdout] 159 | let my_color = color; [INFO] [stdout] | ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_my_color` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `start` [INFO] [stdout] --> src/mcts.rs:161:9 [INFO] [stdout] | [INFO] [stdout] 161 | let start = SystemTime::now(); [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_start` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `i` [INFO] [stdout] --> src/mcts.rs:164:9 [INFO] [stdout] | [INFO] [stdout] 164 | for i in 0..CONST_SIM { [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_i` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `i` [INFO] [stdout] --> src/mcts.rs:182:17 [INFO] [stdout] | [INFO] [stdout] 182 | for i in 0..ONE_SIM { [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_i` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `ptrs` [INFO] [stdout] --> src/mcts.rs:235:32 [INFO] [stdout] | [INFO] [stdout] 235 | let Tree::Node(ptrs, info) = &*v; [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_ptrs` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `Nonde` [INFO] [stdout] --> src/mcts.rs:241:13 [INFO] [stdout] | [INFO] [stdout] 241 | Nonde => { [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_Nonde` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `my_color` [INFO] [stdout] --> src/mcts.rs:255:9 [INFO] [stdout] | [INFO] [stdout] 255 | let my_color = color; [INFO] [stdout] | ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_my_color` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `start` [INFO] [stdout] --> src/mcts.rs:257:9 [INFO] [stdout] | [INFO] [stdout] 257 | let start = SystemTime::now(); [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_start` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `i` [INFO] [stdout] --> src/mcts.rs:260:9 [INFO] [stdout] | [INFO] [stdout] 260 | for i in 0..const_sim { [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_i` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `i` [INFO] [stdout] --> src/mcts.rs:278:17 [INFO] [stdout] | [INFO] [stdout] 278 | for i in 0..one_sim { [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_i` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `ptrs` [INFO] [stdout] --> src/mcts.rs:327:32 [INFO] [stdout] | [INFO] [stdout] 327 | let Tree::Node(ptrs, info) = &*v; [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_ptrs` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `Nonde` [INFO] [stdout] --> src/mcts.rs:334:13 [INFO] [stdout] | [INFO] [stdout] 334 | Nonde => { [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_Nonde` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `mm` [INFO] [stdout] --> src/policy.rs:27:9 [INFO] [stdout] | [INFO] [stdout] 27 | let mut mm = 10; [INFO] [stdout] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_mm` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `turn` [INFO] [stdout] --> src/search.rs:101:17 [INFO] [stdout] | [INFO] [stdout] 101 | let turn = get_turn(board); [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_turn` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: value assigned to `action` is never read [INFO] [stdout] --> src/search.rs:350:13 [INFO] [stdout] | [INFO] [stdout] 350 | let mut action = 0; [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: maybe it is overwritten before being read? [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: value assigned to `will_flip` is never read [INFO] [stdout] --> src/search.rs:351:13 [INFO] [stdout] | [INFO] [stdout] 351 | let mut will_flip = 0; [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: maybe it is overwritten before being read? [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: value assigned to `p` is never read [INFO] [stdout] --> src/search.rs:448:9 [INFO] [stdout] | [INFO] [stdout] 448 | let mut p = None; [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: maybe it is overwritten before being read? [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `turn` [INFO] [stdout] --> src/search.rs:472:21 [INFO] [stdout] | [INFO] [stdout] 472 | let turn = get_turn(board); [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_turn` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `b` [INFO] [stdout] --> src/valuation.rs:29:10 [INFO] [stdout] | [INFO] [stdout] 29 | let (b, w) = board; [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_b` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `w` [INFO] [stdout] --> src/valuation.rs:29:13 [INFO] [stdout] | [INFO] [stdout] 29 | let (b, w) = board; [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_w` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `turn` [INFO] [stdout] --> src/valuation.rs:33:9 [INFO] [stdout] | [INFO] [stdout] 33 | let turn = get_turn(board); [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_turn` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `b` [INFO] [stdout] --> src/valuation.rs:38:10 [INFO] [stdout] | [INFO] [stdout] 38 | let (b, w) = board; [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_b` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `w` [INFO] [stdout] --> src/valuation.rs:38:13 [INFO] [stdout] | [INFO] [stdout] 38 | let (b, w) = board; [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_w` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/client.rs:447:13 [INFO] [stdout] | [INFO] [stdout] 447 | let mut piyo = 0; [INFO] [stdout] | ----^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/client.rs:448:13 [INFO] [stdout] | [INFO] [stdout] 448 | let mut color = 1; [INFO] [stdout] | ----^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `b` [INFO] [stdout] --> src/main.rs:186:31 [INFO] [stdout] | [INFO] [stdout] 186 | fn bench_last_search_easy(b: &mut Bencher) {} [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_b` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/game.rs:32:13 [INFO] [stdout] | [INFO] [stdout] 32 | let mut buffer1 = File::create(book_path).unwrap(); [INFO] [stdout] | ----^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/game.rs:33:13 [INFO] [stdout] | [INFO] [stdout] 33 | let mut buffer2 = File::create(eval_path).unwrap(); [INFO] [stdout] | ----^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/main.rs:55:9 [INFO] [stdout] | [INFO] [stdout] 55 | let mut logger = game::GameLogger::new( [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: variable does not need to be mutable [INFO] [stdout] --> src/game.rs:330:24 [INFO] [stdout] | [INFO] [stdout] 330 | pub fn dump(&self, mut logger: &mut GameLogger) { [INFO] [stdout] | ----^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/game.rs:393:9 [INFO] [stdout] | [INFO] [stdout] 393 | mut logger: &mut GameLogger, [INFO] [stdout] | ----^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/mcts.rs:33:13 [INFO] [stdout] | [INFO] [stdout] 33 | for mut p in path.to_vec() { [INFO] [stdout] | ----^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/bitboard.rs:44:9 [INFO] [stdout] | [INFO] [stdout] 44 | let mut outflank = 0; [INFO] [stdout] | ----^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/bitboard.rs:49:9 [INFO] [stdout] | [INFO] [stdout] 49 | let mut me = me; [INFO] [stdout] | ----^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/client.rs:181:9 [INFO] [stdout] | [INFO] [stdout] 181 | let mut ms = valid_moves(board, color); [INFO] [stdout] | ----^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/client.rs:192:9 [INFO] [stdout] | [INFO] [stdout] 192 | let mut ms = valid_moves(board, color); [INFO] [stdout] | ----^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/client.rs:222:9 [INFO] [stdout] | [INFO] [stdout] 222 | let mut ms = valid_moves(board, color); [INFO] [stdout] | ----^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/client.rs:235:9 [INFO] [stdout] | [INFO] [stdout] 235 | let mut ms = valid_moves(board, color); [INFO] [stdout] | ----^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/policy.rs:27:9 [INFO] [stdout] | [INFO] [stdout] 27 | let mut mm = 10; [INFO] [stdout] | ----^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/client.rs:447:13 [INFO] [stdout] | [INFO] [stdout] 447 | let mut piyo = 0; [INFO] [stdout] | ----^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/client.rs:448:13 [INFO] [stdout] | [INFO] [stdout] 448 | let mut color = 1; [INFO] [stdout] | ----^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/game.rs:32:13 [INFO] [stdout] | [INFO] [stdout] 32 | let mut buffer1 = File::create(book_path).unwrap(); [INFO] [stdout] | ----^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/game.rs:33:13 [INFO] [stdout] | [INFO] [stdout] 33 | let mut buffer2 = File::create(eval_path).unwrap(); [INFO] [stdout] | ----^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/game.rs:330:24 [INFO] [stdout] | [INFO] [stdout] 330 | pub fn dump(&self, mut logger: &mut GameLogger) { [INFO] [stdout] | ----^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/game.rs:393:9 [INFO] [stdout] | [INFO] [stdout] 393 | mut logger: &mut GameLogger, [INFO] [stdout] | ----^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/mcts.rs:33:13 [INFO] [stdout] | [INFO] [stdout] 33 | for mut p in path.to_vec() { [INFO] [stdout] | ----^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `valid_moves_pos` [INFO] [stdout] --> src/bitboard.rs:90:8 [INFO] [stdout] | [INFO] [stdout] 90 | pub fn valid_moves_pos(board: (u64, u64), color: i64) -> Vec<(usize, u64)> { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant is never used: `LEARN` [INFO] [stdout] --> src/client.rs:17:1 [INFO] [stdout] | [INFO] [stdout] 17 | const LEARN: bool = false; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `self_play` [INFO] [stdout] --> src/client.rs:25:8 [INFO] [stdout] | [INFO] [stdout] 25 | pub fn self_play(p1: F, p2: F, n: usize) -> (usize, usize, usize) [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `play_until` [INFO] [stdout] --> src/client.rs:62:8 [INFO] [stdout] | [INFO] [stdout] 62 | pub fn play_until<'a, F>( [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `self_play_sub` [INFO] [stdout] --> src/client.rs:125:8 [INFO] [stdout] | [INFO] [stdout] 125 | pub fn self_play_sub(p1: F, p2: F, board: (u64, u64), color: i64, prev: i64) -> wl [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `random_play` [INFO] [stdout] --> src/client.rs:180:8 [INFO] [stdout] | [INFO] [stdout] 180 | pub fn random_play(board: (u64, u64), color: i64) -> Move { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `shallow_alpha_beta` [INFO] [stdout] --> src/client.rs:191:8 [INFO] [stdout] | [INFO] [stdout] 191 | pub fn shallow_alpha_beta(board: (u64, u64), color: i64) -> Move { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `play_for_learn` [INFO] [stdout] --> src/client.rs:221:8 [INFO] [stdout] | [INFO] [stdout] 221 | pub fn play_for_learn(board: (u64, u64), color: i64) -> Move { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `play` [INFO] [stdout] --> src/client.rs:234:8 [INFO] [stdout] | [INFO] [stdout] 234 | pub fn play(board: (u64, u64), color: i64) -> Move { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant is never constructed: `Empty` [INFO] [stdout] --> src/client.rs:307:5 [INFO] [stdout] | [INFO] [stdout] 307 | Empty, [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant is never constructed: `PPass` [INFO] [stdout] --> src/client.rs:320:5 [INFO] [stdout] | [INFO] [stdout] 320 | PPass, [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant is never constructed: `PElse` [INFO] [stdout] --> src/client.rs:321:5 [INFO] [stdout] | [INFO] [stdout] 321 | PElse, [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct is never constructed: `EvalConfig` [INFO] [stdout] --> src/game.rs:255:8 [INFO] [stdout] | [INFO] [stdout] 255 | struct EvalConfig { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `winner` [INFO] [stdout] --> src/game.rs:319:12 [INFO] [stdout] | [INFO] [stdout] 319 | pub fn winner(&self) -> i64 { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `self_play` [INFO] [stdout] --> src/game.rs:389:12 [INFO] [stdout] | [INFO] [stdout] 389 | pub fn self_play( [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant is never used: `C` [INFO] [stdout] --> src/mcts.rs:2:1 [INFO] [stdout] | [INFO] [stdout] 2 | const C: f64 = 1.414; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant is never used: `INF` [INFO] [stdout] --> src/mcts.rs:5:1 [INFO] [stdout] | [INFO] [stdout] 5 | const INF: f64 = 10000000f64; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant is never used: `ONE_SIM` [INFO] [stdout] --> src/mcts.rs:13:1 [INFO] [stdout] | [INFO] [stdout] 13 | const ONE_SIM: usize = 2; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant is never used: `CONST_SIM` [INFO] [stdout] --> src/mcts.rs:14:1 [INFO] [stdout] | [INFO] [stdout] 14 | const CONST_SIM: usize = 20000; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant is never constructed: `Node` [INFO] [stdout] --> src/mcts.rs:28:5 [INFO] [stdout] | [INFO] [stdout] 28 | Node(RefCell>>, Info), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `backprop` [INFO] [stdout] --> src/mcts.rs:31:8 [INFO] [stdout] | [INFO] [stdout] 31 | pub fn backprop(path: &Vec>, win: usize, lose: usize, tie: usize, sim: usize, color: i64) { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `best_move` [INFO] [stdout] --> src/mcts.rs:55:8 [INFO] [stdout] | [INFO] [stdout] 55 | pub fn best_move(childs: Ref>>) -> Option> { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `best_child` [INFO] [stdout] --> src/mcts.rs:73:8 [INFO] [stdout] | [INFO] [stdout] 73 | pub fn best_child(childs: Ref>>, N: usize) -> Option> { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `select_child` [INFO] [stdout] --> src/mcts.rs:93:8 [INFO] [stdout] | [INFO] [stdout] 93 | pub fn select_child<'a>(root: Rc) -> (&'a RefCell>>, &'a Info, Vec>) { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `new_tree` [INFO] [stdout] --> src/mcts.rs:113:8 [INFO] [stdout] | [INFO] [stdout] 113 | pub fn new_tree(board: (u64, u64), color: i64) -> Tree { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `new_leaf` [INFO] [stdout] --> src/mcts.rs:127:8 [INFO] [stdout] | [INFO] [stdout] 127 | pub fn new_leaf( [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `simulate` [INFO] [stdout] --> src/mcts.rs:149:8 [INFO] [stdout] | [INFO] [stdout] 149 | pub fn simulate(board: (u64, u64), color: i64) -> wl { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `mcts` [INFO] [stdout] --> src/mcts.rs:156:8 [INFO] [stdout] | [INFO] [stdout] 156 | pub fn mcts(board: (u64, u64), color: i64) -> (u64, u64, i64) { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `mcts_for_learn` [INFO] [stdout] --> src/mcts.rs:247:8 [INFO] [stdout] | [INFO] [stdout] 247 | pub fn mcts_for_learn( [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant is never used: `DEPTH` [INFO] [stdout] --> src/params.rs:1:1 [INFO] [stdout] | [INFO] [stdout] 1 | pub const DEPTH: usize = 6; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant is never used: `LAST` [INFO] [stdout] --> src/params.rs:2:1 [INFO] [stdout] | [INFO] [stdout] 2 | pub const LAST: usize = 21; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant is never used: `PARARELL` [INFO] [stdout] --> src/params.rs:3:1 [INFO] [stdout] | [INFO] [stdout] 3 | pub const PARARELL: bool = false; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant is never used: `Stage` [INFO] [stdout] --> src/pattern.rs:19:1 [INFO] [stdout] | [INFO] [stdout] 19 | pub const Stage: usize = 5; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant is never used: `State` [INFO] [stdout] --> src/pattern.rs:20:1 [INFO] [stdout] | [INFO] [stdout] 20 | pub const State: usize = Stage; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct is never constructed: `Patterns` [INFO] [stdout] --> src/pattern.rs:438:12 [INFO] [stdout] | [INFO] [stdout] 438 | pub struct Patterns { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `f` [INFO] [stdout] --> src/pattern.rs:626:8 [INFO] [stdout] | [INFO] [stdout] 626 | pub fn f((b, w): (u64, u64)) -> i64 { [INFO] [stdout] | ^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant is never used: `P` [INFO] [stdout] --> src/policy.rs:6:1 [INFO] [stdout] | [INFO] [stdout] 6 | / const P: [u8; 64] = [ [INFO] [stdout] 7 | | 1, 5, 3, 3, 3, 3, 5, 1, 5, 5, 4, 4, 4, 4, 5, 5, 3, 4, 2, 2, 2, 2, 4, 3, 3, 4, 2, 0, 0, 2, 4, 3, [INFO] [stdout] 8 | | 3, 4, 2, 0, 0, 2, 4, 3, 3, 4, 2, 2, 2, 2, 4, 3, 5, 5, 4, 4, 4, 4, 5, 5, 1, 5, 3, 3, 3, 3, 5, 1, [INFO] [stdout] 9 | | ]; [INFO] [stdout] | |__^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `random_policy` [INFO] [stdout] --> src/policy.rs:10:8 [INFO] [stdout] | [INFO] [stdout] 10 | pub fn random_policy((b, w): (u64, u64), color: i64) -> Move { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `roxanne_policy` [INFO] [stdout] --> src/policy.rs:20:8 [INFO] [stdout] | [INFO] [stdout] 20 | pub fn roxanne_policy((b, w): (u64, u64), color: i64) -> Move { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `last_search_sub` [INFO] [stdout] --> src/search.rs:81:8 [INFO] [stdout] | [INFO] [stdout] 81 | pub fn last_search_sub( [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `last_search` [INFO] [stdout] --> src/search.rs:89:8 [INFO] [stdout] | [INFO] [stdout] 89 | pub fn last_search(board: (u64, u64), color: i64, prev: i64) -> i64 { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `negamax` [INFO] [stdout] --> src/search.rs:198:8 [INFO] [stdout] | [INFO] [stdout] 198 | pub fn negamax( [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `select_best_move` [INFO] [stdout] --> src/search.rs:338:8 [INFO] [stdout] | [INFO] [stdout] 338 | pub fn select_best_move( [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant is never used: `A` [INFO] [stdout] --> src/valuation.rs:7:1 [INFO] [stdout] | [INFO] [stdout] 7 | const A: i64 = 500; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant is never used: `B` [INFO] [stdout] --> src/valuation.rs:8:1 [INFO] [stdout] | [INFO] [stdout] 8 | const B: i64 = -50; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant is never used: `C` [INFO] [stdout] --> src/valuation.rs:9:1 [INFO] [stdout] | [INFO] [stdout] 9 | const C: i64 = -5; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant is never used: `D` [INFO] [stdout] --> src/valuation.rs:10:1 [INFO] [stdout] | [INFO] [stdout] 10 | const D: i64 = 0; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant is never used: `E` [INFO] [stdout] --> src/valuation.rs:11:1 [INFO] [stdout] | [INFO] [stdout] 11 | const E: i64 = -70; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant is never used: `F` [INFO] [stdout] --> src/valuation.rs:12:1 [INFO] [stdout] | [INFO] [stdout] 12 | const F: i64 = -5; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant is never used: `G` [INFO] [stdout] --> src/valuation.rs:13:1 [INFO] [stdout] | [INFO] [stdout] 13 | const G: i64 = -10; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant is never used: `H` [INFO] [stdout] --> src/valuation.rs:14:1 [INFO] [stdout] | [INFO] [stdout] 14 | const H: i64 = -10; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant is never used: `I` [INFO] [stdout] --> src/valuation.rs:15:1 [INFO] [stdout] | [INFO] [stdout] 15 | const I: i64 = -5; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant is never used: `J` [INFO] [stdout] --> src/valuation.rs:16:1 [INFO] [stdout] | [INFO] [stdout] 16 | const J: i64 = 0; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant is never used: `W` [INFO] [stdout] --> src/valuation.rs:18:1 [INFO] [stdout] | [INFO] [stdout] 18 | / const W: [i64; 64] = [ [INFO] [stdout] 19 | | A, B, C, D, D, C, B, A, B, E, F, G, G, F, E, B, C, F, H, I, I, H, F, C, D, G, I, J, J, I, G, D, [INFO] [stdout] 20 | | D, G, I, J, J, I, G, D, C, F, H, I, I, H, F, C, B, E, F, G, G, F, E, B, A, B, C, D, D, C, B, A, [INFO] [stdout] 21 | | ]; [INFO] [stdout] | |__^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `valuate` [INFO] [stdout] --> src/valuation.rs:28:8 [INFO] [stdout] | [INFO] [stdout] 28 | pub fn valuate(board: (u64, u64)) -> i64 { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `valuate_with_default_pattern` [INFO] [stdout] --> src/valuation.rs:37:8 [INFO] [stdout] | [INFO] [stdout] 37 | pub fn valuate_with_default_pattern(board: (u64, u64)) -> i64 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `openness` [INFO] [stdout] --> src/valuation.rs:55:8 [INFO] [stdout] | [INFO] [stdout] 55 | pub fn openness(board: (u64, u64)) -> i64 { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `bp` [INFO] [stdout] --> src/valuation.rs:82:8 [INFO] [stdout] | [INFO] [stdout] 82 | pub fn bp(board: (u64, u64)) -> i64 { [INFO] [stdout] | ^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `simple_linear_valuation` [INFO] [stdout] --> src/valuation.rs:153:8 [INFO] [stdout] | [INFO] [stdout] 153 | pub fn simple_linear_valuation(board: (u64, u64)) -> i64 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused attribute [INFO] [stdout] --> src/pattern.rs:1:1 [INFO] [stdout] | [INFO] [stdout] 1 | #![macro_use] [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_attributes)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `doMove` should have a snake case name [INFO] [stdout] --> src/bitboard.rs:1:8 [INFO] [stdout] | [INFO] [stdout] 1 | pub fn doMove(board: (u64, u64), color: i64, mask: u64) -> (u64, u64) { [INFO] [stdout] | ^^^^^^ help: convert the identifier to snake case: `do_move` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(non_snake_case)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `std::result::Result` that must be used [INFO] [stdout] --> src/data_loader.rs:79:5 [INFO] [stdout] | [INFO] [stdout] 79 | file.read_to_string(&mut contents); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_must_use)]` on by default [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `std::result::Result` that must be used [INFO] [stdout] --> src/data_loader.rs:134:5 [INFO] [stdout] | [INFO] [stdout] 134 | file.read_to_string(&mut contents); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `std::result::Result` that must be used [INFO] [stdout] --> src/data_loader.rs:159:5 [INFO] [stdout] | [INFO] [stdout] 159 | file.read_to_string(&mut contents); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `std::result::Result` that must be used [INFO] [stdout] --> src/game.rs:337:21 [INFO] [stdout] | [INFO] [stdout] 337 | / write!( [INFO] [stdout] 338 | | logger.book_writer, [INFO] [stdout] 339 | | "{}{}{}", [INFO] [stdout] 340 | | if *color == 1 { "+" } else { "-" }, [INFO] [stdout] 341 | | c1, [INFO] [stdout] 342 | | c2 [INFO] [stdout] 343 | | ); [INFO] [stdout] | |______________________^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `std::result::Result` that must be used [INFO] [stdout] --> src/game.rs:344:21 [INFO] [stdout] | [INFO] [stdout] 344 | write!(logger.eval_writer, "{},", *teacher_eval); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `std::result::Result` that must be used [INFO] [stdout] --> src/game.rs:350:9 [INFO] [stdout] | [INFO] [stdout] 350 | write!(logger.book_writer, ": {} {}\n", self.diff(), 10); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `std::result::Result` that must be used [INFO] [stdout] --> src/game.rs:351:9 [INFO] [stdout] | [INFO] [stdout] 351 | write!(logger.eval_writer, "\n"); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `N` should have a snake case name [INFO] [stdout] --> src/mcts.rs:73:47 [INFO] [stdout] | [INFO] [stdout] 73 | pub fn best_child(childs: Ref>>, N: usize) -> Option> { [INFO] [stdout] | ^ help: convert the identifier to snake case: `n` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `Nonde` should have a snake case name [INFO] [stdout] --> src/mcts.rs:241:13 [INFO] [stdout] | [INFO] [stdout] 241 | Nonde => { [INFO] [stdout] | ^^^^^ help: convert the identifier to snake case: `nonde` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `Nonde` should have a snake case name [INFO] [stdout] --> src/mcts.rs:334:13 [INFO] [stdout] | [INFO] [stdout] 334 | Nonde => { [INFO] [stdout] | ^^^^^ help: convert the identifier to snake case: `nonde` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `Stage` should have an upper case name [INFO] [stdout] --> src/pattern.rs:19:11 [INFO] [stdout] | [INFO] [stdout] 19 | pub const Stage: usize = 5; [INFO] [stdout] | ^^^^^ help: convert the identifier to upper case: `STAGE` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(non_upper_case_globals)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `State` should have an upper case name [INFO] [stdout] --> src/pattern.rs:20:11 [INFO] [stdout] | [INFO] [stdout] 20 | pub const State: usize = Stage; [INFO] [stdout] | ^^^^^ help: convert the identifier to upper case: `STATE` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `P_diag_4` should have an upper case name [INFO] [stdout] --> src/pattern.rs:22:11 [INFO] [stdout] | [INFO] [stdout] 22 | pub const P_diag_4: [[usize; 4]; 4] = [ [INFO] [stdout] | ^^^^^^^^ help: convert the identifier to upper case: `P_DIAG_4` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `P_diag_5` should have an upper case name [INFO] [stdout] --> src/pattern.rs:28:11 [INFO] [stdout] | [INFO] [stdout] 28 | pub const P_diag_5: [[usize; 5]; 4] = [ [INFO] [stdout] | ^^^^^^^^ help: convert the identifier to upper case: `P_DIAG_5` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `P_diag_6` should have an upper case name [INFO] [stdout] --> src/pattern.rs:34:11 [INFO] [stdout] | [INFO] [stdout] 34 | pub const P_diag_6: [[usize; 6]; 4] = [ [INFO] [stdout] | ^^^^^^^^ help: convert the identifier to upper case: `P_DIAG_6` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `P_diag_7` should have an upper case name [INFO] [stdout] --> src/pattern.rs:41:11 [INFO] [stdout] | [INFO] [stdout] 41 | pub const P_diag_7: [[usize; 7]; 4] = [ [INFO] [stdout] | ^^^^^^^^ help: convert the identifier to upper case: `P_DIAG_7` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `P_diag_8` should have an upper case name [INFO] [stdout] --> src/pattern.rs:48:11 [INFO] [stdout] | [INFO] [stdout] 48 | pub const P_diag_8: [[usize; 8]; 2] = [ [INFO] [stdout] | ^^^^^^^^ help: convert the identifier to upper case: `P_DIAG_8` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `P_square25` should have an upper case name [INFO] [stdout] --> src/pattern.rs:53:11 [INFO] [stdout] | [INFO] [stdout] 53 | pub const P_square25: [[usize; 10]; 8] = [ [INFO] [stdout] | ^^^^^^^^^^ help: convert the identifier to upper case: `P_SQUARE25` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `P_square33` should have an upper case name [INFO] [stdout] --> src/pattern.rs:64:11 [INFO] [stdout] | [INFO] [stdout] 64 | pub const P_square33: [[usize; 9]; 4] = [ [INFO] [stdout] | ^^^^^^^^^^ help: convert the identifier to upper case: `P_SQUARE33` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `P_edgeX` should have an upper case name [INFO] [stdout] --> src/pattern.rs:71:11 [INFO] [stdout] | [INFO] [stdout] 71 | pub const P_edgeX: [[usize; 10]; 4] = [ [INFO] [stdout] | ^^^^^^^ help: convert the identifier to upper case: `P_EDGE_X` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `P_center` should have an upper case name [INFO] [stdout] --> src/pattern.rs:78:11 [INFO] [stdout] | [INFO] [stdout] 78 | pub const P_center: [[usize; 8]; 4] = [ [INFO] [stdout] | ^^^^^^^^ help: convert the identifier to upper case: `P_CENTER` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `P_subcenter` should have an upper case name [INFO] [stdout] --> src/pattern.rs:84:11 [INFO] [stdout] | [INFO] [stdout] 84 | pub const P_subcenter: [[usize; 8]; 4] = [ [INFO] [stdout] | ^^^^^^^^^^^ help: convert the identifier to upper case: `P_SUBCENTER` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `P_subsubcenter` should have an upper case name [INFO] [stdout] --> src/pattern.rs:90:11 [INFO] [stdout] | [INFO] [stdout] 90 | pub const P_subsubcenter: [[usize; 8]; 4] = [ [INFO] [stdout] | ^^^^^^^^^^^^^^ help: convert the identifier to upper case: `P_SUBSUBCENTER` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `std::result::Result` that must be used [INFO] [stdout] --> src/learn.rs:27:9 [INFO] [stdout] | [INFO] [stdout] 27 | write!(&mut buffer, "{},", i); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: comparison is useless due to type limits [INFO] [stdout] --> src/valuation.rs:66:24 [INFO] [stdout] | [INFO] [stdout] 66 | if nx >= 0 && ny >= 0 && nx < 8 && ny < 8 { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_comparisons)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: comparison is useless due to type limits [INFO] [stdout] --> src/valuation.rs:66:35 [INFO] [stdout] | [INFO] [stdout] 66 | if nx >= 0 && ny >= 0 && nx < 8 && ny < 8 { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 253 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/policy.rs:27:9 [INFO] [stdout] | [INFO] [stdout] 27 | let mut mm = 10; [INFO] [stdout] | ----^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `valid_moves_pos` [INFO] [stdout] --> src/bitboard.rs:90:8 [INFO] [stdout] | [INFO] [stdout] 90 | pub fn valid_moves_pos(board: (u64, u64), color: i64) -> Vec<(usize, u64)> { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant is never used: `LEARN` [INFO] [stdout] --> src/client.rs:17:1 [INFO] [stdout] | [INFO] [stdout] 17 | const LEARN: bool = false; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `self_play` [INFO] [stdout] --> src/client.rs:25:8 [INFO] [stdout] | [INFO] [stdout] 25 | pub fn self_play(p1: F, p2: F, n: usize) -> (usize, usize, usize) [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `play_until` [INFO] [stdout] --> src/client.rs:62:8 [INFO] [stdout] | [INFO] [stdout] 62 | pub fn play_until<'a, F>( [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `self_play_sub` [INFO] [stdout] --> src/client.rs:125:8 [INFO] [stdout] | [INFO] [stdout] 125 | pub fn self_play_sub(p1: F, p2: F, board: (u64, u64), color: i64, prev: i64) -> wl [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `random_play` [INFO] [stdout] --> src/client.rs:180:8 [INFO] [stdout] | [INFO] [stdout] 180 | pub fn random_play(board: (u64, u64), color: i64) -> Move { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `shallow_alpha_beta` [INFO] [stdout] --> src/client.rs:191:8 [INFO] [stdout] | [INFO] [stdout] 191 | pub fn shallow_alpha_beta(board: (u64, u64), color: i64) -> Move { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `play_for_learn` [INFO] [stdout] --> src/client.rs:221:8 [INFO] [stdout] | [INFO] [stdout] 221 | pub fn play_for_learn(board: (u64, u64), color: i64) -> Move { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `play` [INFO] [stdout] --> src/client.rs:234:8 [INFO] [stdout] | [INFO] [stdout] 234 | pub fn play(board: (u64, u64), color: i64) -> Move { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant is never constructed: `Empty` [INFO] [stdout] --> src/client.rs:307:5 [INFO] [stdout] | [INFO] [stdout] 307 | Empty, [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant is never constructed: `PPass` [INFO] [stdout] --> src/client.rs:320:5 [INFO] [stdout] | [INFO] [stdout] 320 | PPass, [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant is never constructed: `PElse` [INFO] [stdout] --> src/client.rs:321:5 [INFO] [stdout] | [INFO] [stdout] 321 | PElse, [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct is never constructed: `EvalConfig` [INFO] [stdout] --> src/game.rs:255:8 [INFO] [stdout] | [INFO] [stdout] 255 | struct EvalConfig { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `winner` [INFO] [stdout] --> src/game.rs:319:12 [INFO] [stdout] | [INFO] [stdout] 319 | pub fn winner(&self) -> i64 { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `self_play` [INFO] [stdout] --> src/game.rs:389:12 [INFO] [stdout] | [INFO] [stdout] 389 | pub fn self_play( [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant is never used: `C` [INFO] [stdout] --> src/mcts.rs:2:1 [INFO] [stdout] | [INFO] [stdout] 2 | const C: f64 = 1.414; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant is never used: `INF` [INFO] [stdout] --> src/mcts.rs:5:1 [INFO] [stdout] | [INFO] [stdout] 5 | const INF: f64 = 10000000f64; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant is never used: `ONE_SIM` [INFO] [stdout] --> src/mcts.rs:13:1 [INFO] [stdout] | [INFO] [stdout] 13 | const ONE_SIM: usize = 2; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant is never used: `CONST_SIM` [INFO] [stdout] --> src/mcts.rs:14:1 [INFO] [stdout] | [INFO] [stdout] 14 | const CONST_SIM: usize = 20000; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant is never constructed: `Node` [INFO] [stdout] --> src/mcts.rs:28:5 [INFO] [stdout] | [INFO] [stdout] 28 | Node(RefCell>>, Info), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `backprop` [INFO] [stdout] --> src/mcts.rs:31:8 [INFO] [stdout] | [INFO] [stdout] 31 | pub fn backprop(path: &Vec>, win: usize, lose: usize, tie: usize, sim: usize, color: i64) { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `best_move` [INFO] [stdout] --> src/mcts.rs:55:8 [INFO] [stdout] | [INFO] [stdout] 55 | pub fn best_move(childs: Ref>>) -> Option> { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `best_child` [INFO] [stdout] --> src/mcts.rs:73:8 [INFO] [stdout] | [INFO] [stdout] 73 | pub fn best_child(childs: Ref>>, N: usize) -> Option> { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `select_child` [INFO] [stdout] --> src/mcts.rs:93:8 [INFO] [stdout] | [INFO] [stdout] 93 | pub fn select_child<'a>(root: Rc) -> (&'a RefCell>>, &'a Info, Vec>) { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `new_tree` [INFO] [stdout] --> src/mcts.rs:113:8 [INFO] [stdout] | [INFO] [stdout] 113 | pub fn new_tree(board: (u64, u64), color: i64) -> Tree { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `new_leaf` [INFO] [stdout] --> src/mcts.rs:127:8 [INFO] [stdout] | [INFO] [stdout] 127 | pub fn new_leaf( [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `simulate` [INFO] [stdout] --> src/mcts.rs:149:8 [INFO] [stdout] | [INFO] [stdout] 149 | pub fn simulate(board: (u64, u64), color: i64) -> wl { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `mcts` [INFO] [stdout] --> src/mcts.rs:156:8 [INFO] [stdout] | [INFO] [stdout] 156 | pub fn mcts(board: (u64, u64), color: i64) -> (u64, u64, i64) { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `mcts_for_learn` [INFO] [stdout] --> src/mcts.rs:247:8 [INFO] [stdout] | [INFO] [stdout] 247 | pub fn mcts_for_learn( [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant is never used: `DEPTH` [INFO] [stdout] --> src/params.rs:1:1 [INFO] [stdout] | [INFO] [stdout] 1 | pub const DEPTH: usize = 6; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant is never used: `LAST` [INFO] [stdout] --> src/params.rs:2:1 [INFO] [stdout] | [INFO] [stdout] 2 | pub const LAST: usize = 21; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant is never used: `PARARELL` [INFO] [stdout] --> src/params.rs:3:1 [INFO] [stdout] | [INFO] [stdout] 3 | pub const PARARELL: bool = false; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant is never used: `Stage` [INFO] [stdout] --> src/pattern.rs:19:1 [INFO] [stdout] | [INFO] [stdout] 19 | pub const Stage: usize = 5; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant is never used: `State` [INFO] [stdout] --> src/pattern.rs:20:1 [INFO] [stdout] | [INFO] [stdout] 20 | pub const State: usize = Stage; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct is never constructed: `Patterns` [INFO] [stdout] --> src/pattern.rs:438:12 [INFO] [stdout] | [INFO] [stdout] 438 | pub struct Patterns { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `f` [INFO] [stdout] --> src/pattern.rs:626:8 [INFO] [stdout] | [INFO] [stdout] 626 | pub fn f((b, w): (u64, u64)) -> i64 { [INFO] [stdout] | ^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant is never used: `P` [INFO] [stdout] --> src/policy.rs:6:1 [INFO] [stdout] | [INFO] [stdout] 6 | / const P: [u8; 64] = [ [INFO] [stdout] 7 | | 1, 5, 3, 3, 3, 3, 5, 1, 5, 5, 4, 4, 4, 4, 5, 5, 3, 4, 2, 2, 2, 2, 4, 3, 3, 4, 2, 0, 0, 2, 4, 3, [INFO] [stdout] 8 | | 3, 4, 2, 0, 0, 2, 4, 3, 3, 4, 2, 2, 2, 2, 4, 3, 5, 5, 4, 4, 4, 4, 5, 5, 1, 5, 3, 3, 3, 3, 5, 1, [INFO] [stdout] 9 | | ]; [INFO] [stdout] | |__^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `random_policy` [INFO] [stdout] --> src/policy.rs:10:8 [INFO] [stdout] | [INFO] [stdout] 10 | pub fn random_policy((b, w): (u64, u64), color: i64) -> Move { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `roxanne_policy` [INFO] [stdout] --> src/policy.rs:20:8 [INFO] [stdout] | [INFO] [stdout] 20 | pub fn roxanne_policy((b, w): (u64, u64), color: i64) -> Move { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `last_search_sub` [INFO] [stdout] --> src/search.rs:81:8 [INFO] [stdout] | [INFO] [stdout] 81 | pub fn last_search_sub( [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `last_search` [INFO] [stdout] --> src/search.rs:89:8 [INFO] [stdout] | [INFO] [stdout] 89 | pub fn last_search(board: (u64, u64), color: i64, prev: i64) -> i64 { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `negamax` [INFO] [stdout] --> src/search.rs:198:8 [INFO] [stdout] | [INFO] [stdout] 198 | pub fn negamax( [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `select_best_move` [INFO] [stdout] --> src/search.rs:338:8 [INFO] [stdout] | [INFO] [stdout] 338 | pub fn select_best_move( [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant is never used: `A` [INFO] [stdout] --> src/valuation.rs:7:1 [INFO] [stdout] | [INFO] [stdout] 7 | const A: i64 = 500; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant is never used: `B` [INFO] [stdout] --> src/valuation.rs:8:1 [INFO] [stdout] | [INFO] [stdout] 8 | const B: i64 = -50; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant is never used: `C` [INFO] [stdout] --> src/valuation.rs:9:1 [INFO] [stdout] | [INFO] [stdout] 9 | const C: i64 = -5; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant is never used: `D` [INFO] [stdout] --> src/valuation.rs:10:1 [INFO] [stdout] | [INFO] [stdout] 10 | const D: i64 = 0; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant is never used: `E` [INFO] [stdout] --> src/valuation.rs:11:1 [INFO] [stdout] | [INFO] [stdout] 11 | const E: i64 = -70; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant is never used: `F` [INFO] [stdout] --> src/valuation.rs:12:1 [INFO] [stdout] | [INFO] [stdout] 12 | const F: i64 = -5; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant is never used: `G` [INFO] [stdout] --> src/valuation.rs:13:1 [INFO] [stdout] | [INFO] [stdout] 13 | const G: i64 = -10; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant is never used: `H` [INFO] [stdout] --> src/valuation.rs:14:1 [INFO] [stdout] | [INFO] [stdout] 14 | const H: i64 = -10; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant is never used: `I` [INFO] [stdout] --> src/valuation.rs:15:1 [INFO] [stdout] | [INFO] [stdout] 15 | const I: i64 = -5; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant is never used: `J` [INFO] [stdout] --> src/valuation.rs:16:1 [INFO] [stdout] | [INFO] [stdout] 16 | const J: i64 = 0; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant is never used: `W` [INFO] [stdout] --> src/valuation.rs:18:1 [INFO] [stdout] | [INFO] [stdout] 18 | / const W: [i64; 64] = [ [INFO] [stdout] 19 | | A, B, C, D, D, C, B, A, B, E, F, G, G, F, E, B, C, F, H, I, I, H, F, C, D, G, I, J, J, I, G, D, [INFO] [stdout] 20 | | D, G, I, J, J, I, G, D, C, F, H, I, I, H, F, C, B, E, F, G, G, F, E, B, A, B, C, D, D, C, B, A, [INFO] [stdout] 21 | | ]; [INFO] [stdout] | |__^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `valuate` [INFO] [stdout] --> src/valuation.rs:28:8 [INFO] [stdout] | [INFO] [stdout] 28 | pub fn valuate(board: (u64, u64)) -> i64 { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `valuate_with_default_pattern` [INFO] [stdout] --> src/valuation.rs:37:8 [INFO] [stdout] | [INFO] [stdout] 37 | pub fn valuate_with_default_pattern(board: (u64, u64)) -> i64 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `openness` [INFO] [stdout] --> src/valuation.rs:55:8 [INFO] [stdout] | [INFO] [stdout] 55 | pub fn openness(board: (u64, u64)) -> i64 { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `bp` [INFO] [stdout] --> src/valuation.rs:82:8 [INFO] [stdout] | [INFO] [stdout] 82 | pub fn bp(board: (u64, u64)) -> i64 { [INFO] [stdout] | ^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `simple_linear_valuation` [INFO] [stdout] --> src/valuation.rs:153:8 [INFO] [stdout] | [INFO] [stdout] 153 | pub fn simple_linear_valuation(board: (u64, u64)) -> i64 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused attribute [INFO] [stdout] --> src/pattern.rs:1:1 [INFO] [stdout] | [INFO] [stdout] 1 | #![macro_use] [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_attributes)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `doMove` should have a snake case name [INFO] [stdout] --> src/bitboard.rs:1:8 [INFO] [stdout] | [INFO] [stdout] 1 | pub fn doMove(board: (u64, u64), color: i64, mask: u64) -> (u64, u64) { [INFO] [stdout] | ^^^^^^ help: convert the identifier to snake case: `do_move` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(non_snake_case)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `std::result::Result` that must be used [INFO] [stdout] --> src/data_loader.rs:79:5 [INFO] [stdout] | [INFO] [stdout] 79 | file.read_to_string(&mut contents); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_must_use)]` on by default [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `std::result::Result` that must be used [INFO] [stdout] --> src/data_loader.rs:134:5 [INFO] [stdout] | [INFO] [stdout] 134 | file.read_to_string(&mut contents); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `std::result::Result` that must be used [INFO] [stdout] --> src/data_loader.rs:159:5 [INFO] [stdout] | [INFO] [stdout] 159 | file.read_to_string(&mut contents); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `std::result::Result` that must be used [INFO] [stdout] --> src/game.rs:337:21 [INFO] [stdout] | [INFO] [stdout] 337 | / write!( [INFO] [stdout] 338 | | logger.book_writer, [INFO] [stdout] 339 | | "{}{}{}", [INFO] [stdout] 340 | | if *color == 1 { "+" } else { "-" }, [INFO] [stdout] 341 | | c1, [INFO] [stdout] 342 | | c2 [INFO] [stdout] 343 | | ); [INFO] [stdout] | |______________________^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `std::result::Result` that must be used [INFO] [stdout] --> src/game.rs:344:21 [INFO] [stdout] | [INFO] [stdout] 344 | write!(logger.eval_writer, "{},", *teacher_eval); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `std::result::Result` that must be used [INFO] [stdout] --> src/game.rs:350:9 [INFO] [stdout] | [INFO] [stdout] 350 | write!(logger.book_writer, ": {} {}\n", self.diff(), 10); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `std::result::Result` that must be used [INFO] [stdout] --> src/game.rs:351:9 [INFO] [stdout] | [INFO] [stdout] 351 | write!(logger.eval_writer, "\n"); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `N` should have a snake case name [INFO] [stdout] --> src/mcts.rs:73:47 [INFO] [stdout] | [INFO] [stdout] 73 | pub fn best_child(childs: Ref>>, N: usize) -> Option> { [INFO] [stdout] | ^ help: convert the identifier to snake case: `n` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `Nonde` should have a snake case name [INFO] [stdout] --> src/mcts.rs:241:13 [INFO] [stdout] | [INFO] [stdout] 241 | Nonde => { [INFO] [stdout] | ^^^^^ help: convert the identifier to snake case: `nonde` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `Nonde` should have a snake case name [INFO] [stdout] --> src/mcts.rs:334:13 [INFO] [stdout] | [INFO] [stdout] 334 | Nonde => { [INFO] [stdout] | ^^^^^ help: convert the identifier to snake case: `nonde` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `Stage` should have an upper case name [INFO] [stdout] --> src/pattern.rs:19:11 [INFO] [stdout] | [INFO] [stdout] 19 | pub const Stage: usize = 5; [INFO] [stdout] | ^^^^^ help: convert the identifier to upper case: `STAGE` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(non_upper_case_globals)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `State` should have an upper case name [INFO] [stdout] --> src/pattern.rs:20:11 [INFO] [stdout] | [INFO] [stdout] 20 | pub const State: usize = Stage; [INFO] [stdout] | ^^^^^ help: convert the identifier to upper case: `STATE` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `P_diag_4` should have an upper case name [INFO] [stdout] --> src/pattern.rs:22:11 [INFO] [stdout] | [INFO] [stdout] 22 | pub const P_diag_4: [[usize; 4]; 4] = [ [INFO] [stdout] | ^^^^^^^^ help: convert the identifier to upper case: `P_DIAG_4` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `P_diag_5` should have an upper case name [INFO] [stdout] --> src/pattern.rs:28:11 [INFO] [stdout] | [INFO] [stdout] 28 | pub const P_diag_5: [[usize; 5]; 4] = [ [INFO] [stdout] | ^^^^^^^^ help: convert the identifier to upper case: `P_DIAG_5` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `P_diag_6` should have an upper case name [INFO] [stdout] --> src/pattern.rs:34:11 [INFO] [stdout] | [INFO] [stdout] 34 | pub const P_diag_6: [[usize; 6]; 4] = [ [INFO] [stdout] | ^^^^^^^^ help: convert the identifier to upper case: `P_DIAG_6` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `P_diag_7` should have an upper case name [INFO] [stdout] --> src/pattern.rs:41:11 [INFO] [stdout] | [INFO] [stdout] 41 | pub const P_diag_7: [[usize; 7]; 4] = [ [INFO] [stdout] | ^^^^^^^^ help: convert the identifier to upper case: `P_DIAG_7` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `P_diag_8` should have an upper case name [INFO] [stdout] --> src/pattern.rs:48:11 [INFO] [stdout] | [INFO] [stdout] 48 | pub const P_diag_8: [[usize; 8]; 2] = [ [INFO] [stdout] | ^^^^^^^^ help: convert the identifier to upper case: `P_DIAG_8` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `P_square25` should have an upper case name [INFO] [stdout] --> src/pattern.rs:53:11 [INFO] [stdout] | [INFO] [stdout] 53 | pub const P_square25: [[usize; 10]; 8] = [ [INFO] [stdout] | ^^^^^^^^^^ help: convert the identifier to upper case: `P_SQUARE25` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `P_square33` should have an upper case name [INFO] [stdout] --> src/pattern.rs:64:11 [INFO] [stdout] | [INFO] [stdout] 64 | pub const P_square33: [[usize; 9]; 4] = [ [INFO] [stdout] | ^^^^^^^^^^ help: convert the identifier to upper case: `P_SQUARE33` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `P_edgeX` should have an upper case name [INFO] [stdout] --> src/pattern.rs:71:11 [INFO] [stdout] | [INFO] [stdout] 71 | pub const P_edgeX: [[usize; 10]; 4] = [ [INFO] [stdout] | ^^^^^^^ help: convert the identifier to upper case: `P_EDGE_X` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `P_center` should have an upper case name [INFO] [stdout] --> src/pattern.rs:78:11 [INFO] [stdout] | [INFO] [stdout] 78 | pub const P_center: [[usize; 8]; 4] = [ [INFO] [stdout] | ^^^^^^^^ help: convert the identifier to upper case: `P_CENTER` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `P_subcenter` should have an upper case name [INFO] [stdout] --> src/pattern.rs:84:11 [INFO] [stdout] | [INFO] [stdout] 84 | pub const P_subcenter: [[usize; 8]; 4] = [ [INFO] [stdout] | ^^^^^^^^^^^ help: convert the identifier to upper case: `P_SUBCENTER` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `P_subsubcenter` should have an upper case name [INFO] [stdout] --> src/pattern.rs:90:11 [INFO] [stdout] | [INFO] [stdout] 90 | pub const P_subsubcenter: [[usize; 8]; 4] = [ [INFO] [stdout] | ^^^^^^^^^^^^^^ help: convert the identifier to upper case: `P_SUBSUBCENTER` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `std::result::Result` that must be used [INFO] [stdout] --> src/learn.rs:27:9 [INFO] [stdout] | [INFO] [stdout] 27 | write!(&mut buffer, "{},", i); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: comparison is useless due to type limits [INFO] [stdout] --> src/valuation.rs:66:24 [INFO] [stdout] | [INFO] [stdout] 66 | if nx >= 0 && ny >= 0 && nx < 8 && ny < 8 { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_comparisons)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: comparison is useless due to type limits [INFO] [stdout] --> src/valuation.rs:66:35 [INFO] [stdout] | [INFO] [stdout] 66 | if nx >= 0 && ny >= 0 && nx < 8 && ny < 8 { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 255 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished dev [unoptimized + debuginfo] target(s) in 12.75s [INFO] running `Command { std: "docker" "inspect" "e7fe41669809d16083bd6ec406fdb5bb9589616bd793af1f434e905b09ba2b47", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "e7fe41669809d16083bd6ec406fdb5bb9589616bd793af1f434e905b09ba2b47", kill_on_drop: false }` [INFO] [stdout] e7fe41669809d16083bd6ec406fdb5bb9589616bd793af1f434e905b09ba2b47