[INFO] cloning repository https://github.com/Tarouka/rust-co-toolkit
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/Tarouka/rust-co-toolkit" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FTarouka%2Frust-co-toolkit", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FTarouka%2Frust-co-toolkit'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] db527e1a2f16022fa7fd9fba7ad0f8bff6d63a22
[INFO] testing Tarouka/rust-co-toolkit against 1.47.0 for beta-1.48-1
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FTarouka%2Frust-co-toolkit" "/workspace/builds/worker-3/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-3/source'...
[INFO] [stderr] done.
[INFO] validating manifest of git repo https://github.com/Tarouka/rust-co-toolkit on toolchain 1.47.0
[INFO] running `Command { std: "/workspace/cargo-home/bin/cargo" "+1.47.0" "read-manifest" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] started tweaking git repo https://github.com/Tarouka/rust-co-toolkit
[INFO] finished tweaking git repo https://github.com/Tarouka/rust-co-toolkit
[INFO] tweaked toml for git repo https://github.com/Tarouka/rust-co-toolkit written to /workspace/builds/worker-3/source/Cargo.toml
[INFO] crate git repo https://github.com/Tarouka/rust-co-toolkit already has a lockfile, it will not be regenerated
[INFO] running `Command { std: "/workspace/cargo-home/bin/cargo" "+1.47.0" "fetch" "--locked" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Blocking waiting for file lock on package cache
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-3/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-3/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "rustops/crates-build-env@sha256:d92eaeed33fa75130ca1ee6c8a01d1ffb62bac859dfdfb3450e3e5d1c0146529" "/opt/rustwide/cargo-home/bin/cargo" "+1.47.0" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] 9afbaa971db996c885398bfa81b8e6e74028f30717dea92696265665232d9f43
[INFO] [stderr] WARNING: Your kernel does not support swap limit capabilities or the cgroup is not mounted. Memory limited without swap.
[INFO] running `Command { std: "docker" "start" "-a" "9afbaa971db996c885398bfa81b8e6e74028f30717dea92696265665232d9f43", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "9afbaa971db996c885398bfa81b8e6e74028f30717dea92696265665232d9f43", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "9afbaa971db996c885398bfa81b8e6e74028f30717dea92696265665232d9f43", kill_on_drop: false }`
[INFO] [stdout] 9afbaa971db996c885398bfa81b8e6e74028f30717dea92696265665232d9f43
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-3/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-3/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=warn" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "rustops/crates-build-env@sha256:d92eaeed33fa75130ca1ee6c8a01d1ffb62bac859dfdfb3450e3e5d1c0146529" "/opt/rustwide/cargo-home/bin/cargo" "+1.47.0" "build" "--frozen" "--message-format=json", kill_on_drop: false }`
[INFO] [stderr] WARNING: Your kernel does not support swap limit capabilities or the cgroup is not mounted. Memory limited without swap.
[INFO] [stdout] bb57b1754e1673613391e0513c4978574d46273f455d9db009e0c9fe7dc5725b
[INFO] running `Command { std: "docker" "start" "-a" "bb57b1754e1673613391e0513c4978574d46273f455d9db009e0c9fe7dc5725b", kill_on_drop: false }`
[INFO] [stderr]    Compiling libc v0.2.23
[INFO] [stderr]    Compiling serde v1.0.8
[INFO] [stderr]    Compiling unicode-segmentation v1.2.0
[INFO] [stderr]    Compiling nom v3.0.0
[INFO] [stderr]    Compiling rust-ini v0.9.12
[INFO] [stderr]    Compiling serde_derive v1.0.8
[INFO] [stderr]    Compiling memchr v1.0.1
[INFO] [stderr]    Compiling thread-id v3.1.0
[INFO] [stderr]    Compiling atty v0.2.2
[INFO] [stderr]    Compiling term_size v0.3.0
[INFO] [stderr]    Compiling thread_local v0.3.3
[INFO] [stderr]    Compiling clap v2.24.2
[INFO] [stderr]    Compiling aho-corasick v0.6.3
[INFO] [stderr]    Compiling regex v0.2.2
[INFO] [stderr]    Compiling serde_json v1.0.2
[INFO] [stderr]    Compiling toolkit v0.4.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unused import: `std::io`
[INFO] [stdout]  --> src/main.rs:3:5
[INFO] [stdout]   |
[INFO] [stdout] 3 | use std::io;
[INFO] [stdout]   |     ^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::io::prelude::*`
[INFO] [stdout]  --> src/main.rs:5:5
[INFO] [stdout]   |
[INFO] [stdout] 5 | use std::io::prelude::*;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::fs`
[INFO] [stdout]  --> src/main.rs:7:5
[INFO] [stdout]   |
[INFO] [stdout] 7 | use std::fs;
[INFO] [stdout]   |     ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::process::Command`
[INFO] [stdout]  --> src/main.rs:8:5
[INFO] [stdout]   |
[INFO] [stdout] 8 | use std::process::Command;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::collections::HashMap`
[INFO] [stdout]  --> src/main.rs:9:5
[INFO] [stdout]   |
[INFO] [stdout] 9 | use std::collections::HashMap;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::io::Cursor`
[INFO] [stdout]   --> src/main.rs:12:5
[INFO] [stdout]    |
[INFO] [stdout] 12 | use std::io::Cursor;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::env`
[INFO] [stdout]   --> src/main.rs:13:5
[INFO] [stdout]    |
[INFO] [stdout] 13 | use std::env;
[INFO] [stdout]    |     ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `#[macro_use]` import
[INFO] [stdout]   --> src/main.rs:15:1
[INFO] [stdout]    |
[INFO] [stdout] 15 | #[macro_use]
[INFO] [stdout]    | ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `ErrorKind`, `IResult`, `not_line_ending`
[INFO] [stdout]   --> src/datfiles.rs:46:15
[INFO] [stdout]    |
[INFO] [stdout] 46 |     use nom::{not_line_ending, IResult, ErrorKind};
[INFO] [stdout]    |               ^^^^^^^^^^^^^^^  ^^^^^^^  ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::io`
[INFO] [stdout]  --> src/levelexp.rs:8:5
[INFO] [stdout]   |
[INFO] [stdout] 8 | use std::io;
[INFO] [stdout]   |     ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::fs`
[INFO] [stdout]   --> src/levelexp.rs:10:5
[INFO] [stdout]    |
[INFO] [stdout] 10 | use std::fs;
[INFO] [stdout]    |     ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary trailing semicolon
[INFO] [stdout]   --> src/levelexp.rs:36:48
[INFO] [stdout]    |
[INFO] [stdout] 36 |             let level: u8 = self.get_level_from_idx(&b);;
[INFO] [stdout]    |                                                         ^ help: remove this semicolon
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(redundant_semicolons)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `nom::IResult`
[INFO] [stdout]    --> src/itemtype.rs:117:6
[INFO] [stdout]     |
[INFO] [stdout] 117 |     use nom::IResult;
[INFO] [stdout]     |         ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `nom::IResult::Done`
[INFO] [stdout]    --> src/itemtype.rs:118:6
[INFO] [stdout]     |
[INFO] [stdout] 118 |     use nom::IResult::Done;
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `datfiles::parser`
[INFO] [stdout]    --> src/magictype.rs:128:6
[INFO] [stdout]     |
[INFO] [stdout] 128 |     use datfiles::parser;
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `nom::*`
[INFO] [stdout]    --> src/magictype.rs:133:6
[INFO] [stdout]     |
[INFO] [stdout] 133 |     use nom::*;
[INFO] [stdout]     |         ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `ReadBytesExt`
[INFO] [stdout]   --> src/levelexp.rs:16:42
[INFO] [stdout]    |
[INFO] [stdout] 16 | use byteorder::{ByteOrder, LittleEndian, ReadBytesExt};
[INFO] [stdout]    |                                          ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `bytes_read`
[INFO] [stdout]    --> src/main.rs:210:9
[INFO] [stdout]     |
[INFO] [stdout] 210 |     let bytes_read = f.read_to_end(&mut buffer).unwrap();
[INFO] [stdout]     |         ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_bytes_read`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `bytes_read_mb`
[INFO] [stdout]   --> src/levelexp.rs:82:10
[INFO] [stdout]    |
[INFO] [stdout] 82 |         let bytes_read_mb: f64 = (bytes_read as f64) / 1024.0 / 1024.0;
[INFO] [stdout]    |             ^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_bytes_read_mb`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `header`
[INFO] [stdout]    --> src/itemtype.rs:298:11
[INFO] [stdout]     |
[INFO] [stdout] 298 |                         let header = item_type_header_parsed;
[INFO] [stdout]     |                             ^^^^^^ help: if this is intentional, prefix it with an underscore: `_header`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `header`
[INFO] [stdout]    --> src/magictype.rs:325:11
[INFO] [stdout]     |
[INFO] [stdout] 325 |                         let header = magic_type_header_parsed;
[INFO] [stdout]     |                             ^^^^^^ help: if this is intentional, prefix it with an underscore: `_header`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `entry_idx`
[INFO] [stdout]    --> src/magictype.rs:348:17
[INFO] [stdout]     |
[INFO] [stdout] 348 |                 Result::Err(entry_idx) => {
[INFO] [stdout]     |                             ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_entry_idx`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `encoded_bytes` is never read
[INFO] [stdout]    --> src/main.rs:309:13
[INFO] [stdout]     |
[INFO] [stdout] 309 |         let mut encoded_bytes: Vec<u8> = Vec::new();
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_assignments)]` on by default
[INFO] [stdout]     = help: maybe it is overwritten before being read?
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `encoded_bytes` is never read
[INFO] [stdout]    --> src/main.rs:351:13
[INFO] [stdout]     |
[INFO] [stdout] 351 |         let mut encoded_bytes: Vec<u8> = Vec::new();
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = help: maybe it is overwritten before being read?
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `encoded_bytes` is never read
[INFO] [stdout]    --> src/main.rs:402:13
[INFO] [stdout]     |
[INFO] [stdout] 402 |         let mut encoded_bytes: Vec<u8> = Vec::new();
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = help: maybe it is overwritten before being read?
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/main.rs:317:13
[INFO] [stdout]     |
[INFO] [stdout] 317 |         let mut bytes_to_write = if args.encrypt { encrypt_cofac_bytes(encoded_bytes) } else { encoded_bytes };
[INFO] [stdout]     |             ----^^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             help: remove this `mut`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_mut)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/main.rs:359:13
[INFO] [stdout]     |
[INFO] [stdout] 359 |         let mut bytes_to_write = if args.encrypt { encrypt_cofac_bytes(encoded_bytes) } else { encoded_bytes };
[INFO] [stdout]     |             ----^^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/main.rs:411:13
[INFO] [stdout]     |
[INFO] [stdout] 411 |         let mut bytes_to_write = if args.encrypt { encrypt_cofac_bytes(encoded_bytes) } else { encoded_bytes };
[INFO] [stdout]     |             ----^^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct is never constructed: `Level`
[INFO] [stdout]   --> src/levelexp.rs:19:12
[INFO] [stdout]    |
[INFO] [stdout] 19 | pub struct Level {
[INFO] [stdout]    |            ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct is never constructed: `LevelExpFile`
[INFO] [stdout]   --> src/levelexp.rs:24:12
[INFO] [stdout]    |
[INFO] [stdout] 24 | pub struct LevelExpFile {
[INFO] [stdout]    |            ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function is never used: `get_levels`
[INFO] [stdout]   --> src/levelexp.rs:29:9
[INFO] [stdout]    |
[INFO] [stdout] 29 |     pub fn get_levels(&self) -> Vec<Level> {
[INFO] [stdout]    |            ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function is never used: `get_levels_as_map`
[INFO] [stdout]   --> src/levelexp.rs:46:9
[INFO] [stdout]    |
[INFO] [stdout] 46 |     pub fn get_levels_as_map(&self) -> HashMap<u8, i32> {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function is never used: `get_levels_count`
[INFO] [stdout]   --> src/levelexp.rs:61:5
[INFO] [stdout]    |
[INFO] [stdout] 61 |     fn get_levels_count(&self, levels_data: &Vec<u8>) -> usize {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function is never used: `get_level_from_idx`
[INFO] [stdout]   --> src/levelexp.rs:65:5
[INFO] [stdout]    |
[INFO] [stdout] 65 |     fn get_level_from_idx(&self, idx: &usize) -> u8 {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function is never used: `get_exp_from_level`
[INFO] [stdout]   --> src/levelexp.rs:69:5
[INFO] [stdout]    |
[INFO] [stdout] 69 |     fn get_exp_from_level(&self, levels: &Vec<u8>, idx: &usize) -> i32 {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function is never used: `get_file_bytes`
[INFO] [stdout]   --> src/levelexp.rs:76:5
[INFO] [stdout]    |
[INFO] [stdout] 76 |     fn get_file_bytes(&self) -> Vec<u8> {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function is never used: `serialize_monster_entries_to_str`
[INFO] [stdout]    --> src/monster.rs:108:9
[INFO] [stdout]     |
[INFO] [stdout] 108 |     pub fn serialize_monster_entries_to_str(entries: &Vec<MonsterEntry>) -> String {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `std::result::Result` that must be used
[INFO] [stdout]    --> src/main.rs:218:5
[INFO] [stdout]     |
[INFO] [stdout] 218 |     f.write_all(&bytes);
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_must_use)]` on by default
[INFO] [stdout]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: 38 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished dev [unoptimized + debuginfo] target(s) in 46.65s
[INFO] running `Command { std: "docker" "inspect" "bb57b1754e1673613391e0513c4978574d46273f455d9db009e0c9fe7dc5725b", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "bb57b1754e1673613391e0513c4978574d46273f455d9db009e0c9fe7dc5725b", kill_on_drop: false }`
[INFO] [stdout] bb57b1754e1673613391e0513c4978574d46273f455d9db009e0c9fe7dc5725b
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-3/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-3/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=warn" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "rustops/crates-build-env@sha256:d92eaeed33fa75130ca1ee6c8a01d1ffb62bac859dfdfb3450e3e5d1c0146529" "/opt/rustwide/cargo-home/bin/cargo" "+1.47.0" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }`
[INFO] [stderr] WARNING: Your kernel does not support swap limit capabilities or the cgroup is not mounted. Memory limited without swap.
[INFO] [stdout] 6756c4b2a62e2b2aa3f4047cccb18a4fdd4225c26bfb2aa5d42937ce350e074d
[INFO] running `Command { std: "docker" "start" "-a" "6756c4b2a62e2b2aa3f4047cccb18a4fdd4225c26bfb2aa5d42937ce350e074d", kill_on_drop: false }`
[INFO] [stderr]    Compiling toolkit v0.4.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unused import: `std::io`
[INFO] [stdout]  --> src/main.rs:3:5
[INFO] [stdout]   |
[INFO] [stdout] 3 | use std::io;
[INFO] [stdout]   |     ^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::io::prelude::*`
[INFO] [stdout]  --> src/main.rs:5:5
[INFO] [stdout]   |
[INFO] [stdout] 5 | use std::io::prelude::*;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::fs`
[INFO] [stdout]  --> src/main.rs:7:5
[INFO] [stdout]   |
[INFO] [stdout] 7 | use std::fs;
[INFO] [stdout]   |     ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::process::Command`
[INFO] [stdout]  --> src/main.rs:8:5
[INFO] [stdout]   |
[INFO] [stdout] 8 | use std::process::Command;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::collections::HashMap`
[INFO] [stdout]  --> src/main.rs:9:5
[INFO] [stdout]   |
[INFO] [stdout] 9 | use std::collections::HashMap;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::io::Cursor`
[INFO] [stdout]   --> src/main.rs:12:5
[INFO] [stdout]    |
[INFO] [stdout] 12 | use std::io::Cursor;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::env`
[INFO] [stdout]   --> src/main.rs:13:5
[INFO] [stdout]    |
[INFO] [stdout] 13 | use std::env;
[INFO] [stdout]    |     ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `#[macro_use]` import
[INFO] [stdout]   --> src/main.rs:15:1
[INFO] [stdout]    |
[INFO] [stdout] 15 | #[macro_use]
[INFO] [stdout]    | ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `ErrorKind`, `IResult`, `not_line_ending`
[INFO] [stdout]   --> src/datfiles.rs:46:15
[INFO] [stdout]    |
[INFO] [stdout] 46 |     use nom::{not_line_ending, IResult, ErrorKind};
[INFO] [stdout]    |               ^^^^^^^^^^^^^^^  ^^^^^^^  ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::io`
[INFO] [stdout]  --> src/levelexp.rs:8:5
[INFO] [stdout]   |
[INFO] [stdout] 8 | use std::io;
[INFO] [stdout]   |     ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::fs`
[INFO] [stdout]   --> src/levelexp.rs:10:5
[INFO] [stdout]    |
[INFO] [stdout] 10 | use std::fs;
[INFO] [stdout]    |     ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary trailing semicolon
[INFO] [stdout]   --> src/levelexp.rs:36:48
[INFO] [stdout]    |
[INFO] [stdout] 36 |             let level: u8 = self.get_level_from_idx(&b);;
[INFO] [stdout]    |                                                         ^ help: remove this semicolon
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(redundant_semicolons)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `nom::IResult`
[INFO] [stdout]    --> src/itemtype.rs:117:6
[INFO] [stdout]     |
[INFO] [stdout] 117 |     use nom::IResult;
[INFO] [stdout]     |         ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `nom::IResult::Done`
[INFO] [stdout]    --> src/itemtype.rs:118:6
[INFO] [stdout]     |
[INFO] [stdout] 118 |     use nom::IResult::Done;
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `datfiles::parser`
[INFO] [stdout]    --> src/magictype.rs:128:6
[INFO] [stdout]     |
[INFO] [stdout] 128 |     use datfiles::parser;
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `nom::*`
[INFO] [stdout]    --> src/magictype.rs:133:6
[INFO] [stdout]     |
[INFO] [stdout] 133 |     use nom::*;
[INFO] [stdout]     |         ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `ReadBytesExt`
[INFO] [stdout]   --> src/levelexp.rs:16:42
[INFO] [stdout]    |
[INFO] [stdout] 16 | use byteorder::{ByteOrder, LittleEndian, ReadBytesExt};
[INFO] [stdout]    |                                          ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `bytes_read`
[INFO] [stdout]    --> src/main.rs:210:9
[INFO] [stdout]     |
[INFO] [stdout] 210 |     let bytes_read = f.read_to_end(&mut buffer).unwrap();
[INFO] [stdout]     |         ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_bytes_read`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `bytes_read_mb`
[INFO] [stdout]   --> src/levelexp.rs:82:10
[INFO] [stdout]    |
[INFO] [stdout] 82 |         let bytes_read_mb: f64 = (bytes_read as f64) / 1024.0 / 1024.0;
[INFO] [stdout]    |             ^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_bytes_read_mb`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `header`
[INFO] [stdout]    --> src/itemtype.rs:298:11
[INFO] [stdout]     |
[INFO] [stdout] 298 |                         let header = item_type_header_parsed;
[INFO] [stdout]     |                             ^^^^^^ help: if this is intentional, prefix it with an underscore: `_header`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `header`
[INFO] [stdout]    --> src/magictype.rs:325:11
[INFO] [stdout]     |
[INFO] [stdout] 325 |                         let header = magic_type_header_parsed;
[INFO] [stdout]     |                             ^^^^^^ help: if this is intentional, prefix it with an underscore: `_header`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `entry_idx`
[INFO] [stdout]    --> src/magictype.rs:348:17
[INFO] [stdout]     |
[INFO] [stdout] 348 |                 Result::Err(entry_idx) => {
[INFO] [stdout]     |                             ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_entry_idx`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `encoded_bytes` is never read
[INFO] [stdout]    --> src/main.rs:309:13
[INFO] [stdout]     |
[INFO] [stdout] 309 |         let mut encoded_bytes: Vec<u8> = Vec::new();
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_assignments)]` on by default
[INFO] [stdout]     = help: maybe it is overwritten before being read?
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `encoded_bytes` is never read
[INFO] [stdout]    --> src/main.rs:351:13
[INFO] [stdout]     |
[INFO] [stdout] 351 |         let mut encoded_bytes: Vec<u8> = Vec::new();
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = help: maybe it is overwritten before being read?
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `encoded_bytes` is never read
[INFO] [stdout]    --> src/main.rs:402:13
[INFO] [stdout]     |
[INFO] [stdout] 402 |         let mut encoded_bytes: Vec<u8> = Vec::new();
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = help: maybe it is overwritten before being read?
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/main.rs:317:13
[INFO] [stdout]     |
[INFO] [stdout] 317 |         let mut bytes_to_write = if args.encrypt { encrypt_cofac_bytes(encoded_bytes) } else { encoded_bytes };
[INFO] [stdout]     |             ----^^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             help: remove this `mut`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_mut)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/main.rs:359:13
[INFO] [stdout]     |
[INFO] [stdout] 359 |         let mut bytes_to_write = if args.encrypt { encrypt_cofac_bytes(encoded_bytes) } else { encoded_bytes };
[INFO] [stdout]     |             ----^^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/main.rs:411:13
[INFO] [stdout]     |
[INFO] [stdout] 411 |         let mut bytes_to_write = if args.encrypt { encrypt_cofac_bytes(encoded_bytes) } else { encoded_bytes };
[INFO] [stdout]     |             ----^^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct is never constructed: `Level`
[INFO] [stdout]   --> src/levelexp.rs:19:12
[INFO] [stdout]    |
[INFO] [stdout] 19 | pub struct Level {
[INFO] [stdout]    |            ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct is never constructed: `LevelExpFile`
[INFO] [stdout]   --> src/levelexp.rs:24:12
[INFO] [stdout]    |
[INFO] [stdout] 24 | pub struct LevelExpFile {
[INFO] [stdout]    |            ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function is never used: `get_levels`
[INFO] [stdout]   --> src/levelexp.rs:29:9
[INFO] [stdout]    |
[INFO] [stdout] 29 |     pub fn get_levels(&self) -> Vec<Level> {
[INFO] [stdout]    |            ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function is never used: `get_levels_as_map`
[INFO] [stdout]   --> src/levelexp.rs:46:9
[INFO] [stdout]    |
[INFO] [stdout] 46 |     pub fn get_levels_as_map(&self) -> HashMap<u8, i32> {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function is never used: `get_levels_count`
[INFO] [stdout]   --> src/levelexp.rs:61:5
[INFO] [stdout]    |
[INFO] [stdout] 61 |     fn get_levels_count(&self, levels_data: &Vec<u8>) -> usize {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function is never used: `get_level_from_idx`
[INFO] [stdout]   --> src/levelexp.rs:65:5
[INFO] [stdout]    |
[INFO] [stdout] 65 |     fn get_level_from_idx(&self, idx: &usize) -> u8 {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function is never used: `get_exp_from_level`
[INFO] [stdout]   --> src/levelexp.rs:69:5
[INFO] [stdout]    |
[INFO] [stdout] 69 |     fn get_exp_from_level(&self, levels: &Vec<u8>, idx: &usize) -> i32 {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function is never used: `get_file_bytes`
[INFO] [stdout]   --> src/levelexp.rs:76:5
[INFO] [stdout]    |
[INFO] [stdout] 76 |     fn get_file_bytes(&self) -> Vec<u8> {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function is never used: `serialize_monster_entries_to_str`
[INFO] [stdout]    --> src/monster.rs:108:9
[INFO] [stdout]     |
[INFO] [stdout] 108 |     pub fn serialize_monster_entries_to_str(entries: &Vec<MonsterEntry>) -> String {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant is never used: `MONSTER_ENTRY_UNFORMATTED`
[INFO] [stdout]    --> src/monster.rs:209:3
[INFO] [stdout]     |
[INFO] [stdout] 209 |           const MONSTER_ENTRY_UNFORMATTED: &str = "[AMonster]
[INFO] [stdout]     |  _________^
[INFO] [stdout] 210 | | SizeAdd=2
[INFO] [stdout] 211 | | ZoomPercent=90
[INFO] [stdout] 212 | | MaxLife=1000
[INFO] [stdout] ...   |
[INFO] [stdout] 231 | | ExtraExp=100
[INFO] [stdout] 232 | | StcType=18";
[INFO] [stdout]     | |____________^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function is never used: `test_monster_entry_parse_then_reformat_returns_start_val`
[INFO] [stdout]    --> src/monster.rs:245:6
[INFO] [stdout]     |
[INFO] [stdout] 245 |         fn test_monster_entry_parse_then_reformat_returns_start_val() {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `std::result::Result` that must be used
[INFO] [stdout]    --> src/main.rs:218:5
[INFO] [stdout]     |
[INFO] [stdout] 218 |     f.write_all(&bytes);
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_must_use)]` on by default
[INFO] [stdout]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: 40 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished test [unoptimized + debuginfo] target(s) in 6.28s
[INFO] running `Command { std: "docker" "inspect" "6756c4b2a62e2b2aa3f4047cccb18a4fdd4225c26bfb2aa5d42937ce350e074d", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "6756c4b2a62e2b2aa3f4047cccb18a4fdd4225c26bfb2aa5d42937ce350e074d", kill_on_drop: false }`
[INFO] [stdout] 6756c4b2a62e2b2aa3f4047cccb18a4fdd4225c26bfb2aa5d42937ce350e074d
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-3/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-3/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=warn" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "rustops/crates-build-env@sha256:d92eaeed33fa75130ca1ee6c8a01d1ffb62bac859dfdfb3450e3e5d1c0146529" "/opt/rustwide/cargo-home/bin/cargo" "+1.47.0" "test" "--frozen", kill_on_drop: false }`
[INFO] [stdout] f128b8a87df40ec8cb36daf47d284527a3244847eeb60c7d5784fce6a7878db5
[INFO] [stderr] WARNING: Your kernel does not support swap limit capabilities or the cgroup is not mounted. Memory limited without swap.
[INFO] running `Command { std: "docker" "start" "-a" "f128b8a87df40ec8cb36daf47d284527a3244847eeb60c7d5784fce6a7878db5", kill_on_drop: false }`
[INFO] [stderr]     Blocking waiting for file lock on package cache
[INFO] [stderr]     Blocking waiting for file lock on package cache
[INFO] [stderr] warning: unused import: `std::io`
[INFO] [stderr]  --> src/main.rs:3:5
[INFO] [stderr]   |
[INFO] [stderr] 3 | use std::io;
[INFO] [stderr]   |     ^^^^^^^
[INFO] [stderr]   |
[INFO] [stderr]   = note: `#[warn(unused_imports)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `std::io::prelude::*`
[INFO] [stderr]  --> src/main.rs:5:5
[INFO] [stderr]   |
[INFO] [stderr] 5 | use std::io::prelude::*;
[INFO] [stderr]   |     ^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `std::fs`
[INFO] [stderr]  --> src/main.rs:7:5
[INFO] [stderr]   |
[INFO] [stderr] 7 | use std::fs;
[INFO] [stderr]   |     ^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `std::process::Command`
[INFO] [stderr]  --> src/main.rs:8:5
[INFO] [stderr]   |
[INFO] [stderr] 8 | use std::process::Command;
[INFO] [stderr]   |     ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `std::collections::HashMap`
[INFO] [stderr]  --> src/main.rs:9:5
[INFO] [stderr]   |
[INFO] [stderr] 9 | use std::collections::HashMap;
[INFO] [stderr]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `std::io::Cursor`
[INFO] [stderr]   --> src/main.rs:12:5
[INFO] [stderr]    |
[INFO] [stderr] 12 | use std::io::Cursor;
[INFO] [stderr]    |     ^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `std::env`
[INFO] [stderr]   --> src/main.rs:13:5
[INFO] [stderr]    |
[INFO] [stderr] 13 | use std::env;
[INFO] [stderr]    |     ^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused `#[macro_use]` import
[INFO] [stderr]   --> src/main.rs:15:1
[INFO] [stderr]    |
[INFO] [stderr] 15 | #[macro_use]
[INFO] [stderr]    | ^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused imports: `ErrorKind`, `IResult`, `not_line_ending`
[INFO] [stderr]   --> src/datfiles.rs:46:15
[INFO] [stderr]    |
[INFO] [stderr] 46 |     use nom::{not_line_ending, IResult, ErrorKind};
[INFO] [stderr]    |               ^^^^^^^^^^^^^^^  ^^^^^^^  ^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `std::io`
[INFO] [stderr]  --> src/levelexp.rs:8:5
[INFO] [stderr]   |
[INFO] [stderr] 8 | use std::io;
[INFO] [stderr]   |     ^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `std::fs`
[INFO] [stderr]   --> src/levelexp.rs:10:5
[INFO] [stderr]    |
[INFO] [stderr] 10 | use std::fs;
[INFO] [stderr]    |     ^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unnecessary trailing semicolon
[INFO] [stderr]   --> src/levelexp.rs:36:48
[INFO] [stderr]    |
[INFO] [stderr] 36 |             let level: u8 = self.get_level_from_idx(&b);;
[INFO] [stderr]    |                                                         ^ help: remove this semicolon
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(redundant_semicolons)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `nom::IResult`
[INFO] [stderr]    --> src/itemtype.rs:117:6
[INFO] [stderr]     |
[INFO] [stderr] 117 |     use nom::IResult;
[INFO] [stderr]     |         ^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `nom::IResult::Done`
[INFO] [stderr]    --> src/itemtype.rs:118:6
[INFO] [stderr]     |
[INFO] [stderr] 118 |     use nom::IResult::Done;
[INFO] [stderr]     |         ^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `datfiles::parser`
[INFO] [stderr]    --> src/magictype.rs:128:6
[INFO] [stderr]     |
[INFO] [stderr] 128 |     use datfiles::parser;
[INFO] [stderr]     |         ^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `nom::*`
[INFO] [stderr]    --> src/magictype.rs:133:6
[INFO] [stderr]     |
[INFO] [stderr] 133 |     use nom::*;
[INFO] [stderr]     |         ^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `ReadBytesExt`
[INFO] [stderr]   --> src/levelexp.rs:16:42
[INFO] [stderr]    |
[INFO] [stderr] 16 | use byteorder::{ByteOrder, LittleEndian, ReadBytesExt};
[INFO] [stderr]    |                                          ^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `bytes_read`
[INFO] [stderr]    --> src/main.rs:210:9
[INFO] [stderr]     |
[INFO] [stderr] 210 |     let bytes_read = f.read_to_end(&mut buffer).unwrap();
[INFO] [stderr]     |         ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_bytes_read`
[INFO] [stderr]     |
[INFO] [stderr]     = note: `#[warn(unused_variables)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `bytes_read_mb`
[INFO] [stderr]   --> src/levelexp.rs:82:10
[INFO] [stderr]    |
[INFO] [stderr] 82 |         let bytes_read_mb: f64 = (bytes_read as f64) / 1024.0 / 1024.0;
[INFO] [stderr]    |             ^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_bytes_read_mb`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `header`
[INFO] [stderr]    --> src/itemtype.rs:298:11
[INFO] [stderr]     |
[INFO] [stderr] 298 |                         let header = item_type_header_parsed;
[INFO] [stderr]     |                             ^^^^^^ help: if this is intentional, prefix it with an underscore: `_header`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `header`
[INFO] [stderr]    --> src/magictype.rs:325:11
[INFO] [stderr]     |
[INFO] [stderr] 325 |                         let header = magic_type_header_parsed;
[INFO] [stderr]     |                             ^^^^^^ help: if this is intentional, prefix it with an underscore: `_header`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `entry_idx`
[INFO] [stderr]    --> src/magictype.rs:348:17
[INFO] [stderr]     |
[INFO] [stderr] 348 |                 Result::Err(entry_idx) => {
[INFO] [stderr]     |                             ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_entry_idx`
[INFO] [stderr] 
[INFO] [stderr] warning: value assigned to `encoded_bytes` is never read
[INFO] [stderr]    --> src/main.rs:309:13
[INFO] [stderr]     |
[INFO] [stderr] 309 |         let mut encoded_bytes: Vec<u8> = Vec::new();
[INFO] [stderr]     |             ^^^^^^^^^^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = note: `#[warn(unused_assignments)]` on by default
[INFO] [stderr]     = help: maybe it is overwritten before being read?
[INFO] [stderr] 
[INFO] [stderr] warning: value assigned to `encoded_bytes` is never read
[INFO] [stderr]    --> src/main.rs:351:13
[INFO] [stderr]     |
[INFO] [stderr] 351 |         let mut encoded_bytes: Vec<u8> = Vec::new();
[INFO] [stderr]     |             ^^^^^^^^^^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = help: maybe it is overwritten before being read?
[INFO] [stderr] 
[INFO] [stderr] warning: value assigned to `encoded_bytes` is never read
[INFO] [stderr]    --> src/main.rs:402:13
[INFO] [stderr]     |
[INFO] [stderr] 402 |         let mut encoded_bytes: Vec<u8> = Vec::new();
[INFO] [stderr]     |             ^^^^^^^^^^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = help: maybe it is overwritten before being read?
[INFO] [stderr] 
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]    --> src/main.rs:317:13
[INFO] [stderr]     |
[INFO] [stderr] 317 |         let mut bytes_to_write = if args.encrypt { encrypt_cofac_bytes(encoded_bytes) } else { encoded_bytes };
[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/main.rs:359:13
[INFO] [stderr]     |
[INFO] [stderr] 359 |         let mut bytes_to_write = if args.encrypt { encrypt_cofac_bytes(encoded_bytes) } else { encoded_bytes };
[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/main.rs:411:13
[INFO] [stderr]     |
[INFO] [stderr] 411 |         let mut bytes_to_write = if args.encrypt { encrypt_cofac_bytes(encoded_bytes) } else { encoded_bytes };
[INFO] [stderr]     |             ----^^^^^^^^^^^^^^
[INFO] [stderr]     |             |
[INFO] [stderr]     |             help: remove this `mut`
[INFO] [stderr] 
[INFO] [stderr] warning: struct is never constructed: `Level`
[INFO] [stderr]   --> src/levelexp.rs:19:12
[INFO] [stderr]    |
[INFO] [stderr] 19 | pub struct Level {
[INFO] [stderr]    |            ^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(dead_code)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: struct is never constructed: `LevelExpFile`
[INFO] [stderr]   --> src/levelexp.rs:24:12
[INFO] [stderr]    |
[INFO] [stderr] 24 | pub struct LevelExpFile {
[INFO] [stderr]    |            ^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: associated function is never used: `get_levels`
[INFO] [stderr]   --> src/levelexp.rs:29:9
[INFO] [stderr]    |
[INFO] [stderr] 29 |     pub fn get_levels(&self) -> Vec<Level> {
[INFO] [stderr]    |            ^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: associated function is never used: `get_levels_as_map`
[INFO] [stderr]   --> src/levelexp.rs:46:9
[INFO] [stderr]    |
[INFO] [stderr] 46 |     pub fn get_levels_as_map(&self) -> HashMap<u8, i32> {
[INFO] [stderr]    |            ^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: associated function is never used: `get_levels_count`
[INFO] [stderr]   --> src/levelexp.rs:61:5
[INFO] [stderr]    |
[INFO] [stderr] 61 |     fn get_levels_count(&self, levels_data: &Vec<u8>) -> usize {
[INFO] [stderr]    |        ^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: associated function is never used: `get_level_from_idx`
[INFO] [stderr]   --> src/levelexp.rs:65:5
[INFO] [stderr]    |
[INFO] [stderr] 65 |     fn get_level_from_idx(&self, idx: &usize) -> u8 {
[INFO] [stderr]    |        ^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: associated function is never used: `get_exp_from_level`
[INFO] [stderr]   --> src/levelexp.rs:69:5
[INFO] [stderr]    |
[INFO] [stderr] 69 |     fn get_exp_from_level(&self, levels: &Vec<u8>, idx: &usize) -> i32 {
[INFO] [stderr]    |        ^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: associated function is never used: `get_file_bytes`
[INFO] [stderr]   --> src/levelexp.rs:76:5
[INFO] [stderr]    |
[INFO] [stderr] 76 |     fn get_file_bytes(&self) -> Vec<u8> {
[INFO] [stderr]    |        ^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function is never used: `serialize_monster_entries_to_str`
[INFO] [stderr]    --> src/monster.rs:108:9
[INFO] [stderr]     |
[INFO] [stderr] 108 |     pub fn serialize_monster_entries_to_str(entries: &Vec<MonsterEntry>) -> String {
[INFO] [stderr]     |            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: constant is never used: `MONSTER_ENTRY_UNFORMATTED`
[INFO] [stderr]    --> src/monster.rs:209:3
[INFO] [stderr]     |
[INFO] [stderr] 209 |           const MONSTER_ENTRY_UNFORMATTED: &str = "[AMonster]
[INFO] [stderr]     |  _________^
[INFO] [stderr] 210 | | SizeAdd=2
[INFO] [stderr] 211 | | ZoomPercent=90
[INFO] [stderr] 212 | | MaxLife=1000
[INFO] [stderr] ...   |
[INFO] [stderr] 231 | | ExtraExp=100
[INFO] [stderr] 232 | | StcType=18";
[INFO] [stderr]     | |____________^
[INFO] [stderr] 
[INFO] [stderr] warning: function is never used: `test_monster_entry_parse_then_reformat_returns_start_val`
[INFO] [stderr]    --> src/monster.rs:245:6
[INFO] [stderr]     |
[INFO] [stderr] 245 |         fn test_monster_entry_parse_then_reformat_returns_start_val() {
[INFO] [stderr]     |            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused `std::result::Result` that must be used
[INFO] [stderr]    --> src/main.rs:218:5
[INFO] [stderr]     |
[INFO] [stderr] 218 |     f.write_all(&bytes);
[INFO] [stderr]     |     ^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = note: `#[warn(unused_must_use)]` on by default
[INFO] [stderr]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stderr] 
[INFO] [stderr] warning: 40 warnings emitted
[INFO] [stderr] 
[INFO] [stderr]     Finished test [unoptimized + debuginfo] target(s) in 0.44s
[INFO] [stderr]      Running /opt/rustwide/target/debug/deps/toolkit-f53a8e77c2c6f82e
[INFO] [stdout] 
[INFO] [stdout] running 131 tests
[INFO] [stdout] test itemtype::parser::tests::parse_header_serialize_will_return_initial_header_3 ... ok
[INFO] [stdout] test itemtype::parser::tests::parse_item_entry_serialize_will_return_initial_line_3 ... ok
[INFO] [stdout] test itemtype::parser::tests::parse_item_entry_will_return_right_buy_price ... ok
[INFO] [stdout] test itemtype::parser::tests::parse_header_serialize_will_return_initial_header_1 ... ok
[INFO] [stdout] test itemtype::parser::tests::parse_item_entry_will_return_right_amount ... ok
[INFO] [stdout] test itemtype::parser::tests::parse_header_serialize_will_return_initial_header_2 ... ok
[INFO] [stdout] test itemtype::parser::tests::parse_item_entry_serialize_will_return_initial_line_1 ... ok
[INFO] [stdout] test itemtype::parser::tests::parse_item_entry_serialize_will_return_initial_line_2 ... ok
[INFO] [stdout] test itemtype::parser::tests::parse_item_entry_will_return_right_atk_speed ... ok
[INFO] [stdout] test itemtype::parser::tests::parse_item_entry_will_return_right_description ... ok
[INFO] [stdout] test itemtype::parser::tests::parse_item_entry_will_return_right_action_id ... ok
[INFO] [stdout] test itemtype::parser::tests::parse_item_entry_will_return_right_agi_req ... ok
[INFO] [stdout] test itemtype::parser::tests::parse_item_entry_will_return_right_accuracy ... ok
[INFO] [stdout] test itemtype::parser::tests::parse_item_entry_will_return_right_does_item_never_drop_on_death ... ok
[INFO] [stdout] test itemtype::parser::tests::parse_item_entry_will_return_right_amount_limit ... ok
[INFO] [stdout] test itemtype::parser::tests::parse_item_entry_will_return_right_buy_cps_price ... ok
[INFO] [stdout] test itemtype::parser::tests::parse_item_entry_will_return_right_hp_restored ... ok
[INFO] [stdout] test itemtype::parser::tests::parse_item_entry_will_return_right_gem2 ... ok
[INFO] [stdout] test itemtype::parser::tests::parse_item_entry_will_return_right_dodge ... ok
[INFO] [stdout] test itemtype::parser::tests::parse_header_will_return_right_val ... ok
[INFO] [stdout] test itemtype::parser::tests::parse_item_entry_will_return_right_id ... ok
[INFO] [stdout] test itemtype::parser::tests::parse_item_entry_will_return_right_fray_mode ... ok
[INFO] [stdout] test itemtype::parser::tests::parse_item_entry_will_return_right_atk_range ... ok
[INFO] [stdout] test itemtype::parser::tests::parse_item_entry_will_return_right_gem1 ... ok
[INFO] [stdout] test itemtype::parser::tests::parse_item_entry_will_return_right_is_unstoreable ... ok
[INFO] [stdout] test itemtype::parser::tests::parse_item_entry_will_return_right_is_sell_disabled ... ok
[INFO] [stdout] test itemtype::parser::tests::parse_item_entry_will_return_right_magic3 ... ok
[INFO] [stdout] test itemtype::parser::tests::parse_item_entry_will_return_right_max_phys_atk ... ok
[INFO] [stdout] test itemtype::parser::tests::parse_item_entry_will_return_right_magic_def ... ok
[INFO] [stdout] test itemtype::parser::tests::parse_item_entry_will_return_right_magic_atk ... ok
[INFO] [stdout] test itemtype::parser::tests::parse_item_entry_will_return_right_lvl_req ... ok
[INFO] [stdout] test itemtype::parser::tests::parse_item_entry_will_return_right_magic1 ... ok
[INFO] [stdout] test itemtype::parser::tests::parse_item_entry_will_return_right_min_phys_atk ... ok
[INFO] [stdout] test itemtype::parser::tests::parse_item_entry_will_return_right_mp_restored ... ok
[INFO] [stdout] test itemtype::parser::tests::parse_item_entry_will_return_right_is_untradeable ... ok
[INFO] [stdout] test itemtype::parser::tests::parse_item_entry_will_return_right_magic2 ... ok
[INFO] [stdout] test itemtype::parser::tests::parse_item_entry_will_return_right_phys_def ... ok
[INFO] [stdout] test magictype::parser::tests::parse_header_serialize_will_return_initial_header_1 ... ok
[INFO] [stdout] test itemtype::parser::tests::parse_item_entry_will_return_right_repair_mode ... ok
[INFO] [stdout] test magictype::parser::tests::parse_header_serialize_will_return_initial_header_3 ... ok
[INFO] [stdout] test itemtype::parser::tests::parse_item_entry_will_return_right_should_show_important_sell_hint ... ok
[INFO] [stdout] test magictype::parser::tests::parse_header_will_return_right_val ... ok
[INFO] [stdout] test itemtype::parser::tests::parse_item_entry_will_return_right_status ... ok
[INFO] [stdout] test itemtype::parser::tests::parse_item_entry_will_return_right_sex_req ... ok
[INFO] [stdout] test itemtype::parser::tests::parse_item_entry_will_return_right_should_show_important_drop_hint ... ok
[INFO] [stdout] test magictype::parser::tests::parse_header_serialize_will_return_initial_header_2 ... ok
[INFO] [stdout] test magictype::parser::tests::parse_magic_entry_serialize_will_return_initial_line_2 ... ok
[INFO] [stdout] test itemtype::parser::tests::parse_item_entry_will_return_right_unknown_1 ... ok
[INFO] [stdout] test itemtype::parser::tests::parse_item_entry_will_return_right_name ... ok
[INFO] [stdout] test magictype::parser::tests::parse_magic_entry_serialize_will_return_initial_line_3 ... ok
[INFO] [stdout] test itemtype::parser::tests::parse_item_entry_will_return_right_spi_req ... ok
[INFO] [stdout] test itemtype::parser::tests::parse_item_entry_will_return_right_type_name ... ok
[INFO] [stdout] test itemtype::parser::tests::parse_item_entry_will_return_right_str_req ... ok
[INFO] [stdout] test magictype::parser::tests::parse_magic_entry_will_return_right_auto_learn_lvl ... ok
[INFO] [stdout] test magictype::parser::tests::parse_magic_entry_serialize_will_return_initial_line_1 ... ok
[INFO] [stdout] test itemtype::parser::tests::parse_item_entry_will_return_right_profession_req ... ok
[INFO] [stdout] test itemtype::parser::tests::parse_item_entry_will_return_right_type_mask ... ok
[INFO] [stdout] test itemtype::parser::tests::parse_item_entry_will_return_right_proficiency_req ... ok
[INFO] [stdout] test itemtype::parser::tests::parse_item_entry_will_return_right_vit_req ... ok
[INFO] [stdout] test magictype::parser::tests::parse_magic_entry_will_return_right_desc ... ok
[INFO] [stdout] test magictype::parser::tests::parse_magic_entry_will_return_right_accuracy ... ok
[INFO] [stdout] test magictype::parser::tests::parse_magic_entry_will_return_right_auto_active ... ok
[INFO] [stdout] test magictype::parser::tests::parse_magic_entry_will_return_right_drop_weapon ... ok
[INFO] [stdout] test magictype::parser::tests::parse_magic_entry_will_return_right_action_sort ... ok
[INFO] [stdout] test magictype::parser::tests::parse_magic_entry_will_return_right_hits_with_weapon ... ok
[INFO] [stdout] test magictype::parser::tests::parse_magic_entry_will_return_right_id ... ok
[INFO] [stdout] test magictype::parser::tests::parse_magic_entry_will_return_right_intone_effect ... ok
[INFO] [stdout] test magictype::parser::tests::parse_magic_entry_will_return_right_ground_effect ... ok
[INFO] [stdout] test magictype::parser::tests::parse_magic_entry_will_return_right_intone_effect_duration ... ok
[INFO] [stdout] test itemtype::parser::tests::parse_item_entry_will_return_right_weight ... ok
[INFO] [stdout] test magictype::parser::tests::parse_magic_entry_will_return_right_is_body_target ... ok
[INFO] [stdout] test magictype::parser::tests::parse_magic_entry_will_return_right_is_passive_target ... ok
[INFO] [stdout] test magictype::parser::tests::parse_magic_entry_will_return_right_is_auto_learned ... ok
[INFO] [stdout] test magictype::parser::tests::parse_magic_entry_will_return_right_active_time ... ok
[INFO] [stdout] test magictype::parser::tests::parse_magic_entry_will_return_right_max_distance ... ok
[INFO] [stdout] test magictype::parser::tests::parse_magic_entry_will_return_right_intone_sfx ... ok
[INFO] [stdout] test magictype::parser::tests::parse_magic_entry_will_return_right_is_staggering ... ok
[INFO] [stdout] test magictype::parser::tests::parse_magic_entry_will_return_right_is_none_target ... ok
[INFO] [stdout] test magictype::parser::tests::parse_magic_entry_will_return_right_is_ground_targeted ... ok
[INFO] [stdout] test magictype::parser::tests::parse_magic_entry_will_return_right_job_required ... ok
[INFO] [stdout] test magictype::parser::tests::parse_magic_entry_will_return_right_mp_cost ... ok
[INFO] [stdout] test magictype::parser::tests::parse_magic_entry_will_return_right_lvl_required ... ok
[INFO] [stdout] test magictype::parser::tests::parse_magic_entry_will_return_right_is_usable_in_market ... ok
[INFO] [stdout] test magictype::parser::tests::parse_magic_entry_will_return_right_is_multi_target ... ok
[INFO] [stdout] test magictype::parser::tests::parse_magic_entry_will_return_right_is_offensive_on_use ... ok
[INFO] [stdout] test magictype::parser::tests::parse_magic_entry_will_return_right_sender_effect ... ok
[INFO] [stdout] test magictype::parser::tests::parse_magic_entry_will_return_right_is_terrain_target ... ok
[INFO] [stdout] test magictype::parser::tests::parse_magic_entry_will_return_right_sender_sfx ... ok
[INFO] [stdout] test magictype::parser::tests::parse_magic_entry_will_return_right_target_delay ... ok
[INFO] [stdout] test magictype::parser::tests::parse_magic_entry_will_return_right_range ... ok
[INFO] [stdout] test magictype::parser::tests::parse_magic_entry_will_return_right_power ... ok
[INFO] [stdout] test magictype::parser::tests::parse_magic_entry_will_return_right_is_self_target ... ok
[INFO] [stdout] test magictype::parser::tests::parse_magic_entry_will_return_right_short_desc ... ok
[INFO] [stdout] test magictype::parser::tests::parse_magic_entry_will_return_right_skill_type ... ok
[INFO] [stdout] test magictype::parser::tests::parse_magic_entry_will_return_right_status ... ok
[INFO] [stdout] test magictype::parser::tests::parse_magic_entry_will_return_right_skill_lvl ... ok
[INFO] [stdout] test magictype::parser::tests::parse_magic_entry_will_return_right_next_skill_id_auto_cast ... ok
[INFO] [stdout] test magictype::parser::tests::parse_magic_entry_will_return_right_sender_action ... ok
[INFO] [stdout] test magictype::parser::tests::parse_magic_entry_will_return_right_use_item_num ... ok
[INFO] [stdout] test magictype::parser::tests::parse_magic_entry_will_return_right_target_sfx ... ok
[INFO] [stdout] test magictype::parser::tests::parse_magic_entry_will_return_right_time ... ok
[INFO] [stdout] test monster::parser::tests::test_valid_monster_entry_parse_anti_type ... ok
[INFO] [stdout] test monster::parser::tests::test_valid_monster_entry_parse_armet ... ok
[INFO] [stdout] test monster::parser::tests::test_valid_monster_entry_parse_armet_color ... ok
[INFO] [stdout] test magictype::parser::tests::parse_magic_entry_will_return_right_use_delay ... ok
[INFO] [stdout] test magictype::parser::tests::parse_magic_entry_will_return_right_screen_represent ... ok
[INFO] [stdout] test monster::parser::tests::test_valid_monster_entry_parse_l_weapon_color ... ok
[INFO] [stdout] test magictype::parser::tests::parse_magic_entry_will_return_right_target_effect ... ok
[INFO] [stdout] test monster::parser::tests::test_valid_monster_entry_parse_adb ... ok
[INFO] [stdout] test monster::parser::tests::test_valid_monster_entry_parse_born_action ... ok
[INFO] [stdout] test monster::parser::tests::test_valid_monster_entry_parse_body_type ... ok
[INFO] [stdout] test magictype::parser::tests::parse_magic_entry_will_return_right_weapon_required ... ok
[INFO] [stdout] test monster::parser::tests::test_valid_monster_entry_parse_mount ... ok
[INFO] [stdout] test magictype::parser::tests::parse_magic_entry_will_return_right_skill_name ... ok
[INFO] [stdout] test monster::parser::tests::test_valid_monster_entry_parse_stc_type ... ok
[INFO] [stdout] test monster::parser::tests::test_valid_monster_entry_parse_type_id ... ok
[INFO] [stdout] test monster::parser::tests::test_valid_monster_entry_parse_max_life ... ok
[INFO] [stdout] test monster::parser::tests::test_valid_monster_entry_parse_battle_lvl ... ok
[INFO] [stdout] test monster::parser::tests::test_valid_monster_entry_parse_r_weapon ... ok
[INFO] [stdout] test monster::parser::tests::test_valid_monster_entry_parse_lvl ... ok
[INFO] [stdout] test magictype::parser::tests::parse_magic_entry_will_return_right_uses_item ... ok
[INFO] [stdout] test magictype::parser::tests::parse_magic_entry_will_return_right_trace_effect ... ok
[INFO] [stdout] test monster::parser::tests::test_valid_monster_entry_parse_misc ... ok
[INFO] [stdout] test monster::parser::tests::test_valid_monster_entry_parse_act_res_ctrl ... ok
[INFO] [stdout] test magictype::parser::tests::parse_magic_entry_will_return_right_stamina_cost ... ok
[INFO] [stdout] test monster::parser::tests::test_valid_monster_entry_parse_size_add ... ok
[INFO] [stdout] test monster::parser::tests::test_valid_monster_entry_parse_asb ... ok
[INFO] [stdout] test monster::parser::tests::test_valid_monster_entry_parse_zoom_pct ... ok
[INFO] [stdout] test monster::parser::tests::test_valid_monster_entry_parse_extra_xp ... ok
[INFO] [stdout] test monster::parser::tests::test_valid_monster_entry_parse_l_weapon ... ok
[INFO] [stdout] test magictype::parser::tests::parse_magic_entry_will_return_right_xp_required ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 131 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out
[INFO] [stdout] 
[INFO] running `Command { std: "docker" "inspect" "f128b8a87df40ec8cb36daf47d284527a3244847eeb60c7d5784fce6a7878db5", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "f128b8a87df40ec8cb36daf47d284527a3244847eeb60c7d5784fce6a7878db5", kill_on_drop: false }`
[INFO] [stdout] f128b8a87df40ec8cb36daf47d284527a3244847eeb60c7d5784fce6a7878db5
