[INFO] fetching crate chatd 0.2.0... [INFO] testing chatd-0.2.0 against beta-2024-09-05 for beta-1.82-1 [INFO] extracting crate chatd 0.2.0 into /workspace/builds/worker-5-tc2/source [INFO] validating manifest of crates.io crate chatd 0.2.0 on toolchain beta-2024-09-05 [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+beta-2024-09-05" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] started tweaking crates.io crate chatd 0.2.0 [INFO] finished tweaking crates.io crate chatd 0.2.0 [INFO] tweaked toml for crates.io crate chatd 0.2.0 written to /workspace/builds/worker-5-tc2/source/Cargo.toml [INFO] crate crates.io crate chatd 0.2.0 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" "+beta-2024-09-05" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:96c0aa5895ecf336b730ef27bcdde6e21027415df19888aad3cf1448e5d65d90" "/opt/rustwide/cargo-home/bin/cargo" "+beta-2024-09-05" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] e5f560517ed89b7e718238d8a09dbc87ad34c47529deabce12607d2da7afe149 [INFO] running `Command { std: "docker" "start" "-a" "e5f560517ed89b7e718238d8a09dbc87ad34c47529deabce12607d2da7afe149", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "e5f560517ed89b7e718238d8a09dbc87ad34c47529deabce12607d2da7afe149", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "e5f560517ed89b7e718238d8a09dbc87ad34c47529deabce12607d2da7afe149", kill_on_drop: false }` [INFO] [stdout] e5f560517ed89b7e718238d8a09dbc87ad34c47529deabce12607d2da7afe149 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=warn" "-e" "RUSTDOCFLAGS=--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" "ghcr.io/rust-lang/crates-build-env/linux@sha256:96c0aa5895ecf336b730ef27bcdde6e21027415df19888aad3cf1448e5d65d90" "/opt/rustwide/cargo-home/bin/cargo" "+beta-2024-09-05" "build" "--frozen" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] 65a56ac9a827def6c05849b739400a8ade3233aef36378ea088c87172f3de51a [INFO] running `Command { std: "docker" "start" "-a" "65a56ac9a827def6c05849b739400a8ade3233aef36378ea088c87172f3de51a", kill_on_drop: false }` [INFO] [stderr] Compiling version_check v0.9.5 [INFO] [stderr] Compiling subtle v2.6.1 [INFO] [stderr] Compiling const-oid v0.9.6 [INFO] [stderr] Compiling cpufeatures v0.2.12 [INFO] [stderr] Compiling base64ct v1.6.0 [INFO] [stderr] Compiling libm v0.2.8 [INFO] [stderr] Compiling byteorder v1.5.0 [INFO] [stderr] Compiling serde v1.0.205 [INFO] [stderr] Compiling num-traits v0.2.19 [INFO] [stderr] Compiling semver v1.0.23 [INFO] [stderr] Compiling getrandom v0.2.15 [INFO] [stderr] Compiling slab v0.4.9 [INFO] [stderr] Compiling pin-project-lite v0.2.14 [INFO] [stderr] Compiling opaque-debug v0.3.1 [INFO] [stderr] Compiling futures-core v0.3.30 [INFO] [stderr] Compiling syn v2.0.72 [INFO] [stderr] Compiling signal-hook-registry v1.4.2 [INFO] [stderr] Compiling futures-sink v0.3.30 [INFO] [stderr] Compiling num-bigint-dig v0.8.4 [INFO] [stderr] Compiling futures-channel v0.3.30 [INFO] [stderr] Compiling futures-io v0.3.30 [INFO] [stderr] Compiling futures-task v0.3.30 [INFO] [stderr] Compiling rand_core v0.6.4 [INFO] [stderr] Compiling lazy_static v1.5.0 [INFO] [stderr] Compiling pem-rfc7468 v0.7.0 [INFO] [stderr] Compiling hashbrown v0.14.5 [INFO] [stderr] Compiling socket2 v0.5.7 [INFO] [stderr] Compiling option-ext v0.2.0 [INFO] [stderr] Compiling ff v0.13.0 [INFO] [stderr] Compiling generic-array v0.14.7 [INFO] [stderr] Compiling crossbeam-utils v0.8.20 [INFO] [stderr] Compiling syn v1.0.109 [INFO] [stderr] Compiling signal-hook v0.3.17 [INFO] [stderr] Compiling bytes v1.7.1 [INFO] [stderr] Compiling dirs-sys v0.4.1 [INFO] [stderr] Compiling anstyle-parse v0.2.5 [INFO] [stderr] Compiling der v0.7.9 [INFO] [stderr] Compiling group v0.13.0 [INFO] [stderr] Compiling password-hash v0.4.2 [INFO] [stderr] Compiling rustc_version v0.4.0 [INFO] [stderr] Compiling destructure_traitobject v0.2.0 [INFO] [stderr] Compiling serde_json v1.0.122 [INFO] [stderr] Compiling anstyle-query v1.1.1 [INFO] [stderr] Compiling is_terminal_polyfill v1.70.1 [INFO] [stderr] Compiling anyhow v1.0.86 [INFO] [stderr] Compiling rustix v0.38.34 [INFO] [stderr] Compiling anstyle v1.0.8 [INFO] [stderr] Compiling ryu v1.0.18 [INFO] [stderr] Compiling portable-atomic v1.7.0 [INFO] [stderr] Compiling colorchoice v1.0.2 [INFO] [stderr] Compiling curve25519-dalek v4.1.3 [INFO] [stderr] Compiling itoa v1.0.11 [INFO] [stderr] Compiling anstream v0.6.15 [INFO] [stderr] Compiling indexmap v2.3.0 [INFO] [stderr] Compiling unsafe-any-ors v1.0.0 [INFO] [stderr] Compiling dirs v5.0.1 [INFO] [stderr] Compiling raw-cpuid v11.1.0 [INFO] [stderr] Compiling russh-cryptovec v0.7.3 [INFO] [stderr] Compiling aho-corasick v1.1.3 [INFO] [stderr] Compiling md5 v0.7.0 [INFO] [stderr] Compiling data-encoding v2.6.0 [INFO] [stderr] Compiling crypto-common v0.1.6 [INFO] [stderr] Compiling block-buffer v0.10.4 [INFO] [stderr] Compiling block-padding v0.3.3 [INFO] [stderr] Compiling crypto-bigint v0.5.5 [INFO] [stderr] Compiling universal-hash v0.5.1 [INFO] [stderr] Compiling aead v0.5.2 [INFO] [stderr] Compiling unsafe-libyaml v0.2.11 [INFO] [stderr] Compiling digest v0.10.7 [INFO] [stderr] Compiling inout v0.1.3 [INFO] [stderr] Compiling polyval v0.6.2 [INFO] [stderr] Compiling cipher v0.4.4 [INFO] [stderr] Compiling poly1305 v0.8.0 [INFO] [stderr] Compiling hmac v0.12.1 [INFO] [stderr] Compiling sha2 v0.10.8 [INFO] [stderr] Compiling spki v0.7.3 [INFO] [stderr] Compiling pbkdf2 v0.12.2 [INFO] [stderr] Compiling signature v2.2.0 [INFO] [stderr] Compiling hkdf v0.12.4 [INFO] [stderr] Compiling aes v0.8.4 [INFO] [stderr] Compiling cbc v0.1.2 [INFO] [stderr] Compiling salsa20 v0.10.2 [INFO] [stderr] Compiling num-integer v0.1.46 [INFO] [stderr] Compiling rfc6979 v0.4.0 [INFO] [stderr] Compiling ctr v0.9.2 [INFO] [stderr] Compiling ghash v0.5.1 [INFO] [stderr] Compiling chacha20 v0.9.1 [INFO] [stderr] Compiling scrypt v0.11.0 [INFO] [stderr] Compiling ssh-encoding v0.2.0 [INFO] [stderr] Compiling blowfish v0.9.1 [INFO] [stderr] Compiling num-iter v0.1.45 [INFO] [stderr] Compiling pbkdf2 v0.11.0 [INFO] [stderr] Compiling ordered-float v2.10.1 [INFO] [stderr] Compiling bcrypt-pbkdf v0.10.0 [INFO] [stderr] Compiling sha1 v0.10.6 [INFO] [stderr] Compiling clap_lex v0.7.2 [INFO] [stderr] Compiling pkcs5 v0.7.1 [INFO] [stderr] Compiling aes-gcm v0.10.3 [INFO] [stderr] Compiling strsim v0.11.1 [INFO] [stderr] Compiling ssh-cipher v0.2.0 [INFO] [stderr] Compiling regex-syntax v0.8.4 [INFO] [stderr] Compiling chrono v0.4.38 [INFO] [stderr] Compiling typemap-ors v1.0.0 [INFO] [stderr] Compiling dashmap v5.5.3 [INFO] [stderr] Compiling clap_builder v4.5.13 [INFO] [stderr] Compiling pkcs8 v0.10.2 [INFO] [stderr] Compiling sec1 v0.7.3 [INFO] [stderr] Compiling pkcs1 v0.7.5 [INFO] [stderr] Compiling ed25519 v2.2.3 [INFO] [stderr] Compiling quanta v0.12.3 [INFO] [stderr] Compiling spinning_top v0.3.0 [INFO] [stderr] Compiling thread-id v4.2.2 [INFO] [stderr] Compiling no-std-compat v0.4.1 [INFO] [stderr] Compiling elliptic-curve v0.13.8 [INFO] [stderr] Compiling arc-swap v1.7.1 [INFO] [stderr] Compiling futures-timer v3.0.3 [INFO] [stderr] Compiling hex-literal v0.4.1 [INFO] [stderr] Compiling nonzero_ext v0.3.0 [INFO] [stderr] Compiling humantime v2.1.0 [INFO] [stderr] Compiling log-mdc v0.1.0 [INFO] [stderr] Compiling circular-buffer v0.1.7 [INFO] [stderr] Compiling terminal-keycode v1.1.1 [INFO] [stderr] Compiling ecdsa v0.16.9 [INFO] [stderr] Compiling primeorder v0.13.6 [INFO] [stderr] Compiling derivative v2.2.0 [INFO] [stderr] Compiling p521 v0.13.3 [INFO] [stderr] Compiling p384 v0.13.0 [INFO] [stderr] Compiling p256 v0.13.2 [INFO] [stderr] Compiling serde_derive v1.0.205 [INFO] [stderr] Compiling zerocopy-derive v0.7.35 [INFO] [stderr] Compiling futures-macro v0.3.30 [INFO] [stderr] Compiling curve25519-dalek-derive v0.1.1 [INFO] [stderr] Compiling tokio-macros v2.4.0 [INFO] [stderr] Compiling thiserror-impl v1.0.63 [INFO] [stderr] Compiling async-trait v0.1.81 [INFO] [stderr] Compiling strum_macros v0.26.4 [INFO] [stderr] Compiling clap_derive v4.5.13 [INFO] [stderr] Compiling enum_dispatch v0.3.13 [INFO] [stderr] Compiling regex-automata v0.4.7 [INFO] [stderr] Compiling futures-util v0.3.30 [INFO] [stderr] Compiling zerocopy v0.7.35 [INFO] [stderr] Compiling thiserror v1.0.63 [INFO] [stderr] Compiling ppv-lite86 v0.2.20 [INFO] [stderr] Compiling ed25519-dalek v2.1.1 [INFO] [stderr] Compiling rand_chacha v0.3.1 [INFO] [stderr] Compiling clap v4.5.13 [INFO] [stderr] Compiling rand v0.8.5 [INFO] [stderr] Compiling strum v0.26.3 [INFO] [stderr] Compiling regex v1.10.6 [INFO] [stderr] Compiling num-bigint v0.4.6 [INFO] [stderr] Compiling futures-executor v0.3.30 [INFO] [stderr] Compiling rsa v0.9.6 [INFO] [stderr] Compiling futures v0.3.30 [INFO] [stderr] Compiling governor v0.6.3 [INFO] [stderr] Compiling ssh-key v0.6.6 [INFO] [stderr] Compiling log v0.4.22 [INFO] [stderr] Compiling serde_yaml v0.9.34+deprecated [INFO] [stderr] Compiling serde-value v0.7.0 [INFO] [stderr] Compiling mio v1.0.1 [INFO] [stderr] Compiling tokio v1.39.2 [INFO] [stderr] Compiling signal-hook-mio v0.2.4 [INFO] [stderr] Compiling crossterm v0.28.1 [INFO] [stderr] Compiling log4rs v1.3.0 [INFO] [stderr] Compiling tokio-stream v0.1.15 [INFO] [stderr] Compiling russh-keys v0.44.0 [INFO] [stderr] Compiling russh v0.44.0 [INFO] [stderr] Compiling chatd v0.2.0 (/opt/rustwide/workdir) [INFO] [stderr] Finished `dev` profile [unoptimized + debuginfo] target(s) in 29.77s [INFO] running `Command { std: "docker" "inspect" "65a56ac9a827def6c05849b739400a8ade3233aef36378ea088c87172f3de51a", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "65a56ac9a827def6c05849b739400a8ade3233aef36378ea088c87172f3de51a", kill_on_drop: false }` [INFO] [stdout] 65a56ac9a827def6c05849b739400a8ade3233aef36378ea088c87172f3de51a [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=warn" "-e" "RUSTDOCFLAGS=--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" "ghcr.io/rust-lang/crates-build-env/linux@sha256:96c0aa5895ecf336b730ef27bcdde6e21027415df19888aad3cf1448e5d65d90" "/opt/rustwide/cargo-home/bin/cargo" "+beta-2024-09-05" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] 56a94da1695277430166113c5636923020dc4006998e0b0ead5a8ac0a17e2fbe [INFO] running `Command { std: "docker" "start" "-a" "56a94da1695277430166113c5636923020dc4006998e0b0ead5a8ac0a17e2fbe", kill_on_drop: false }` [INFO] [stderr] Compiling aho-corasick v1.1.3 [INFO] [stderr] Compiling rustix v0.38.34 [INFO] [stderr] Compiling crossbeam-epoch v0.9.18 [INFO] [stderr] Compiling bstr v1.10.0 [INFO] [stderr] Compiling predicates-core v1.0.8 [INFO] [stderr] Compiling walkdir v2.5.0 [INFO] [stderr] Compiling termtree v0.4.1 [INFO] [stderr] Compiling difflib v0.4.0 [INFO] [stderr] Compiling mockall_derive v0.13.0 [INFO] [stderr] Compiling doc-comment v0.3.3 [INFO] [stderr] Compiling unic-common v0.9.0 [INFO] [stderr] Compiling fastrand v2.1.0 [INFO] [stderr] Compiling unic-char-range v0.9.0 [INFO] [stderr] Compiling fragile v2.0.0 [INFO] [stderr] Compiling downcast v0.11.0 [INFO] [stderr] Compiling unic-ucd-version v0.9.0 [INFO] [stderr] Compiling predicates-tree v1.0.11 [INFO] [stderr] Compiling unic-char-property v0.9.0 [INFO] [stderr] Compiling unic-emoji-char v0.9.0 [INFO] [stderr] Compiling crossbeam-deque v0.8.5 [INFO] [stderr] Compiling predicates v3.1.2 [INFO] [stderr] Compiling regex-automata v0.4.7 [INFO] [stderr] Compiling tempfile v3.12.0 [INFO] [stderr] Compiling crossterm v0.28.1 [INFO] [stderr] Compiling mockall v0.13.0 [INFO] [stderr] Compiling globset v0.4.14 [INFO] [stderr] Compiling regex v1.10.6 [INFO] [stderr] Compiling ignore v0.4.22 [INFO] [stderr] Compiling globwalk v0.9.1 [INFO] [stderr] Compiling assert_fs v1.1.2 [INFO] [stderr] Compiling chatd v0.2.0 (/opt/rustwide/workdir) [INFO] [stderr] Finished `test` profile [unoptimized + debuginfo] target(s) in 21.81s [INFO] running `Command { std: "docker" "inspect" "56a94da1695277430166113c5636923020dc4006998e0b0ead5a8ac0a17e2fbe", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "56a94da1695277430166113c5636923020dc4006998e0b0ead5a8ac0a17e2fbe", kill_on_drop: false }` [INFO] [stdout] 56a94da1695277430166113c5636923020dc4006998e0b0ead5a8ac0a17e2fbe [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=warn" "-e" "RUSTDOCFLAGS=--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" "ghcr.io/rust-lang/crates-build-env/linux@sha256:96c0aa5895ecf336b730ef27bcdde6e21027415df19888aad3cf1448e5d65d90" "/opt/rustwide/cargo-home/bin/cargo" "+beta-2024-09-05" "test" "--frozen", kill_on_drop: false }` [INFO] [stdout] a8c22ba49b155542e1771e89d7c6154cdedb1b1702d68a585cc28d4ee12c0723 [INFO] running `Command { std: "docker" "start" "-a" "a8c22ba49b155542e1771e89d7c6154cdedb1b1702d68a585cc28d4ee12c0723", kill_on_drop: false }` [INFO] [stderr] Finished `test` profile [unoptimized + debuginfo] target(s) in 0.29s [INFO] [stderr] Running unittests src/main.rs (/opt/rustwide/target/debug/deps/chatd-234843fff79572e4) [INFO] [stdout] [INFO] [stdout] running 314 tests [INFO] [stdout] test auth::auth::tests::test_display_no_oplist ... ok [INFO] [stdout] test auth::auth::tests::test_display_no_whitelist ... ok [INFO] [stdout] test auth::auth::tests::test_check_bans ... ok [INFO] [stdout] test auth::auth::tests::test_banned ... ok [INFO] [stdout] test auth::auth::tests::test_clear_trusted_keys ... ok [INFO] [stdout] test auth::auth::tests::test_enable_disable_whitelist_mode ... ok [INFO] [stdout] test auth::auth::tests::test_clear_operators ... ok [INFO] [stdout] test auth::auth::tests::test_display_load_keys_error ... ok [INFO] [stdout] test auth::auth::tests::test_add_remove_trusted_keys ... ok [INFO] [stdout] test auth::auth::tests::test_add_remove_operator ... ok [INFO] [stdout] test auth::auth::tests::test_display_save_keys_error ... ok [INFO] [stdout] test auth::auth::tests::test_get_trusted_keys ... ok [INFO] [stdout] test auth::auth::tests::test_get_operators ... ok [INFO] [stdout] test auth::auth::tests::test_is_op ... ok [INFO] [stdout] test auth::auth::tests::test_is_trusted ... ok [INFO] [stdout] test auth::auth::tests::test_save_trusted_keys_no_whitelist ... ok [INFO] [stdout] test auth::auth::tests::test_set_oplist ... ok [INFO] [stdout] test auth::auth::tests::test_set_whitelist ... ok [INFO] [stdout] test auth::auth::tests::test_load_trusted_keys_no_whitelist ... ok [INFO] [stdout] test auth::ban::tests::test_attribute_valid_fingerprint_attribute ... ok [INFO] [stdout] test auth::ban::tests::test_attribute_valid_name_attribute ... ok [INFO] [stdout] test auth::ban::tests::test_ban_duration_empty_duration_string ... ok [INFO] [stdout] test auth::ban::tests::test_attribute_invalid_attribute_format ... ok [INFO] [stdout] test auth::auth::tests::test_load_operators_no_oplist ... ok [INFO] [stdout] test auth::ban::tests::test_ban_duration_invalid_duration_string ... ok [INFO] [stdout] test auth::ban::tests::test_ban_duration_valid_duration_hours ... ok [INFO] [stdout] test auth::ban::tests::test_attribute_unknown_attribute ... ok [INFO] [stdout] test auth::ban::tests::test_attribute_valid_ip_attribute ... ok [INFO] [stdout] test auth::auth::tests::test_save_operators_success ... ok [INFO] [stdout] test auth::auth::tests::test_load_operators_success ... ok [INFO] [stdout] test auth::auth::tests::test_save_trusted_keys_success ... ok [INFO] [stdout] test auth::ban::tests::test_ban_duration_valid_duration_minutes ... ok [INFO] [stdout] test auth::auth::tests::test_save_operators_no_oplist ... ok [INFO] [stdout] test auth::ban::tests::test_ban_duration_valid_duration_seconds ... ok [INFO] [stdout] test auth::ban::tests::test_ban_query_invalid_duration_format ... ok [INFO] [stdout] test auth::pubkey_file_manager::tests::test_save_error_display_no_keys_error ... ok [INFO] [stdout] test auth::ban::tests::test_ban_query_multiple ... ok [INFO] [stdout] test auth::ban::tests::test_ban_query_missing_attribute_duration_for_multiple ... ok [INFO] [stdout] test auth::pubkey_file_manager::tests::test_save_keys_encode_error ... ok [INFO] [stdout] test auth::ban::tests::test_ban_query_unknown_attribute_format ... ok [INFO] [stdout] test auth::pubkey_file_manager::tests::test_load_error_display_io_error ... ok [INFO] [stdout] test auth::pubkey_file_manager::tests::test_load_error_display_no_keys_error ... ok [INFO] [stdout] test auth::pubkey_file_manager::tests::test_load_keys_io_error ... ok [INFO] [stdout] test auth::ban::tests::test_ban_query_missing_duration_for_single ... ok [INFO] [stdout] test auth::pubkey_file_manager::tests::test_save_error_display_encode_error ... ok [INFO] [stdout] test auth::ban::tests::test_ban_query_single ... ok [INFO] [stdout] test auth::set::tests::test_insert_and_iterate_within_expiration ... ok [INFO] [stdout] test auth::pubkey_file_manager::tests::test_save_error_display_io_error ... ok [INFO] [stdout] test chat::command::command::should::fail_to_parse_ban_command_without_args ... ok [INFO] [stdout] test auth::pubkey_file_manager::tests::test_load_keys_no_keys_error ... ok [INFO] [stdout] test chat::command::command::should::fail_to_parse_invalid_command ... ok [INFO] [stdout] test auth::pubkey_file_manager::tests::test_save_keys_io_error ... ok [INFO] [stdout] test chat::command::command::should::fail_to_parse_kick_command_without_args ... ok [INFO] [stdout] test chat::command::command::should::fail_to_parse_away_command_without_args ... ok [INFO] [stdout] test chat::command::command::should::fail_to_parse_msg_command_without_args ... ok [INFO] [stdout] test chat::command::command::should::fail_to_parse_mute_command_without_args ... ok [INFO] [stdout] test auth::auth::tests::test_load_trusted_keys_success ... ok [INFO] [stdout] test auth::pubkey_file_manager::tests::test_save_keys_content_truncate ... ok [INFO] [stdout] test auth::pubkey_file_manager::tests::test_save_keys_no_keys_error ... ok [INFO] [stdout] test chat::command::command::should::fail_to_parse_reply_command_without_args ... ok [INFO] [stdout] test chat::command::command::should::fail_to_parse_unignore_command_without_args ... ok [INFO] [stdout] test chat::command::command::should::fail_to_parse_whois_command_without_args ... ok [INFO] [stdout] test chat::command::command::should::fail_to_parse_timestamp_command_with_invalid_mode ... ok [INFO] [stdout] test chat::command::command::should::parse_back_command ... ok [INFO] [stdout] test chat::command::command::should::parse_ban_command ... ok [INFO] [stdout] test chat::command::command::should::parse_banned_command ... ok [INFO] [stdout] test chat::command::command::should::parse_focus_command_with_args ... ok [INFO] [stdout] test chat::command::command::should::fail_to_parse_name_command_without_args ... ok [INFO] [stdout] test chat::command::command::should::parse_exit_command ... ok [INFO] [stdout] test chat::command::command::should::parse_help_command ... ok [INFO] [stdout] test chat::command::command::should::fail_to_parse_theme_command_with_invalid_theme ... ok [INFO] [stdout] test auth::pubkey_file_manager::tests::test_save_keys_success ... ok [INFO] [stdout] test chat::command::command::should::parse_away_command_with_args ... ok [INFO] [stdout] test auth::set::tests::test_insert_and_contains_within_expiration ... ok [INFO] [stdout] test chat::command::command::should::parse_focus_command_without_args ... ok [INFO] [stdout] test chat::command::command::should::fail_to_parse_msg_command_without_body ... ok [INFO] [stdout] test auth::pubkey_file_manager::tests::test_load_keys_success ... ok [INFO] [stdout] test chat::command::command::should::parse_ignore_command_with_args ... ok [INFO] [stdout] test chat::command::command::should::parse_name_command ... ok [INFO] [stdout] test chat::command::command::should::parse_me_command_without_args ... ok [INFO] [stdout] test chat::command::command::should::parse_oplist_command ... ok [INFO] [stdout] test chat::command::command::should::parse_motd_command_with_args ... ok [INFO] [stdout] test chat::command::command::should::parse_motd_command_without_args ... ok [INFO] [stdout] test chat::command::command::should::parse_msg_command_with_args ... ok [INFO] [stdout] test chat::command::command::should::parse_mute_command ... ok [INFO] [stdout] test chat::command::command::should::parse_ignore_command_without_args ... ok [INFO] [stdout] test chat::command::command::should::parse_me_command_with_args ... ok [INFO] [stdout] test chat::command::command::should::parse_quiet_command ... ok [INFO] [stdout] test chat::command::command::should::parse_kick_command ... ok [INFO] [stdout] test chat::command::command::should::parse_reply_command ... ok [INFO] [stdout] test chat::command::command::should::parse_shrug_command ... ok [INFO] [stdout] test chat::command::command::should::parse_slap_command_with_args ... ok [INFO] [stdout] test chat::command::command::should::parse_theme_command_with_valid_theme ... ok [INFO] [stdout] test chat::command::command::should::parse_themes_command ... ok [INFO] [stdout] test chat::command::command::should::parse_slap_command_without_args ... ok [INFO] [stdout] test chat::command::command::should::parse_timestamp_command_with_valid_mode ... ok [INFO] [stdout] test chat::command::command::should::parse_unignore_command ... ok [INFO] [stdout] test chat::command::command_props::should::is_visible_return_false_when_help_is_empty ... ok [INFO] [stdout] test chat::command::command_props::should::is_visible_return_true_when_help_is_not_empty ... ok [INFO] [stdout] test chat::command::command::should::parse_uptime_command ... ok [INFO] [stdout] test chat::command::commands_list::should::filter_noop_commands ... ok [INFO] [stdout] test chat::command::command::should::parse_users_command ... ok [INFO] [stdout] test chat::command::command::should::parse_version_command ... ok [INFO] [stdout] test chat::command::command::should::parse_whitelist_command ... ok [INFO] [stdout] test chat::command::command::should::parse_whois_command ... ok [INFO] [stdout] test chat::command::command_props::should::has_prefix_return_false_when_cmd_does_not_start_with_prefix ... ok [INFO] [stdout] test chat::command::command_props::should::has_prefix_return_true_when_cmd_starts_with_prefix ... ok [INFO] [stdout] test chat::command::commands_list::should::filter_op_commands ... ok [INFO] [stdout] test chat::command::commands_list::should::filter_visible_commands ... ok [INFO] [stdout] test chat::command::commands_list::should::sort_by_command_length ... ok [INFO] [stdout] test chat::command::oplist_command::oplist_command_should::fail_for_add_command_without_args ... ok [INFO] [stdout] test chat::command::oplist_command::oplist_command_should::fail_for_load_command_with_invalid_mode ... ok [INFO] [stdout] test chat::command::oplist_command::oplist_command_should::fail_for_remove_command_without_args ... ok [INFO] [stdout] test chat::command::oplist_command::oplist_command_should::fail_for_unknown_command ... ok [INFO] [stdout] test chat::command::commands_list::should::format_commands_correctly ... ok [INFO] [stdout] test chat::command::oplist_command::oplist_load_mode_should::recognize_merge ... ok [INFO] [stdout] test chat::command::oplist_command::oplist_load_mode_should::recognize_replace ... ok [INFO] [stdout] test chat::command::oplist_command::oplist_load_mode_should::return_list_of_modes ... ok [INFO] [stdout] test chat::command::oplist_command::oplist_command_should::parse_load_command_with_merge ... ok [INFO] [stdout] test chat::command::oplist_command::oplist_load_mode_should::return_none_for_unknown_prefix ... ok [INFO] [stdout] test chat::command::oplist_command::oplist_command_should::parse_load_command_with_replace ... ok [INFO] [stdout] test chat::command::oplist_command::oplist_command_should::parse_status_command ... ok [INFO] [stdout] test chat::command::parse_error::should::display_argument_expected_error ... ok [INFO] [stdout] test chat::command::oplist_command::oplist_command_should::parse_save_command ... ok [INFO] [stdout] test chat::command::parse_error::should::display_not_recognized_as_command_error ... ok [INFO] [stdout] test chat::command::oplist_command::oplist_load_mode_should::display_modes ... ok [INFO] [stdout] test chat::command::oplist_command::oplist_command_should::parse_help_command ... ok [INFO] [stdout] test chat::command::oplist_command::oplist_command_should::parse_remove_command ... ok [INFO] [stdout] test chat::command::parse_error::should::display_other_error ... ok [INFO] [stdout] test chat::command::oplist_command::oplist_command_should::parse_add_command ... ok [INFO] [stdout] test chat::command::parse_error::should::display_unknown_command_error ... ok [INFO] [stdout] test chat::command::whitelist_command::whitelist_command_should::fail_for_add_command_without_args ... ok [INFO] [stdout] test chat::command::whitelist_command::whitelist_command_should::fail_for_load_command_with_invalid_mode ... ok [INFO] [stdout] test chat::command::whitelist_command::whitelist_command_should::fail_for_remove_command_without_args ... ok [INFO] [stdout] test chat::command::whitelist_command::whitelist_command_should::fail_for_unknown_command ... ok [INFO] [stdout] test chat::command::whitelist_command::whitelist_command_should::parse_add_command ... ok [INFO] [stdout] test chat::command::whitelist_command::whitelist_command_should::parse_help_command ... ok [INFO] [stdout] test chat::command::whitelist_command::whitelist_command_should::parse_load_command_with_merge ... ok [INFO] [stdout] test chat::command::whitelist_command::whitelist_command_should::parse_load_command_with_replace ... ok [INFO] [stdout] test chat::command::whitelist_command::whitelist_command_should::parse_on_off_commands ... ok [INFO] [stdout] test chat::command::whitelist_command::whitelist_command_should::parse_remove_command ... ok [INFO] [stdout] test chat::command::whitelist_command::whitelist_command_should::parse_reverify_command ... ok [INFO] [stdout] test chat::command::whitelist_command::whitelist_command_should::parse_save_command ... ok [INFO] [stdout] test chat::command::whitelist_command::whitelist_load_mode_should::display_modes ... ok [INFO] [stdout] test chat::command::whitelist_command::whitelist_command_should::parse_status_command ... ok [INFO] [stdout] test chat::command::whitelist_command::whitelist_load_mode_should::recognize_merge ... ok [INFO] [stdout] test chat::command::whitelist_command::whitelist_load_mode_should::recognize_replace ... ok [INFO] [stdout] test chat::command::whitelist_command::whitelist_load_mode_should::return_list_of_modes ... ok [INFO] [stdout] test chat::command::whitelist_command::whitelist_load_mode_should::return_none_for_unknown_prefix ... ok [INFO] [stdout] test chat::message::message::should::format_emote_message_correctly ... ok [INFO] [stdout] test chat::message::author::should::convert_user_ref_to_author ... ok [INFO] [stdout] test chat::message::message::should::format_message_with_timestamp ... ok [INFO] [stdout] test chat::message::author::should::convert_user_to_author ... ok [INFO] [stdout] test chat::message::message::should::format_public_message_correctly ... ok [INFO] [stdout] test chat::message::message::should::format_announce_message_correctly ... ok [INFO] [stdout] test chat::message::message_history::tests::test_iterate_empty ... ok [INFO] [stdout] test chat::message::message_history::tests::test_new_message_history ... ok [INFO] [stdout] test chat::message::message::should::format_private_message_correctly ... ok [INFO] [stdout] test chat::message::message::should::format_system_message_correctly ... ok [INFO] [stdout] test chat::message::message::should::format_error_message_correctly ... ok [INFO] [stdout] test chat::message::message::should::format_command_message_correctly ... ok [INFO] [stdout] test chat::message::message::should::format_public_message_with_highlight_correctly ... ok [INFO] [stdout] test chat::message::message_history::tests::test_push_message ... ok [INFO] [stdout] test chat::message::message_history::tests::test_push_message_overflow ... ok [INFO] [stdout] test chat::room::member::should::create_room_member ... ok [INFO] [stdout] test chat::room::member::should::exit ... ok [INFO] [stdout] test chat::ratelimit::should::check_rate_limit_not_exceeded ... ok [INFO] [stdout] test chat::room::member::should::update_last_sent_time ... ok [INFO] [stdout] test chat::room::room::should::create_chat_room ... ok [INFO] [stdout] test chat::room::member::should::send_message_with_timestamp ... ok [INFO] [stdout] test chat::room::room::should::add_and_remove_member ... ok [INFO] [stdout] test chat::message::message_history::tests::test_iterate_messages ... ok [INFO] [stdout] test chat::room::member::should::send_message ... ok [INFO] [stdout] test chat::ratelimit::should::check_rate_limit_exceeded ... ok [INFO] [stdout] test chat::room::member::should::send_user_is_muted_message ... ok [INFO] [stdout] test chat::room::room::should::leave_chat_room ... ok [INFO] [stdout] test chat::room::room::should::join_chat_room ... ok [INFO] [stdout] test chat::room::room::should::not_send_announce_message_if_author_is_ignored_by_recipient ... ok [INFO] [stdout] test chat::room::room::should::not_send_public_message_if_author_is_ignored_by_recipient ... ok [INFO] [stdout] test chat::room::room::should::not_send_announce_message_if_author_is_muted ... ok [INFO] [stdout] test chat::room::room::should::not_send_public_message_if_author_is_not_in_focus_by_recipient ... ok [INFO] [stdout] test chat::room::room::should::find_name_by_prefix ... ok [INFO] [stdout] test chat::room::room::should::not_send_emote_message_if_author_is_muted ... ok [INFO] [stdout] test chat::room::room::should::not_send_private_message_from_muted_author ... ok [INFO] [stdout] test chat::room::room::should::send_announce_message ... ok [INFO] [stdout] test chat::room::room::should::send_emote_message ... ok [INFO] [stdout] test chat::room::room::should::set_and_get_motd ... ok [INFO] [stdout] test chat::room::room::should::send_system_messages ... ok [INFO] [stdout] test chat::room::room::should::not_send_public_message_if_author_is_muted ... ok [INFO] [stdout] test chat::room::room::should::not_send_emote_message_if_author_is_ignored_by_recipient ... ok [INFO] [stdout] test chat::user::display_name::should::compare_display_name_with_str ... ok [INFO] [stdout] test chat::user::display_name::should::convert_display_name_to_str_ref ... ok [INFO] [stdout] test chat::user::display_name::should::convert_str_to_display_name ... ok [INFO] [stdout] test chat::user::display_name::should::convert_string_to_display_name ... ok [INFO] [stdout] test chat::room::room::should::try_get_name ... ok [INFO] [stdout] test chat::user::display_name::should::convert_display_name_into_string ... ok [INFO] [stdout] test chat::user::display_name::should::dereference_display_name ... ok [INFO] [stdout] test chat::user::display_name::should::hash_display_name_correctly ... ok [INFO] [stdout] test chat::user::user::should::display_format ... ok [INFO] [stdout] test chat::room::room::should::send_private_message ... ok [INFO] [stdout] test chat::user::user::should::display_format_away_user ... ok [INFO] [stdout] test chat::user::user::should::joined_duration ... ok [INFO] [stdout] test chat::user::user::should::return_active_status ... ok [INFO] [stdout] test chat::user::user::should::focus_unfocus ... ok [INFO] [stdout] test chat::user::user::should::set_reply_to ... ok [INFO] [stdout] test chat::user::user::should::unfocus_all ... ok [INFO] [stdout] test pubkey::tests::test_pubkey_display ... ok [INFO] [stdout] test chat::user::user::should::set_theme ... ok [INFO] [stdout] test chat::user::display_name::should::display_display_name ... ok [INFO] [stdout] test chat::user::user::should::set_username ... ok [INFO] [stdout] test chat::user::username::should::generate_username_with_correct_format ... ok [INFO] [stdout] test pubkey::tests::test_pubkey_from_publickey ... ok [INFO] [stdout] test chat::user::user::should::ignore_unignore ... ok [INFO] [stdout] test pubkey::tests::test_pubkey_hash ... ok [INFO] [stdout] test chat::room::room::should::send_public_message ... ok [INFO] [stdout] test pubkey::tests::test_pubkey_into_publickey ... ok [INFO] [stdout] test server::env::tests::test_malformed_env_var ... ok [INFO] [stdout] test server::env::tests::test_empty_value ... ok [INFO] [stdout] test server::env::tests::test_unknown_env_var_type ... ok [INFO] [stdout] test server::env::tests::test_valid_theme_env_var ... ok [INFO] [stdout] test pubkey::tests::test_pubkey_partial_eq_publickey ... ok [INFO] [stdout] test server::env::tests::test_valid_timestamp_env_var ... ok [INFO] [stdout] test chat::user::user::should::switch_mute_mode ... ok [INFO] [stdout] test server::session::handler::tests::test_auth_keyboard_interactive ... ok [INFO] [stdout] test server::session::handler::tests::test_auth_password ... ok [INFO] [stdout] test server::session::handler::tests::test_auth_publickey_offered_when_whitelist_disabled ... ok [INFO] [stdout] test server::session::handler::tests::test_auth_publickey ... ok [INFO] [stdout] test server::session::handler::tests::test_auth_publickey_offered_when_whitelist_enabled ... ok [INFO] [stdout] test pubkey::tests::test_pubkey_fingerprint ... ok [INFO] [stdout] test server::session_workflow::autocomplete::should::complete_hidden_commands ... ok [INFO] [stdout] test server::session_workflow::autocomplete::should::complete_oplist_add_command_arguments ... ok [INFO] [stdout] test server::session_workflow::autocomplete::should::complete_all_op_commands ... ok [INFO] [stdout] test server::session_workflow::autocomplete::should::complete_oplist_load_command_arguments ... ok [INFO] [stdout] test server::session_workflow::autocomplete::should::complete_timestamp_argument ... ok [INFO] [stdout] test server::session_workflow::autocomplete::should::complete_theme_argument ... ok [INFO] [stdout] test server::session_workflow::autocomplete::should::complete_oplist_subcommand ... ok [INFO] [stdout] test server::session_workflow::autocomplete::should::complete_all_noop_commands ... ok [INFO] [stdout] test server::session_workflow::autocomplete::should::complete_whiltelist_load_command_arguments ... ok [INFO] [stdout] test server::session_workflow::autocomplete::should::complete_username_argument ... ok [INFO] [stdout] test server::session_workflow::autocomplete::should::complete_whitelist_add_command_arguments ... ok [INFO] [stdout] test server::session_workflow::autocomplete::should::return_ok ... ok [INFO] [stdout] test server::session_workflow::env_parse::should::add_theme_command_to_context ... ok [INFO] [stdout] test server::session_workflow::autocomplete::should::not_complete_op_commands_when_user_is_not_operator ... ok [INFO] [stdout] test server::session_workflow::env_parse::should::return_next_handler ... ok [INFO] [stdout] test server::session_workflow::env_parse::should::not_add_command_to_context_when_env_is_not_recognized ... ok [INFO] [stdout] test server::session_workflow::env_parse::should::return_ok ... ok [INFO] [stdout] test server::session_workflow::autocomplete::should::complete_whitelist_subcommand ... ok [INFO] [stdout] test server::session_workflow::env_parse::should::add_timestamp_command_to_context ... ok [INFO] [stdout] test server::session_workflow::input_validator::should::return_next_handler ... ok [INFO] [stdout] test server::session_workflow::input_validator::should::return_ok ... ok [INFO] [stdout] test server::session_workflow::input_validator::should::unset_next_handler_when_input_is_too_long ... ok [INFO] [stdout] test server::session_workflow::input_validator::should::unset_next_handler_when_input_is_empty ... ok [INFO] [stdout] test terminal::input::should::delete_emoji_after_cursor ... ok [INFO] [stdout] test terminal::input::should::delete_emoji_before_cursor ... ok [INFO] [stdout] test terminal::input::should::clear_input ... ok [INFO] [stdout] test terminal::input::should::delete_next_character ... ok [INFO] [stdout] test terminal::input::should::delete_prev_character ... ok [INFO] [stdout] test terminal::input::should::go_backwards_one_character ... ok [INFO] [stdout] test terminal::input::should::go_to_beginning ... ok [INFO] [stdout] test terminal::input::should::go_forward_one_character ... ok [INFO] [stdout] test terminal::input::should::have_initial_state ... ok [INFO] [stdout] test terminal::input::should::insert_text_before_cursor ... ok [INFO] [stdout] test server::session_workflow::input_validator::should::unset_next_handler_when_input_is_whitespace_only ... ok [INFO] [stdout] test server::session_workflow::input_validator::should::add_command_to_context_when_input_is_valid ... ok [INFO] [stdout] test terminal::input::should::kill_prev_word ... ok [INFO] [stdout] test terminal::input::should::move_cursor_to_given_position ... ok [INFO] [stdout] test terminal::input::should::go_to_end ... ok [INFO] [stdout] test terminal::input::should::push_to_history ... ok [INFO] [stdout] test terminal::input::should::set_history_prev ... ok [INFO] [stdout] test terminal::input_history::should::handle_circular_buffer_behavior ... ok [INFO] [stdout] test terminal::input_history::should::modify_item_at_current_navigation_index ... ok [INFO] [stdout] test terminal::input_history::should::navigate_to_next_items ... ok [INFO] [stdout] test terminal::input::should::set_history_next ... ok [INFO] [stdout] test terminal::input_history::should::navigate_to_previous_items ... ok [INFO] [stdout] test terminal::input_history::should::push_item_and_reset_navigation_index ... ok [INFO] [stdout] test terminal::keyboard_decoder::should::decode_mixed_input ... ok [INFO] [stdout] test terminal::keyboard_decoder::should::decode_multiple_bytes ... ok [INFO] [stdout] test terminal::keyboard_decoder::should::decode_single_byte ... ok [INFO] [stdout] test terminal::terminal::should::clear_input ... ok [INFO] [stdout] test terminal::terminal::should::close_handle_on_exit ... ok [INFO] [stdout] test terminal::input::should::kill_line_to_end ... ok [INFO] [stdout] test terminal::terminal::should::refresh_cursor_coordinates_on_resize ... ok [INFO] [stdout] test terminal::terminal::should::print_input_line ... ok [INFO] [stdout] test terminal::terminal::should::print_message_and_then_input_line ... ok [INFO] [stdout] test terminal::terminal::should::set_prompt ... ok [INFO] [stdout] test server::server::should::check_if_server_runs_and_port_is_in_use ... ok [INFO] [stdout] test terminal::unicode::tests::test_display_width ... ok [INFO] [stdout] test auth::set::tests::test_insert_and_contains_after_expiration ... ok [INFO] [stdout] test auth::set::tests::test_insert_and_iterate_after_expiration ... ok [INFO] [stdout] test auth::set::tests::test_insert_multiple_items_with_different_expiration_times ... ok [INFO] [stdout] test auth::set::tests::test_iter_mixed_expiration_times ... ok [INFO] [stdout] test terminal::unicode::tests::test_skip_ansi_escape_sequence ... ok [INFO] [stdout] test server::session::handler::tests::test_pty_request ... ok [INFO] [stdout] test utils::fs::tests::test_read_file_to_string_nonexistent_file ... ok [INFO] [stdout] test utils::fs::tests::test_expand_tilde_with_home_dir ... ok [INFO] [stdout] test utils::fs::tests::test_read_file_lines_nonexistent_file ... ok [INFO] [stdout] test utils::fs::tests::test_read_file_to_string_unreadable_file ... ok [INFO] [stdout] test utils::fs::tests::test_expand_tilde_no_tilde_in_path ... ok [INFO] [stdout] test utils::sanitize::tests::test_name_empty_string ... ok [INFO] [stdout] test utils::ssh::tests::test_split_ssh_key_invalid_utf8 ... ok [INFO] [stdout] test utils::ssh::tests::test_split_ssh_key_valid ... ok [INFO] [stdout] test utils::sanitize::tests::test_name_truncation ... ok [INFO] [stdout] test utils::fs::tests::test_read_file_lines_existing_file ... ok [INFO] [stdout] test utils::sanitize::tests::test_name_whitespace_only ... ok [INFO] [stdout] test server::session::handler::tests::test_window_change_request ... ok [INFO] [stdout] test utils::sanitize::tests::test_name_sanitization ... ok [INFO] [stdout] test server::session::handler::tests::test_channel_open_session ... ok [INFO] [stdout] test utils::fs::tests::test_read_file_to_string_existing_file ... ok [INFO] [stdout] test server::session::handler::tests::test_env_request ... ok [INFO] [stdout] test utils::ssh::tests::test_split_ssh_key_invalid_format ... ok [INFO] [stdout] test server::session::handler::tests::test_data_request ... ok [INFO] [stdout] test chat::user::username::should::generate_unique_usernames ... FAILED [INFO] [stdout] test terminal::unicode::tests::test_emojis_have_correct_width ... ok [INFO] [stdout] test chat::user::username::should::distribute_generated_usernames_uniformly ... ok [INFO] [stdout] [INFO] [stdout] failures: [INFO] [stdout] [INFO] [stdout] ---- chat::user::username::should::generate_unique_usernames stdout ---- [INFO] [stdout] thread 'chat::user::username::should::generate_unique_usernames' panicked at src/chat/user/username.rs:217:13: [INFO] [stdout] Generated duplicate username [INFO] [stdout] stack backtrace: [INFO] [stdout] 0: 0x5cbfa6b5bbda - std::backtrace_rs::backtrace::libunwind::trace::h9ce576133d3ff57c [INFO] [stdout] at /rustc/c7c49f44a7bb561dd9317e14908a1e50fa478ce5/library/std/src/../../backtrace/src/backtrace/libunwind.rs:116:5 [INFO] [stdout] 1: 0x5cbfa6b5bbda - std::backtrace_rs::backtrace::trace_unsynchronized::h77316b33bca73147 [INFO] [stdout] at /rustc/c7c49f44a7bb561dd9317e14908a1e50fa478ce5/library/std/src/../../backtrace/src/backtrace/mod.rs:66:5 [INFO] [stdout] 2: 0x5cbfa6b5bbda - std::sys::backtrace::_print_fmt::haa182cb1ad45bc9f [INFO] [stdout] at /rustc/c7c49f44a7bb561dd9317e14908a1e50fa478ce5/library/std/src/sys/backtrace.rs:66:9 [INFO] [stdout] 3: 0x5cbfa6b5bbda - ::fmt::ha95eeb186e57c055 [INFO] [stdout] at /rustc/c7c49f44a7bb561dd9317e14908a1e50fa478ce5/library/std/src/sys/backtrace.rs:39:26 [INFO] [stdout] 4: 0x5cbfa6b8623b - core::fmt::rt::Argument::fmt::h71240792b23d8aa6 [INFO] [stdout] at /rustc/c7c49f44a7bb561dd9317e14908a1e50fa478ce5/library/core/src/fmt/rt.rs:177:76 [INFO] [stdout] 5: 0x5cbfa6b8623b - core::fmt::write::h1c4d59c42453601a [INFO] [stdout] at /rustc/c7c49f44a7bb561dd9317e14908a1e50fa478ce5/library/core/src/fmt/mod.rs:1178:21 [INFO] [stdout] 6: 0x5cbfa6b57fa3 - std::io::Write::write_fmt::h08b6f2062a09bc68 [INFO] [stdout] at /rustc/c7c49f44a7bb561dd9317e14908a1e50fa478ce5/library/std/src/io/mod.rs:1823:15 [INFO] [stdout] 7: 0x5cbfa6b5d3e2 - std::sys::backtrace::BacktraceLock::print::hb66718c44668eb56 [INFO] [stdout] at /rustc/c7c49f44a7bb561dd9317e14908a1e50fa478ce5/library/std/src/sys/backtrace.rs:42:9 [INFO] [stdout] 8: 0x5cbfa6b5d3e2 - std::panicking::default_hook::{{closure}}::h1a6c150385aaf90f [INFO] [stdout] at /rustc/c7c49f44a7bb561dd9317e14908a1e50fa478ce5/library/std/src/panicking.rs:266:22 [INFO] [stdout] 9: 0x5cbfa6b5cf23 - std::panicking::default_hook::h5e8a75844aa4ea98 [INFO] [stdout] at /rustc/c7c49f44a7bb561dd9317e14908a1e50fa478ce5/library/std/src/panicking.rs:290:9 [INFO] [stdout] 10: 0x5cbfa63d54d9 - as core::ops::function::Fn>::call::h6ee94b0b846f4546 [INFO] [stdout] at /rustc/c7c49f44a7bb561dd9317e14908a1e50fa478ce5/library/alloc/src/boxed.rs:2245:9 [INFO] [stdout] 11: 0x5cbfa63d54d9 - test::test_main::{{closure}}::hccc1c379f17b5ca1 [INFO] [stdout] at /rustc/c7c49f44a7bb561dd9317e14908a1e50fa478ce5/library/test/src/lib.rs:132:21 [INFO] [stdout] 12: 0x5cbfa6b5dca2 - as core::ops::function::Fn>::call::h8b15e23d52a5df89 [INFO] [stdout] at /rustc/c7c49f44a7bb561dd9317e14908a1e50fa478ce5/library/alloc/src/boxed.rs:2245:9 [INFO] [stdout] 13: 0x5cbfa6b5dca2 - std::panicking::rust_panic_with_hook::hea686c8750159a85 [INFO] [stdout] at /rustc/c7c49f44a7bb561dd9317e14908a1e50fa478ce5/library/std/src/panicking.rs:805:13 [INFO] [stdout] 14: 0x5cbfa6b5d923 - std::panicking::begin_panic_handler::{{closure}}::hfd69333fda29d50a [INFO] [stdout] at /rustc/c7c49f44a7bb561dd9317e14908a1e50fa478ce5/library/std/src/panicking.rs:664:13 [INFO] [stdout] 15: 0x5cbfa6b5c0b9 - std::sys::backtrace::__rust_end_short_backtrace::hb7c23c01c3c70e35 [INFO] [stdout] at /rustc/c7c49f44a7bb561dd9317e14908a1e50fa478ce5/library/std/src/sys/backtrace.rs:170:18 [INFO] [stdout] 16: 0x5cbfa6b5d5e4 - rust_begin_unwind [INFO] [stdout] at /rustc/c7c49f44a7bb561dd9317e14908a1e50fa478ce5/library/std/src/panicking.rs:662:5 [INFO] [stdout] 17: 0x5cbfa5f3d393 - core::panicking::panic_fmt::h43de95d595ebabc0 [INFO] [stdout] at /rustc/c7c49f44a7bb561dd9317e14908a1e50fa478ce5/library/core/src/panicking.rs:74:14 [INFO] [stdout] 18: 0x5cbfa6158e72 - chatd::chat::user::username::should::generate_unique_usernames::h450d152cddedba52 [INFO] [stdout] at /opt/rustwide/workdir/src/chat/user/username.rs:217:13 [INFO] [stdout] 19: 0x5cbfa6158bb7 - chatd::chat::user::username::should::generate_unique_usernames::{{closure}}::h0e61f8ef65fe22e4 [INFO] [stdout] at /opt/rustwide/workdir/src/chat/user/username.rs:210:35 [INFO] [stdout] 20: 0x5cbfa5f464a6 - core::ops::function::FnOnce::call_once::h9cfdf43188a60e34 [INFO] [stdout] at /rustc/c7c49f44a7bb561dd9317e14908a1e50fa478ce5/library/core/src/ops/function.rs:250:5 [INFO] [stdout] 21: 0x5cbfa63d9e4b - core::ops::function::FnOnce::call_once::h9b5e01539a2850c9 [INFO] [stdout] at /rustc/c7c49f44a7bb561dd9317e14908a1e50fa478ce5/library/core/src/ops/function.rs:250:5 [INFO] [stdout] 22: 0x5cbfa63d9e4b - test::__rust_begin_short_backtrace::hfa35fd69df7e11a6 [INFO] [stdout] at /rustc/c7c49f44a7bb561dd9317e14908a1e50fa478ce5/library/test/src/lib.rs:620:18 [INFO] [stdout] 23: 0x5cbfa63d96c8 - test::run_test_in_process::{{closure}}::he6acc04e3f33efba [INFO] [stdout] at /rustc/c7c49f44a7bb561dd9317e14908a1e50fa478ce5/library/test/src/lib.rs:643:60 [INFO] [stdout] 24: 0x5cbfa63d96c8 - as core::ops::function::FnOnce<()>>::call_once::h9ed0882d7a8705d4 [INFO] [stdout] at /rustc/c7c49f44a7bb561dd9317e14908a1e50fa478ce5/library/core/src/panic/unwind_safe.rs:272:9 [INFO] [stdout] 25: 0x5cbfa63d96c8 - std::panicking::try::do_call::hb4e1060b1206bf1d [INFO] [stdout] at /rustc/c7c49f44a7bb561dd9317e14908a1e50fa478ce5/library/std/src/panicking.rs:554:40 [INFO] [stdout] 26: 0x5cbfa63d96c8 - std::panicking::try::he7301d205c111379 [INFO] [stdout] at /rustc/c7c49f44a7bb561dd9317e14908a1e50fa478ce5/library/std/src/panicking.rs:518:19 [INFO] [stdout] 27: 0x5cbfa63d96c8 - std::panic::catch_unwind::h6c993e01d18171db [INFO] [stdout] at /rustc/c7c49f44a7bb561dd9317e14908a1e50fa478ce5/library/std/src/panic.rs:345:14 [INFO] [stdout] 28: 0x5cbfa63d96c8 - test::run_test_in_process::h39faa778a589c8b3 [INFO] [stdout] at /rustc/c7c49f44a7bb561dd9317e14908a1e50fa478ce5/library/test/src/lib.rs:643:27 [INFO] [stdout] 29: 0x5cbfa63d96c8 - test::run_test::{{closure}}::h59e32a442f6c7a1c [INFO] [stdout] at /rustc/c7c49f44a7bb561dd9317e14908a1e50fa478ce5/library/test/src/lib.rs:564:43 [INFO] [stdout] 30: 0x5cbfa639ea94 - test::run_test::{{closure}}::h6615d2e57f7516c2 [INFO] [stdout] at /rustc/c7c49f44a7bb561dd9317e14908a1e50fa478ce5/library/test/src/lib.rs:594:41 [INFO] [stdout] 31: 0x5cbfa639ea94 - std::sys::backtrace::__rust_begin_short_backtrace::h761da13b6d71bc61 [INFO] [stdout] at /rustc/c7c49f44a7bb561dd9317e14908a1e50fa478ce5/library/std/src/sys/backtrace.rs:154:18 [INFO] [stdout] 32: 0x5cbfa63a2142 - std::thread::Builder::spawn_unchecked_::{{closure}}::{{closure}}::haa82f2052ad87664 [INFO] [stdout] at /rustc/c7c49f44a7bb561dd9317e14908a1e50fa478ce5/library/std/src/thread/mod.rs:522:17 [INFO] [stdout] 33: 0x5cbfa63a2142 - as core::ops::function::FnOnce<()>>::call_once::h709672ecbcc3758b [INFO] [stdout] at /rustc/c7c49f44a7bb561dd9317e14908a1e50fa478ce5/library/core/src/panic/unwind_safe.rs:272:9 [INFO] [stdout] 34: 0x5cbfa63a2142 - std::panicking::try::do_call::hb005a67f6fd9e082 [INFO] [stdout] at /rustc/c7c49f44a7bb561dd9317e14908a1e50fa478ce5/library/std/src/panicking.rs:554:40 [INFO] [stdout] 35: 0x5cbfa63a2142 - std::panicking::try::hec02b24e35e6ab47 [INFO] [stdout] at /rustc/c7c49f44a7bb561dd9317e14908a1e50fa478ce5/library/std/src/panicking.rs:518:19 [INFO] [stdout] 36: 0x5cbfa63a2142 - std::panic::catch_unwind::h13617efa0948dabc [INFO] [stdout] at /rustc/c7c49f44a7bb561dd9317e14908a1e50fa478ce5/library/std/src/panic.rs:345:14 [INFO] [stdout] 37: 0x5cbfa63a2142 - std::thread::Builder::spawn_unchecked_::{{closure}}::hb4a56c6b32a8e045 [INFO] [stdout] at /rustc/c7c49f44a7bb561dd9317e14908a1e50fa478ce5/library/std/src/thread/mod.rs:521:30 [INFO] [stdout] 38: 0x5cbfa63a2142 - core::ops::function::FnOnce::call_once{{vtable.shim}}::h26d01bfaffaa945b [INFO] [stdout] at /rustc/c7c49f44a7bb561dd9317e14908a1e50fa478ce5/library/core/src/ops/function.rs:250:5 [INFO] [stdout] 39: 0x5cbfa6b6293b - as core::ops::function::FnOnce>::call_once::hbe8e1ebf83e6794e [INFO] [stdout] at /rustc/c7c49f44a7bb561dd9317e14908a1e50fa478ce5/library/alloc/src/boxed.rs:2231:9 [INFO] [stdout] 40: 0x5cbfa6b6293b - as core::ops::function::FnOnce>::call_once::h7d6ff770e6bfeff7 [INFO] [stdout] at /rustc/c7c49f44a7bb561dd9317e14908a1e50fa478ce5/library/alloc/src/boxed.rs:2231:9 [INFO] [stdout] 41: 0x5cbfa6b6293b - std::sys::pal::unix::thread::Thread::new::thread_start::h68792b09799a7d87 [INFO] [stdout] at /rustc/c7c49f44a7bb561dd9317e14908a1e50fa478ce5/library/std/src/sys/pal/unix/thread.rs:105:17 [INFO] [stdout] 42: 0x788e2b144ac3 - [INFO] [stdout] 43: 0x788e2b1d5a04 - clone [INFO] [stdout] 44: 0x0 - [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] failures: [INFO] [stdout] chat::user::username::should::generate_unique_usernames [INFO] [stdout] [INFO] [stdout] test result: FAILED. 313 passed; 1 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.47s [INFO] [stdout] [INFO] [stderr] error: test failed, to rerun pass `--bin chatd` [INFO] running `Command { std: "docker" "inspect" "a8c22ba49b155542e1771e89d7c6154cdedb1b1702d68a585cc28d4ee12c0723", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "a8c22ba49b155542e1771e89d7c6154cdedb1b1702d68a585cc28d4ee12c0723", kill_on_drop: false }` [INFO] [stdout] a8c22ba49b155542e1771e89d7c6154cdedb1b1702d68a585cc28d4ee12c0723