[INFO] cloning repository https://github.com/duvallj/tungstenite_testings [INFO] running `"git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/duvallj/tungstenite_testings" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fduvallj%2Ftungstenite_testings"` [INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fduvallj%2Ftungstenite_testings'... [INFO] running `"git" "rev-parse" "HEAD"` [INFO] [stdout] 40730cfded5572ac0ff48706d19f28383e4a85ef [INFO] checking duvallj/tungstenite_testings against try#8a749131e7beb72f6edacefd2bdcbed3d67b2112 for pr-72331 [INFO] running `"git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fduvallj%2Ftungstenite_testings" "/workspace/builds/worker-0/source"` [INFO] [stderr] Cloning into '/workspace/builds/worker-0/source'... [INFO] [stderr] done. [INFO] validating manifest of git repo https://github.com/duvallj/tungstenite_testings on toolchain 8a749131e7beb72f6edacefd2bdcbed3d67b2112 [INFO] running `"/workspace/cargo-home/bin/cargo" "+8a749131e7beb72f6edacefd2bdcbed3d67b2112" "read-manifest" "--manifest-path" "Cargo.toml"` [INFO] started tweaking git repo https://github.com/duvallj/tungstenite_testings [INFO] finished tweaking git repo https://github.com/duvallj/tungstenite_testings [INFO] tweaked toml for git repo https://github.com/duvallj/tungstenite_testings written to /workspace/builds/worker-0/source/Cargo.toml [INFO] crate git repo https://github.com/duvallj/tungstenite_testings already has a lockfile, it will not be regenerated [INFO] running `"/workspace/cargo-home/bin/cargo" "+8a749131e7beb72f6edacefd2bdcbed3d67b2112" "fetch" "--locked" "--manifest-path" "Cargo.toml"` [INFO] running `"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" "MAP_USER_ID=0" "-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" "--network" "none" "rustops/crates-build-env" "/opt/rustwide/cargo-home/bin/cargo" "+8a749131e7beb72f6edacefd2bdcbed3d67b2112" "check" "--frozen" "--all" "--all-targets"` [INFO] [stderr] WARNING: Your kernel does not support swap limit capabilities or the cgroup is not mounted. Memory limited without swap. [INFO] [stdout] 6d9f2d1fece8e94c956669a9fce29c9a82793a19b3b7e839300431d70c319a53 [INFO] running `"docker" "start" "-a" "6d9f2d1fece8e94c956669a9fce29c9a82793a19b3b7e839300431d70c319a53"` [INFO] [stderr] sudo: setrlimit(RLIMIT_CORE): Operation not permitted [INFO] [stderr] Compiling proc-macro2 v1.0.12 [INFO] [stderr] Compiling syn v1.0.21 [INFO] [stderr] Compiling cc v1.0.53 [INFO] [stderr] Compiling log v0.4.8 [INFO] [stderr] Compiling getrandom v0.1.14 [INFO] [stderr] Compiling proc-macro-nested v0.1.4 [INFO] [stderr] Checking smallvec v1.4.0 [INFO] [stderr] Checking bytes v0.5.4 [INFO] [stderr] Checking futures-sink v0.3.5 [INFO] [stderr] Compiling serde v1.0.110 [INFO] [stderr] Checking itoa v0.4.5 [INFO] [stderr] Checking fnv v1.0.7 [INFO] [stderr] Checking futures-io v0.3.5 [INFO] [stderr] Checking arc-swap v0.4.6 [INFO] [stderr] Compiling ryu v1.0.4 [INFO] [stderr] Checking utf-8 v0.7.5 [INFO] [stderr] Checking dtoa v0.4.5 [INFO] [stderr] Compiling num-traits v0.2.11 [INFO] [stderr] Compiling num-integer v0.1.42 [INFO] [stderr] Checking futures-channel v0.3.5 [INFO] [stderr] Checking unicode-normalization v0.1.12 [INFO] [stderr] Checking atty v0.2.14 [INFO] [stderr] Checking time v0.1.43 [INFO] [stderr] Checking signal-hook-registry v1.2.0 [INFO] [stderr] Checking colored v1.9.3 [INFO] [stderr] Checking digest v0.8.1 [INFO] [stderr] Checking sha-1 v0.8.2 [INFO] [stderr] Checking http v0.2.1 [INFO] [stderr] Checking input_buffer v0.3.1 [INFO] [stderr] Checking rand_core v0.5.1 [INFO] [stderr] Checking mio v0.6.22 [INFO] [stderr] Checking rand_chacha v0.2.2 [INFO] [stderr] Checking rand v0.7.3 [INFO] [stderr] Compiling quote v1.0.5 [INFO] [stderr] Compiling openssl-sys v0.9.56 [INFO] [stderr] Checking idna v0.2.0 [INFO] [stderr] Checking mio-uds v0.6.8 [INFO] [stderr] Checking chrono v0.4.11 [INFO] [stderr] Compiling openssl v0.10.29 [INFO] [stderr] Compiling native-tls v0.2.4 [INFO] [stderr] Checking url v2.1.1 [INFO] [stderr] Checking simple_logger v1.6.0 [INFO] [stderr] Checking tungstenite v0.10.1 [INFO] [stderr] Compiling pin-project-internal v0.4.16 [INFO] [stderr] Compiling futures-macro v0.3.5 [INFO] [stderr] Compiling serde_derive v1.0.110 [INFO] [stderr] Compiling tokio-macros v0.2.5 [INFO] [stderr] Checking tokio v0.2.21 [INFO] [stderr] Checking pin-project v0.4.16 [INFO] [stderr] Checking futures-util v0.3.5 [INFO] [stderr] Checking futures-executor v0.3.5 [INFO] [stderr] Checking futures v0.3.5 [INFO] [stderr] Checking tokio-tungstenite v0.10.1 [INFO] [stderr] Checking uuid v0.8.1 [INFO] [stderr] Checking serde_urlencoded v0.6.1 [INFO] [stderr] Checking serde_json v1.0.53 [INFO] [stderr] Checking tungstenite_testings v0.3.0 (/opt/rustwide/workdir) [INFO] [stderr] warning: unused import: `futures_channel::mpsc::UnboundedSender` [INFO] [stderr] --> src/protocol/structs.rs:1:5 [INFO] [stderr] | [INFO] [stderr] 1 | use futures_channel::mpsc::UnboundedSender; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_imports)]` on by default [INFO] [stderr] [INFO] [stderr] warning: unused import: `unbounded` [INFO] [stderr] --> src/handlers.rs:4:29 [INFO] [stderr] | [INFO] [stderr] 4 | use futures_channel::mpsc::{unbounded, UnboundedSender}; [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused imports: `Either`, `select` [INFO] [stderr] --> src/handlers.rs:11:9 [INFO] [stderr] | [INFO] [stderr] 11 | select, [INFO] [stderr] | ^^^^^^ [INFO] [stderr] 12 | Either, [INFO] [stderr] | ^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused imports: `AsyncRead`, `AsyncWrite` [INFO] [stderr] --> src/handlers.rs:18:5 [INFO] [stderr] | [INFO] [stderr] 18 | AsyncRead, [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] 19 | AsyncWrite, [INFO] [stderr] | ^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `tokio_tungstenite::WebSocketStream` [INFO] [stderr] --> src/handlers.rs:21:5 [INFO] [stderr] | [INFO] [stderr] 21 | use tokio_tungstenite::WebSocketStream; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `futures_channel::mpsc::UnboundedSender` [INFO] [stderr] --> src/protocol/structs.rs:1:5 [INFO] [stderr] | [INFO] [stderr] 1 | use futures_channel::mpsc::UnboundedSender; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_imports)]` on by default [INFO] [stderr] [INFO] [stderr] warning: unused import: `unbounded` [INFO] [stderr] --> src/handlers.rs:4:29 [INFO] [stderr] | [INFO] [stderr] 4 | use futures_channel::mpsc::{unbounded, UnboundedSender}; [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused imports: `Either`, `select` [INFO] [stderr] --> src/handlers.rs:11:9 [INFO] [stderr] | [INFO] [stderr] 11 | select, [INFO] [stderr] | ^^^^^^ [INFO] [stderr] 12 | Either, [INFO] [stderr] | ^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused imports: `AsyncRead`, `AsyncWrite` [INFO] [stderr] --> src/handlers.rs:18:5 [INFO] [stderr] | [INFO] [stderr] 18 | AsyncRead, [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] 19 | AsyncWrite, [INFO] [stderr] | ^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `tokio_tungstenite::WebSocketStream` [INFO] [stderr] --> src/handlers.rs:21:5 [INFO] [stderr] | [INFO] [stderr] 21 | use tokio_tungstenite::WebSocketStream; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/handlers.rs:91:5 [INFO] [stderr] | [INFO] [stderr] 91 | mut ws_stream: T, [INFO] [stderr] | ----^^^^^^^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_mut)]` on by default [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/handlers.rs:94:10 [INFO] [stderr] | [INFO] [stderr] 94 | let (mut ws_sender, mut ws_receiver) = ws_stream.split(); [INFO] [stderr] | ----^^^^^^^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/handlers.rs:102:9 [INFO] [stderr] | [INFO] [stderr] 102 | let mut ws_fut = ws_receiver.next(); [INFO] [stderr] | ----^^^^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/handlers.rs:114:5 [INFO] [stderr] | [INFO] [stderr] 114 | mut ws_stream: T, [INFO] [stderr] | ----^^^^^^^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/handlers.rs:91:5 [INFO] [stderr] | [INFO] [stderr] 91 | mut ws_stream: T, [INFO] [stderr] | ----^^^^^^^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_mut)]` on by default [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/handlers.rs:94:10 [INFO] [stderr] | [INFO] [stderr] 94 | let (mut ws_sender, mut ws_receiver) = ws_stream.split(); [INFO] [stderr] | ----^^^^^^^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/handlers.rs:102:9 [INFO] [stderr] | [INFO] [stderr] 102 | let mut ws_fut = ws_receiver.next(); [INFO] [stderr] | ----^^^^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/handlers.rs:114:5 [INFO] [stderr] | [INFO] [stderr] 114 | mut ws_stream: T, [INFO] [stderr] | ----^^^^^^^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `addr` [INFO] [stderr] --> src/main.rs:42:66 [INFO] [stderr] | [INFO] [stderr] 42 | async fn handle_connection(room_map: RoomMap, peer_map: PeerMap, addr: SocketAddr, stream: TcpStream) -> WSResult<()> { [INFO] [stderr] | ^^^^ help: if this is intentional, prefix it with an underscore: `_addr` [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_variables)]` on by default [INFO] [stderr] [INFO] [stderr] warning: unused variable: `room_map` [INFO] [stderr] --> src/handlers.rs:48:5 [INFO] [stderr] | [INFO] [stderr] 48 | room_map: &RoomMap, [INFO] [stderr] | ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_room_map` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `peer_map` [INFO] [stderr] --> src/handlers.rs:90:5 [INFO] [stderr] | [INFO] [stderr] 90 | peer_map: PeerMap, [INFO] [stderr] | ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_peer_map` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `ws_sender` [INFO] [stderr] --> src/handlers.rs:94:10 [INFO] [stderr] | [INFO] [stderr] 94 | let (mut ws_sender, mut ws_receiver) = ws_stream.split(); [INFO] [stderr] | ^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_ws_sender` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `ws_fut` [INFO] [stderr] --> src/handlers.rs:102:9 [INFO] [stderr] | [INFO] [stderr] 102 | let mut ws_fut = ws_receiver.next(); [INFO] [stderr] | ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_ws_fut` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `peer_map` [INFO] [stderr] --> src/handlers.rs:113:5 [INFO] [stderr] | [INFO] [stderr] 113 | peer_map: PeerMap, [INFO] [stderr] | ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_peer_map` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `ws_stream` [INFO] [stderr] --> src/handlers.rs:114:5 [INFO] [stderr] | [INFO] [stderr] 114 | mut ws_stream: T, [INFO] [stderr] | ^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_ws_stream` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `id` [INFO] [stderr] --> src/handlers.rs:156:5 [INFO] [stderr] | [INFO] [stderr] 156 | id: &Id, [INFO] [stderr] | ^^ help: if this is intentional, prefix it with an underscore: `_id` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `room_map` [INFO] [stderr] --> src/handlers.rs:157:5 [INFO] [stderr] | [INFO] [stderr] 157 | room_map: &RoomMap, [INFO] [stderr] | ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_room_map` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `ws_sender` [INFO] [stderr] --> src/handlers.rs:158:5 [INFO] [stderr] | [INFO] [stderr] 158 | ws_sender: &mut T, [INFO] [stderr] | ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_ws_sender` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `lrq` [INFO] [stderr] --> src/handlers.rs:162:34 [INFO] [stderr] | [INFO] [stderr] 162 | Some(ClientRequest::List(lrq)) => { [INFO] [stderr] | ^^^ help: if this is intentional, prefix it with an underscore: `_lrq` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `prq` [INFO] [stderr] --> src/handlers.rs:164:34 [INFO] [stderr] | [INFO] [stderr] 164 | Some(ClientRequest::Play(prq)) => { [INFO] [stderr] | ^^^ help: if this is intentional, prefix it with an underscore: `_prq` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `wrq` [INFO] [stderr] --> src/handlers.rs:166:35 [INFO] [stderr] | [INFO] [stderr] 166 | Some(ClientRequest::Watch(wrq)) => { [INFO] [stderr] | ^^^ help: if this is intentional, prefix it with an underscore: `_wrq` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `addr` [INFO] [stderr] --> src/main.rs:42:66 [INFO] [stderr] | [INFO] [stderr] 42 | async fn handle_connection(room_map: RoomMap, peer_map: PeerMap, addr: SocketAddr, stream: TcpStream) -> WSResult<()> { [INFO] [stderr] | ^^^^ help: if this is intentional, prefix it with an underscore: `_addr` [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_variables)]` on by default [INFO] [stderr] [INFO] [stderr] warning: unused variable: `room_map` [INFO] [stderr] --> src/handlers.rs:48:5 [INFO] [stderr] | [INFO] [stderr] 48 | room_map: &RoomMap, [INFO] [stderr] | ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_room_map` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `peer_map` [INFO] [stderr] --> src/handlers.rs:90:5 [INFO] [stderr] | [INFO] [stderr] 90 | peer_map: PeerMap, [INFO] [stderr] | ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_peer_map` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `ws_sender` [INFO] [stderr] --> src/handlers.rs:94:10 [INFO] [stderr] | [INFO] [stderr] 94 | let (mut ws_sender, mut ws_receiver) = ws_stream.split(); [INFO] [stderr] | ^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_ws_sender` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `ws_fut` [INFO] [stderr] --> src/handlers.rs:102:9 [INFO] [stderr] | [INFO] [stderr] 102 | let mut ws_fut = ws_receiver.next(); [INFO] [stderr] | ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_ws_fut` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `peer_map` [INFO] [stderr] --> src/handlers.rs:113:5 [INFO] [stderr] | [INFO] [stderr] 113 | peer_map: PeerMap, [INFO] [stderr] | ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_peer_map` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `ws_stream` [INFO] [stderr] --> src/handlers.rs:114:5 [INFO] [stderr] | [INFO] [stderr] 114 | mut ws_stream: T, [INFO] [stderr] | ^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_ws_stream` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `id` [INFO] [stderr] --> src/handlers.rs:156:5 [INFO] [stderr] | [INFO] [stderr] 156 | id: &Id, [INFO] [stderr] | ^^ help: if this is intentional, prefix it with an underscore: `_id` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `room_map` [INFO] [stderr] --> src/handlers.rs:157:5 [INFO] [stderr] | [INFO] [stderr] 157 | room_map: &RoomMap, [INFO] [stderr] | ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_room_map` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `ws_sender` [INFO] [stderr] --> src/handlers.rs:158:5 [INFO] [stderr] | [INFO] [stderr] 158 | ws_sender: &mut T, [INFO] [stderr] | ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_ws_sender` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `lrq` [INFO] [stderr] --> src/handlers.rs:162:34 [INFO] [stderr] | [INFO] [stderr] 162 | Some(ClientRequest::List(lrq)) => { [INFO] [stderr] | ^^^ help: if this is intentional, prefix it with an underscore: `_lrq` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `prq` [INFO] [stderr] --> src/handlers.rs:164:34 [INFO] [stderr] | [INFO] [stderr] 164 | Some(ClientRequest::Play(prq)) => { [INFO] [stderr] | ^^^ help: if this is intentional, prefix it with an underscore: `_prq` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `wrq` [INFO] [stderr] --> src/handlers.rs:166:35 [INFO] [stderr] | [INFO] [stderr] 166 | Some(ClientRequest::Watch(wrq)) => { [INFO] [stderr] | ^^^ help: if this is intentional, prefix it with an underscore: `_wrq` [INFO] [stderr] [INFO] [stderr] warning: associated function is never used: `opponent` [INFO] [stderr] --> src/othello.rs:26:8 [INFO] [stderr] | [INFO] [stderr] 26 | fn opponent (&self) -> Player { [INFO] [stderr] | ^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(dead_code)]` on by default [INFO] [stderr] [INFO] [stderr] warning: constant is never used: `UP` [INFO] [stderr] --> src/othello.rs:35:1 [INFO] [stderr] | [INFO] [stderr] 35 | pub const UP : i32 = -10; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: constant is never used: `DOWN` [INFO] [stderr] --> src/othello.rs:36:1 [INFO] [stderr] | [INFO] [stderr] 36 | pub const DOWN : i32 = 10; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: constant is never used: `LEFT` [INFO] [stderr] --> src/othello.rs:37:1 [INFO] [stderr] | [INFO] [stderr] 37 | pub const LEFT : i32 = -1; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: constant is never used: `RIGHT` [INFO] [stderr] --> src/othello.rs:38:1 [INFO] [stderr] | [INFO] [stderr] 38 | pub const RIGHT : i32 = 1; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: constant is never used: `UP_RIGHT` [INFO] [stderr] --> src/othello.rs:39:1 [INFO] [stderr] | [INFO] [stderr] 39 | pub const UP_RIGHT : i32 = UP + RIGHT; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: constant is never used: `UP_LEFT` [INFO] [stderr] --> src/othello.rs:40:1 [INFO] [stderr] | [INFO] [stderr] 40 | pub const UP_LEFT : i32 = UP + LEFT; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: constant is never used: `DOWN_RIGHT` [INFO] [stderr] --> src/othello.rs:41:1 [INFO] [stderr] | [INFO] [stderr] 41 | pub const DOWN_RIGHT : i32 = DOWN + RIGHT; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: constant is never used: `DOWN_LEFT` [INFO] [stderr] --> src/othello.rs:42:1 [INFO] [stderr] | [INFO] [stderr] 42 | pub const DOWN_LEFT : i32 = DOWN + LEFT; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: enum is never used: `Direction` [INFO] [stderr] --> src/othello.rs:44:10 [INFO] [stderr] | [INFO] [stderr] 44 | pub enum Direction { [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: constant is never used: `LEGAL_SPACES` [INFO] [stderr] --> src/othello.rs:55:1 [INFO] [stderr] | [INFO] [stderr] 55 | / const LEGAL_SPACES : [usize; 64] = [ [INFO] [stderr] 56 | | 11, 12, 13, 14, 15, 16, 17, 18, [INFO] [stderr] 57 | | 21, 22, 23, 24, 25, 26, 27, 28, [INFO] [stderr] 58 | | 31, 32, 33, 34, 35, 36, 37, 38, [INFO] [stderr] ... | [INFO] [stderr] 62 | | 71, 72, 73, 74, 75, 76, 77, 78, [INFO] [stderr] 63 | | 81, 82, 83, 84, 85, 86, 87, 88]; [INFO] [stderr] | |____________________________________^ [INFO] [stderr] [INFO] [stderr] warning: associated function is never used: `value` [INFO] [stderr] --> src/othello.rs:66:12 [INFO] [stderr] | [INFO] [stderr] 66 | pub fn value(&self) -> i32 { [INFO] [stderr] | ^^^^^ [INFO] [stderr] [INFO] [stderr] warning: associated function is never used: `iter` [INFO] [stderr] --> src/othello.rs:79:12 [INFO] [stderr] | [INFO] [stderr] 79 | pub fn iter() -> Iter<'static, Direction> { [INFO] [stderr] | ^^^^ [INFO] [stderr] [INFO] [stderr] warning: static is never used: `DIRECTIONS` [INFO] [stderr] --> src/othello.rs:80:9 [INFO] [stderr] | [INFO] [stderr] 80 | / static DIRECTIONS : [Direction; 8] = [ [INFO] [stderr] 81 | | Direction::Up, Direction::UpLeft, Direction::Left, Direction::DownLeft, Direction::Down, Direction::DownRight, Direction::Right, Direction::UpRight [INFO] [stderr] 82 | | ]; [INFO] [stderr] | |__________^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `initial_board` [INFO] [stderr] --> src/othello.rs:89:4 [INFO] [stderr] | [INFO] [stderr] 89 | fn initial_board () -> Board { [INFO] [stderr] | ^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: constant is never used: `INITIAL_BOARD` [INFO] [stderr] --> src/othello.rs:104:1 [INFO] [stderr] | [INFO] [stderr] 104 | / pub const INITIAL_BOARD : Board = [INFO] [stderr] 105 | | [ [INFO] [stderr] 106 | | Piece::OUTER, Piece::OUTER, Piece::OUTER, Piece::OUTER, Piece::OUTER, Piece::OUTER, Piece::OUTER, Piece::OUTER, Piece::OUTER, Piece::OUTER, [INFO] [stderr] 107 | | Piece::OUTER, Piece::EMPTY, Piece::EMPTY, Piece::EMPTY, Piece::EMPTY, Piece::EMPTY, Piece::EMPTY, Piece::EMPTY, Piece::EMPTY, Piece::OUTER, [INFO] [stderr] ... | [INFO] [stderr] 115 | | Piece::OUTER, Piece::OUTER, Piece::OUTER, Piece::OUTER, Piece::OUTER, Piece::OUTER, Piece::OUTER, Piece::OUTER, Piece::OUTER, Piece::OUTER, [INFO] [stderr] 116 | | ]; [INFO] [stderr] | |__^ [INFO] [stderr] [INFO] [stderr] warning: type alias is never used: `Loc` [INFO] [stderr] --> src/othello/moves.rs:3:1 [INFO] [stderr] | [INFO] [stderr] 3 | type Loc = usize; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: type alias is never used: `Bd` [INFO] [stderr] --> src/othello/moves.rs:4:1 [INFO] [stderr] | [INFO] [stderr] 4 | type Bd = BoardStruct; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: struct is never constructed: `IllegalMoveError` [INFO] [stderr] --> src/othello/moves.rs:6:12 [INFO] [stderr] | [INFO] [stderr] 6 | pub struct IllegalMoveError { [INFO] [stderr] | ^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `add` [INFO] [stderr] --> src/othello/moves.rs:13:4 [INFO] [stderr] | [INFO] [stderr] 13 | fn add (u: usize, i: i32) -> usize { [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `find_bracket` [INFO] [stderr] --> src/othello/moves.rs:21:4 [INFO] [stderr] | [INFO] [stderr] 21 | fn find_bracket(square: &Loc, player: &Player, board: &Bd, direction: &Direction) -> Option { [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `is_legal` [INFO] [stderr] --> src/othello/moves.rs:43:8 [INFO] [stderr] | [INFO] [stderr] 43 | pub fn is_legal(square: &Loc, player: &Player, board: &Bd) -> bool { [INFO] [stderr] | ^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `make_flips` [INFO] [stderr] --> src/othello/moves.rs:53:4 [INFO] [stderr] | [INFO] [stderr] 53 | fn make_flips(square: &Loc, player: &Player, board: &mut Bd, direction: &Direction) -> () { [INFO] [stderr] | ^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `make_move` [INFO] [stderr] --> src/othello/moves.rs:70:8 [INFO] [stderr] | [INFO] [stderr] 70 | pub fn make_move(square: &Loc, player: &Player, board: &mut Bd) -> Result<(), IllegalMoveError> { [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `legal_moves` [INFO] [stderr] --> src/othello/moves.rs:85:8 [INFO] [stderr] | [INFO] [stderr] 85 | pub fn legal_moves (player: &Player, board: &Bd) -> Vec { [INFO] [stderr] | ^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `any_legal_moves` [INFO] [stderr] --> src/othello/moves.rs:98:8 [INFO] [stderr] | [INFO] [stderr] 98 | pub fn any_legal_moves (player: &Player, board: &Bd) -> bool { [INFO] [stderr] | ^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `next_player` [INFO] [stderr] --> src/othello/moves.rs:106:8 [INFO] [stderr] | [INFO] [stderr] 106 | pub fn next_player (board: &Bd, prev_player: &Player) -> Option { [INFO] [stderr] | ^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: associated function is never used: `opponent` [INFO] [stderr] --> src/othello.rs:26:8 [INFO] [stderr] | [INFO] [stderr] 26 | fn opponent (&self) -> Player { [INFO] [stderr] | ^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(dead_code)]` on by default [INFO] [stderr] [INFO] [stderr] warning: constant is never used: `UP` [INFO] [stderr] --> src/othello.rs:35:1 [INFO] [stderr] | [INFO] [stderr] 35 | pub const UP : i32 = -10; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: constant is never used: `DOWN` [INFO] [stderr] --> src/othello.rs:36:1 [INFO] [stderr] | [INFO] [stderr] 36 | pub const DOWN : i32 = 10; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: constant is never used: `LEFT` [INFO] [stderr] --> src/othello.rs:37:1 [INFO] [stderr] | [INFO] [stderr] 37 | pub const LEFT : i32 = -1; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: constant is never used: `RIGHT` [INFO] [stderr] --> src/othello.rs:38:1 [INFO] [stderr] | [INFO] [stderr] 38 | pub const RIGHT : i32 = 1; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: constant is never used: `UP_RIGHT` [INFO] [stderr] --> src/othello.rs:39:1 [INFO] [stderr] | [INFO] [stderr] 39 | pub const UP_RIGHT : i32 = UP + RIGHT; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: constant is never used: `UP_LEFT` [INFO] [stderr] --> src/othello.rs:40:1 [INFO] [stderr] | [INFO] [stderr] 40 | pub const UP_LEFT : i32 = UP + LEFT; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: constant is never used: `DOWN_RIGHT` [INFO] [stderr] --> src/othello.rs:41:1 [INFO] [stderr] | [INFO] [stderr] 41 | pub const DOWN_RIGHT : i32 = DOWN + RIGHT; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: constant is never used: `DOWN_LEFT` [INFO] [stderr] --> src/othello.rs:42:1 [INFO] [stderr] | [INFO] [stderr] 42 | pub const DOWN_LEFT : i32 = DOWN + LEFT; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: enum is never used: `Direction` [INFO] [stderr] --> src/othello.rs:44:10 [INFO] [stderr] | [INFO] [stderr] 44 | pub enum Direction { [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: constant is never used: `LEGAL_SPACES` [INFO] [stderr] --> src/othello.rs:55:1 [INFO] [stderr] | [INFO] [stderr] 55 | / const LEGAL_SPACES : [usize; 64] = [ [INFO] [stderr] 56 | | 11, 12, 13, 14, 15, 16, 17, 18, [INFO] [stderr] 57 | | 21, 22, 23, 24, 25, 26, 27, 28, [INFO] [stderr] 58 | | 31, 32, 33, 34, 35, 36, 37, 38, [INFO] [stderr] ... | [INFO] [stderr] 62 | | 71, 72, 73, 74, 75, 76, 77, 78, [INFO] [stderr] 63 | | 81, 82, 83, 84, 85, 86, 87, 88]; [INFO] [stderr] | |____________________________________^ [INFO] [stderr] [INFO] [stderr] warning: associated function is never used: `value` [INFO] [stderr] --> src/othello.rs:66:12 [INFO] [stderr] | [INFO] [stderr] 66 | pub fn value(&self) -> i32 { [INFO] [stderr] | ^^^^^ [INFO] [stderr] [INFO] [stderr] warning: associated function is never used: `iter` [INFO] [stderr] --> src/othello.rs:79:12 [INFO] [stderr] | [INFO] [stderr] 79 | pub fn iter() -> Iter<'static, Direction> { [INFO] [stderr] | ^^^^ [INFO] [stderr] [INFO] [stderr] warning: static is never used: `DIRECTIONS` [INFO] [stderr] --> src/othello.rs:80:9 [INFO] [stderr] | [INFO] [stderr] 80 | / static DIRECTIONS : [Direction; 8] = [ [INFO] [stderr] 81 | | Direction::Up, Direction::UpLeft, Direction::Left, Direction::DownLeft, Direction::Down, Direction::DownRight, Direction::Right, Direction::UpRight [INFO] [stderr] 82 | | ]; [INFO] [stderr] | |__________^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `initial_board` [INFO] [stderr] --> src/othello.rs:89:4 [INFO] [stderr] | [INFO] [stderr] 89 | fn initial_board () -> Board { [INFO] [stderr] | ^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: constant is never used: `INITIAL_BOARD` [INFO] [stderr] --> src/othello.rs:104:1 [INFO] [stderr] | [INFO] [stderr] 104 | / pub const INITIAL_BOARD : Board = [INFO] [stderr] 105 | | [ [INFO] [stderr] 106 | | Piece::OUTER, Piece::OUTER, Piece::OUTER, Piece::OUTER, Piece::OUTER, Piece::OUTER, Piece::OUTER, Piece::OUTER, Piece::OUTER, Piece::OUTER, [INFO] [stderr] 107 | | Piece::OUTER, Piece::EMPTY, Piece::EMPTY, Piece::EMPTY, Piece::EMPTY, Piece::EMPTY, Piece::EMPTY, Piece::EMPTY, Piece::EMPTY, Piece::OUTER, [INFO] [stderr] ... | [INFO] [stderr] 115 | | Piece::OUTER, Piece::OUTER, Piece::OUTER, Piece::OUTER, Piece::OUTER, Piece::OUTER, Piece::OUTER, Piece::OUTER, Piece::OUTER, Piece::OUTER, [INFO] [stderr] 116 | | ]; [INFO] [stderr] | |__^ [INFO] [stderr] [INFO] [stderr] warning: type alias is never used: `Loc` [INFO] [stderr] --> src/othello/moves.rs:3:1 [INFO] [stderr] | [INFO] [stderr] 3 | type Loc = usize; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: type alias is never used: `Bd` [INFO] [stderr] --> src/othello/moves.rs:4:1 [INFO] [stderr] | [INFO] [stderr] 4 | type Bd = BoardStruct; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: struct is never constructed: `IllegalMoveError` [INFO] [stderr] --> src/othello/moves.rs:6:12 [INFO] [stderr] | [INFO] [stderr] 6 | pub struct IllegalMoveError { [INFO] [stderr] | ^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `add` [INFO] [stderr] --> src/othello/moves.rs:13:4 [INFO] [stderr] | [INFO] [stderr] 13 | fn add (u: usize, i: i32) -> usize { [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `find_bracket` [INFO] [stderr] --> src/othello/moves.rs:21:4 [INFO] [stderr] | [INFO] [stderr] 21 | fn find_bracket(square: &Loc, player: &Player, board: &Bd, direction: &Direction) -> Option { [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `is_legal` [INFO] [stderr] --> src/othello/moves.rs:43:8 [INFO] [stderr] | [INFO] [stderr] 43 | pub fn is_legal(square: &Loc, player: &Player, board: &Bd) -> bool { [INFO] [stderr] | ^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `make_flips` [INFO] [stderr] --> src/othello/moves.rs:53:4 [INFO] [stderr] | [INFO] [stderr] 53 | fn make_flips(square: &Loc, player: &Player, board: &mut Bd, direction: &Direction) -> () { [INFO] [stderr] | ^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `make_move` [INFO] [stderr] --> src/othello/moves.rs:70:8 [INFO] [stderr] | [INFO] [stderr] 70 | pub fn make_move(square: &Loc, player: &Player, board: &mut Bd) -> Result<(), IllegalMoveError> { [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `legal_moves` [INFO] [stderr] --> src/othello/moves.rs:85:8 [INFO] [stderr] | [INFO] [stderr] 85 | pub fn legal_moves (player: &Player, board: &Bd) -> Vec { [INFO] [stderr] | ^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `any_legal_moves` [INFO] [stderr] --> src/othello/moves.rs:98:8 [INFO] [stderr] | [INFO] [stderr] 98 | pub fn any_legal_moves (player: &Player, board: &Bd) -> bool { [INFO] [stderr] | ^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `next_player` [INFO] [stderr] --> src/othello/moves.rs:106:8 [INFO] [stderr] | [INFO] [stderr] 106 | pub fn next_player (board: &Bd, prev_player: &Player) -> Option { [INFO] [stderr] | ^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `score` [INFO] [stderr] --> src/othello/moves.rs:117:8 [INFO] [stderr] | [INFO] [stderr] 117 | pub fn score (player: &Player, board: &Bd) -> i32 { [INFO] [stderr] | ^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `is_game_over` [INFO] [stderr] --> src/othello/moves.rs:134:8 [INFO] [stderr] | [INFO] [stderr] 134 | pub fn is_game_over(player: &Player, board: &Bd) -> bool { [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: type alias is never used: `RunnerStdin` [INFO] [stderr] --> src/runner/structs.rs:12:1 [INFO] [stderr] | [INFO] [stderr] 12 | pub type RunnerStdin = ChildStdin; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: type alias is never used: `RunnerStdout` [INFO] [stderr] --> src/runner/structs.rs:13:1 [INFO] [stderr] | [INFO] [stderr] 13 | pub type RunnerStdout = Lines>; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: type alias is never used: `RunnerStderr` [INFO] [stderr] --> src/runner/structs.rs:14:1 [INFO] [stderr] | [INFO] [stderr] 14 | pub type RunnerStderr = Lines>; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: struct is never constructed: `Runner` [INFO] [stderr] --> src/runner/structs.rs:16:12 [INFO] [stderr] | [INFO] [stderr] 16 | pub struct Runner { [INFO] [stderr] | ^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: constant is never used: `OTHELLO_ROOT` [INFO] [stderr] --> src/runner/settings.rs:7:1 [INFO] [stderr] | [INFO] [stderr] 7 | pub const OTHELLO_ROOT : &str = "../othello_tourney/"; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `build_unjailed_command` [INFO] [stderr] --> src/runner/settings.rs:9:8 [INFO] [stderr] | [INFO] [stderr] 9 | pub fn build_unjailed_command>(ai_name: S) -> Result { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `build_jailed_command` [INFO] [stderr] --> src/runner/settings.rs:29:8 [INFO] [stderr] | [INFO] [stderr] 29 | pub fn build_jailed_command>(ai_name: S) -> Result { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `make_runner` [INFO] [stderr] --> src/runner.rs:22:8 [INFO] [stderr] | [INFO] [stderr] 22 | pub fn make_runner(ai_name: &String) -> IOResult { [INFO] [stderr] | ^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `serialize_request` [INFO] [stderr] --> src/runner.rs:47:4 [INFO] [stderr] | [INFO] [stderr] 47 | fn serialize_request(board: &BoardStruct, player: &Player, timelimit: f32, ai_name: &String) -> Result { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `get_move` [INFO] [stderr] --> src/runner.rs:58:14 [INFO] [stderr] | [INFO] [stderr] 58 | pub async fn get_move(runner: &mut Runner, board: &BoardStruct, player: &Player, timelimit: f32) -> IOResult { [INFO] [stderr] | ^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: enum is never used: `PlayerType` [INFO] [stderr] --> src/handlers.rs:35:10 [INFO] [stderr] | [INFO] [stderr] 35 | pub enum PlayerType { [INFO] [stderr] | ^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: struct is never constructed: `Game` [INFO] [stderr] --> src/handlers.rs:40:12 [INFO] [stderr] | [INFO] [stderr] 40 | pub struct Game { [INFO] [stderr] | ^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `handle_incoming_message` [INFO] [stderr] --> src/handlers.rs:46:14 [INFO] [stderr] | [INFO] [stderr] 46 | pub async fn handle_incoming_message( [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `handle_initial_request` [INFO] [stderr] --> src/handlers.rs:155:14 [INFO] [stderr] | [INFO] [stderr] 155 | pub async fn handle_initial_request + std::marker::Unpin>( [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `cleanup_room` [INFO] [stderr] --> src/handlers.rs:172:8 [INFO] [stderr] | [INFO] [stderr] 172 | pub fn cleanup_room( [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `unwrap_incomming_message` [INFO] [stderr] --> src/main.rs:144:4 [INFO] [stderr] | [INFO] [stderr] 144 | fn unwrap_incomming_message(msg: WSMessage) -> WSResult { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `score` [INFO] [stderr] --> src/othello/moves.rs:117:8 [INFO] [stderr] | [INFO] [stderr] 117 | pub fn score (player: &Player, board: &Bd) -> i32 { [INFO] [stderr] | ^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `is_game_over` [INFO] [stderr] --> src/othello/moves.rs:134:8 [INFO] [stderr] | [INFO] [stderr] 134 | pub fn is_game_over(player: &Player, board: &Bd) -> bool { [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: type alias is never used: `RunnerStdin` [INFO] [stderr] --> src/runner/structs.rs:12:1 [INFO] [stderr] | [INFO] [stderr] 12 | pub type RunnerStdin = ChildStdin; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: type alias is never used: `RunnerStdout` [INFO] [stderr] --> src/runner/structs.rs:13:1 [INFO] [stderr] | [INFO] [stderr] 13 | pub type RunnerStdout = Lines>; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: type alias is never used: `RunnerStderr` [INFO] [stderr] --> src/runner/structs.rs:14:1 [INFO] [stderr] | [INFO] [stderr] 14 | pub type RunnerStderr = Lines>; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: struct is never constructed: `Runner` [INFO] [stderr] --> src/runner/structs.rs:16:12 [INFO] [stderr] | [INFO] [stderr] 16 | pub struct Runner { [INFO] [stderr] | ^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: constant is never used: `OTHELLO_ROOT` [INFO] [stderr] --> src/runner/settings.rs:7:1 [INFO] [stderr] | [INFO] [stderr] 7 | pub const OTHELLO_ROOT : &str = "../othello_tourney/"; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `build_unjailed_command` [INFO] [stderr] --> src/runner/settings.rs:9:8 [INFO] [stderr] | [INFO] [stderr] 9 | pub fn build_unjailed_command>(ai_name: S) -> Result { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `build_jailed_command` [INFO] [stderr] --> src/runner/settings.rs:29:8 [INFO] [stderr] | [INFO] [stderr] 29 | pub fn build_jailed_command>(ai_name: S) -> Result { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `make_runner` [INFO] [stderr] --> src/runner.rs:22:8 [INFO] [stderr] | [INFO] [stderr] 22 | pub fn make_runner(ai_name: &String) -> IOResult { [INFO] [stderr] | ^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `serialize_request` [INFO] [stderr] --> src/runner.rs:47:4 [INFO] [stderr] | [INFO] [stderr] 47 | fn serialize_request(board: &BoardStruct, player: &Player, timelimit: f32, ai_name: &String) -> Result { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `get_move` [INFO] [stderr] --> src/runner.rs:58:14 [INFO] [stderr] | [INFO] [stderr] 58 | pub async fn get_move(runner: &mut Runner, board: &BoardStruct, player: &Player, timelimit: f32) -> IOResult { [INFO] [stderr] | ^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: enum is never used: `PlayerType` [INFO] [stderr] --> src/handlers.rs:35:10 [INFO] [stderr] | [INFO] [stderr] 35 | pub enum PlayerType { [INFO] [stderr] | ^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: struct is never constructed: `Game` [INFO] [stderr] --> src/handlers.rs:40:12 [INFO] [stderr] | [INFO] [stderr] 40 | pub struct Game { [INFO] [stderr] | ^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `handle_incoming_message` [INFO] [stderr] --> src/handlers.rs:46:14 [INFO] [stderr] | [INFO] [stderr] 46 | pub async fn handle_incoming_message( [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `handle_initial_request` [INFO] [stderr] --> src/handlers.rs:155:14 [INFO] [stderr] | [INFO] [stderr] 155 | pub async fn handle_initial_request + std::marker::Unpin>( [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `cleanup_room` [INFO] [stderr] --> src/handlers.rs:172:8 [INFO] [stderr] | [INFO] [stderr] 172 | pub fn cleanup_room( [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `unwrap_incomming_message` [INFO] [stderr] --> src/main.rs:144:4 [INFO] [stderr] | [INFO] [stderr] 144 | fn unwrap_incomming_message(msg: WSMessage) -> WSResult { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: 67 warnings emitted [INFO] [stderr] [INFO] [stderr] warning: 67 warnings emitted [INFO] [stderr] [INFO] [stderr] Finished dev [unoptimized + debuginfo] target(s) in 1m 26s [INFO] running `"docker" "inspect" "6d9f2d1fece8e94c956669a9fce29c9a82793a19b3b7e839300431d70c319a53"` [INFO] running `"docker" "rm" "-f" "6d9f2d1fece8e94c956669a9fce29c9a82793a19b3b7e839300431d70c319a53"` [INFO] [stdout] 6d9f2d1fece8e94c956669a9fce29c9a82793a19b3b7e839300431d70c319a53