[INFO] cloning repository https://github.com/PokeyLink227/dnd_character_sheet
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/PokeyLink227/dnd_character_sheet" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FPokeyLink227%2Fdnd_character_sheet", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FPokeyLink227%2Fdnd_character_sheet'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] 851d2a7c4182905189843969a0f2ae33d46225ba
[INFO] testing PokeyLink227/dnd_character_sheet against 1.98.0-beta.1 for beta-1.98-1
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FPokeyLink227%2Fdnd_character_sheet" "/workspace/builds/worker-4-tc2/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-4-tc2/source'...
[INFO] [stderr] done.
[INFO] started tweaking git repo https://github.com/PokeyLink227/dnd_character_sheet
[INFO] finished tweaking git repo https://github.com/PokeyLink227/dnd_character_sheet
[INFO] tweaked toml for git repo https://github.com/PokeyLink227/dnd_character_sheet written to /workspace/builds/worker-4-tc2/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/PokeyLink227/dnd_character_sheet on toolchain 1.98.0-beta.1
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+1.98.0-beta.1" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate git repo https://github.com/PokeyLink227/dnd_character_sheet already has a lockfile, it will not be regenerated
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+1.98.0-beta.1" "fetch" "--manifest-path" "Cargo.toml", 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] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc2/target:/opt/rustwide/target:rw,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" "-m" "1610612736" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:3d5ced03c013a94a2f102a4510f48a6e9184255caf5fd8244f58017bde7f5210" "sleep" "infinity", kill_on_drop: false }`
[INFO] [stdout] e27785df492abbb8948cfa2c5c067fe9fb02311b775937969cd670411e66eb86
[INFO] running `Command { std: "docker" "start" "e27785df492abbb8948cfa2c5c067fe9fb02311b775937969cd670411e66eb86", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "e27785df492abbb8948cfa2c5c067fe9fb02311b775937969cd670411e66eb86", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "exec" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-w" "/opt/rustwide/workdir" "--user" "0:0" "e27785df492abbb8948cfa2c5c067fe9fb02311b775937969cd670411e66eb86" "/opt/rustwide/cargo-home/bin/cargo" "+1.98.0-beta.1" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "e27785df492abbb8948cfa2c5c067fe9fb02311b775937969cd670411e66eb86", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "exec" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=warn" "-e" "RUSTDOCFLAGS=--cap-lints=warn" "-w" "/opt/rustwide/workdir" "--user" "0:0" "e27785df492abbb8948cfa2c5c067fe9fb02311b775937969cd670411e66eb86" "/opt/rustwide/cargo-home/bin/cargo" "+1.98.0-beta.1" "build" "--frozen" "--message-format=json", kill_on_drop: false }`
[INFO] [stderr]    Compiling serde_core v1.0.228
[INFO] [stderr]    Compiling log v0.4.29
[INFO] [stderr]    Compiling mio v1.2.0
[INFO] [stderr]    Compiling socket2 v0.6.3
[INFO] [stderr]    Compiling tokio-macros v2.7.0
[INFO] [stderr]    Compiling serde v1.0.228
[INFO] [stderr]    Compiling zerocopy v0.8.48
[INFO] [stderr]    Compiling tracing-core v0.1.36
[INFO] [stderr]    Compiling futures-macro v0.3.32
[INFO] [stderr]    Compiling futures-channel v0.3.32
[INFO] [stderr]    Compiling time-core v0.1.8
[INFO] [stderr]    Compiling num-conv v0.2.1
[INFO] [stderr]    Compiling serde_json v1.0.149
[INFO] [stderr]    Compiling thiserror-impl v2.0.18
[INFO] [stderr]    Compiling futures-io v0.3.32
[INFO] [stderr]    Compiling getrandom v0.2.17
[INFO] [stderr]    Compiling hashbrown v0.17.0
[INFO] [stderr]    Compiling cookie v0.18.1
[INFO] [stderr]    Compiling winnow v1.0.2
[INFO] [stderr]    Compiling time-macros v0.2.27
[INFO] [stderr]    Compiling rand_core v0.6.4
[INFO] [stderr]    Compiling rustc-hash v2.1.2
[INFO] [stderr]    Compiling unicase v2.9.0
[INFO] [stderr]    Compiling regex-automata v0.4.14
[INFO] [stderr]    Compiling mime_guess v2.0.5
[INFO] [stderr]    Compiling glob v0.3.3
[INFO] [stderr]    Compiling tracing v0.1.44
[INFO] [stderr]    Compiling tracing-log v0.2.0
[INFO] [stderr]    Compiling tokio v1.52.1
[INFO] [stderr]    Compiling futures-util v0.3.32
[INFO] [stderr]    Compiling indexmap v2.14.0
[INFO] [stderr]    Compiling axum-core v0.5.6
[INFO] [stderr]    Compiling http-range-header v0.4.2
[INFO] [stderr]    Compiling bitflags v2.11.1
[INFO] [stderr]    Compiling subtle v2.6.1
[INFO] [stderr]    Compiling libyaml-rs v0.3.0
[INFO] [stderr]    Compiling thiserror v2.0.18
[INFO] [stderr]    Compiling futures v0.3.32
[INFO] [stderr]    Compiling deranged v0.5.8
[INFO] [stderr]    Compiling serde_path_to_error v0.1.20
[INFO] [stderr]    Compiling askama_parser v0.16.0
[INFO] [stderr]    Compiling basic-toml v0.1.10
[INFO] [stderr]    Compiling matchers v0.2.0
[INFO] [stderr]    Compiling regex v1.12.3
[INFO] [stderr]    Compiling tracing-subscriber v0.3.23
[INFO] [stderr]    Compiling lock_api v0.4.14
[INFO] [stderr]    Compiling serde_urlencoded v0.7.1
[INFO] [stderr]    Compiling yaml_serde v0.10.4
[INFO] [stderr]    Compiling parking_lot v0.12.5
[INFO] [stderr]    Compiling ppv-lite86 v0.2.21
[INFO] [stderr]    Compiling rand_chacha v0.3.1
[INFO] [stderr]    Compiling rand_chacha v0.9.0
[INFO] [stderr]    Compiling time v0.3.47
[INFO] [stderr]    Compiling rand v0.8.6
[INFO] [stderr]    Compiling rand v0.9.4
[INFO] [stderr]    Compiling tokio-util v0.7.18
[INFO] [stderr]    Compiling tower v0.5.3
[INFO] [stderr]    Compiling h2 v0.4.13
[INFO] [stderr]    Compiling tower-http v0.6.8
[INFO] [stderr]    Compiling tower-sessions-core v0.14.0
[INFO] [stderr]    Compiling tower-sessions-core v0.15.0
[INFO] [stderr]    Compiling askama_derive v0.16.0
[INFO] [stderr]    Compiling tower-cookies v0.11.0
[INFO] [stderr]    Compiling tower-sessions v0.14.0
[INFO] [stderr]    Compiling tower-sessions-file-store v0.2.0
[INFO] [stderr]    Compiling tower-sessions-memory-store v0.15.0
[INFO] [stderr]    Compiling tower-sessions v0.15.0
[INFO] [stderr]    Compiling hyper v1.9.0
[INFO] [stderr]    Compiling askama_macros v0.16.0
[INFO] [stderr]    Compiling askama v0.16.0
[INFO] [stderr]    Compiling hyper-util v0.1.20
[INFO] [stderr]    Compiling axum v0.8.9
[INFO] [stderr]    Compiling axum-login v0.18.0
[INFO] [stderr]    Compiling character-sheet v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unused imports: `Arc`, `Mutex`, and `collections::HashMap`
[INFO] [stdout]  --> src/main.rs:2:5
[INFO] [stdout]   |
[INFO] [stdout] 2 |     collections::HashMap,
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 3 |     sync::{Arc, Mutex},
[INFO] [stdout]   |            ^^^  ^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `user::*`
[INFO] [stdout]  --> src/sheet.rs:1:27
[INFO] [stdout]   |
[INFO] [stdout] 1 | use crate::{templates::*, user::*};
[INFO] [stdout]   |                           ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `acrobatics` should have an upper camel case name
[INFO] [stdout]   --> src/sheet.rs:31:5
[INFO] [stdout]    |
[INFO] [stdout] 31 |     acrobatics,
[INFO] [stdout]    |     ^^^^^^^^^^ help: convert the identifier to upper camel case: `Acrobatics`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(non_camel_case_types)]` (part of `#[warn(nonstandard_style)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `appraise` should have an upper camel case name
[INFO] [stdout]   --> src/sheet.rs:32:5
[INFO] [stdout]    |
[INFO] [stdout] 32 |     appraise,
[INFO] [stdout]    |     ^^^^^^^^ help: convert the identifier to upper camel case: `Appraise`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `bluff` should have an upper camel case name
[INFO] [stdout]   --> src/sheet.rs:33:5
[INFO] [stdout]    |
[INFO] [stdout] 33 |     bluff,
[INFO] [stdout]    |     ^^^^^ help: convert the identifier to upper camel case: `Bluff`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `climb` should have an upper camel case name
[INFO] [stdout]   --> src/sheet.rs:34:5
[INFO] [stdout]    |
[INFO] [stdout] 34 |     climb,
[INFO] [stdout]    |     ^^^^^ help: convert the identifier to upper camel case (notice the capitalization): `Climb`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `craft` should have an upper camel case name
[INFO] [stdout]   --> src/sheet.rs:35:5
[INFO] [stdout]    |
[INFO] [stdout] 35 |     craft,
[INFO] [stdout]    |     ^^^^^ help: convert the identifier to upper camel case (notice the capitalization): `Craft`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `diplomacy` should have an upper camel case name
[INFO] [stdout]   --> src/sheet.rs:36:5
[INFO] [stdout]    |
[INFO] [stdout] 36 |     diplomacy,
[INFO] [stdout]    |     ^^^^^^^^^ help: convert the identifier to upper camel case: `Diplomacy`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `disabledevice` should have an upper camel case name
[INFO] [stdout]   --> src/sheet.rs:37:5
[INFO] [stdout]    |
[INFO] [stdout] 37 |     disabledevice,
[INFO] [stdout]    |     ^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `Disabledevice`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `disguise` should have an upper camel case name
[INFO] [stdout]   --> src/sheet.rs:38:5
[INFO] [stdout]    |
[INFO] [stdout] 38 |     disguise,
[INFO] [stdout]    |     ^^^^^^^^ help: convert the identifier to upper camel case: `Disguise`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `escapeArtist` should have an upper camel case name
[INFO] [stdout]   --> src/sheet.rs:39:5
[INFO] [stdout]    |
[INFO] [stdout] 39 |     escapeArtist,
[INFO] [stdout]    |     ^^^^^^^^^^^^ help: convert the identifier to upper camel case: `EscapeArtist`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `fly` should have an upper camel case name
[INFO] [stdout]   --> src/sheet.rs:40:5
[INFO] [stdout]    |
[INFO] [stdout] 40 |     fly,
[INFO] [stdout]    |     ^^^ help: convert the identifier to upper camel case (notice the capitalization): `Fly`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `handleAnimal` should have an upper camel case name
[INFO] [stdout]   --> src/sheet.rs:41:5
[INFO] [stdout]    |
[INFO] [stdout] 41 |     handleAnimal,
[INFO] [stdout]    |     ^^^^^^^^^^^^ help: convert the identifier to upper camel case: `HandleAnimal`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `heal` should have an upper camel case name
[INFO] [stdout]   --> src/sheet.rs:42:5
[INFO] [stdout]    |
[INFO] [stdout] 42 |     heal,
[INFO] [stdout]    |     ^^^^ help: convert the identifier to upper camel case: `Heal`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `knowledge_arcana` should have an upper camel case name
[INFO] [stdout]   --> src/sheet.rs:43:5
[INFO] [stdout]    |
[INFO] [stdout] 43 |     knowledge_arcana,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `KnowledgeArcana`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `knowledge_Dungeoneering` should have an upper camel case name
[INFO] [stdout]   --> src/sheet.rs:44:5
[INFO] [stdout]    |
[INFO] [stdout] 44 |     knowledge_Dungeoneering,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `KnowledgeDungeoneering`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `knowledge_Engineering` should have an upper camel case name
[INFO] [stdout]   --> src/sheet.rs:45:5
[INFO] [stdout]    |
[INFO] [stdout] 45 |     knowledge_Engineering,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `KnowledgeEngineering`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `knowledge_Geography` should have an upper camel case name
[INFO] [stdout]   --> src/sheet.rs:46:5
[INFO] [stdout]    |
[INFO] [stdout] 46 |     knowledge_Geography,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `KnowledgeGeography`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `knowledge_history` should have an upper camel case name
[INFO] [stdout]   --> src/sheet.rs:47:5
[INFO] [stdout]    |
[INFO] [stdout] 47 |     knowledge_history,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `KnowledgeHistory`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `knowledge_local` should have an upper camel case name
[INFO] [stdout]   --> src/sheet.rs:48:5
[INFO] [stdout]    |
[INFO] [stdout] 48 |     knowledge_local,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `KnowledgeLocal`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `knowledge_nature` should have an upper camel case name
[INFO] [stdout]   --> src/sheet.rs:49:5
[INFO] [stdout]    |
[INFO] [stdout] 49 |     knowledge_nature,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `KnowledgeNature`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `knowledge_nobility` should have an upper camel case name
[INFO] [stdout]   --> src/sheet.rs:50:5
[INFO] [stdout]    |
[INFO] [stdout] 50 |     knowledge_nobility,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `KnowledgeNobility`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `knowledge_planes` should have an upper camel case name
[INFO] [stdout]   --> src/sheet.rs:51:5
[INFO] [stdout]    |
[INFO] [stdout] 51 |     knowledge_planes,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `KnowledgePlanes`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `knowledge_religion` should have an upper camel case name
[INFO] [stdout]   --> src/sheet.rs:52:5
[INFO] [stdout]    |
[INFO] [stdout] 52 |     knowledge_religion,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `KnowledgeReligion`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `linguistics` should have an upper camel case name
[INFO] [stdout]   --> src/sheet.rs:53:5
[INFO] [stdout]    |
[INFO] [stdout] 53 |     linguistics,
[INFO] [stdout]    |     ^^^^^^^^^^^ help: convert the identifier to upper camel case: `Linguistics`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `perception` should have an upper camel case name
[INFO] [stdout]   --> src/sheet.rs:54:5
[INFO] [stdout]    |
[INFO] [stdout] 54 |     perception,
[INFO] [stdout]    |     ^^^^^^^^^^ help: convert the identifier to upper camel case: `Perception`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `perform_1` should have an upper camel case name
[INFO] [stdout]   --> src/sheet.rs:55:5
[INFO] [stdout]    |
[INFO] [stdout] 55 |     perform_1,
[INFO] [stdout]    |     ^^^^^^^^^ help: convert the identifier to upper camel case: `Perform1`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `perform_2` should have an upper camel case name
[INFO] [stdout]   --> src/sheet.rs:56:5
[INFO] [stdout]    |
[INFO] [stdout] 56 |     perform_2,
[INFO] [stdout]    |     ^^^^^^^^^ help: convert the identifier to upper camel case: `Perform2`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `profession_1` should have an upper camel case name
[INFO] [stdout]   --> src/sheet.rs:57:5
[INFO] [stdout]    |
[INFO] [stdout] 57 |     profession_1,
[INFO] [stdout]    |     ^^^^^^^^^^^^ help: convert the identifier to upper camel case: `Profession1`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `profession_2` should have an upper camel case name
[INFO] [stdout]   --> src/sheet.rs:58:5
[INFO] [stdout]    |
[INFO] [stdout] 58 |     profession_2,
[INFO] [stdout]    |     ^^^^^^^^^^^^ help: convert the identifier to upper camel case: `Profession2`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `ride` should have an upper camel case name
[INFO] [stdout]   --> src/sheet.rs:59:5
[INFO] [stdout]    |
[INFO] [stdout] 59 |     ride,
[INFO] [stdout]    |     ^^^^ help: convert the identifier to upper camel case: `Ride`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `sense_motive` should have an upper camel case name
[INFO] [stdout]   --> src/sheet.rs:60:5
[INFO] [stdout]    |
[INFO] [stdout] 60 |     sense_motive,
[INFO] [stdout]    |     ^^^^^^^^^^^^ help: convert the identifier to upper camel case: `SenseMotive`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `sleight_of_hand` should have an upper camel case name
[INFO] [stdout]   --> src/sheet.rs:61:5
[INFO] [stdout]    |
[INFO] [stdout] 61 |     sleight_of_hand,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `SleightOfHand`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `spellcraft` should have an upper camel case name
[INFO] [stdout]   --> src/sheet.rs:62:5
[INFO] [stdout]    |
[INFO] [stdout] 62 |     spellcraft,
[INFO] [stdout]    |     ^^^^^^^^^^ help: convert the identifier to upper camel case (notice the capitalization): `Spellcraft`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `stealth` should have an upper camel case name
[INFO] [stdout]   --> src/sheet.rs:63:5
[INFO] [stdout]    |
[INFO] [stdout] 63 |     stealth,
[INFO] [stdout]    |     ^^^^^^^ help: convert the identifier to upper camel case (notice the capitalization): `Stealth`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `survival` should have an upper camel case name
[INFO] [stdout]   --> src/sheet.rs:64:5
[INFO] [stdout]    |
[INFO] [stdout] 64 |     survival,
[INFO] [stdout]    |     ^^^^^^^^ help: convert the identifier to upper camel case (notice the capitalization): `Survival`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `swim` should have an upper camel case name
[INFO] [stdout]   --> src/sheet.rs:65:5
[INFO] [stdout]    |
[INFO] [stdout] 65 |     swim,
[INFO] [stdout]    |     ^^^^ help: convert the identifier to upper camel case (notice the capitalization): `Swim`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `use_magic_device` should have an upper camel case name
[INFO] [stdout]   --> src/sheet.rs:66:5
[INFO] [stdout]    |
[INFO] [stdout] 66 |     use_magic_device,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `UseMagicDevice`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `super::*`
[INFO] [stdout]    --> src/sheet.rs:401:9
[INFO] [stdout]     |
[INFO] [stdout] 401 |     use super::*;
[INFO] [stdout]     |         ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `auth_session`
[INFO] [stdout]   --> src/main.rs:61:21
[INFO] [stdout]    |
[INFO] [stdout] 61 |         async move |auth_session: AuthSession, body: String| -> Response {
[INFO] [stdout]    |                     ^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_auth_session`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `auth_session`
[INFO] [stdout]    --> src/main.rs:106:20
[INFO] [stdout]     |
[INFO] [stdout] 106 | async fn calculate(auth_session: AuthSession, body: String) -> impl IntoResponse {
[INFO] [stdout]     |                    ^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_auth_session`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `calculate` is never used
[INFO] [stdout]    --> src/main.rs:106:10
[INFO] [stdout]     |
[INFO] [stdout] 106 | async fn calculate(auth_session: AuthSession, body: String) -> impl IntoResponse {
[INFO] [stdout]     |          ^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variants `perform_2` and `profession_1` are never constructed
[INFO] [stdout]   --> src/sheet.rs:56:5
[INFO] [stdout]    |
[INFO] [stdout]  9 | pub enum SheetField {
[INFO] [stdout]    |          ---------- variants in this enum
[INFO] [stdout] ...
[INFO] [stdout] 56 |     perform_2,
[INFO] [stdout]    |     ^^^^^^^^^
[INFO] [stdout] 57 |     profession_1,
[INFO] [stdout]    |     ^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `SheetField` 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: enum `Formula` is never used
[INFO] [stdout]    --> src/sheet.rs:353:10
[INFO] [stdout]     |
[INFO] [stdout] 353 | pub enum Formula {
[INFO] [stdout]     |          ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `get_deps` is never used
[INFO] [stdout]    --> src/sheet.rs:362:8
[INFO] [stdout]     |
[INFO] [stdout] 361 | impl Formula {
[INFO] [stdout]     | ------------ method in this implementation
[INFO] [stdout] 362 |     fn get_deps(&self) -> Vec<String> {
[INFO] [stdout]     |        ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Stat` is never constructed
[INFO] [stdout]    --> src/sheet.rs:384:12
[INFO] [stdout]     |
[INFO] [stdout] 384 | pub struct Stat {
[INFO] [stdout]     |            ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Class` is never constructed
[INFO] [stdout]    --> src/sheet.rs:392:12
[INFO] [stdout]     |
[INFO] [stdout] 392 | pub struct Class {
[INFO] [stdout]     |            ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `password` is never read
[INFO] [stdout]   --> src/user.rs:50:9
[INFO] [stdout]    |
[INFO] [stdout] 48 | pub struct Credentials {
[INFO] [stdout]    |            ----------- field in this struct
[INFO] [stdout] 49 |     pub username: String,
[INFO] [stdout] 50 |     pub password: String,
[INFO] [stdout]    |         ^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `Credentials` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]   --> src/main.rs:97:5
[INFO] [stdout]    |
[INFO] [stdout] 97 |     deletion_task.await;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout]    = note: `#[warn(unused_must_use)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]    |
[INFO] [stdout] 97 |     let _ = deletion_task.await;
[INFO] [stdout]    |     +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 1m 03s
[INFO] running `Command { std: "docker" "inspect" "e27785df492abbb8948cfa2c5c067fe9fb02311b775937969cd670411e66eb86", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "exec" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=warn" "-e" "RUSTDOCFLAGS=--cap-lints=warn" "-w" "/opt/rustwide/workdir" "--user" "0:0" "e27785df492abbb8948cfa2c5c067fe9fb02311b775937969cd670411e66eb86" "/opt/rustwide/cargo-home/bin/cargo" "+1.98.0-beta.1" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }`
[INFO] [stderr]    Compiling character-sheet v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unused imports: `Arc`, `Mutex`, and `collections::HashMap`
[INFO] [stdout]  --> src/main.rs:2:5
[INFO] [stdout]   |
[INFO] [stdout] 2 |     collections::HashMap,
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 3 |     sync::{Arc, Mutex},
[INFO] [stdout]   |            ^^^  ^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `user::*`
[INFO] [stdout]  --> src/sheet.rs:1:27
[INFO] [stdout]   |
[INFO] [stdout] 1 | use crate::{templates::*, user::*};
[INFO] [stdout]   |                           ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `acrobatics` should have an upper camel case name
[INFO] [stdout]   --> src/sheet.rs:31:5
[INFO] [stdout]    |
[INFO] [stdout] 31 |     acrobatics,
[INFO] [stdout]    |     ^^^^^^^^^^ help: convert the identifier to upper camel case: `Acrobatics`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(non_camel_case_types)]` (part of `#[warn(nonstandard_style)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `appraise` should have an upper camel case name
[INFO] [stdout]   --> src/sheet.rs:32:5
[INFO] [stdout]    |
[INFO] [stdout] 32 |     appraise,
[INFO] [stdout]    |     ^^^^^^^^ help: convert the identifier to upper camel case: `Appraise`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `bluff` should have an upper camel case name
[INFO] [stdout]   --> src/sheet.rs:33:5
[INFO] [stdout]    |
[INFO] [stdout] 33 |     bluff,
[INFO] [stdout]    |     ^^^^^ help: convert the identifier to upper camel case: `Bluff`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `climb` should have an upper camel case name
[INFO] [stdout]   --> src/sheet.rs:34:5
[INFO] [stdout]    |
[INFO] [stdout] 34 |     climb,
[INFO] [stdout]    |     ^^^^^ help: convert the identifier to upper camel case (notice the capitalization): `Climb`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `craft` should have an upper camel case name
[INFO] [stdout]   --> src/sheet.rs:35:5
[INFO] [stdout]    |
[INFO] [stdout] 35 |     craft,
[INFO] [stdout]    |     ^^^^^ help: convert the identifier to upper camel case (notice the capitalization): `Craft`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `diplomacy` should have an upper camel case name
[INFO] [stdout]   --> src/sheet.rs:36:5
[INFO] [stdout]    |
[INFO] [stdout] 36 |     diplomacy,
[INFO] [stdout]    |     ^^^^^^^^^ help: convert the identifier to upper camel case: `Diplomacy`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `disabledevice` should have an upper camel case name
[INFO] [stdout]   --> src/sheet.rs:37:5
[INFO] [stdout]    |
[INFO] [stdout] 37 |     disabledevice,
[INFO] [stdout]    |     ^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `Disabledevice`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `disguise` should have an upper camel case name
[INFO] [stdout]   --> src/sheet.rs:38:5
[INFO] [stdout]    |
[INFO] [stdout] 38 |     disguise,
[INFO] [stdout]    |     ^^^^^^^^ help: convert the identifier to upper camel case: `Disguise`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `escapeArtist` should have an upper camel case name
[INFO] [stdout]   --> src/sheet.rs:39:5
[INFO] [stdout]    |
[INFO] [stdout] 39 |     escapeArtist,
[INFO] [stdout]    |     ^^^^^^^^^^^^ help: convert the identifier to upper camel case: `EscapeArtist`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `fly` should have an upper camel case name
[INFO] [stdout]   --> src/sheet.rs:40:5
[INFO] [stdout]    |
[INFO] [stdout] 40 |     fly,
[INFO] [stdout]    |     ^^^ help: convert the identifier to upper camel case (notice the capitalization): `Fly`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `handleAnimal` should have an upper camel case name
[INFO] [stdout]   --> src/sheet.rs:41:5
[INFO] [stdout]    |
[INFO] [stdout] 41 |     handleAnimal,
[INFO] [stdout]    |     ^^^^^^^^^^^^ help: convert the identifier to upper camel case: `HandleAnimal`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `heal` should have an upper camel case name
[INFO] [stdout]   --> src/sheet.rs:42:5
[INFO] [stdout]    |
[INFO] [stdout] 42 |     heal,
[INFO] [stdout]    |     ^^^^ help: convert the identifier to upper camel case: `Heal`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `knowledge_arcana` should have an upper camel case name
[INFO] [stdout]   --> src/sheet.rs:43:5
[INFO] [stdout]    |
[INFO] [stdout] 43 |     knowledge_arcana,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `KnowledgeArcana`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `knowledge_Dungeoneering` should have an upper camel case name
[INFO] [stdout]   --> src/sheet.rs:44:5
[INFO] [stdout]    |
[INFO] [stdout] 44 |     knowledge_Dungeoneering,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `KnowledgeDungeoneering`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `knowledge_Engineering` should have an upper camel case name
[INFO] [stdout]   --> src/sheet.rs:45:5
[INFO] [stdout]    |
[INFO] [stdout] 45 |     knowledge_Engineering,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `KnowledgeEngineering`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `knowledge_Geography` should have an upper camel case name
[INFO] [stdout]   --> src/sheet.rs:46:5
[INFO] [stdout]    |
[INFO] [stdout] 46 |     knowledge_Geography,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `KnowledgeGeography`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `knowledge_history` should have an upper camel case name
[INFO] [stdout]   --> src/sheet.rs:47:5
[INFO] [stdout]    |
[INFO] [stdout] 47 |     knowledge_history,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `KnowledgeHistory`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `knowledge_local` should have an upper camel case name
[INFO] [stdout]   --> src/sheet.rs:48:5
[INFO] [stdout]    |
[INFO] [stdout] 48 |     knowledge_local,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `KnowledgeLocal`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `knowledge_nature` should have an upper camel case name
[INFO] [stdout]   --> src/sheet.rs:49:5
[INFO] [stdout]    |
[INFO] [stdout] 49 |     knowledge_nature,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `KnowledgeNature`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `knowledge_nobility` should have an upper camel case name
[INFO] [stdout]   --> src/sheet.rs:50:5
[INFO] [stdout]    |
[INFO] [stdout] 50 |     knowledge_nobility,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `KnowledgeNobility`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `knowledge_planes` should have an upper camel case name
[INFO] [stdout]   --> src/sheet.rs:51:5
[INFO] [stdout]    |
[INFO] [stdout] 51 |     knowledge_planes,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `KnowledgePlanes`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `knowledge_religion` should have an upper camel case name
[INFO] [stdout]   --> src/sheet.rs:52:5
[INFO] [stdout]    |
[INFO] [stdout] 52 |     knowledge_religion,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `KnowledgeReligion`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `linguistics` should have an upper camel case name
[INFO] [stdout]   --> src/sheet.rs:53:5
[INFO] [stdout]    |
[INFO] [stdout] 53 |     linguistics,
[INFO] [stdout]    |     ^^^^^^^^^^^ help: convert the identifier to upper camel case: `Linguistics`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `perception` should have an upper camel case name
[INFO] [stdout]   --> src/sheet.rs:54:5
[INFO] [stdout]    |
[INFO] [stdout] 54 |     perception,
[INFO] [stdout]    |     ^^^^^^^^^^ help: convert the identifier to upper camel case: `Perception`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `perform_1` should have an upper camel case name
[INFO] [stdout]   --> src/sheet.rs:55:5
[INFO] [stdout]    |
[INFO] [stdout] 55 |     perform_1,
[INFO] [stdout]    |     ^^^^^^^^^ help: convert the identifier to upper camel case: `Perform1`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `perform_2` should have an upper camel case name
[INFO] [stdout]   --> src/sheet.rs:56:5
[INFO] [stdout]    |
[INFO] [stdout] 56 |     perform_2,
[INFO] [stdout]    |     ^^^^^^^^^ help: convert the identifier to upper camel case: `Perform2`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `profession_1` should have an upper camel case name
[INFO] [stdout]   --> src/sheet.rs:57:5
[INFO] [stdout]    |
[INFO] [stdout] 57 |     profession_1,
[INFO] [stdout]    |     ^^^^^^^^^^^^ help: convert the identifier to upper camel case: `Profession1`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `profession_2` should have an upper camel case name
[INFO] [stdout]   --> src/sheet.rs:58:5
[INFO] [stdout]    |
[INFO] [stdout] 58 |     profession_2,
[INFO] [stdout]    |     ^^^^^^^^^^^^ help: convert the identifier to upper camel case: `Profession2`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `ride` should have an upper camel case name
[INFO] [stdout]   --> src/sheet.rs:59:5
[INFO] [stdout]    |
[INFO] [stdout] 59 |     ride,
[INFO] [stdout]    |     ^^^^ help: convert the identifier to upper camel case: `Ride`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `sense_motive` should have an upper camel case name
[INFO] [stdout]   --> src/sheet.rs:60:5
[INFO] [stdout]    |
[INFO] [stdout] 60 |     sense_motive,
[INFO] [stdout]    |     ^^^^^^^^^^^^ help: convert the identifier to upper camel case: `SenseMotive`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `sleight_of_hand` should have an upper camel case name
[INFO] [stdout]   --> src/sheet.rs:61:5
[INFO] [stdout]    |
[INFO] [stdout] 61 |     sleight_of_hand,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `SleightOfHand`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `spellcraft` should have an upper camel case name
[INFO] [stdout]   --> src/sheet.rs:62:5
[INFO] [stdout]    |
[INFO] [stdout] 62 |     spellcraft,
[INFO] [stdout]    |     ^^^^^^^^^^ help: convert the identifier to upper camel case (notice the capitalization): `Spellcraft`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `stealth` should have an upper camel case name
[INFO] [stdout]   --> src/sheet.rs:63:5
[INFO] [stdout]    |
[INFO] [stdout] 63 |     stealth,
[INFO] [stdout]    |     ^^^^^^^ help: convert the identifier to upper camel case (notice the capitalization): `Stealth`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `survival` should have an upper camel case name
[INFO] [stdout]   --> src/sheet.rs:64:5
[INFO] [stdout]    |
[INFO] [stdout] 64 |     survival,
[INFO] [stdout]    |     ^^^^^^^^ help: convert the identifier to upper camel case (notice the capitalization): `Survival`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `swim` should have an upper camel case name
[INFO] [stdout]   --> src/sheet.rs:65:5
[INFO] [stdout]    |
[INFO] [stdout] 65 |     swim,
[INFO] [stdout]    |     ^^^^ help: convert the identifier to upper camel case (notice the capitalization): `Swim`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `use_magic_device` should have an upper camel case name
[INFO] [stdout]   --> src/sheet.rs:66:5
[INFO] [stdout]    |
[INFO] [stdout] 66 |     use_magic_device,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `UseMagicDevice`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/sheet.rs:408:13
[INFO] [stdout]     |
[INFO] [stdout] 408 |         let mut class: Class = yaml_serde::from_str(&f).unwrap();
[INFO] [stdout]     |             ----^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             help: remove this `mut`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `auth_session`
[INFO] [stdout]   --> src/main.rs:61:21
[INFO] [stdout]    |
[INFO] [stdout] 61 |         async move |auth_session: AuthSession, body: String| -> Response {
[INFO] [stdout]    |                     ^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_auth_session`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `auth_session`
[INFO] [stdout]    --> src/main.rs:106:20
[INFO] [stdout]     |
[INFO] [stdout] 106 | async fn calculate(auth_session: AuthSession, body: String) -> impl IntoResponse {
[INFO] [stdout]     |                    ^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_auth_session`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `calculate` is never used
[INFO] [stdout]    --> src/main.rs:106:10
[INFO] [stdout]     |
[INFO] [stdout] 106 | async fn calculate(auth_session: AuthSession, body: String) -> impl IntoResponse {
[INFO] [stdout]     |          ^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variants `perform_2` and `profession_1` are never constructed
[INFO] [stdout]   --> src/sheet.rs:56:5
[INFO] [stdout]    |
[INFO] [stdout]  9 | pub enum SheetField {
[INFO] [stdout]    |          ---------- variants in this enum
[INFO] [stdout] ...
[INFO] [stdout] 56 |     perform_2,
[INFO] [stdout]    |     ^^^^^^^^^
[INFO] [stdout] 57 |     profession_1,
[INFO] [stdout]    |     ^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `SheetField` 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 `password` is never read
[INFO] [stdout]   --> src/user.rs:50:9
[INFO] [stdout]    |
[INFO] [stdout] 48 | pub struct Credentials {
[INFO] [stdout]    |            ----------- field in this struct
[INFO] [stdout] 49 |     pub username: String,
[INFO] [stdout] 50 |     pub password: String,
[INFO] [stdout]    |         ^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `Credentials` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]   --> src/main.rs:97:5
[INFO] [stdout]    |
[INFO] [stdout] 97 |     deletion_task.await;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout]    = note: `#[warn(unused_must_use)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]    |
[INFO] [stdout] 97 |     let _ = deletion_task.await;
[INFO] [stdout]    |     +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 2.16s
[INFO] running `Command { std: "docker" "inspect" "e27785df492abbb8948cfa2c5c067fe9fb02311b775937969cd670411e66eb86", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "exec" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=warn" "-e" "RUSTDOCFLAGS=--cap-lints=warn" "-w" "/opt/rustwide/workdir" "--user" "0:0" "e27785df492abbb8948cfa2c5c067fe9fb02311b775937969cd670411e66eb86" "/opt/rustwide/cargo-home/bin/cargo" "+1.98.0-beta.1" "test" "--frozen", kill_on_drop: false }`
[INFO] [stderr] warning: unused imports: `Arc`, `Mutex`, and `collections::HashMap`
[INFO] [stderr]  --> src/main.rs:2:5
[INFO] [stderr]   |
[INFO] [stderr] 2 |     collections::HashMap,
[INFO] [stderr]   |     ^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 3 |     sync::{Arc, Mutex},
[INFO] [stderr]   |            ^^^  ^^^^^
[INFO] [stderr]   |
[INFO] [stderr]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `user::*`
[INFO] [stderr]  --> src/sheet.rs:1:27
[INFO] [stderr]   |
[INFO] [stderr] 1 | use crate::{templates::*, user::*};
[INFO] [stderr]   |                           ^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: variant `acrobatics` should have an upper camel case name
[INFO] [stderr]   --> src/sheet.rs:31:5
[INFO] [stderr]    |
[INFO] [stderr] 31 |     acrobatics,
[INFO] [stderr]    |     ^^^^^^^^^^ help: convert the identifier to upper camel case: `Acrobatics`
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(non_camel_case_types)]` (part of `#[warn(nonstandard_style)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: variant `appraise` should have an upper camel case name
[INFO] [stderr]   --> src/sheet.rs:32:5
[INFO] [stderr]    |
[INFO] [stderr] 32 |     appraise,
[INFO] [stderr]    |     ^^^^^^^^ help: convert the identifier to upper camel case: `Appraise`
[INFO] [stderr] 
[INFO] [stderr] warning: variant `bluff` should have an upper camel case name
[INFO] [stderr]   --> src/sheet.rs:33:5
[INFO] [stderr]    |
[INFO] [stderr] 33 |     bluff,
[INFO] [stderr]    |     ^^^^^ help: convert the identifier to upper camel case: `Bluff`
[INFO] [stderr] 
[INFO] [stderr] warning: variant `climb` should have an upper camel case name
[INFO] [stderr]   --> src/sheet.rs:34:5
[INFO] [stderr]    |
[INFO] [stderr] 34 |     climb,
[INFO] [stderr]    |     ^^^^^ help: convert the identifier to upper camel case (notice the capitalization): `Climb`
[INFO] [stderr] 
[INFO] [stderr] warning: variant `craft` should have an upper camel case name
[INFO] [stderr]   --> src/sheet.rs:35:5
[INFO] [stderr]    |
[INFO] [stderr] 35 |     craft,
[INFO] [stderr]    |     ^^^^^ help: convert the identifier to upper camel case (notice the capitalization): `Craft`
[INFO] [stderr] 
[INFO] [stderr] warning: variant `diplomacy` should have an upper camel case name
[INFO] [stderr]   --> src/sheet.rs:36:5
[INFO] [stderr]    |
[INFO] [stderr] 36 |     diplomacy,
[INFO] [stderr]    |     ^^^^^^^^^ help: convert the identifier to upper camel case: `Diplomacy`
[INFO] [stderr] 
[INFO] [stderr] warning: variant `disabledevice` should have an upper camel case name
[INFO] [stderr]   --> src/sheet.rs:37:5
[INFO] [stderr]    |
[INFO] [stderr] 37 |     disabledevice,
[INFO] [stderr]    |     ^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `Disabledevice`
[INFO] [stderr] 
[INFO] [stderr] warning: variant `disguise` should have an upper camel case name
[INFO] [stderr]   --> src/sheet.rs:38:5
[INFO] [stderr]    |
[INFO] [stderr] 38 |     disguise,
[INFO] [stderr]    |     ^^^^^^^^ help: convert the identifier to upper camel case: `Disguise`
[INFO] [stderr] 
[INFO] [stderr] warning: variant `escapeArtist` should have an upper camel case name
[INFO] [stderr]   --> src/sheet.rs:39:5
[INFO] [stderr]    |
[INFO] [stderr] 39 |     escapeArtist,
[INFO] [stderr]    |     ^^^^^^^^^^^^ help: convert the identifier to upper camel case: `EscapeArtist`
[INFO] [stderr] 
[INFO] [stderr] warning: variant `fly` should have an upper camel case name
[INFO] [stderr]   --> src/sheet.rs:40:5
[INFO] [stderr]    |
[INFO] [stderr] 40 |     fly,
[INFO] [stderr]    |     ^^^ help: convert the identifier to upper camel case (notice the capitalization): `Fly`
[INFO] [stderr] 
[INFO] [stderr] warning: variant `handleAnimal` should have an upper camel case name
[INFO] [stderr]   --> src/sheet.rs:41:5
[INFO] [stderr]    |
[INFO] [stderr] 41 |     handleAnimal,
[INFO] [stderr]    |     ^^^^^^^^^^^^ help: convert the identifier to upper camel case: `HandleAnimal`
[INFO] [stderr] 
[INFO] [stderr] warning: variant `heal` should have an upper camel case name
[INFO] [stderr]   --> src/sheet.rs:42:5
[INFO] [stderr]    |
[INFO] [stderr] 42 |     heal,
[INFO] [stderr]    |     ^^^^ help: convert the identifier to upper camel case: `Heal`
[INFO] [stderr] 
[INFO] [stderr] warning: variant `knowledge_arcana` should have an upper camel case name
[INFO] [stderr]   --> src/sheet.rs:43:5
[INFO] [stderr]    |
[INFO] [stderr] 43 |     knowledge_arcana,
[INFO] [stderr]    |     ^^^^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `KnowledgeArcana`
[INFO] [stderr] 
[INFO] [stderr] warning: variant `knowledge_Dungeoneering` should have an upper camel case name
[INFO] [stderr]   --> src/sheet.rs:44:5
[INFO] [stderr]    |
[INFO] [stderr] 44 |     knowledge_Dungeoneering,
[INFO] [stderr]    |     ^^^^^^^^^^^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `KnowledgeDungeoneering`
[INFO] [stderr] 
[INFO] [stderr] warning: variant `knowledge_Engineering` should have an upper camel case name
[INFO] [stderr]   --> src/sheet.rs:45:5
[INFO] [stderr]    |
[INFO] [stderr] 45 |     knowledge_Engineering,
[INFO] [stderr]    |     ^^^^^^^^^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `KnowledgeEngineering`
[INFO] [stderr] 
[INFO] [stderr] warning: variant `knowledge_Geography` should have an upper camel case name
[INFO] [stderr]   --> src/sheet.rs:46:5
[INFO] [stderr]    |
[INFO] [stderr] 46 |     knowledge_Geography,
[INFO] [stderr]    |     ^^^^^^^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `KnowledgeGeography`
[INFO] [stderr] 
[INFO] [stderr] warning: variant `knowledge_history` should have an upper camel case name
[INFO] [stderr]   --> src/sheet.rs:47:5
[INFO] [stderr]    |
[INFO] [stderr] 47 |     knowledge_history,
[INFO] [stderr]    |     ^^^^^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `KnowledgeHistory`
[INFO] [stderr] 
[INFO] [stderr] warning: variant `knowledge_local` should have an upper camel case name
[INFO] [stderr]   --> src/sheet.rs:48:5
[INFO] [stderr]    |
[INFO] [stderr] 48 |     knowledge_local,
[INFO] [stderr]    |     ^^^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `KnowledgeLocal`
[INFO] [stderr] 
[INFO] [stderr] warning: variant `knowledge_nature` should have an upper camel case name
[INFO] [stderr]   --> src/sheet.rs:49:5
[INFO] [stderr]    |
[INFO] [stderr] 49 |     knowledge_nature,
[INFO] [stderr]    |     ^^^^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `KnowledgeNature`
[INFO] [stderr] 
[INFO] [stderr] warning: variant `knowledge_nobility` should have an upper camel case name
[INFO] [stderr]   --> src/sheet.rs:50:5
[INFO] [stderr]    |
[INFO] [stderr] 50 |     knowledge_nobility,
[INFO] [stderr]    |     ^^^^^^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `KnowledgeNobility`
[INFO] [stderr] 
[INFO] [stderr] warning: variant `knowledge_planes` should have an upper camel case name
[INFO] [stderr]   --> src/sheet.rs:51:5
[INFO] [stderr]    |
[INFO] [stderr] 51 |     knowledge_planes,
[INFO] [stderr]    |     ^^^^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `KnowledgePlanes`
[INFO] [stderr] 
[INFO] [stderr] warning: variant `knowledge_religion` should have an upper camel case name
[INFO] [stderr]   --> src/sheet.rs:52:5
[INFO] [stderr]    |
[INFO] [stderr] 52 |     knowledge_religion,
[INFO] [stderr]    |     ^^^^^^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `KnowledgeReligion`
[INFO] [stderr] 
[INFO] [stderr] warning: variant `linguistics` should have an upper camel case name
[INFO] [stderr]   --> src/sheet.rs:53:5
[INFO] [stderr]    |
[INFO] [stderr] 53 |     linguistics,
[INFO] [stderr]    |     ^^^^^^^^^^^ help: convert the identifier to upper camel case: `Linguistics`
[INFO] [stderr] 
[INFO] [stderr] warning: variant `perception` should have an upper camel case name
[INFO] [stderr]   --> src/sheet.rs:54:5
[INFO] [stderr]    |
[INFO] [stderr] 54 |     perception,
[INFO] [stderr]    |     ^^^^^^^^^^ help: convert the identifier to upper camel case: `Perception`
[INFO] [stderr] 
[INFO] [stderr] warning: variant `perform_1` should have an upper camel case name
[INFO] [stderr]   --> src/sheet.rs:55:5
[INFO] [stderr]    |
[INFO] [stderr] 55 |     perform_1,
[INFO] [stderr]    |     ^^^^^^^^^ help: convert the identifier to upper camel case: `Perform1`
[INFO] [stderr] 
[INFO] [stderr] warning: variant `perform_2` should have an upper camel case name
[INFO] [stderr]   --> src/sheet.rs:56:5
[INFO] [stderr]    |
[INFO] [stderr] 56 |     perform_2,
[INFO] [stderr]    |     ^^^^^^^^^ help: convert the identifier to upper camel case: `Perform2`
[INFO] [stderr] 
[INFO] [stderr] warning: variant `profession_1` should have an upper camel case name
[INFO] [stderr]   --> src/sheet.rs:57:5
[INFO] [stderr]    |
[INFO] [stderr] 57 |     profession_1,
[INFO] [stderr]    |     ^^^^^^^^^^^^ help: convert the identifier to upper camel case: `Profession1`
[INFO] [stderr] 
[INFO] [stderr] warning: variant `profession_2` should have an upper camel case name
[INFO] [stderr]   --> src/sheet.rs:58:5
[INFO] [stderr]    |
[INFO] [stderr] 58 |     profession_2,
[INFO] [stderr]    |     ^^^^^^^^^^^^ help: convert the identifier to upper camel case: `Profession2`
[INFO] [stderr] 
[INFO] [stderr] warning: variant `ride` should have an upper camel case name
[INFO] [stderr]   --> src/sheet.rs:59:5
[INFO] [stderr]    |
[INFO] [stderr] 59 |     ride,
[INFO] [stderr]    |     ^^^^ help: convert the identifier to upper camel case: `Ride`
[INFO] [stderr] 
[INFO] [stderr] warning: variant `sense_motive` should have an upper camel case name
[INFO] [stderr]   --> src/sheet.rs:60:5
[INFO] [stderr]    |
[INFO] [stderr] 60 |     sense_motive,
[INFO] [stderr]    |     ^^^^^^^^^^^^ help: convert the identifier to upper camel case: `SenseMotive`
[INFO] [stderr] 
[INFO] [stderr] warning: variant `sleight_of_hand` should have an upper camel case name
[INFO] [stderr]   --> src/sheet.rs:61:5
[INFO] [stderr]    |
[INFO] [stderr] 61 |     sleight_of_hand,
[INFO] [stderr]    |     ^^^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `SleightOfHand`
[INFO] [stderr] 
[INFO] [stderr] warning: variant `spellcraft` should have an upper camel case name
[INFO] [stderr]   --> src/sheet.rs:62:5
[INFO] [stderr]    |
[INFO] [stderr] 62 |     spellcraft,
[INFO] [stderr]    |     ^^^^^^^^^^ help: convert the identifier to upper camel case (notice the capitalization): `Spellcraft`
[INFO] [stderr] 
[INFO] [stderr] warning: variant `stealth` should have an upper camel case name
[INFO] [stderr]   --> src/sheet.rs:63:5
[INFO] [stderr]    |
[INFO] [stderr] 63 |     stealth,
[INFO] [stderr]    |     ^^^^^^^ help: convert the identifier to upper camel case (notice the capitalization): `Stealth`
[INFO] [stderr] 
[INFO] [stderr] warning: variant `survival` should have an upper camel case name
[INFO] [stderr]   --> src/sheet.rs:64:5
[INFO] [stderr]    |
[INFO] [stderr] 64 |     survival,
[INFO] [stderr]    |     ^^^^^^^^ help: convert the identifier to upper camel case (notice the capitalization): `Survival`
[INFO] [stderr] 
[INFO] [stderr] warning: variant `swim` should have an upper camel case name
[INFO] [stderr]   --> src/sheet.rs:65:5
[INFO] [stderr]    |
[INFO] [stderr] 65 |     swim,
[INFO] [stderr]    |     ^^^^ help: convert the identifier to upper camel case (notice the capitalization): `Swim`
[INFO] [stderr] 
[INFO] [stderr] warning: variant `use_magic_device` should have an upper camel case name
[INFO] [stderr]   --> src/sheet.rs:66:5
[INFO] [stderr]    |
[INFO] [stderr] 66 |     use_magic_device,
[INFO] [stderr]    |     ^^^^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `UseMagicDevice`
[INFO] [stderr] 
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]    --> src/sheet.rs:408:13
[INFO] [stderr]     |
[INFO] [stderr] 408 |         let mut class: Class = yaml_serde::from_str(&f).unwrap();
[INFO] [stderr]     |             ----^^^^^
[INFO] [stderr]     |             |
[INFO] [stderr]     |             help: remove this `mut`
[INFO] [stderr]     |
[INFO] [stderr]     = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `auth_session`
[INFO] [stderr]   --> src/main.rs:61:21
[INFO] [stderr]    |
[INFO] [stderr] 61 |         async move |auth_session: AuthSession, body: String| -> Response {
[INFO] [stderr]    |                     ^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_auth_session`
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `auth_session`
[INFO] [stderr]    --> src/main.rs:106:20
[INFO] [stderr]     |
[INFO] [stderr] 106 | async fn calculate(auth_session: AuthSession, body: String) -> impl IntoResponse {
[INFO] [stderr]     |                    ^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_auth_session`
[INFO] [stderr] 
[INFO] [stderr] warning: function `calculate` is never used
[INFO] [stderr]    --> src/main.rs:106:10
[INFO] [stderr]     |
[INFO] [stderr] 106 | async fn calculate(auth_session: AuthSession, body: String) -> impl IntoResponse {
[INFO] [stderr]     |          ^^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: variants `perform_2` and `profession_1` are never constructed
[INFO] [stderr]   --> src/sheet.rs:56:5
[INFO] [stderr]    |
[INFO] [stderr]  9 | pub enum SheetField {
[INFO] [stderr]    |          ---------- variants in this enum
[INFO] [stderr] ...
[INFO] [stderr] 56 |     perform_2,
[INFO] [stderr]    |     ^^^^^^^^^
[INFO] [stderr] 57 |     profession_1,
[INFO] [stderr]    |     ^^^^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `SheetField` has derived impls for the traits `Debug` and `Clone`, but these are intentionally ignored during dead code analysis
[INFO] [stderr] 
[INFO] [stderr] warning: field `password` is never read
[INFO] [stderr]   --> src/user.rs:50:9
[INFO] [stderr]    |
[INFO] [stderr] 48 | pub struct Credentials {
[INFO] [stderr]    |            ----------- field in this struct
[INFO] [stderr] 49 |     pub username: String,
[INFO] [stderr] 50 |     pub password: String,
[INFO] [stderr]    |         ^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `Credentials` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis
[INFO] [stderr] 
[INFO] [stderr] warning: unused `Result` that must be used
[INFO] [stderr]   --> src/main.rs:97:5
[INFO] [stderr]    |
[INFO] [stderr] 97 |     deletion_task.await;
[INFO] [stderr]    |     ^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stderr]    = note: `#[warn(unused_must_use)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] help: use `let _ = ...` to ignore the resulting value
[INFO] [stderr]    |
[INFO] [stderr] 97 |     let _ = deletion_task.await;
[INFO] [stderr]    |     +++++++
[INFO] [stderr] 
[INFO] [stderr] warning: `character-sheet` (bin "character-sheet" test) generated 45 warnings (run `cargo fix --bin "character-sheet" -p character-sheet --tests` to apply 5 suggestions)
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 0.19s
[INFO] [stderr]      Running unittests src/main.rs (/opt/rustwide/target/debug/deps/character_sheet-dafc5611e34c160e)
[INFO] [stdout] 
[INFO] [stdout] running 1 test
[INFO] [stdout] test sheet::test::parse_base_class ... FAILED
[INFO] [stdout] 
[INFO] [stdout] failures:
[INFO] [stdout] 
[INFO] [stdout] ---- sheet::test::parse_base_class stdout ----
[INFO] [stdout] "uuid: ----\nid: base_class\nname: Base\nstats:\n  - id: base_strength\n    name: Base Strength\n  - id: temp_strength\n    name: Temporary Strength\n  - id: strength\n    name: Strength\n    formula:\n      - temp_strength\n      - base_strength + modifiers[strength]\n  - id: strength_modifier\n    name: Strength Modifier\n    formula: strength / 2 - 5\nbab: 0.5\n"
[INFO] [stdout] Class { uuid: "----", id: "base_class", name: "Base", stats: [Stat { id: "base_strength", name: "Base Strength", formula: Static }, Stat { id: "temp_strength", name: "Temporary Strength", formula: Static }, Stat { id: "strength", name: "Strength", formula: Multiple(["temp_strength", "base_strength + modifiers[strength]"]) }, Stat { id: "strength_modifier", name: "Strength Modifier", formula: Single("strength / 2 - 5") }], bab: 0.5 }
[INFO] [stdout] 
[INFO] [stdout] thread 'sheet::test::parse_base_class' (1283) panicked at src/sheet.rs:411:9:
[INFO] [stdout] assertion `left == right` failed
[INFO] [stdout]   left: []
[INFO] [stdout]  right: ["temp_strength", "base_strength"]
[INFO] [stdout] stack backtrace:
[INFO] [stdout]    0:     0x5578d4e26eb1 - std[73adb7dc35730857]::backtrace_rs::backtrace::libunwind::trace
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/../../backtrace/src/backtrace/libunwind.rs:117:9
[INFO] [stdout]    1:     0x5578d4e26eb1 - std[73adb7dc35730857]::backtrace_rs::backtrace::trace_unsynchronized::<std[73adb7dc35730857]::sys::backtrace::_print_fmt::{closure#1}>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/../../backtrace/src/backtrace/mod.rs:66:14
[INFO] [stdout]    2:     0x5578d4e26eb1 - std[73adb7dc35730857]::sys::backtrace::_print_fmt
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/sys/backtrace.rs:74:9
[INFO] [stdout]    3:     0x5578d4e26eb1 - <<std[73adb7dc35730857]::sys::backtrace::BacktraceLock>::print::DisplayBacktrace as core[6883ba1bc0fe4ed1]::fmt::Display>::fmt
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/sys/backtrace.rs:44:26
[INFO] [stdout]    4:     0x5578d4e3da4a - <core[6883ba1bc0fe4ed1]::fmt::rt::Argument>::fmt
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/fmt/rt.rs:152:76
[INFO] [stdout]    5:     0x5578d4e3da4a - core[6883ba1bc0fe4ed1]::fmt::write
[INFO] [stdout]    6:     0x5578d4e2b36c - std[73adb7dc35730857]::io::default_write_fmt::<alloc[55a36b64bcbf2c0d]::vec::Vec<u8>>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/io/mod.rs:626:11
[INFO] [stdout]    7:     0x5578d4e2b36c - <alloc[55a36b64bcbf2c0d]::vec::Vec<u8> as std[73adb7dc35730857]::io::Write>::write_fmt
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/io/mod.rs:1730:13
[INFO] [stdout]    8:     0x5578d4e052b6 - <std[73adb7dc35730857]::sys::backtrace::BacktraceLock>::print
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/sys/backtrace.rs:47:9
[INFO] [stdout]    9:     0x5578d4e052b6 - std[73adb7dc35730857]::panicking::default_hook::{closure#0}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:292:27
[INFO] [stdout]   10:     0x5578d4e1ed69 - std[73adb7dc35730857]::panicking::default_hook
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:316:9
[INFO] [stdout]   11:     0x5578d4ab4ae0 - <alloc[55a36b64bcbf2c0d]::boxed::Box<dyn for<'a, 'b> core[6883ba1bc0fe4ed1]::ops::function::Fn<(&'a std[73adb7dc35730857]::panic::PanicHookInfo<'b>,), Output = ()> + core[6883ba1bc0fe4ed1]::marker::Send + core[6883ba1bc0fe4ed1]::marker::Sync> as core[6883ba1bc0fe4ed1]::ops::function::Fn<(&std[73adb7dc35730857]::panic::PanicHookInfo,)>>::call
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/alloc/src/boxed.rs:2333:9
[INFO] [stdout]   12:     0x5578d4ab4ae0 - test[980ffaebd391d06d]::test_main_inner::<test[980ffaebd391d06d]::test_main_static::{closure#0}>::{closure#0}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/test/src/lib.rs:155:21
[INFO] [stdout]   13:     0x5578d4e1ef22 - <alloc[55a36b64bcbf2c0d]::boxed::Box<dyn for<'a, 'b> core[6883ba1bc0fe4ed1]::ops::function::Fn<(&'a std[73adb7dc35730857]::panic::PanicHookInfo<'b>,), Output = ()> + core[6883ba1bc0fe4ed1]::marker::Send + core[6883ba1bc0fe4ed1]::marker::Sync> as core[6883ba1bc0fe4ed1]::ops::function::Fn<(&std[73adb7dc35730857]::panic::PanicHookInfo,)>>::call
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/alloc/src/boxed.rs:2333:9
[INFO] [stdout]   14:     0x5578d4e1ef22 - std[73adb7dc35730857]::panicking::panic_with_hook
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:823:13
[INFO] [stdout]   15:     0x5578d4e05362 - std[73adb7dc35730857]::panicking::panic_handler::{closure#0}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:688:13
[INFO] [stdout]   16:     0x5578d4dfcb39 - std[73adb7dc35730857]::sys::backtrace::__rust_end_short_backtrace::<std[73adb7dc35730857]::panicking::panic_handler::{closure#0}, !>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/sys/backtrace.rs:182:18
[INFO] [stdout]   17:     0x5578d4e05f5d - __rustc[a7b7b02e776dd976]::rust_begin_unwind
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:679:5
[INFO] [stdout]   18:     0x5578d4e3e2cc - core[6883ba1bc0fe4ed1]::panicking::panic_fmt
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/panicking.rs:80:14
[INFO] [stdout]   19:     0x5578d4e3e183 - core[6883ba1bc0fe4ed1]::panicking::assert_failed_inner
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/panicking.rs:439:17
[INFO] [stdout]   20:     0x5578d4a47b62 - core[6883ba1bc0fe4ed1]::panicking::assert_failed::<alloc[55a36b64bcbf2c0d]::vec::Vec<alloc[55a36b64bcbf2c0d]::string::String>, alloc[55a36b64bcbf2c0d]::vec::Vec<&str>>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/panicking.rs:394:5
[INFO] [stdout]   21:     0x5578d4a4ddb2 - character_sheet[2db98c7e24dffeae]::sheet::test::parse_base_class
[INFO] [stdout]                                at /opt/rustwide/workdir/src/sheet.rs:411:9
[INFO] [stdout]   22:     0x5578d4a4a5e7 - character_sheet[2db98c7e24dffeae]::sheet::test::parse_base_class::{closure#0}
[INFO] [stdout]                                at /opt/rustwide/workdir/src/sheet.rs:404:26
[INFO] [stdout]   23:     0x5578d4a55296 - <character_sheet[2db98c7e24dffeae]::sheet::test::parse_base_class::{closure#0} as core[6883ba1bc0fe4ed1]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   24:     0x5578d4aa7e1b - <fn() -> core[6883ba1bc0fe4ed1]::result::Result<(), alloc[55a36b64bcbf2c0d]::string::String> as core[6883ba1bc0fe4ed1]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   25:     0x5578d4aa7e1b - test[980ffaebd391d06d]::__rust_begin_short_backtrace::<core[6883ba1bc0fe4ed1]::result::Result<(), alloc[55a36b64bcbf2c0d]::string::String>, fn() -> core[6883ba1bc0fe4ed1]::result::Result<(), alloc[55a36b64bcbf2c0d]::string::String>>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/test/src/lib.rs:724:18
[INFO] [stdout]   26:     0x5578d4ab5465 - test[980ffaebd391d06d]::run_test_in_process::{closure#0}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/test/src/lib.rs:747:74
[INFO] [stdout]   27:     0x5578d4ab5465 - <core[6883ba1bc0fe4ed1]::panic::unwind_safe::AssertUnwindSafe<test[980ffaebd391d06d]::run_test_in_process::{closure#0}> as core[6883ba1bc0fe4ed1]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/panic/unwind_safe.rs:275:9
[INFO] [stdout]   28:     0x5578d4ab5465 - std[73adb7dc35730857]::panicking::catch_unwind::do_call::<core[6883ba1bc0fe4ed1]::panic::unwind_safe::AssertUnwindSafe<test[980ffaebd391d06d]::run_test_in_process::{closure#0}>, core[6883ba1bc0fe4ed1]::result::Result<(), alloc[55a36b64bcbf2c0d]::string::String>>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:576:43
[INFO] [stdout]   29:     0x5578d4ab5465 - std[73adb7dc35730857]::panicking::catch_unwind::<core[6883ba1bc0fe4ed1]::result::Result<(), alloc[55a36b64bcbf2c0d]::string::String>, core[6883ba1bc0fe4ed1]::panic::unwind_safe::AssertUnwindSafe<test[980ffaebd391d06d]::run_test_in_process::{closure#0}>>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:544:19
[INFO] [stdout]   30:     0x5578d4ab5465 - std[73adb7dc35730857]::panic::catch_unwind::<core[6883ba1bc0fe4ed1]::panic::unwind_safe::AssertUnwindSafe<test[980ffaebd391d06d]::run_test_in_process::{closure#0}>, core[6883ba1bc0fe4ed1]::result::Result<(), alloc[55a36b64bcbf2c0d]::string::String>>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panic.rs:359:14
[INFO] [stdout]   31:     0x5578d4ab5465 - test[980ffaebd391d06d]::run_test_in_process
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/test/src/lib.rs:747:27
[INFO] [stdout]   32:     0x5578d4ab5465 - test[980ffaebd391d06d]::run_test::{closure#0}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/test/src/lib.rs:668:43
[INFO] [stdout]   33:     0x5578d4aaff14 - test[980ffaebd391d06d]::run_test::{closure#1}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/test/src/lib.rs:698:41
[INFO] [stdout]   34:     0x5578d4aaff14 - std[73adb7dc35730857]::sys::backtrace::__rust_begin_short_backtrace::<test[980ffaebd391d06d]::run_test::{closure#1}, ()>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/sys/backtrace.rs:166:18
[INFO] [stdout]   35:     0x5578d4ab85b2 - std[73adb7dc35730857]::thread::lifecycle::spawn_unchecked::<test[980ffaebd391d06d]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/thread/lifecycle.rs:70:13
[INFO] [stdout]   36:     0x5578d4ab85b2 - <core[6883ba1bc0fe4ed1]::panic::unwind_safe::AssertUnwindSafe<std[73adb7dc35730857]::thread::lifecycle::spawn_unchecked<test[980ffaebd391d06d]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}> as core[6883ba1bc0fe4ed1]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/panic/unwind_safe.rs:275:9
[INFO] [stdout]   37:     0x5578d4ab85b2 - std[73adb7dc35730857]::panicking::catch_unwind::do_call::<core[6883ba1bc0fe4ed1]::panic::unwind_safe::AssertUnwindSafe<std[73adb7dc35730857]::thread::lifecycle::spawn_unchecked<test[980ffaebd391d06d]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}>, ()>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:576:43
[INFO] [stdout]   38:     0x5578d4ab85b2 - std[73adb7dc35730857]::panicking::catch_unwind::<(), core[6883ba1bc0fe4ed1]::panic::unwind_safe::AssertUnwindSafe<std[73adb7dc35730857]::thread::lifecycle::spawn_unchecked<test[980ffaebd391d06d]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}>>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:544:19
[INFO] [stdout]   39:     0x5578d4ab85b2 - std[73adb7dc35730857]::panic::catch_unwind::<core[6883ba1bc0fe4ed1]::panic::unwind_safe::AssertUnwindSafe<std[73adb7dc35730857]::thread::lifecycle::spawn_unchecked<test[980ffaebd391d06d]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}>, ()>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panic.rs:359:14
[INFO] [stdout]   40:     0x5578d4ab85b2 - std[73adb7dc35730857]::thread::lifecycle::spawn_unchecked::<test[980ffaebd391d06d]::run_test::{closure#1}, ()>::{closure#1}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/thread/lifecycle.rs:68:26
[INFO] [stdout]   41:     0x5578d4ab85b2 - <std[73adb7dc35730857]::thread::lifecycle::spawn_unchecked<test[980ffaebd391d06d]::run_test::{closure#1}, ()>::{closure#1} as core[6883ba1bc0fe4ed1]::ops::function::FnOnce<()>>::call_once::{shim:vtable#0}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   42:     0x5578d4e263cf - <alloc[55a36b64bcbf2c0d]::boxed::Box<dyn core[6883ba1bc0fe4ed1]::ops::function::FnOnce<(), Output = ()> + core[6883ba1bc0fe4ed1]::marker::Send> as core[6883ba1bc0fe4ed1]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/alloc/src/boxed.rs:2319:9
[INFO] [stdout]   43:     0x5578d4e263cf - <std[73adb7dc35730857]::sys::thread::unix::Thread>::new::thread_start
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/sys/thread/unix.rs:123:17
[INFO] [stdout]   44:     0x731ee6c0eaa4 - <unknown>
[INFO] [stdout]   45:     0x731ee6c9ba64 - clone
[INFO] [stdout]   46:                0x0 - <unknown>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] failures:
[INFO] [stdout]     sheet::test::parse_base_class
[INFO] [stdout] 
[INFO] [stdout] test result: FAILED. 0 passed; 1 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.08s
[INFO] [stdout] 
[INFO] [stderr] error: test failed, to rerun pass `--bin character-sheet`
[INFO] running `Command { std: "docker" "inspect" "e27785df492abbb8948cfa2c5c067fe9fb02311b775937969cd670411e66eb86", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "e27785df492abbb8948cfa2c5c067fe9fb02311b775937969cd670411e66eb86", kill_on_drop: false }`
[INFO] [stdout] e27785df492abbb8948cfa2c5c067fe9fb02311b775937969cd670411e66eb86
