[INFO] cloning repository https://github.com/jiricodes/battlesnake [INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/jiricodes/battlesnake" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fjiricodes%2Fbattlesnake", kill_on_drop: false }` [INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fjiricodes%2Fbattlesnake'... [INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }` [INFO] [stdout] 6b6d9b04732c8b698e5313919009fba5db08f509 [INFO] testing jiricodes/battlesnake against master#d7bd9cd469ff6871420007f091ef52fc32d2ca99 for pr-121417 [INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fjiricodes%2Fbattlesnake" "/workspace/builds/worker-0-tc1/source", kill_on_drop: false }` [INFO] [stderr] Cloning into '/workspace/builds/worker-0-tc1/source'... [INFO] [stderr] done. [INFO] validating manifest of git repo https://github.com/jiricodes/battlesnake on toolchain d7bd9cd469ff6871420007f091ef52fc32d2ca99 [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+d7bd9cd469ff6871420007f091ef52fc32d2ca99" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] started tweaking git repo https://github.com/jiricodes/battlesnake [INFO] finished tweaking git repo https://github.com/jiricodes/battlesnake [INFO] tweaked toml for git repo https://github.com/jiricodes/battlesnake written to /workspace/builds/worker-0-tc1/source/Cargo.toml [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+d7bd9cd469ff6871420007f091ef52fc32d2ca99" "generate-lockfile" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] [stderr] Updating crates.io index [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+d7bd9cd469ff6871420007f091ef52fc32d2ca99" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:2788e3201cd34a07e3172128adcd8b3090168a8e3bcc40d7c032b9dda1df7d1c" "/opt/rustwide/cargo-home/bin/cargo" "+d7bd9cd469ff6871420007f091ef52fc32d2ca99" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] 48479f6039e8ec6a0b850e7a34c1650e51c51385d6950efb41d73dc366f7d2d7 [INFO] running `Command { std: "docker" "start" "-a" "48479f6039e8ec6a0b850e7a34c1650e51c51385d6950efb41d73dc366f7d2d7", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "48479f6039e8ec6a0b850e7a34c1650e51c51385d6950efb41d73dc366f7d2d7", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "48479f6039e8ec6a0b850e7a34c1650e51c51385d6950efb41d73dc366f7d2d7", kill_on_drop: false }` [INFO] [stdout] 48479f6039e8ec6a0b850e7a34c1650e51c51385d6950efb41d73dc366f7d2d7 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc1/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" "RUSTDOCFLAGS=--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" "ghcr.io/rust-lang/crates-build-env/linux@sha256:2788e3201cd34a07e3172128adcd8b3090168a8e3bcc40d7c032b9dda1df7d1c" "/opt/rustwide/cargo-home/bin/cargo" "+d7bd9cd469ff6871420007f091ef52fc32d2ca99" "build" "--frozen" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] 8e4732bd454c9ed7127bd1822696ce13c2cc57e597c1a727673daa04c7c31178 [INFO] running `Command { std: "docker" "start" "-a" "8e4732bd454c9ed7127bd1822696ce13c2cc57e597c1a727673daa04c7c31178", kill_on_drop: false }` [INFO] [stderr] Compiling libc v0.2.153 [INFO] [stderr] Compiling syn v1.0.109 [INFO] [stderr] Compiling log v0.4.21 [INFO] [stderr] Compiling futures-core v0.3.30 [INFO] [stderr] Compiling cfg-if v0.1.10 [INFO] [stderr] Compiling futures-io v0.3.30 [INFO] [stderr] Compiling bytes v0.5.6 [INFO] [stderr] Compiling futures-task v0.3.30 [INFO] [stderr] Compiling pin-project-lite v0.1.12 [INFO] [stderr] Compiling parking_lot_core v0.8.6 [INFO] [stderr] Compiling pin-project-internal v0.4.30 [INFO] [stderr] Compiling instant v0.1.12 [INFO] [stderr] Compiling syn v2.0.52 [INFO] [stderr] Compiling unicode-normalization v0.1.23 [INFO] [stderr] Compiling standback v0.2.17 [INFO] [stderr] Compiling copyless v0.1.5 [INFO] [stderr] Compiling unicode-bidi v0.3.15 [INFO] [stderr] Compiling proc-macro-hack v0.5.20+deprecated [INFO] [stderr] Compiling either v1.10.0 [INFO] [stderr] Compiling futures-channel v0.3.30 [INFO] [stderr] Compiling generic-array v0.14.7 [INFO] [stderr] Compiling thiserror v1.0.57 [INFO] [stderr] Compiling serde v1.0.197 [INFO] [stderr] Compiling async-trait v0.1.77 [INFO] [stderr] Compiling matches v0.1.10 [INFO] [stderr] Compiling heck v0.4.1 [INFO] [stderr] Compiling match_cfg v0.1.0 [INFO] [stderr] Compiling const_fn v0.4.9 [INFO] [stderr] Compiling tracing-core v0.1.32 [INFO] [stderr] Compiling time v0.2.27 [INFO] [stderr] Compiling aho-corasick v1.1.2 [INFO] [stderr] Compiling indexmap v1.9.3 [INFO] [stderr] Compiling alloc-no-stdlib v2.0.4 [INFO] [stderr] Compiling regex-syntax v0.8.2 [INFO] [stderr] Compiling quick-error v1.2.3 [INFO] [stderr] Compiling idna v0.5.0 [INFO] [stderr] Compiling idna v0.2.3 [INFO] [stderr] Compiling linked-hash-map v0.5.6 [INFO] [stderr] Compiling crc32fast v1.4.0 [INFO] [stderr] Compiling crossbeam-utils v0.8.19 [INFO] [stderr] Compiling lru-cache v0.1.2 [INFO] [stderr] Compiling tracing v0.1.40 [INFO] [stderr] Compiling alloc-stdlib v0.2.2 [INFO] [stderr] Compiling cookie v0.14.4 [INFO] [stderr] Compiling serde_json v1.0.114 [INFO] [stderr] Compiling httparse v1.8.0 [INFO] [stderr] Compiling url v2.5.0 [INFO] [stderr] Compiling ryu v1.0.17 [INFO] [stderr] Compiling hashbrown v0.12.3 [INFO] [stderr] Compiling iovec v0.1.4 [INFO] [stderr] Compiling net2 v0.2.39 [INFO] [stderr] Compiling signal-hook-registry v1.4.1 [INFO] [stderr] Compiling num_cpus v1.16.0 [INFO] [stderr] Compiling getrandom v0.1.16 [INFO] [stderr] Compiling hostname v0.3.1 [INFO] [stderr] Compiling miniz_oxide v0.7.2 [INFO] [stderr] Compiling resolv-conf v0.7.0 [INFO] [stderr] Compiling mio v0.6.23 [INFO] [stderr] Compiling parking_lot v0.11.2 [INFO] [stderr] Compiling threadpool v1.8.1 [INFO] [stderr] Compiling rand_core v0.5.1 [INFO] [stderr] Compiling rand_chacha v0.2.2 [INFO] [stderr] Compiling brotli-decompressor v2.5.1 [INFO] [stderr] Compiling block-buffer v0.9.0 [INFO] [stderr] Compiling digest v0.9.0 [INFO] [stderr] Compiling byteorder v1.5.0 [INFO] [stderr] Compiling opaque-debug v0.3.1 [INFO] [stderr] Compiling sha-1 v0.9.8 [INFO] [stderr] Compiling crossbeam-epoch v0.9.18 [INFO] [stderr] Compiling rand v0.7.3 [INFO] [stderr] Compiling mio-uds v0.6.8 [INFO] [stderr] Compiling fxhash v0.2.1 [INFO] [stderr] Compiling flate2 v1.0.28 [INFO] [stderr] Compiling socket2 v0.3.19 [INFO] [stderr] Compiling tokio v0.2.25 [INFO] [stderr] Compiling encoding_rs v0.8.33 [INFO] [stderr] Compiling num-traits v0.2.18 [INFO] [stderr] Compiling mime v0.3.17 [INFO] [stderr] Compiling rayon-core v1.12.1 [INFO] [stderr] Compiling itoa v0.4.8 [INFO] [stderr] Compiling language-tags v0.2.2 [INFO] [stderr] Compiling base64 v0.13.1 [INFO] [stderr] Compiling crossbeam-deque v0.8.5 [INFO] [stderr] Compiling regex-automata v0.4.5 [INFO] [stderr] Compiling bytestring v1.3.1 [INFO] [stderr] Compiling unicode-width v0.1.11 [INFO] [stderr] Compiling atty v0.2.14 [INFO] [stderr] Compiling textwrap v0.11.0 [INFO] [stderr] Compiling ansi_term v0.12.1 [INFO] [stderr] Compiling iana-time-zone v0.1.60 [INFO] [stderr] Compiling brotli v3.4.0 [INFO] [stderr] Compiling strsim v0.8.0 [INFO] [stderr] Compiling vec_map v0.8.2 [INFO] [stderr] Compiling colored v2.1.0 [INFO] [stderr] Compiling clap v2.34.0 [INFO] [stderr] Compiling rayon v1.9.0 [INFO] [stderr] Compiling chrono v0.4.34 [INFO] [stderr] Compiling futures-macro v0.3.30 [INFO] [stderr] Compiling thiserror-impl v1.0.57 [INFO] [stderr] Compiling serde_derive v1.0.197 [INFO] [stderr] Compiling pin-project-internal v1.1.4 [INFO] [stderr] Compiling tokio-util v0.3.1 [INFO] [stderr] Compiling derive_more v0.99.17 [INFO] [stderr] Compiling actix-macros v0.1.3 [INFO] [stderr] Compiling enum-as-inner v0.3.4 [INFO] [stderr] Compiling time-macros-impl v0.1.2 [INFO] [stderr] Compiling futures-util v0.3.30 [INFO] [stderr] Compiling regex v1.10.3 [INFO] [stderr] Compiling actix-web-codegen v0.4.0 [INFO] [stderr] error: could not compile `brotli` (lib) [INFO] [stderr] [INFO] [stderr] Caused by: [INFO] [stderr] process didn't exit successfully: `/opt/rustwide/rustup-home/toolchains/d7bd9cd469ff6871420007f091ef52fc32d2ca99/bin/rustc --crate-name brotli /opt/rustwide/cargo-home/registry/src/index.crates.io-6f17d22bba15001f/brotli-3.4.0/src/lib.rs --error-format=json --json=diagnostic-rendered-ansi,artifacts,future-incompat --crate-type lib --emit=dep-info,metadata,link -C embed-bitcode=no -C debuginfo=2 --cfg 'feature="alloc-stdlib"' --cfg 'feature="default"' --cfg 'feature="ffi-api"' --cfg 'feature="std"' -C metadata=a4caad04650e10c4 -C extra-filename=-a4caad04650e10c4 --out-dir /opt/rustwide/target/debug/deps -L dependency=/opt/rustwide/target/debug/deps --extern alloc_no_stdlib=/opt/rustwide/target/debug/deps/liballoc_no_stdlib-7db4b4f903e6a3ad.rmeta --extern alloc_stdlib=/opt/rustwide/target/debug/deps/liballoc_stdlib-d9f2eea369668bd9.rmeta --extern brotli_decompressor=/opt/rustwide/target/debug/deps/libbrotli_decompressor-511b96ef2af2a23a.rmeta --cap-lints allow --cap-lints=forbid` (signal: 9, SIGKILL: kill) [INFO] [stderr] warning: build failed, waiting for other jobs to finish... [INFO] [stderr] error: could not compile `tokio` (lib) [INFO] [stderr] [INFO] [stderr] Caused by: [INFO] [stderr] process didn't exit successfully: `/opt/rustwide/rustup-home/toolchains/d7bd9cd469ff6871420007f091ef52fc32d2ca99/bin/rustc --crate-name tokio --edition=2018 /opt/rustwide/cargo-home/registry/src/index.crates.io-6f17d22bba15001f/tokio-0.2.25/src/lib.rs --error-format=json --json=diagnostic-rendered-ansi,artifacts,future-incompat --crate-type lib --emit=dep-info,metadata,link -C embed-bitcode=no -C debuginfo=2 --cfg 'feature="default"' --cfg 'feature="futures-core"' --cfg 'feature="io-driver"' --cfg 'feature="io-util"' --cfg 'feature="iovec"' --cfg 'feature="lazy_static"' --cfg 'feature="libc"' --cfg 'feature="memchr"' --cfg 'feature="mio"' --cfg 'feature="mio-uds"' --cfg 'feature="rt-core"' --cfg 'feature="rt-util"' --cfg 'feature="signal"' --cfg 'feature="signal-hook-registry"' --cfg 'feature="slab"' --cfg 'feature="stream"' --cfg 'feature="tcp"' --cfg 'feature="time"' --cfg 'feature="udp"' --cfg 'feature="uds"' --cfg 'feature="winapi"' -C metadata=c5d382e52e28469e -C extra-filename=-c5d382e52e28469e --out-dir /opt/rustwide/target/debug/deps -L dependency=/opt/rustwide/target/debug/deps --extern bytes=/opt/rustwide/target/debug/deps/libbytes-79969d889c342fe2.rmeta --extern futures_core=/opt/rustwide/target/debug/deps/libfutures_core-a61585961c4b5fd1.rmeta --extern iovec=/opt/rustwide/target/debug/deps/libiovec-57b49054289b7d75.rmeta --extern lazy_static=/opt/rustwide/target/debug/deps/liblazy_static-b82c15677deef9e2.rmeta --extern libc=/opt/rustwide/target/debug/deps/liblibc-5911a9ab444b7624.rmeta --extern memchr=/opt/rustwide/target/debug/deps/libmemchr-2cd9dc7152ebb008.rmeta --extern mio=/opt/rustwide/target/debug/deps/libmio-da0ef47f751d8e70.rmeta --extern mio_uds=/opt/rustwide/target/debug/deps/libmio_uds-a4f6f8d6cb163f08.rmeta --extern pin_project_lite=/opt/rustwide/target/debug/deps/libpin_project_lite-225e1682d3a1dc59.rmeta --extern signal_hook_registry=/opt/rustwide/target/debug/deps/libsignal_hook_registry-1c97dc46644abb4a.rmeta --extern slab=/opt/rustwide/target/debug/deps/libslab-21558d3888ef8234.rmeta --cap-lints allow --cap-lints=forbid` (signal: 9, SIGKILL: kill) [INFO] running `Command { std: "docker" "inspect" "8e4732bd454c9ed7127bd1822696ce13c2cc57e597c1a727673daa04c7c31178", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "8e4732bd454c9ed7127bd1822696ce13c2cc57e597c1a727673daa04c7c31178", kill_on_drop: false }` [INFO] [stdout] 8e4732bd454c9ed7127bd1822696ce13c2cc57e597c1a727673daa04c7c31178 [INFO] testing jiricodes/battlesnake against try#393ef12c970fbc7f294cd96c35cb76f9591bc1d6 for pr-121417 [INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fjiricodes%2Fbattlesnake" "/workspace/builds/worker-0-tc2/source", kill_on_drop: false }` [INFO] [stderr] Cloning into '/workspace/builds/worker-0-tc2/source'... [INFO] [stderr] done. [INFO] validating manifest of git repo https://github.com/jiricodes/battlesnake on toolchain 393ef12c970fbc7f294cd96c35cb76f9591bc1d6 [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+393ef12c970fbc7f294cd96c35cb76f9591bc1d6" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] started tweaking git repo https://github.com/jiricodes/battlesnake [INFO] finished tweaking git repo https://github.com/jiricodes/battlesnake [INFO] tweaked toml for git repo https://github.com/jiricodes/battlesnake written to /workspace/builds/worker-0-tc2/source/Cargo.toml [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+393ef12c970fbc7f294cd96c35cb76f9591bc1d6" "generate-lockfile" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] [stderr] Updating crates.io index [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+393ef12c970fbc7f294cd96c35cb76f9591bc1d6" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:2788e3201cd34a07e3172128adcd8b3090168a8e3bcc40d7c032b9dda1df7d1c" "/opt/rustwide/cargo-home/bin/cargo" "+393ef12c970fbc7f294cd96c35cb76f9591bc1d6" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] dd07d040b8f18bb23a8e64c3ec0ab0836d8b7fcd23ad17da6dfc0d452db5033b [INFO] running `Command { std: "docker" "start" "-a" "dd07d040b8f18bb23a8e64c3ec0ab0836d8b7fcd23ad17da6dfc0d452db5033b", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "dd07d040b8f18bb23a8e64c3ec0ab0836d8b7fcd23ad17da6dfc0d452db5033b", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "dd07d040b8f18bb23a8e64c3ec0ab0836d8b7fcd23ad17da6dfc0d452db5033b", kill_on_drop: false }` [INFO] [stdout] dd07d040b8f18bb23a8e64c3ec0ab0836d8b7fcd23ad17da6dfc0d452db5033b [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc2/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" "RUSTDOCFLAGS=--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" "ghcr.io/rust-lang/crates-build-env/linux@sha256:2788e3201cd34a07e3172128adcd8b3090168a8e3bcc40d7c032b9dda1df7d1c" "/opt/rustwide/cargo-home/bin/cargo" "+393ef12c970fbc7f294cd96c35cb76f9591bc1d6" "build" "--frozen" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] 6ab2a0ecba8e9fa39a2c9dc1b25d62447c4ff69668bdd94b3093c10c76ca18bd [INFO] running `Command { std: "docker" "start" "-a" "6ab2a0ecba8e9fa39a2c9dc1b25d62447c4ff69668bdd94b3093c10c76ca18bd", kill_on_drop: false }` [INFO] [stderr] Compiling libc v0.2.153 [INFO] [stderr] Compiling syn v1.0.109 [INFO] [stderr] Compiling log v0.4.21 [INFO] [stderr] Compiling futures-core v0.3.30 [INFO] [stderr] Compiling cfg-if v0.1.10 [INFO] [stderr] Compiling pin-project-lite v0.1.12 [INFO] [stderr] Compiling bytes v0.5.6 [INFO] [stderr] Compiling futures-io v0.3.30 [INFO] [stderr] Compiling futures-task v0.3.30 [INFO] [stderr] Compiling pin-project-internal v0.4.30 [INFO] [stderr] Compiling parking_lot_core v0.8.6 [INFO] [stderr] Compiling instant v0.1.12 [INFO] [stderr] Compiling syn v2.0.52 [INFO] [stderr] Compiling unicode-normalization v0.1.23 [INFO] [stderr] Compiling standback v0.2.17 [INFO] [stderr] Compiling unicode-bidi v0.3.15 [INFO] [stderr] Compiling proc-macro-hack v0.5.20+deprecated [INFO] [stderr] Compiling either v1.10.0 [INFO] [stderr] Compiling futures-channel v0.3.30 [INFO] [stderr] Compiling copyless v0.1.5 [INFO] [stderr] Compiling generic-array v0.14.7 [INFO] [stderr] Compiling serde v1.0.197 [INFO] [stderr] Compiling async-trait v0.1.77 [INFO] [stderr] Compiling thiserror v1.0.57 [INFO] [stderr] Compiling const_fn v0.4.9 [INFO] [stderr] Compiling heck v0.4.1 [INFO] [stderr] Compiling matches v0.1.10 [INFO] [stderr] Compiling match_cfg v0.1.0 [INFO] [stderr] Compiling tracing-core v0.1.32 [INFO] [stderr] Compiling indexmap v1.9.3 [INFO] [stderr] Compiling aho-corasick v1.1.2 [INFO] [stderr] Compiling time v0.2.27 [INFO] [stderr] Compiling regex-syntax v0.8.2 [INFO] [stderr] Compiling crossbeam-utils v0.8.19 [INFO] [stderr] Compiling idna v0.5.0 [INFO] [stderr] Compiling idna v0.2.3 [INFO] [stderr] Compiling crc32fast v1.4.0 [INFO] [stderr] Compiling quick-error v1.2.3 [INFO] [stderr] Compiling alloc-no-stdlib v2.0.4 [INFO] [stderr] Compiling linked-hash-map v0.5.6 [INFO] [stderr] Compiling tracing v0.1.40 [INFO] [stderr] Compiling alloc-stdlib v0.2.2 [INFO] [stderr] Compiling cookie v0.14.4 [INFO] [stderr] Compiling lru-cache v0.1.2 [INFO] [stderr] Compiling httparse v1.8.0 [INFO] [stderr] Compiling hashbrown v0.12.3 [INFO] [stderr] Compiling ryu v1.0.17 [INFO] [stderr] Compiling serde_json v1.0.114 [INFO] [stderr] Compiling miniz_oxide v0.7.2 [INFO] [stderr] Compiling url v2.5.0 [INFO] [stderr] Compiling iovec v0.1.4 [INFO] [stderr] Compiling net2 v0.2.39 [INFO] [stderr] Compiling signal-hook-registry v1.4.1 [INFO] [stderr] Compiling num_cpus v1.16.0 [INFO] [stderr] Compiling getrandom v0.1.16 [INFO] [stderr] Compiling hostname v0.3.1 [INFO] [stderr] Compiling threadpool v1.8.1 [INFO] [stderr] Compiling mio v0.6.23 [INFO] [stderr] Compiling parking_lot v0.11.2 [INFO] [stderr] Compiling rand_core v0.5.1 [INFO] [stderr] Compiling resolv-conf v0.7.0 [INFO] [stderr] Compiling rand_chacha v0.2.2 [INFO] [stderr] Compiling brotli-decompressor v2.5.1 [INFO] [stderr] Compiling block-buffer v0.9.0 [INFO] [stderr] Compiling digest v0.9.0 [INFO] [stderr] Compiling opaque-debug v0.3.1 [INFO] [stderr] Compiling byteorder v1.5.0 [INFO] [stderr] Compiling flate2 v1.0.28 [INFO] [stderr] Compiling rand v0.7.3 [INFO] [stderr] Compiling sha-1 v0.9.8 [INFO] [stderr] Compiling crossbeam-epoch v0.9.18 [INFO] [stderr] Compiling mio-uds v0.6.8 [INFO] [stderr] Compiling fxhash v0.2.1 [INFO] [stderr] Compiling socket2 v0.3.19 [INFO] [stderr] Compiling encoding_rs v0.8.33 [INFO] [stderr] Compiling tokio v0.2.25 [INFO] [stderr] Compiling num-traits v0.2.18 [INFO] [stderr] Compiling itoa v0.4.8 [INFO] [stderr] Compiling rayon-core v1.12.1 [INFO] [stderr] Compiling language-tags v0.2.2 [INFO] [stderr] Compiling mime v0.3.17 [INFO] [stderr] Compiling base64 v0.13.1 [INFO] [stderr] Compiling crossbeam-deque v0.8.5 [INFO] [stderr] Compiling regex-automata v0.4.5 [INFO] [stderr] Compiling bytestring v1.3.1 [INFO] [stderr] Compiling unicode-width v0.1.11 [INFO] [stderr] Compiling atty v0.2.14 [INFO] [stderr] Compiling textwrap v0.11.0 [INFO] [stderr] Compiling strsim v0.8.0 [INFO] [stderr] Compiling vec_map v0.8.2 [INFO] [stderr] Compiling iana-time-zone v0.1.60 [INFO] [stderr] Compiling brotli v3.4.0 [INFO] [stderr] Compiling ansi_term v0.12.1 [INFO] [stderr] Compiling colored v2.1.0 [INFO] [stderr] Compiling rayon v1.9.0 [INFO] [stderr] Compiling clap v2.34.0 [INFO] [stderr] Compiling chrono v0.4.34 [INFO] [stderr] Compiling futures-macro v0.3.30 [INFO] [stderr] Compiling thiserror-impl v1.0.57 [INFO] [stderr] Compiling serde_derive v1.0.197 [INFO] [stderr] Compiling pin-project-internal v1.1.4 [INFO] [stderr] Compiling tokio-util v0.3.1 [INFO] [stderr] Compiling regex v1.10.3 [INFO] [stderr] Compiling derive_more v0.99.17 [INFO] [stderr] Compiling futures-util v0.3.30 [INFO] [stderr] Compiling actix-macros v0.1.3 [INFO] [stderr] Compiling enum-as-inner v0.3.4 [INFO] [stderr] Compiling time-macros-impl v0.1.2 [INFO] [stderr] Compiling actix-web-codegen v0.4.0 [INFO] [stderr] Compiling pin-project v1.1.4 [INFO] [stderr] Compiling tracing-futures v0.2.5 [INFO] [stderr] Compiling time-macros v0.1.1 [INFO] [stderr] Compiling pin-project v0.4.30 [INFO] [stderr] Compiling actix-codec v0.3.0 [INFO] [stderr] Compiling actix-threadpool v0.3.3 [INFO] [stderr] Compiling actix-service v1.0.6 [INFO] [stderr] Compiling actix-rt v1.1.1 [INFO] [stderr] Compiling futures v0.3.30 [INFO] [stderr] Compiling h2 v0.2.7 [INFO] [stderr] Compiling trust-dns-proto v0.19.7 [INFO] [stderr] Compiling actix-utils v2.0.0 [INFO] [stderr] Compiling actix-server v1.0.4 [INFO] [stderr] Compiling actix-tls v2.0.0 [INFO] [stderr] Compiling actix-testing v1.0.1 [INFO] [stderr] Compiling trust-dns-resolver v0.19.7 [INFO] [stderr] Compiling serde_urlencoded v0.7.1 [INFO] [stderr] Compiling actix-router v0.2.7 [INFO] [stderr] Compiling actix-connect v2.0.0 [INFO] [stderr] Compiling actix-http v2.2.2 [INFO] [stderr] Compiling awc v2.0.3 [INFO] [stderr] Compiling actix-web v3.3.3 [INFO] [stderr] Compiling battlesnake v0.1.1 (/opt/rustwide/workdir) [INFO] [stdout] warning: unused `#[macro_use]` import [INFO] [stdout] --> src/main.rs:1:1 [INFO] [stdout] | [INFO] [stdout] 1 | #[macro_use] [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `web` [INFO] [stdout] --> src/main.rs:9:28 [INFO] [stdout] | [INFO] [stdout] 9 | use actix_web::{get, post, web, App, HttpResponse, HttpServer, Responder}; [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `astar::Astar` [INFO] [stdout] --> src/battlesnake/mod.rs:1:9 [INFO] [stdout] | [INFO] [stdout] 1 | pub use astar::Astar; [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `Reverse` [INFO] [stdout] --> src/battlesnake/astar.rs:7:26 [INFO] [stdout] | [INFO] [stdout] 7 | use std::cmp::{Ordering, Reverse}; [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the item `Ord` is imported redundantly [INFO] [stdout] --> src/battlesnake/board.rs:1:20 [INFO] [stdout] | [INFO] [stdout] 1 | use std::cmp::{Eq, Ord, Ordering, PartialEq, PartialOrd}; [INFO] [stdout] | ^^^ [INFO] [stdout] --> /rustc/393ef12c970fbc7f294cd96c35cb76f9591bc1d6/library/std/src/prelude/mod.rs:115:13 [INFO] [stdout] | [INFO] [stdout] = note: the item `Ord` is already defined here [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the item `PartialOrd` is imported redundantly [INFO] [stdout] --> src/battlesnake/board.rs:1:46 [INFO] [stdout] | [INFO] [stdout] 1 | use std::cmp::{Eq, Ord, Ordering, PartialEq, PartialOrd}; [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] --> /rustc/393ef12c970fbc7f294cd96c35cb76f9591bc1d6/library/std/src/prelude/mod.rs:115:13 [INFO] [stdout] | [INFO] [stdout] = note: the item `PartialOrd` is already defined here [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `GameGrid`, `GridObject` [INFO] [stdout] --> src/battlesnake/heuristic.rs:3:19 [INFO] [stdout] | [INFO] [stdout] 3 | use super::grid::{GameGrid, GridObject}; [INFO] [stdout] | ^^^^^^^^ ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the item `Eq` is imported redundantly [INFO] [stdout] --> src/battlesnake/minimax.rs:2:16 [INFO] [stdout] | [INFO] [stdout] 2 | use std::cmp::{Eq, Ord, Ordering, PartialEq, PartialOrd}; [INFO] [stdout] | ^^ [INFO] [stdout] --> /rustc/393ef12c970fbc7f294cd96c35cb76f9591bc1d6/library/std/src/prelude/mod.rs:115:13 [INFO] [stdout] | [INFO] [stdout] = note: the item `Eq` is already defined here [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the item `Ord` is imported redundantly [INFO] [stdout] --> src/battlesnake/minimax.rs:2:20 [INFO] [stdout] | [INFO] [stdout] 2 | use std::cmp::{Eq, Ord, Ordering, PartialEq, PartialOrd}; [INFO] [stdout] | ^^^ [INFO] [stdout] --> /rustc/393ef12c970fbc7f294cd96c35cb76f9591bc1d6/library/std/src/prelude/mod.rs:115:13 [INFO] [stdout] | [INFO] [stdout] = note: the item `Ord` is already defined here [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the item `PartialEq` is imported redundantly [INFO] [stdout] --> src/battlesnake/minimax.rs:2:35 [INFO] [stdout] | [INFO] [stdout] 2 | use std::cmp::{Eq, Ord, Ordering, PartialEq, PartialOrd}; [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] --> /rustc/393ef12c970fbc7f294cd96c35cb76f9591bc1d6/library/std/src/prelude/mod.rs:115:13 [INFO] [stdout] | [INFO] [stdout] = note: the item `PartialEq` is already defined here [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the item `PartialOrd` is imported redundantly [INFO] [stdout] --> src/battlesnake/minimax.rs:2:46 [INFO] [stdout] | [INFO] [stdout] 2 | use std::cmp::{Eq, Ord, Ordering, PartialEq, PartialOrd}; [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] --> /rustc/393ef12c970fbc7f294cd96c35cb76f9591bc1d6/library/std/src/prelude/mod.rs:115:13 [INFO] [stdout] | [INFO] [stdout] = note: the item `PartialOrd` is already defined here [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the item `From` is imported redundantly [INFO] [stdout] --> src/battlesnake/path.rs:1:5 [INFO] [stdout] | [INFO] [stdout] 1 | use std::convert::From; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] --> /rustc/393ef12c970fbc7f294cd96c35cb76f9591bc1d6/library/std/src/prelude/mod.rs:115:13 [INFO] [stdout] | [INFO] [stdout] = note: the item `From` is already defined here [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the item `From` is imported redundantly [INFO] [stdout] --> src/battlesnake/point.rs:3:5 [INFO] [stdout] | [INFO] [stdout] 3 | use std::convert::From; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] --> /rustc/393ef12c970fbc7f294cd96c35cb76f9591bc1d6/library/std/src/prelude/mod.rs:115:13 [INFO] [stdout] | [INFO] [stdout] = note: the item `From` is already defined here [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `sym` [INFO] [stdout] --> src/battlesnake/domove.rs:38:13 [INFO] [stdout] | [INFO] [stdout] 38 | let sym = GridObject::Snake(gameinfo.get_my_index()); [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_sym` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: value assigned to `move_point` is never read [INFO] [stdout] --> src/battlesnake/domove.rs:50:17 [INFO] [stdout] | [INFO] [stdout] 50 | let mut move_point = Point::new(0, 0); [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: maybe it is overwritten before being read? [INFO] [stdout] = note: `#[warn(unused_assignments)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `end` [INFO] [stdout] --> src/battlesnake/heuristic.rs:82:42 [INFO] [stdout] | [INFO] [stdout] 82 | fn battlesnake(&self, start: &Point, end: &Point) -> f32 { [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_end` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `point` and `parents` are never read [INFO] [stdout] --> src/battlesnake/astar.rs:18:5 [INFO] [stdout] | [INFO] [stdout] 17 | struct AstarNode { [INFO] [stdout] | --------- fields in this struct [INFO] [stdout] 18 | point: Point, [INFO] [stdout] | ^^^^^ [INFO] [stdout] 19 | parents: Vec, [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `AstarNode` has derived impls for the traits `Debug` and `Clone`, but these are intentionally ignored during dead code analysis [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `new`, `get_children`, `is_end`, `get_path`, `extend_with_child`, and `get_gscore` are never used [INFO] [stdout] --> src/battlesnake/astar.rs:24:12 [INFO] [stdout] | [INFO] [stdout] 23 | impl AstarNode { [INFO] [stdout] | -------------- associated items in this implementation [INFO] [stdout] 24 | pub fn new(point: Point) -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 32 | pub fn get_children(&self, grid: &GameGrid, heur: &Heuristic) -> Vec<(i32, Point)> { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 43 | pub fn is_end(&self, end: &Point) -> bool { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 48 | pub fn get_path(&self) -> Vec { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 54 | pub fn extend_with_child(&self, child: &Point, step: i32) -> Self { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 63 | pub fn get_gscore(&self) -> i32 { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `AstarQueue` is never constructed [INFO] [stdout] --> src/battlesnake/astar.rs:93:8 [INFO] [stdout] | [INFO] [stdout] 93 | struct AstarQueue { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `AstarQueue` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `new`, `enqueue`, `dequeue`, `len`, and `point_already_reached` are never used [INFO] [stdout] --> src/battlesnake/astar.rs:99:12 [INFO] [stdout] | [INFO] [stdout] 98 | impl AstarQueue { [INFO] [stdout] | --------------- associated items in this implementation [INFO] [stdout] 99 | pub fn new() -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 106 | pub fn enqueue(&mut self, node: AstarNode) { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 110 | pub fn dequeue(&mut self) -> Option { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 114 | pub fn len(&self) -> usize { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 118 | pub fn point_already_reached(&mut self, point: &Point, fscore: i32) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Astar` is never constructed [INFO] [stdout] --> src/battlesnake/astar.rs:136:12 [INFO] [stdout] | [INFO] [stdout] 136 | pub struct Astar { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `new`, `solve`, `get_path`, and `get_cost` are never used [INFO] [stdout] --> src/battlesnake/astar.rs:142:12 [INFO] [stdout] | [INFO] [stdout] 141 | impl Astar { [INFO] [stdout] | ---------- associated items in this implementation [INFO] [stdout] 142 | pub fn new() -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 149 | pub fn solve(&mut self, start: Point, end: Point, grid: &GameGrid, heur: &Heuristic) -> bool { [INFO] [stdout] | ^^^^^ [INFO] [stdout] ... [INFO] [stdout] 175 | pub fn get_path(&self) -> Vec { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 179 | pub fn get_cost(&self) -> f32 { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Dfs` is never constructed [INFO] [stdout] --> src/battlesnake/dfs.rs:4:12 [INFO] [stdout] | [INFO] [stdout] 4 | pub struct Dfs { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `new`, `get_atleast_len`, `get_path`, `get_length`, and `get_cost` are never used [INFO] [stdout] --> src/battlesnake/dfs.rs:11:12 [INFO] [stdout] | [INFO] [stdout] 10 | impl Dfs { [INFO] [stdout] | -------- associated items in this implementation [INFO] [stdout] 11 | pub fn new() -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 19 | pub fn get_atleast_len(&mut self, start: &Point, grid: &GameGrid, atleast: i32) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 58 | pub fn get_path(&self) -> Vec { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 62 | pub fn get_length(&self) -> usize { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 66 | pub fn get_cost(&self) -> f32 { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated functions `new`, `default`, and `as_option_string` are never used [INFO] [stdout] --> src/battlesnake/domove.rs:22:12 [INFO] [stdout] | [INFO] [stdout] 21 | impl Move { [INFO] [stdout] | --------- associated functions in this implementation [INFO] [stdout] 22 | pub fn new(input: &str) -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 143 | pub fn default() -> Self { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 150 | pub fn as_option_string(input: &str) -> Option { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variants `Empty`, `Food`, and `Snake` are never constructed [INFO] [stdout] --> src/battlesnake/game_logger.rs:49:5 [INFO] [stdout] | [INFO] [stdout] 48 | enum GridObjectLog { [INFO] [stdout] | ------------- variants in this enum [INFO] [stdout] 49 | Empty, [INFO] [stdout] | ^^^^^ [INFO] [stdout] 50 | Food, [INFO] [stdout] | ^^^^ [INFO] [stdout] 51 | Snake(usize), [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `GridObjectLog` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `GameGridLog` is never constructed [INFO] [stdout] --> src/battlesnake/game_logger.rs:75:12 [INFO] [stdout] | [INFO] [stdout] 75 | pub struct GameGridLog { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: multiple associated items are never used [INFO] [stdout] --> src/battlesnake/game_logger.rs:84:8 [INFO] [stdout] | [INFO] [stdout] 83 | impl GameGridLog { [INFO] [stdout] | ---------------- associated items in this implementation [INFO] [stdout] 84 | fn new(dimensions: (usize, usize)) -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 94 | pub fn from_api(gameinfo: &GameInfo) -> Self { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 114 | fn is_in_bounds(&self, pos: &Point) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 121 | fn get_index(&self, pos: &Point) -> Option { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 129 | fn set_snakes(&mut self, snakes: Vec>) { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 144 | fn set_food(&mut self, food: &Vec) { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 159 | pub fn print(&self) { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `GameStateLog` is never constructed [INFO] [stdout] --> src/battlesnake/game_logger.rs:183:12 [INFO] [stdout] | [INFO] [stdout] 183 | pub struct GameStateLog { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `from_api` and `print` are never used [INFO] [stdout] --> src/battlesnake/game_logger.rs:190:12 [INFO] [stdout] | [INFO] [stdout] 189 | impl GameStateLog { [INFO] [stdout] | ----------------- associated items in this implementation [INFO] [stdout] 190 | pub fn from_api(data: &GameInfo) -> Self { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 204 | pub fn print(&self) { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variants `Empty`, `Food`, `Snake`, `Hazard`, `Collisionchance`, and `Outofbounds` are never constructed [INFO] [stdout] --> src/battlesnake/grid.rs:8:5 [INFO] [stdout] | [INFO] [stdout] 7 | pub enum GridObject { [INFO] [stdout] | ---------- variants in this enum [INFO] [stdout] 8 | Empty, [INFO] [stdout] | ^^^^^ [INFO] [stdout] 9 | Food, [INFO] [stdout] | ^^^^ [INFO] [stdout] 10 | Snake(usize), [INFO] [stdout] | ^^^^^ [INFO] [stdout] 11 | Hazard, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] 12 | Collisionchance(i32), [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] 13 | Outofbounds, [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `GridObject` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `is_snake`, `is_considerable`, and `is_accessible` are never used [INFO] [stdout] --> src/battlesnake/grid.rs:17:12 [INFO] [stdout] | [INFO] [stdout] 16 | impl GridObject { [INFO] [stdout] | --------------- methods in this implementation [INFO] [stdout] 17 | pub fn is_snake(&self) -> bool { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 24 | pub fn is_considerable(&self) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 33 | pub fn is_accessible(&self) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `height` and `ignore_hazard` are never read [INFO] [stdout] --> src/battlesnake/grid.rs:67:5 [INFO] [stdout] | [INFO] [stdout] 66 | pub struct GameGrid { [INFO] [stdout] | -------- fields in this struct [INFO] [stdout] 67 | height: usize, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 70 | ignore_hazard: bool, [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: multiple associated items are never used [INFO] [stdout] --> src/battlesnake/grid.rs:74:12 [INFO] [stdout] | [INFO] [stdout] 73 | impl GameGrid { [INFO] [stdout] | ------------- associated items in this implementation [INFO] [stdout] 74 | pub fn new(dimensions: (usize, usize)) -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 83 | pub fn from_api(gameinfo: &GameInfo) -> Self { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 92 | pub fn reset(&mut self) { [INFO] [stdout] | ^^^^^ [INFO] [stdout] ... [INFO] [stdout] 96 | fn get_index(&self, pos: &Point) -> Option { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 104 | pub fn get_value(&self, pos: &Point) -> GridObject { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 111 | pub fn get_value_at_index(&self, i: usize) -> GridObject { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 119 | pub fn is_accessible(&self, pos: &Point) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 124 | fn is_in_bounds(&self, pos: &Point) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 132 | pub fn set_snakes(&mut self, snakes: Vec>) { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 147 | pub fn set_food(&mut self, food: &Vec) { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 162 | pub fn set_food_for_print(&mut self, food: &Vec) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 175 | pub fn set_hazards(&mut self, hazard: &Vec) { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 190 | pub fn set_collision_chance(&mut self, collision: &Vec, hp: i32) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 205 | pub fn ignore_hazard(&mut self) { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 209 | pub fn get_width(&self) -> usize { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 213 | pub fn get_height(&self) -> usize { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: enum `HeurMethod` is never used [INFO] [stdout] --> src/battlesnake/heuristic.rs:7:10 [INFO] [stdout] | [INFO] [stdout] 7 | pub enum HeurMethod { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `HeurMethod` has derived impls for the traits `Debug` and `Clone`, but these are intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Heuristic` is never constructed [INFO] [stdout] --> src/battlesnake/heuristic.rs:13:12 [INFO] [stdout] | [INFO] [stdout] 13 | pub struct Heuristic { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: multiple associated items are never used [INFO] [stdout] --> src/battlesnake/heuristic.rs:22:12 [INFO] [stdout] | [INFO] [stdout] 21 | impl Heuristic { [INFO] [stdout] | -------------- associated items in this implementation [INFO] [stdout] 22 | pub fn new(heur_method: HeurMethod) -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 35 | fn manhattan(&self, start: &Point, end: &Point) -> f32 { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 39 | fn euclidean(&self, start: &Point, end: &Point) -> f32 { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 43 | fn is_in_bounds(&self, p: &Point) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 49 | pub fn battlesnake_init( [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 82 | fn battlesnake(&self, start: &Point, end: &Point) -> f32 { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 87 | pub fn get_value(&self, start: &Point, end: &Point) -> f32 { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: multiple methods are never used [INFO] [stdout] --> src/battlesnake/input.rs:52:12 [INFO] [stdout] | [INFO] [stdout] 40 | impl GameInfo { [INFO] [stdout] | ------------- methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 52 | pub fn get_my_head(&self) -> Point { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 56 | pub fn get_my_health(&self) -> i32 { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 60 | pub fn get_my_index(&self) -> usize { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 69 | pub fn get_snake_bodies(&self) -> Vec> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 87 | pub fn get_head_collision_hazard(&self) -> Vec { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 102 | pub fn get_my_id(&self) -> &str { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 114 | pub fn get_my_length(&self) -> i32 { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 118 | pub fn get_heads(&self) -> Vec { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 126 | pub fn is_win(&self) -> bool { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `new` and `extend_front` are never used [INFO] [stdout] --> src/battlesnake/path.rs:12:12 [INFO] [stdout] | [INFO] [stdout] 11 | impl Path { [INFO] [stdout] | --------- associated items in this implementation [INFO] [stdout] 12 | pub fn new() -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 35 | pub fn extend_front(&mut self, offset: &Point) { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: multiple methods are never used [INFO] [stdout] --> src/battlesnake/point.rs:24:12 [INFO] [stdout] | [INFO] [stdout] 15 | impl Point { [INFO] [stdout] | ---------- methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 24 | pub fn get_x(&self) -> i32 { [INFO] [stdout] | ^^^^^ [INFO] [stdout] ... [INFO] [stdout] 28 | pub fn get_y(&self) -> i32 { [INFO] [stdout] | ^^^^^ [INFO] [stdout] ... [INFO] [stdout] 32 | pub fn get_right(&self) -> Point { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 39 | pub fn get_left(&self) -> Point { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 46 | pub fn get_up(&self) -> Point { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 53 | pub fn get_down(&self) -> Point { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 60 | pub fn get_neighbours(&self) -> Vec { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 69 | pub fn distance_squared(&self, other: &Self) -> f32 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 72 | pub fn distance(&self, other: &Self) -> f32 { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 81 | pub fn find_closest(&self, others: Vec) -> Self { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 95 | pub fn get_neighbour_direction(self, neighbour: Self) -> Option { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 106 | pub fn is_neighbour(self, other: Point) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 40 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished `dev` profile [unoptimized + debuginfo] target(s) in 21.91s [INFO] running `Command { std: "docker" "inspect" "6ab2a0ecba8e9fa39a2c9dc1b25d62447c4ff69668bdd94b3093c10c76ca18bd", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "6ab2a0ecba8e9fa39a2c9dc1b25d62447c4ff69668bdd94b3093c10c76ca18bd", kill_on_drop: false }` [INFO] [stdout] 6ab2a0ecba8e9fa39a2c9dc1b25d62447c4ff69668bdd94b3093c10c76ca18bd [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc2/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" "RUSTDOCFLAGS=--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" "ghcr.io/rust-lang/crates-build-env/linux@sha256:2788e3201cd34a07e3172128adcd8b3090168a8e3bcc40d7c032b9dda1df7d1c" "/opt/rustwide/cargo-home/bin/cargo" "+393ef12c970fbc7f294cd96c35cb76f9591bc1d6" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] 6165a89518eff8d94aef36d9d5c8768c9ae38ac2e70ccb80761eacb7bca4ede3 [INFO] running `Command { std: "docker" "start" "-a" "6165a89518eff8d94aef36d9d5c8768c9ae38ac2e70ccb80761eacb7bca4ede3", kill_on_drop: false }` [INFO] [stderr] Compiling battlesnake v0.1.1 (/opt/rustwide/workdir) [INFO] [stdout] warning: unused `#[macro_use]` import [INFO] [stdout] --> src/main.rs:1:1 [INFO] [stdout] | [INFO] [stdout] 1 | #[macro_use] [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `web` [INFO] [stdout] --> src/main.rs:9:28 [INFO] [stdout] | [INFO] [stdout] 9 | use actix_web::{get, post, web, App, HttpResponse, HttpServer, Responder}; [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `astar::Astar` [INFO] [stdout] --> src/battlesnake/mod.rs:1:9 [INFO] [stdout] | [INFO] [stdout] 1 | pub use astar::Astar; [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `Reverse` [INFO] [stdout] --> src/battlesnake/astar.rs:7:26 [INFO] [stdout] | [INFO] [stdout] 7 | use std::cmp::{Ordering, Reverse}; [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the item `Ord` is imported redundantly [INFO] [stdout] --> src/battlesnake/board.rs:1:20 [INFO] [stdout] | [INFO] [stdout] 1 | use std::cmp::{Eq, Ord, Ordering, PartialEq, PartialOrd}; [INFO] [stdout] | ^^^ [INFO] [stdout] --> /rustc/393ef12c970fbc7f294cd96c35cb76f9591bc1d6/library/std/src/prelude/mod.rs:115:13 [INFO] [stdout] | [INFO] [stdout] = note: the item `Ord` is already defined here [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the item `PartialOrd` is imported redundantly [INFO] [stdout] --> src/battlesnake/board.rs:1:46 [INFO] [stdout] | [INFO] [stdout] 1 | use std::cmp::{Eq, Ord, Ordering, PartialEq, PartialOrd}; [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] --> /rustc/393ef12c970fbc7f294cd96c35cb76f9591bc1d6/library/std/src/prelude/mod.rs:115:13 [INFO] [stdout] | [INFO] [stdout] = note: the item `PartialOrd` is already defined here [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `GameGrid`, `GridObject` [INFO] [stdout] --> src/battlesnake/heuristic.rs:3:19 [INFO] [stdout] | [INFO] [stdout] 3 | use super::grid::{GameGrid, GridObject}; [INFO] [stdout] | ^^^^^^^^ ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the item `Eq` is imported redundantly [INFO] [stdout] --> src/battlesnake/minimax.rs:2:16 [INFO] [stdout] | [INFO] [stdout] 2 | use std::cmp::{Eq, Ord, Ordering, PartialEq, PartialOrd}; [INFO] [stdout] | ^^ [INFO] [stdout] --> /rustc/393ef12c970fbc7f294cd96c35cb76f9591bc1d6/library/std/src/prelude/mod.rs:115:13 [INFO] [stdout] | [INFO] [stdout] = note: the item `Eq` is already defined here [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the item `Ord` is imported redundantly [INFO] [stdout] --> src/battlesnake/minimax.rs:2:20 [INFO] [stdout] | [INFO] [stdout] 2 | use std::cmp::{Eq, Ord, Ordering, PartialEq, PartialOrd}; [INFO] [stdout] | ^^^ [INFO] [stdout] --> /rustc/393ef12c970fbc7f294cd96c35cb76f9591bc1d6/library/std/src/prelude/mod.rs:115:13 [INFO] [stdout] | [INFO] [stdout] = note: the item `Ord` is already defined here [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the item `PartialEq` is imported redundantly [INFO] [stdout] --> src/battlesnake/minimax.rs:2:35 [INFO] [stdout] | [INFO] [stdout] 2 | use std::cmp::{Eq, Ord, Ordering, PartialEq, PartialOrd}; [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] --> /rustc/393ef12c970fbc7f294cd96c35cb76f9591bc1d6/library/std/src/prelude/mod.rs:115:13 [INFO] [stdout] | [INFO] [stdout] = note: the item `PartialEq` is already defined here [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the item `PartialOrd` is imported redundantly [INFO] [stdout] --> src/battlesnake/minimax.rs:2:46 [INFO] [stdout] | [INFO] [stdout] 2 | use std::cmp::{Eq, Ord, Ordering, PartialEq, PartialOrd}; [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] --> /rustc/393ef12c970fbc7f294cd96c35cb76f9591bc1d6/library/std/src/prelude/mod.rs:115:13 [INFO] [stdout] | [INFO] [stdout] = note: the item `PartialOrd` is already defined here [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the item `From` is imported redundantly [INFO] [stdout] --> src/battlesnake/path.rs:1:5 [INFO] [stdout] | [INFO] [stdout] 1 | use std::convert::From; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] --> /rustc/393ef12c970fbc7f294cd96c35cb76f9591bc1d6/library/std/src/prelude/mod.rs:115:13 [INFO] [stdout] | [INFO] [stdout] = note: the item `From` is already defined here [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the item `From` is imported redundantly [INFO] [stdout] --> src/battlesnake/point.rs:3:5 [INFO] [stdout] | [INFO] [stdout] 3 | use std::convert::From; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] --> /rustc/393ef12c970fbc7f294cd96c35cb76f9591bc1d6/library/std/src/prelude/mod.rs:115:13 [INFO] [stdout] | [INFO] [stdout] = note: the item `From` is already defined here [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `sym` [INFO] [stdout] --> src/battlesnake/domove.rs:38:13 [INFO] [stdout] | [INFO] [stdout] 38 | let sym = GridObject::Snake(gameinfo.get_my_index()); [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_sym` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: value assigned to `move_point` is never read [INFO] [stdout] --> src/battlesnake/domove.rs:50:17 [INFO] [stdout] | [INFO] [stdout] 50 | let mut move_point = Point::new(0, 0); [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: maybe it is overwritten before being read? [INFO] [stdout] = note: `#[warn(unused_assignments)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `end` [INFO] [stdout] --> src/battlesnake/heuristic.rs:82:42 [INFO] [stdout] | [INFO] [stdout] 82 | fn battlesnake(&self, start: &Point, end: &Point) -> f32 { [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_end` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `val` [INFO] [stdout] --> src/battlesnake/heuristic.rs:105:17 [INFO] [stdout] | [INFO] [stdout] 105 | for (i, val) in expected.iter().enumerate() { [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_val` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `val` [INFO] [stdout] --> src/battlesnake/heuristic.rs:122:17 [INFO] [stdout] | [INFO] [stdout] 122 | for (i, val) in expected.iter().enumerate() { [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_val` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `val` [INFO] [stdout] --> src/battlesnake/heuristic.rs:140:17 [INFO] [stdout] | [INFO] [stdout] 140 | for (i, val) in expected.iter().enumerate() { [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_val` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `closest_empty` is never read [INFO] [stdout] --> src/battlesnake/astar.rs:138:5 [INFO] [stdout] | [INFO] [stdout] 136 | pub struct Astar { [INFO] [stdout] | ----- field in this struct [INFO] [stdout] 137 | solution: Option<(f32, Vec)>, [INFO] [stdout] 138 | closest_empty: Option<(f32, Vec)>, [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated functions `new`, `default`, and `as_option_string` are never used [INFO] [stdout] --> src/battlesnake/domove.rs:22:12 [INFO] [stdout] | [INFO] [stdout] 21 | impl Move { [INFO] [stdout] | --------- associated functions in this implementation [INFO] [stdout] 22 | pub fn new(input: &str) -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 143 | pub fn default() -> Self { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 150 | pub fn as_option_string(input: &str) -> Option { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variants `Hazard` and `Collisionchance` are never constructed [INFO] [stdout] --> src/battlesnake/grid.rs:11:5 [INFO] [stdout] | [INFO] [stdout] 7 | pub enum GridObject { [INFO] [stdout] | ---------- variants in this enum [INFO] [stdout] ... [INFO] [stdout] 11 | Hazard, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] 12 | Collisionchance(i32), [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `GridObject` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `is_snake` and `is_considerable` are never used [INFO] [stdout] --> src/battlesnake/grid.rs:17:12 [INFO] [stdout] | [INFO] [stdout] 16 | impl GridObject { [INFO] [stdout] | --------------- methods in this implementation [INFO] [stdout] 17 | pub fn is_snake(&self) -> bool { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 24 | pub fn is_considerable(&self) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `ignore_hazard` is never read [INFO] [stdout] --> src/battlesnake/grid.rs:70:5 [INFO] [stdout] | [INFO] [stdout] 66 | pub struct GameGrid { [INFO] [stdout] | -------- field in this struct [INFO] [stdout] ... [INFO] [stdout] 70 | ignore_hazard: bool, [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: multiple associated items are never used [INFO] [stdout] --> src/battlesnake/grid.rs:83:12 [INFO] [stdout] | [INFO] [stdout] 73 | impl GameGrid { [INFO] [stdout] | ------------- associated items in this implementation [INFO] [stdout] ... [INFO] [stdout] 83 | pub fn from_api(gameinfo: &GameInfo) -> Self { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 92 | pub fn reset(&mut self) { [INFO] [stdout] | ^^^^^ [INFO] [stdout] ... [INFO] [stdout] 111 | pub fn get_value_at_index(&self, i: usize) -> GridObject { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 147 | pub fn set_food(&mut self, food: &Vec) { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 162 | pub fn set_food_for_print(&mut self, food: &Vec) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 175 | pub fn set_hazards(&mut self, hazard: &Vec) { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 190 | pub fn set_collision_chance(&mut self, collision: &Vec, hp: i32) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 205 | pub fn ignore_hazard(&mut self) { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 209 | pub fn get_width(&self) -> usize { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 213 | pub fn get_height(&self) -> usize { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `Euclidean` is never constructed [INFO] [stdout] --> src/battlesnake/heuristic.rs:9:5 [INFO] [stdout] | [INFO] [stdout] 7 | pub enum HeurMethod { [INFO] [stdout] | ---------- variant in this enum [INFO] [stdout] 8 | Manhattan, [INFO] [stdout] 9 | Euclidean, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `HeurMethod` has derived impls for the traits `Debug` and `Clone`, but these are intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `method` is never read [INFO] [stdout] --> src/battlesnake/heuristic.rs:14:5 [INFO] [stdout] | [INFO] [stdout] 13 | pub struct Heuristic { [INFO] [stdout] | --------- field in this struct [INFO] [stdout] 14 | method: HeurMethod, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: multiple methods are never used [INFO] [stdout] --> src/battlesnake/input.rs:52:12 [INFO] [stdout] | [INFO] [stdout] 40 | impl GameInfo { [INFO] [stdout] | ------------- methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 52 | pub fn get_my_head(&self) -> Point { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 56 | pub fn get_my_health(&self) -> i32 { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 60 | pub fn get_my_index(&self) -> usize { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 87 | pub fn get_head_collision_hazard(&self) -> Vec { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 102 | pub fn get_my_id(&self) -> &str { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 114 | pub fn get_my_length(&self) -> i32 { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 126 | pub fn is_win(&self) -> bool { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `new` is never used [INFO] [stdout] --> src/battlesnake/path.rs:12:12 [INFO] [stdout] | [INFO] [stdout] 11 | impl Path { [INFO] [stdout] | --------- associated function in this implementation [INFO] [stdout] 12 | pub fn new() -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `is_neighbour` is never used [INFO] [stdout] --> src/battlesnake/point.rs:106:12 [INFO] [stdout] | [INFO] [stdout] 15 | impl Point { [INFO] [stdout] | ---------- method in this implementation [INFO] [stdout] ... [INFO] [stdout] 106 | pub fn is_neighbour(self, other: Point) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 30 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished `test` profile [unoptimized + debuginfo] target(s) in 3.13s [INFO] running `Command { std: "docker" "inspect" "6165a89518eff8d94aef36d9d5c8768c9ae38ac2e70ccb80761eacb7bca4ede3", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "6165a89518eff8d94aef36d9d5c8768c9ae38ac2e70ccb80761eacb7bca4ede3", kill_on_drop: false }` [INFO] [stdout] 6165a89518eff8d94aef36d9d5c8768c9ae38ac2e70ccb80761eacb7bca4ede3 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc2/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" "RUSTDOCFLAGS=--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" "ghcr.io/rust-lang/crates-build-env/linux@sha256:2788e3201cd34a07e3172128adcd8b3090168a8e3bcc40d7c032b9dda1df7d1c" "/opt/rustwide/cargo-home/bin/cargo" "+393ef12c970fbc7f294cd96c35cb76f9591bc1d6" "test" "--frozen", kill_on_drop: false }` [INFO] [stdout] b255df128c95852c16467c4a382346fc9afe65cdc4013fea9c628bcfa32bc9ba [INFO] running `Command { std: "docker" "start" "-a" "b255df128c95852c16467c4a382346fc9afe65cdc4013fea9c628bcfa32bc9ba", kill_on_drop: false }` [INFO] [stderr] warning: unused `#[macro_use]` import [INFO] [stderr] --> src/main.rs:1:1 [INFO] [stderr] | [INFO] [stderr] 1 | #[macro_use] [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_imports)]` on by default [INFO] [stderr] [INFO] [stderr] warning: unused import: `web` [INFO] [stderr] --> src/main.rs:9:28 [INFO] [stderr] | [INFO] [stderr] 9 | use actix_web::{get, post, web, App, HttpResponse, HttpServer, Responder}; [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `astar::Astar` [INFO] [stderr] --> src/battlesnake/mod.rs:1:9 [INFO] [stderr] | [INFO] [stderr] 1 | pub use astar::Astar; [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `Reverse` [INFO] [stderr] --> src/battlesnake/astar.rs:7:26 [INFO] [stderr] | [INFO] [stderr] 7 | use std::cmp::{Ordering, Reverse}; [INFO] [stderr] | ^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: the item `Ord` is imported redundantly [INFO] [stderr] --> src/battlesnake/board.rs:1:20 [INFO] [stderr] | [INFO] [stderr] 1 | use std::cmp::{Eq, Ord, Ordering, PartialEq, PartialOrd}; [INFO] [stderr] | ^^^ [INFO] [stderr] --> /rustc/393ef12c970fbc7f294cd96c35cb76f9591bc1d6/library/std/src/prelude/mod.rs:115:13 [INFO] [stderr] | [INFO] [stderr] = note: the item `Ord` is already defined here [INFO] [stderr] [INFO] [stderr] warning: the item `PartialOrd` is imported redundantly [INFO] [stderr] --> src/battlesnake/board.rs:1:46 [INFO] [stderr] | [INFO] [stderr] 1 | use std::cmp::{Eq, Ord, Ordering, PartialEq, PartialOrd}; [INFO] [stderr] | ^^^^^^^^^^ [INFO] [stderr] --> /rustc/393ef12c970fbc7f294cd96c35cb76f9591bc1d6/library/std/src/prelude/mod.rs:115:13 [INFO] [stderr] | [INFO] [stderr] = note: the item `PartialOrd` is already defined here [INFO] [stderr] [INFO] [stderr] warning: unused imports: `GameGrid`, `GridObject` [INFO] [stderr] --> src/battlesnake/heuristic.rs:3:19 [INFO] [stderr] | [INFO] [stderr] 3 | use super::grid::{GameGrid, GridObject}; [INFO] [stderr] | ^^^^^^^^ ^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: the item `Eq` is imported redundantly [INFO] [stderr] --> src/battlesnake/minimax.rs:2:16 [INFO] [stderr] | [INFO] [stderr] 2 | use std::cmp::{Eq, Ord, Ordering, PartialEq, PartialOrd}; [INFO] [stderr] | ^^ [INFO] [stderr] --> /rustc/393ef12c970fbc7f294cd96c35cb76f9591bc1d6/library/std/src/prelude/mod.rs:115:13 [INFO] [stderr] | [INFO] [stderr] = note: the item `Eq` is already defined here [INFO] [stderr] [INFO] [stderr] warning: the item `Ord` is imported redundantly [INFO] [stderr] --> src/battlesnake/minimax.rs:2:20 [INFO] [stderr] | [INFO] [stderr] 2 | use std::cmp::{Eq, Ord, Ordering, PartialEq, PartialOrd}; [INFO] [stderr] | ^^^ [INFO] [stderr] --> /rustc/393ef12c970fbc7f294cd96c35cb76f9591bc1d6/library/std/src/prelude/mod.rs:115:13 [INFO] [stderr] | [INFO] [stderr] = note: the item `Ord` is already defined here [INFO] [stderr] [INFO] [stderr] warning: the item `PartialEq` is imported redundantly [INFO] [stderr] --> src/battlesnake/minimax.rs:2:35 [INFO] [stderr] | [INFO] [stderr] 2 | use std::cmp::{Eq, Ord, Ordering, PartialEq, PartialOrd}; [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] --> /rustc/393ef12c970fbc7f294cd96c35cb76f9591bc1d6/library/std/src/prelude/mod.rs:115:13 [INFO] [stderr] | [INFO] [stderr] = note: the item `PartialEq` is already defined here [INFO] [stderr] [INFO] [stderr] warning: the item `PartialOrd` is imported redundantly [INFO] [stderr] --> src/battlesnake/minimax.rs:2:46 [INFO] [stderr] | [INFO] [stderr] 2 | use std::cmp::{Eq, Ord, Ordering, PartialEq, PartialOrd}; [INFO] [stderr] | ^^^^^^^^^^ [INFO] [stderr] --> /rustc/393ef12c970fbc7f294cd96c35cb76f9591bc1d6/library/std/src/prelude/mod.rs:115:13 [INFO] [stderr] | [INFO] [stderr] = note: the item `PartialOrd` is already defined here [INFO] [stderr] [INFO] [stderr] warning: the item `From` is imported redundantly [INFO] [stderr] --> src/battlesnake/path.rs:1:5 [INFO] [stderr] | [INFO] [stderr] 1 | use std::convert::From; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ [INFO] [stderr] --> /rustc/393ef12c970fbc7f294cd96c35cb76f9591bc1d6/library/std/src/prelude/mod.rs:115:13 [INFO] [stderr] | [INFO] [stderr] = note: the item `From` is already defined here [INFO] [stderr] [INFO] [stderr] warning: the item `From` is imported redundantly [INFO] [stderr] --> src/battlesnake/point.rs:3:5 [INFO] [stderr] | [INFO] [stderr] 3 | use std::convert::From; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ [INFO] [stderr] --> /rustc/393ef12c970fbc7f294cd96c35cb76f9591bc1d6/library/std/src/prelude/mod.rs:115:13 [INFO] [stderr] | [INFO] [stderr] = note: the item `From` is already defined here [INFO] [stderr] [INFO] [stderr] warning: unused variable: `sym` [INFO] [stderr] --> src/battlesnake/domove.rs:38:13 [INFO] [stderr] | [INFO] [stderr] 38 | let sym = GridObject::Snake(gameinfo.get_my_index()); [INFO] [stderr] | ^^^ help: if this is intentional, prefix it with an underscore: `_sym` [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_variables)]` on by default [INFO] [stderr] [INFO] [stderr] warning: value assigned to `move_point` is never read [INFO] [stderr] --> src/battlesnake/domove.rs:50:17 [INFO] [stderr] | [INFO] [stderr] 50 | let mut move_point = Point::new(0, 0); [INFO] [stderr] | ^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = help: maybe it is overwritten before being read? [INFO] [stderr] = note: `#[warn(unused_assignments)]` on by default [INFO] [stderr] [INFO] [stderr] warning: unused variable: `end` [INFO] [stderr] --> src/battlesnake/heuristic.rs:82:42 [INFO] [stderr] | [INFO] [stderr] 82 | fn battlesnake(&self, start: &Point, end: &Point) -> f32 { [INFO] [stderr] | ^^^ help: if this is intentional, prefix it with an underscore: `_end` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `val` [INFO] [stderr] --> src/battlesnake/heuristic.rs:105:17 [INFO] [stderr] | [INFO] [stderr] 105 | for (i, val) in expected.iter().enumerate() { [INFO] [stderr] | ^^^ help: if this is intentional, prefix it with an underscore: `_val` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `val` [INFO] [stderr] --> src/battlesnake/heuristic.rs:122:17 [INFO] [stderr] | [INFO] [stderr] 122 | for (i, val) in expected.iter().enumerate() { [INFO] [stderr] | ^^^ help: if this is intentional, prefix it with an underscore: `_val` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `val` [INFO] [stderr] --> src/battlesnake/heuristic.rs:140:17 [INFO] [stderr] | [INFO] [stderr] 140 | for (i, val) in expected.iter().enumerate() { [INFO] [stderr] | ^^^ help: if this is intentional, prefix it with an underscore: `_val` [INFO] [stderr] [INFO] [stderr] warning: field `closest_empty` is never read [INFO] [stderr] --> src/battlesnake/astar.rs:138:5 [INFO] [stderr] | [INFO] [stderr] 136 | pub struct Astar { [INFO] [stderr] | ----- field in this struct [INFO] [stderr] 137 | solution: Option<(f32, Vec)>, [INFO] [stderr] 138 | closest_empty: Option<(f32, Vec)>, [INFO] [stderr] | ^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(dead_code)]` on by default [INFO] [stderr] [INFO] [stderr] warning: associated functions `new`, `default`, and `as_option_string` are never used [INFO] [stderr] --> src/battlesnake/domove.rs:22:12 [INFO] [stderr] | [INFO] [stderr] 21 | impl Move { [INFO] [stderr] | --------- associated functions in this implementation [INFO] [stderr] 22 | pub fn new(input: &str) -> Self { [INFO] [stderr] | ^^^ [INFO] [stderr] ... [INFO] [stderr] 143 | pub fn default() -> Self { [INFO] [stderr] | ^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 150 | pub fn as_option_string(input: &str) -> Option { [INFO] [stderr] | ^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: variants `Hazard` and `Collisionchance` are never constructed [INFO] [stderr] --> src/battlesnake/grid.rs:11:5 [INFO] [stderr] | [INFO] [stderr] 7 | pub enum GridObject { [INFO] [stderr] | ---------- variants in this enum [INFO] [stderr] ... [INFO] [stderr] 11 | Hazard, [INFO] [stderr] | ^^^^^^ [INFO] [stderr] 12 | Collisionchance(i32), [INFO] [stderr] | ^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `GridObject` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis [INFO] [stderr] [INFO] [stderr] warning: methods `is_snake` and `is_considerable` are never used [INFO] [stderr] --> src/battlesnake/grid.rs:17:12 [INFO] [stderr] | [INFO] [stderr] 16 | impl GridObject { [INFO] [stderr] | --------------- methods in this implementation [INFO] [stderr] 17 | pub fn is_snake(&self) -> bool { [INFO] [stderr] | ^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 24 | pub fn is_considerable(&self) -> bool { [INFO] [stderr] | ^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: field `ignore_hazard` is never read [INFO] [stderr] --> src/battlesnake/grid.rs:70:5 [INFO] [stderr] | [INFO] [stderr] 66 | pub struct GameGrid { [INFO] [stderr] | -------- field in this struct [INFO] [stderr] ... [INFO] [stderr] 70 | ignore_hazard: bool, [INFO] [stderr] | ^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: multiple associated items are never used [INFO] [stderr] --> src/battlesnake/grid.rs:83:12 [INFO] [stderr] | [INFO] [stderr] 73 | impl GameGrid { [INFO] [stderr] | ------------- associated items in this implementation [INFO] [stderr] ... [INFO] [stderr] 83 | pub fn from_api(gameinfo: &GameInfo) -> Self { [INFO] [stderr] | ^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 92 | pub fn reset(&mut self) { [INFO] [stderr] | ^^^^^ [INFO] [stderr] ... [INFO] [stderr] 111 | pub fn get_value_at_index(&self, i: usize) -> GridObject { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 147 | pub fn set_food(&mut self, food: &Vec) { [INFO] [stderr] | ^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 162 | pub fn set_food_for_print(&mut self, food: &Vec) { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 175 | pub fn set_hazards(&mut self, hazard: &Vec) { [INFO] [stderr] | ^^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 190 | pub fn set_collision_chance(&mut self, collision: &Vec, hp: i32) { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 205 | pub fn ignore_hazard(&mut self) { [INFO] [stderr] | ^^^^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 209 | pub fn get_width(&self) -> usize { [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 213 | pub fn get_height(&self) -> usize { [INFO] [stderr] | ^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: variant `Euclidean` is never constructed [INFO] [stderr] --> src/battlesnake/heuristic.rs:9:5 [INFO] [stderr] | [INFO] [stderr] 7 | pub enum HeurMethod { [INFO] [stderr] | ---------- variant in this enum [INFO] [stderr] 8 | Manhattan, [INFO] [stderr] 9 | Euclidean, [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `HeurMethod` has derived impls for the traits `Debug` and `Clone`, but these are intentionally ignored during dead code analysis [INFO] [stderr] [INFO] [stderr] warning: field `method` is never read [INFO] [stderr] --> src/battlesnake/heuristic.rs:14:5 [INFO] [stderr] | [INFO] [stderr] 13 | pub struct Heuristic { [INFO] [stderr] | --------- field in this struct [INFO] [stderr] 14 | method: HeurMethod, [INFO] [stderr] | ^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: multiple methods are never used [INFO] [stderr] --> src/battlesnake/input.rs:52:12 [INFO] [stderr] | [INFO] [stderr] 40 | impl GameInfo { [INFO] [stderr] | ------------- methods in this implementation [INFO] [stderr] ... [INFO] [stderr] 52 | pub fn get_my_head(&self) -> Point { [INFO] [stderr] | ^^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 56 | pub fn get_my_health(&self) -> i32 { [INFO] [stderr] | ^^^^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 60 | pub fn get_my_index(&self) -> usize { [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 87 | pub fn get_head_collision_hazard(&self) -> Vec { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 102 | pub fn get_my_id(&self) -> &str { [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 114 | pub fn get_my_length(&self) -> i32 { [INFO] [stderr] | ^^^^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 126 | pub fn is_win(&self) -> bool { [INFO] [stderr] | ^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: associated function `new` is never used [INFO] [stderr] --> src/battlesnake/path.rs:12:12 [INFO] [stderr] | [INFO] [stderr] 11 | impl Path { [INFO] [stderr] | --------- associated function in this implementation [INFO] [stderr] 12 | pub fn new() -> Self { [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: method `is_neighbour` is never used [INFO] [stderr] --> src/battlesnake/point.rs:106:12 [INFO] [stderr] | [INFO] [stderr] 15 | impl Point { [INFO] [stderr] | ---------- method in this implementation [INFO] [stderr] ... [INFO] [stderr] 106 | pub fn is_neighbour(self, other: Point) -> bool { [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: `battlesnake` (bin "battlesnake" test) generated 30 warnings (run `cargo fix --bin "battlesnake" --tests` to apply 4 suggestions) [INFO] [stderr] Finished `test` profile [unoptimized + debuginfo] target(s) in 0.11s [INFO] [stderr] Running unittests src/main.rs (/opt/rustwide/target/debug/deps/battlesnake-d70494bc1db9eec3) [INFO] [stdout] [INFO] [stdout] running 24 tests [INFO] [stdout] test battlesnake::dfs::test::dfs_simple ... ok [INFO] [stdout] test battlesnake::board::test::advance ... ok [INFO] [stdout] test battlesnake::board::test::from_api ... ok [INFO] [stdout] test battlesnake::board::test::available_moves ... ok [INFO] [stdout] test battlesnake::dfs::test::no_way ... ok [INFO] [stdout] test battlesnake::astar::test::basic_battlesnake ... ok [INFO] [stdout] test battlesnake::board::test::astar ... ok [INFO] [stdout] test battlesnake::astar::test::basic_manhattan ... ok [INFO] [stdout] test battlesnake::dfs::test::way_out ... ok [INFO] [stdout] test battlesnake::grid::test::grid_get_value ... ok [INFO] [stdout] test battlesnake::grid::test::grid_is_in_bounds ... ok [INFO] [stdout] test battlesnake::game_logger::test::print ... ok [INFO] [stdout] test battlesnake::heuristic::test::manhattan_00 ... ok [INFO] [stdout] test battlesnake::heuristic::test::manhattan_inner ... ok [INFO] [stdout] test battlesnake::heuristic::test::manhattan_outter ... ok [INFO] [stdout] test battlesnake::path::test::basics ... ok [INFO] [stdout] test battlesnake::input::test::test_input ... ok [INFO] [stdout] test battlesnake::point::test::closest ... ok [INFO] [stdout] test battlesnake::point::test::directions ... ok [INFO] [stdout] test battlesnake::path::test::extend_dir ... ok [INFO] [stdout] test battlesnake::path::test::extend ... ok [INFO] [stdout] test battlesnake::snake::test::basics ... ok [INFO] [stdout] test battlesnake::minimax::test::test_test ... ok [INFO] [stdout] test battlesnake::game_logger::test::session_basic ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 24 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 2.00s [INFO] [stdout] [INFO] running `Command { std: "docker" "inspect" "b255df128c95852c16467c4a382346fc9afe65cdc4013fea9c628bcfa32bc9ba", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "b255df128c95852c16467c4a382346fc9afe65cdc4013fea9c628bcfa32bc9ba", kill_on_drop: false }` [INFO] [stdout] b255df128c95852c16467c4a382346fc9afe65cdc4013fea9c628bcfa32bc9ba