[INFO] fetching crate libmcaptcha 0.2.4...
[INFO] testing libmcaptcha-0.2.4 against 1.99.0-beta.8+cargoflags=--release for beta-release-1.100-3
[INFO] extracting crate libmcaptcha 0.2.4 into /workspace/builds/worker-3-tc1/source
[INFO] started tweaking crates.io crate libmcaptcha 0.2.4
[INFO] finished tweaking crates.io crate libmcaptcha 0.2.4
[INFO] tweaked toml for crates.io crate libmcaptcha 0.2.4 written to /workspace/builds/worker-3-tc1/source/Cargo.toml
[INFO] validating manifest of crates.io crate libmcaptcha 0.2.4 on toolchain 1.99.0-beta.8
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+1.99.0-beta.8" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate crates.io crate libmcaptcha 0.2.4 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.99.0-beta.8" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Blocking waiting for file lock on package cache
[INFO] [stderr]     Updating crates.io index
[INFO] [stderr]     Blocking waiting for file lock on package cache
[INFO] [stderr]  Downloading crates ...
[INFO] [stderr]   Downloaded actix_derive v0.6.1
[INFO] [stderr]   Downloaded is-terminal v0.4.9
[INFO] [stderr]   Downloaded derive_builder_macro v0.12.0
[INFO] [stderr]   Downloaded num v0.4.1
[INFO] [stderr]   Downloaded scheduled-thread-pool v0.2.7
[INFO] [stderr]   Downloaded serde v1.0.189
[INFO] [stderr]   Downloaded actix-rt v2.9.0
[INFO] [stderr]   Downloaded r2d2 v0.8.10
[INFO] [stderr]   Downloaded termcolor v1.3.0
[INFO] [stderr]   Downloaded mcaptcha_pow_sha256 v0.4.0
[INFO] [stderr]   Downloaded crc16 v0.4.0
[INFO] [stderr]   Downloaded derive_builder_core v0.12.0
[INFO] [stderr]   Downloaded num-complex v0.4.4
[INFO] [stderr]   Downloaded derive_builder v0.12.0
[INFO] [stderr]   Downloaded serde_derive v1.0.189
[INFO] [stderr]   Downloaded env_logger v0.10.0
[INFO] [stderr]   Downloaded tracing v0.1.39
[INFO] [stderr]   Downloaded tokio-util v0.7.9
[INFO] [stderr]   Downloaded crossbeam-channel v0.5.8
[INFO] [stderr]   Downloaded actix v0.13.1
[INFO] [stderr]   Downloaded redis v0.23.3
[INFO] [stderr]   Downloaded regex v1.10.1
[INFO] [stderr]   Downloaded rustix v0.38.19
[INFO] [stderr]   Downloaded regex-automata v0.4.2
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc1/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:77db811e55d90add9212f6832c23229e3de5f1c1f9905e8cb07319ea15df73ac" "sleep" "infinity", kill_on_drop: false }`
[INFO] [stdout] 81beaa11a966797dad5e1c3e34a318ca2aafe8ae647cd090df6e69a7d23c3652
[INFO] running `Command { std: "docker" "start" "81beaa11a966797dad5e1c3e34a318ca2aafe8ae647cd090df6e69a7d23c3652", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "81beaa11a966797dad5e1c3e34a318ca2aafe8ae647cd090df6e69a7d23c3652", 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" "81beaa11a966797dad5e1c3e34a318ca2aafe8ae647cd090df6e69a7d23c3652" "/opt/rustwide/cargo-home/bin/cargo" "+1.99.0-beta.8" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "81beaa11a966797dad5e1c3e34a318ca2aafe8ae647cd090df6e69a7d23c3652", 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" "81beaa11a966797dad5e1c3e34a318ca2aafe8ae647cd090df6e69a7d23c3652" "/opt/rustwide/cargo-home/bin/cargo" "+1.99.0-beta.8" "build" "--frozen" "--message-format=json" "--release", kill_on_drop: false }`
[INFO] [stderr]    Compiling num-traits v0.2.17
[INFO] [stderr]    Compiling serde v1.0.189
[INFO] [stderr]    Compiling futures-sink v0.3.28
[INFO] [stderr]    Compiling num-integer v0.1.45
[INFO] [stderr]    Compiling once_cell v1.18.0
[INFO] [stderr]    Compiling futures-util v0.3.28
[INFO] [stderr]    Compiling futures-channel v0.3.28
[INFO] [stderr]    Compiling syn v2.0.38
[INFO] [stderr]    Compiling syn v1.0.109
[INFO] [stderr]    Compiling futures-io v0.3.28
[INFO] [stderr]    Compiling bitflags v2.4.0
[INFO] [stderr]    Compiling rustix v0.38.19
[INFO] [stderr]    Compiling tokio v1.33.0
[INFO] [stderr]    Compiling aho-corasick v1.1.2
[INFO] [stderr]    Compiling num-bigint v0.4.4
[INFO] [stderr]    Compiling num-rational v0.4.1
[INFO] [stderr]    Compiling num-iter v0.1.43
[INFO] [stderr]    Compiling regex-syntax v0.8.2
[INFO] [stderr]    Compiling linux-raw-sys v0.4.10
[INFO] [stderr]    Compiling tracing-core v0.1.32
[INFO] [stderr]    Compiling unicode-normalization v0.1.22
[INFO] [stderr]    Compiling crypto-common v0.1.6
[INFO] [stderr]    Compiling unicode-bidi v0.3.13
[INFO] [stderr]    Compiling crc16 v0.4.0
[INFO] [stderr]    Compiling digest v0.10.7
[INFO] [stderr]    Compiling rand v0.8.5
[INFO] [stderr]    Compiling scheduled-thread-pool v0.2.7
[INFO] [stderr]    Compiling serde_json v1.0.107
[INFO] [stderr]    Compiling termcolor v1.3.0
[INFO] [stderr]    Compiling humantime v2.1.0
[INFO] [stderr]    Compiling r2d2 v0.8.10
[INFO] [stderr]    Compiling tracing v0.1.39
[INFO] [stderr]    Compiling idna v0.4.0
[INFO] [stderr]    Compiling sha2 v0.10.8
[INFO] [stderr]    Compiling crossbeam-channel v0.5.8
[INFO] [stderr]    Compiling socket2 v0.4.9
[INFO] [stderr]    Compiling arc-swap v1.6.0
[INFO] [stderr]    Compiling url v2.4.1
[INFO] [stderr]    Compiling is-terminal v0.4.9
[INFO] [stderr]    Compiling regex-automata v0.4.2
[INFO] [stderr]    Compiling serde_derive v1.0.189
[INFO] [stderr]    Compiling futures-macro v0.3.28
[INFO] [stderr]    Compiling pin-project-internal v1.1.3
[INFO] [stderr]    Compiling async-trait v0.1.73
[INFO] [stderr]    Compiling actix-macros v0.2.4
[INFO] [stderr]    Compiling actix_derive v0.6.1
[INFO] [stderr]    Compiling darling_core v0.14.4
[INFO] [stderr]    Compiling pin-project v1.1.3
[INFO] [stderr]    Compiling derive_more v0.99.17
[INFO] [stderr]    Compiling tokio-util v0.7.9
[INFO] [stderr]    Compiling tokio-retry v0.3.0
[INFO] [stderr]    Compiling actix-rt v2.9.0
[INFO] [stderr]    Compiling darling_macro v0.14.4
[INFO] [stderr]    Compiling darling v0.14.4
[INFO] [stderr]    Compiling derive_builder_core v0.12.0
[INFO] [stderr]    Compiling regex v1.10.1
[INFO] [stderr]    Compiling combine v4.6.6
[INFO] [stderr]    Compiling env_logger v0.10.0
[INFO] [stderr]    Compiling pretty_env_logger v0.5.0
[INFO] [stderr]    Compiling derive_builder_macro v0.12.0
[INFO] [stderr]    Compiling derive_builder v0.12.0
[INFO] [stderr]    Compiling futures-executor v0.3.28
[INFO] [stderr]    Compiling actix v0.13.1
[INFO] [stderr]    Compiling futures v0.3.28
[INFO] [stderr]    Compiling num-complex v0.4.4
[INFO] [stderr]    Compiling bincode v1.3.3
[INFO] [stderr]    Compiling num v0.4.1
[INFO] [stderr]    Compiling mcaptcha_pow_sha256 v0.4.0
[INFO] [stderr]    Compiling redis v0.23.3
[INFO] [stderr]    Compiling libmcaptcha v0.2.4 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unexpected `cfg` condition name: `tarpaulin_include`
[INFO] [stdout]   --> src/errors.rs:28:11
[INFO] [stdout]    |
[INFO] [stdout] 28 | #[cfg(not(tarpaulin_include))]
[INFO] [stdout]    |           ^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = help: expected names are: `docsrs`, `feature`, and `test` and 34 more
[INFO] [stdout]    = help: consider using a Cargo feature instead
[INFO] [stdout]    = help: or consider adding in `Cargo.toml` the `check-cfg` lint config for the lint:
[INFO] [stdout]             [lints.rust]
[INFO] [stdout]             unexpected_cfgs = { level = "warn", check-cfg = ['cfg(tarpaulin_include)'] }
[INFO] [stdout]    = help: or consider adding `println!("cargo::rustc-check-cfg=cfg(tarpaulin_include)");` to the top of the `build.rs`
[INFO] [stdout]    = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stdout]    = note: `#[warn(unexpected_cfgs)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unexpected `cfg` condition name: `tarpaulin_include`
[INFO] [stdout]    --> src/errors.rs:127:11
[INFO] [stdout]     |
[INFO] [stdout] 127 | #[cfg(not(tarpaulin_include))]
[INFO] [stdout]     |           ^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = help: consider using a Cargo feature instead
[INFO] [stdout]     = help: or consider adding in `Cargo.toml` the `check-cfg` lint config for the lint:
[INFO] [stdout]              [lints.rust]
[INFO] [stdout]              unexpected_cfgs = { level = "warn", check-cfg = ['cfg(tarpaulin_include)'] }
[INFO] [stdout]     = help: or consider adding `println!("cargo::rustc-check-cfg=cfg(tarpaulin_include)");` to the top of the `build.rs`
[INFO] [stdout]     = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unexpected `cfg` condition name: `tarpaulin_include`
[INFO] [stdout]    --> src/errors.rs:135:11
[INFO] [stdout]     |
[INFO] [stdout] 135 | #[cfg(not(tarpaulin_include))]
[INFO] [stdout]     |           ^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = help: consider using a Cargo feature instead
[INFO] [stdout]     = help: or consider adding in `Cargo.toml` the `check-cfg` lint config for the lint:
[INFO] [stdout]              [lints.rust]
[INFO] [stdout]              unexpected_cfgs = { level = "warn", check-cfg = ['cfg(tarpaulin_include)'] }
[INFO] [stdout]     = help: or consider adding `println!("cargo::rustc-check-cfg=cfg(tarpaulin_include)");` to the top of the `build.rs`
[INFO] [stdout]     = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unexpected `cfg` condition name: `tarpaulin_include`
[INFO] [stdout]    --> src/errors.rs:144:11
[INFO] [stdout]     |
[INFO] [stdout] 144 | #[cfg(not(tarpaulin_include))]
[INFO] [stdout]     |           ^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = help: consider using a Cargo feature instead
[INFO] [stdout]     = help: or consider adding in `Cargo.toml` the `check-cfg` lint config for the lint:
[INFO] [stdout]              [lints.rust]
[INFO] [stdout]              unexpected_cfgs = { level = "warn", check-cfg = ['cfg(tarpaulin_include)'] }
[INFO] [stdout]     = help: or consider adding `println!("cargo::rustc-check-cfg=cfg(tarpaulin_include)");` to the top of the `build.rs`
[INFO] [stdout]     = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `log::debug`
[INFO] [stdout]   --> src/queue.rs:24:5
[INFO] [stdout]    |
[INFO] [stdout] 24 | use log::debug;
[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: `log::error`
[INFO] [stdout]   --> src/queue.rs:25:5
[INFO] [stdout]    |
[INFO] [stdout] 25 | use log::error;
[INFO] [stdout]    |     ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: this function depends on never type fallback being `()`
[INFO] [stdout]    --> src/redis/mcaptcha_redis.rs:125:5
[INFO] [stdout]     |
[INFO] [stdout] 125 |     pub async fn add_mcaptcha(&self, msg: AddSite) -> CaptchaResult<()> {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = help: specify the types explicitly
[INFO] [stdout] note: in edition 2024, the requirement `!: FromRedisValue` will fail
[INFO] [stdout]    --> src/redis/mcaptcha_redis.rs:130:14
[INFO] [stdout]     |
[INFO] [stdout] 130 |             .exec(redis::cmd(ADD_CAPTCHA).arg(&[name, payload]))
[INFO] [stdout]     |              ^^^^
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in Rust 2024 and in a future release in all editions!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/never-type-fallback.html>
[INFO] [stdout]     = note: `#[warn(dependency_on_unit_never_type_fallback)]` (part of `#[warn(rust_2024_compatibility)]`) on by default
[INFO] [stdout] help: use `()` annotations to avoid fallback changes
[INFO] [stdout]     |
[INFO] [stdout] 130 |             .exec::<()>(redis::cmd(ADD_CAPTCHA).arg(&[name, payload]))
[INFO] [stdout]     |                  ++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: this function depends on never type fallback being `()`
[INFO] [stdout]    --> src/redis/mcaptcha_redis.rs:156:5
[INFO] [stdout]     |
[INFO] [stdout] 156 |     pub async fn delete_captcha(&self, captcha: &str) -> CaptchaResult<()> {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = help: specify the types explicitly
[INFO] [stdout] note: in edition 2024, the requirement `!: FromRedisValue` will fail
[INFO] [stdout]    --> src/redis/mcaptcha_redis.rs:157:16
[INFO] [stdout]     |
[INFO] [stdout] 157 |         self.0.exec(redis::cmd(DEL).arg(&[captcha])).await?;
[INFO] [stdout]     |                ^^^^
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in Rust 2024 and in a future release in all editions!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/never-type-fallback.html>
[INFO] [stdout] help: use `()` annotations to avoid fallback changes
[INFO] [stdout]     |
[INFO] [stdout] 157 |         self.0.exec::<()>(redis::cmd(DEL).arg(&[captcha])).await?;
[INFO] [stdout]     |                    ++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: this function depends on never type fallback being `()`
[INFO] [stdout]    --> src/redis/mcaptcha_redis.rs:162:5
[INFO] [stdout]     |
[INFO] [stdout] 162 |     pub async fn rename_captcha(&self, name: &str, rename_to: &str) -> CaptchaResult<()> {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = help: specify the types explicitly
[INFO] [stdout] note: in edition 2024, the requirement `!: FromRedisValue` will fail
[INFO] [stdout]    --> src/redis/mcaptcha_redis.rs:164:14
[INFO] [stdout]     |
[INFO] [stdout] 164 |             .exec(redis::cmd(RENAME_CAPTCHA).arg(&[name, rename_to]))
[INFO] [stdout]     |              ^^^^
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in Rust 2024 and in a future release in all editions!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/never-type-fallback.html>
[INFO] [stdout] help: use `()` annotations to avoid fallback changes
[INFO] [stdout]     |
[INFO] [stdout] 164 |             .exec::<()>(redis::cmd(RENAME_CAPTCHA).arg(&[name, rename_to]))
[INFO] [stdout]     |                  ++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: this function depends on never type fallback being `()`
[INFO] [stdout]    --> src/redis/mcaptcha_redis.rs:170:5
[INFO] [stdout]     |
[INFO] [stdout] 170 | /     pub async fn add_challenge(
[INFO] [stdout] 171 | |         &self,
[INFO] [stdout] 172 | |         captcha: &str,
[INFO] [stdout] 173 | |         challlenge: &AddChallenge,
[INFO] [stdout] 174 | |     ) -> CaptchaResult<()> {
[INFO] [stdout]     | |__________________________^
[INFO] [stdout]     |
[INFO] [stdout]     = help: specify the types explicitly
[INFO] [stdout] note: in edition 2024, the requirement `!: FromRedisValue` will fail
[INFO] [stdout]    --> src/redis/mcaptcha_redis.rs:177:14
[INFO] [stdout]     |
[INFO] [stdout] 177 |             .exec(redis::cmd(ADD_CHALLENGE).arg(&[captcha, &payload]))
[INFO] [stdout]     |              ^^^^
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in Rust 2024 and in a future release in all editions!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/never-type-fallback.html>
[INFO] [stdout] help: use `()` annotations to avoid fallback changes
[INFO] [stdout]     |
[INFO] [stdout] 177 |             .exec::<()>(redis::cmd(ADD_CHALLENGE).arg(&[captcha, &payload]))
[INFO] [stdout]     |                  ++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: this function depends on never type fallback being `()`
[INFO] [stdout]    --> src/redis/mcaptcha_redis.rs:195:5
[INFO] [stdout]     |
[INFO] [stdout] 195 |     pub async fn delete_challenge(&self, msg: &VerifyCaptchaResult) -> CaptchaResult<()> {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = help: specify the types explicitly
[INFO] [stdout] note: in edition 2024, the requirement `!: FromRedisValue` will fail
[INFO] [stdout]    --> src/redis/mcaptcha_redis.rs:197:14
[INFO] [stdout]     |
[INFO] [stdout] 197 |             .exec(redis::cmd(DELETE_CHALLENGE).arg(&[&msg.key, &msg.token]))
[INFO] [stdout]     |              ^^^^
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in Rust 2024 and in a future release in all editions!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/never-type-fallback.html>
[INFO] [stdout] help: use `()` annotations to avoid fallback changes
[INFO] [stdout]     |
[INFO] [stdout] 197 |             .exec::<()>(redis::cmd(DELETE_CHALLENGE).arg(&[&msg.key, &msg.token]))
[INFO] [stdout]     |                  ++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: this function depends on never type fallback being `()`
[INFO] [stdout]    --> src/redis/mcaptcha_redis.rs:237:5
[INFO] [stdout]     |
[INFO] [stdout] 237 |     pub async fn delete_token(&self, msg: &VerifyCaptchaResult) -> CaptchaResult<()> {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = help: specify the types explicitly
[INFO] [stdout] note: in edition 2024, the requirement `!: FromRedisValue` will fail
[INFO] [stdout]    --> src/redis/mcaptcha_redis.rs:241:16
[INFO] [stdout]     |
[INFO] [stdout] 241 |         self.0.exec(redis::cmd("DEL").arg(&[&key])).await?;
[INFO] [stdout]     |                ^^^^
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in Rust 2024 and in a future release in all editions!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/never-type-fallback.html>
[INFO] [stdout] help: use `()` annotations to avoid fallback changes
[INFO] [stdout]     |
[INFO] [stdout] 241 |         self.0.exec::<()>(redis::cmd("DEL").arg(&[&key])).await?;
[INFO] [stdout]     |                    ++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated associated function `redis::cluster::ClusterClient::open`: Use new()
[INFO] [stdout]   --> src/redis/mod.rs:50:53
[INFO] [stdout]    |
[INFO] [stdout] 50 |                 let cluster_client = ClusterClient::open(nodes.to_owned()).unwrap();
[INFO] [stdout]    |                                                     ^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(deprecated)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `m`
[INFO] [stdout]    --> src/master/redis/master.rs:118:26
[INFO] [stdout]     |
[INFO] [stdout] 118 |     fn handle(&mut self, m: GetInternalData, ctx: &mut Self::Context) -> Self::Result {
[INFO] [stdout]     |                          ^ help: if this is intentional, prefix it with an underscore: `_m`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `ctx`
[INFO] [stdout]    --> src/master/redis/master.rs:118:46
[INFO] [stdout]     |
[INFO] [stdout] 118 |     fn handle(&mut self, m: GetInternalData, ctx: &mut Self::Context) -> Self::Result {
[INFO] [stdout]     |                                              ^^^ help: if this is intentional, prefix it with an underscore: `_ctx`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `m`
[INFO] [stdout]    --> src/master/redis/master.rs:126:26
[INFO] [stdout]     |
[INFO] [stdout] 126 |     fn handle(&mut self, m: SetInternalData, ctx: &mut Self::Context) -> Self::Result {
[INFO] [stdout]     |                          ^ help: if this is intentional, prefix it with an underscore: `_m`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `ctx`
[INFO] [stdout]    --> src/master/redis/master.rs:126:46
[INFO] [stdout]     |
[INFO] [stdout] 126 |     fn handle(&mut self, m: SetInternalData, ctx: &mut Self::Context) -> Self::Result {
[INFO] [stdout]     |                                              ^^^ help: if this is intentional, prefix it with an underscore: `_ctx`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> src/master/embedded/master.rs:254:13
[INFO] [stdout]     |
[INFO] [stdout] 254 |             tx.send(Ok(data));
[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] 254 |             let _ = tx.send(Ok(data));
[INFO] [stdout]     |             +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `release` profile [optimized] target(s) in 1m 00s
[INFO] [stderr] warning: the following packages contain code that will be rejected by a future version of Rust: libmcaptcha v0.2.4 (/opt/rustwide/workdir), redis v0.23.3
[INFO] [stderr] note: to see what the problems were, use the option `--future-incompat-report`, or run `cargo report future-incompatibilities --id 6`
[INFO] running `Command { std: "docker" "inspect" "81beaa11a966797dad5e1c3e34a318ca2aafe8ae647cd090df6e69a7d23c3652", 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" "81beaa11a966797dad5e1c3e34a318ca2aafe8ae647cd090df6e69a7d23c3652" "/opt/rustwide/cargo-home/bin/cargo" "+1.99.0-beta.8" "test" "--frozen" "--no-run" "--message-format=json" "--release", kill_on_drop: false }`
[INFO] [stderr]    Compiling actix-rt v2.9.0
[INFO] [stderr]    Compiling actix v0.13.1
[INFO] [stderr]    Compiling libmcaptcha v0.2.4 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unexpected `cfg` condition name: `tarpaulin_include`
[INFO] [stdout]   --> src/errors.rs:28:11
[INFO] [stdout]    |
[INFO] [stdout] 28 | #[cfg(not(tarpaulin_include))]
[INFO] [stdout]    |           ^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = help: expected names are: `docsrs`, `feature`, and `test` and 34 more
[INFO] [stdout]    = help: consider using a Cargo feature instead
[INFO] [stdout]    = help: or consider adding in `Cargo.toml` the `check-cfg` lint config for the lint:
[INFO] [stdout]             [lints.rust]
[INFO] [stdout]             unexpected_cfgs = { level = "warn", check-cfg = ['cfg(tarpaulin_include)'] }
[INFO] [stdout]    = help: or consider adding `println!("cargo::rustc-check-cfg=cfg(tarpaulin_include)");` to the top of the `build.rs`
[INFO] [stdout]    = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stdout]    = note: `#[warn(unexpected_cfgs)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unexpected `cfg` condition name: `tarpaulin_include`
[INFO] [stdout]    --> src/errors.rs:127:11
[INFO] [stdout]     |
[INFO] [stdout] 127 | #[cfg(not(tarpaulin_include))]
[INFO] [stdout]     |           ^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = help: consider using a Cargo feature instead
[INFO] [stdout]     = help: or consider adding in `Cargo.toml` the `check-cfg` lint config for the lint:
[INFO] [stdout]              [lints.rust]
[INFO] [stdout]              unexpected_cfgs = { level = "warn", check-cfg = ['cfg(tarpaulin_include)'] }
[INFO] [stdout]     = help: or consider adding `println!("cargo::rustc-check-cfg=cfg(tarpaulin_include)");` to the top of the `build.rs`
[INFO] [stdout]     = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unexpected `cfg` condition name: `tarpaulin_include`
[INFO] [stdout]    --> src/errors.rs:135:11
[INFO] [stdout]     |
[INFO] [stdout] 135 | #[cfg(not(tarpaulin_include))]
[INFO] [stdout]     |           ^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = help: consider using a Cargo feature instead
[INFO] [stdout]     = help: or consider adding in `Cargo.toml` the `check-cfg` lint config for the lint:
[INFO] [stdout]              [lints.rust]
[INFO] [stdout]              unexpected_cfgs = { level = "warn", check-cfg = ['cfg(tarpaulin_include)'] }
[INFO] [stdout]     = help: or consider adding `println!("cargo::rustc-check-cfg=cfg(tarpaulin_include)");` to the top of the `build.rs`
[INFO] [stdout]     = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unexpected `cfg` condition name: `tarpaulin_include`
[INFO] [stdout]    --> src/errors.rs:144:11
[INFO] [stdout]     |
[INFO] [stdout] 144 | #[cfg(not(tarpaulin_include))]
[INFO] [stdout]     |           ^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = help: consider using a Cargo feature instead
[INFO] [stdout]     = help: or consider adding in `Cargo.toml` the `check-cfg` lint config for the lint:
[INFO] [stdout]              [lints.rust]
[INFO] [stdout]              unexpected_cfgs = { level = "warn", check-cfg = ['cfg(tarpaulin_include)'] }
[INFO] [stdout]     = help: or consider adding `println!("cargo::rustc-check-cfg=cfg(tarpaulin_include)");` to the top of the `build.rs`
[INFO] [stdout]     = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `log::debug`
[INFO] [stdout]   --> src/queue.rs:24:5
[INFO] [stdout]    |
[INFO] [stdout] 24 | use log::debug;
[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: `log::error`
[INFO] [stdout]   --> src/queue.rs:25:5
[INFO] [stdout]    |
[INFO] [stdout] 25 | use log::error;
[INFO] [stdout]    |     ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: this function depends on never type fallback being `()`
[INFO] [stdout]    --> src/redis/mcaptcha_redis.rs:125:5
[INFO] [stdout]     |
[INFO] [stdout] 125 |     pub async fn add_mcaptcha(&self, msg: AddSite) -> CaptchaResult<()> {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = help: specify the types explicitly
[INFO] [stdout] note: in edition 2024, the requirement `!: FromRedisValue` will fail
[INFO] [stdout]    --> src/redis/mcaptcha_redis.rs:130:14
[INFO] [stdout]     |
[INFO] [stdout] 130 |             .exec(redis::cmd(ADD_CAPTCHA).arg(&[name, payload]))
[INFO] [stdout]     |              ^^^^
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in Rust 2024 and in a future release in all editions!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/never-type-fallback.html>
[INFO] [stdout]     = note: `#[warn(dependency_on_unit_never_type_fallback)]` (part of `#[warn(rust_2024_compatibility)]`) on by default
[INFO] [stdout] help: use `()` annotations to avoid fallback changes
[INFO] [stdout]     |
[INFO] [stdout] 130 |             .exec::<()>(redis::cmd(ADD_CAPTCHA).arg(&[name, payload]))
[INFO] [stdout]     |                  ++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: this function depends on never type fallback being `()`
[INFO] [stdout]    --> src/redis/mcaptcha_redis.rs:156:5
[INFO] [stdout]     |
[INFO] [stdout] 156 |     pub async fn delete_captcha(&self, captcha: &str) -> CaptchaResult<()> {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = help: specify the types explicitly
[INFO] [stdout] note: in edition 2024, the requirement `!: FromRedisValue` will fail
[INFO] [stdout]    --> src/redis/mcaptcha_redis.rs:157:16
[INFO] [stdout]     |
[INFO] [stdout] 157 |         self.0.exec(redis::cmd(DEL).arg(&[captcha])).await?;
[INFO] [stdout]     |                ^^^^
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in Rust 2024 and in a future release in all editions!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/never-type-fallback.html>
[INFO] [stdout] help: use `()` annotations to avoid fallback changes
[INFO] [stdout]     |
[INFO] [stdout] 157 |         self.0.exec::<()>(redis::cmd(DEL).arg(&[captcha])).await?;
[INFO] [stdout]     |                    ++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: this function depends on never type fallback being `()`
[INFO] [stdout]    --> src/redis/mcaptcha_redis.rs:162:5
[INFO] [stdout]     |
[INFO] [stdout] 162 |     pub async fn rename_captcha(&self, name: &str, rename_to: &str) -> CaptchaResult<()> {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = help: specify the types explicitly
[INFO] [stdout] note: in edition 2024, the requirement `!: FromRedisValue` will fail
[INFO] [stdout]    --> src/redis/mcaptcha_redis.rs:164:14
[INFO] [stdout]     |
[INFO] [stdout] 164 |             .exec(redis::cmd(RENAME_CAPTCHA).arg(&[name, rename_to]))
[INFO] [stdout]     |              ^^^^
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in Rust 2024 and in a future release in all editions!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/never-type-fallback.html>
[INFO] [stdout] help: use `()` annotations to avoid fallback changes
[INFO] [stdout]     |
[INFO] [stdout] 164 |             .exec::<()>(redis::cmd(RENAME_CAPTCHA).arg(&[name, rename_to]))
[INFO] [stdout]     |                  ++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: this function depends on never type fallback being `()`
[INFO] [stdout]    --> src/redis/mcaptcha_redis.rs:170:5
[INFO] [stdout]     |
[INFO] [stdout] 170 | /     pub async fn add_challenge(
[INFO] [stdout] 171 | |         &self,
[INFO] [stdout] 172 | |         captcha: &str,
[INFO] [stdout] 173 | |         challlenge: &AddChallenge,
[INFO] [stdout] 174 | |     ) -> CaptchaResult<()> {
[INFO] [stdout]     | |__________________________^
[INFO] [stdout]     |
[INFO] [stdout]     = help: specify the types explicitly
[INFO] [stdout] note: in edition 2024, the requirement `!: FromRedisValue` will fail
[INFO] [stdout]    --> src/redis/mcaptcha_redis.rs:177:14
[INFO] [stdout]     |
[INFO] [stdout] 177 |             .exec(redis::cmd(ADD_CHALLENGE).arg(&[captcha, &payload]))
[INFO] [stdout]     |              ^^^^
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in Rust 2024 and in a future release in all editions!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/never-type-fallback.html>
[INFO] [stdout] help: use `()` annotations to avoid fallback changes
[INFO] [stdout]     |
[INFO] [stdout] 177 |             .exec::<()>(redis::cmd(ADD_CHALLENGE).arg(&[captcha, &payload]))
[INFO] [stdout]     |                  ++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: this function depends on never type fallback being `()`
[INFO] [stdout]    --> src/redis/mcaptcha_redis.rs:195:5
[INFO] [stdout]     |
[INFO] [stdout] 195 |     pub async fn delete_challenge(&self, msg: &VerifyCaptchaResult) -> CaptchaResult<()> {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = help: specify the types explicitly
[INFO] [stdout] note: in edition 2024, the requirement `!: FromRedisValue` will fail
[INFO] [stdout]    --> src/redis/mcaptcha_redis.rs:197:14
[INFO] [stdout]     |
[INFO] [stdout] 197 |             .exec(redis::cmd(DELETE_CHALLENGE).arg(&[&msg.key, &msg.token]))
[INFO] [stdout]     |              ^^^^
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in Rust 2024 and in a future release in all editions!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/never-type-fallback.html>
[INFO] [stdout] help: use `()` annotations to avoid fallback changes
[INFO] [stdout]     |
[INFO] [stdout] 197 |             .exec::<()>(redis::cmd(DELETE_CHALLENGE).arg(&[&msg.key, &msg.token]))
[INFO] [stdout]     |                  ++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: this function depends on never type fallback being `()`
[INFO] [stdout]    --> src/redis/mcaptcha_redis.rs:237:5
[INFO] [stdout]     |
[INFO] [stdout] 237 |     pub async fn delete_token(&self, msg: &VerifyCaptchaResult) -> CaptchaResult<()> {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = help: specify the types explicitly
[INFO] [stdout] note: in edition 2024, the requirement `!: FromRedisValue` will fail
[INFO] [stdout]    --> src/redis/mcaptcha_redis.rs:241:16
[INFO] [stdout]     |
[INFO] [stdout] 241 |         self.0.exec(redis::cmd("DEL").arg(&[&key])).await?;
[INFO] [stdout]     |                ^^^^
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in Rust 2024 and in a future release in all editions!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/never-type-fallback.html>
[INFO] [stdout] help: use `()` annotations to avoid fallback changes
[INFO] [stdout]     |
[INFO] [stdout] 241 |         self.0.exec::<()>(redis::cmd("DEL").arg(&[&key])).await?;
[INFO] [stdout]     |                    ++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated associated function `redis::cluster::ClusterClient::open`: Use new()
[INFO] [stdout]   --> src/redis/mod.rs:50:53
[INFO] [stdout]    |
[INFO] [stdout] 50 |                 let cluster_client = ClusterClient::open(nodes.to_owned()).unwrap();
[INFO] [stdout]    |                                                     ^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(deprecated)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unexpected `cfg` condition name: `tarpaulin_include`
[INFO] [stdout]   --> src/errors.rs:28:11
[INFO] [stdout]    |
[INFO] [stdout] 28 | #[cfg(not(tarpaulin_include))]
[INFO] [stdout]    |           ^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = help: expected names are: `docsrs`, `feature`, and `test` and 34 more
[INFO] [stdout]    = help: consider using a Cargo feature instead
[INFO] [stdout]    = help: or consider adding in `Cargo.toml` the `check-cfg` lint config for the lint:
[INFO] [stdout]             [lints.rust]
[INFO] [stdout]             unexpected_cfgs = { level = "warn", check-cfg = ['cfg(tarpaulin_include)'] }
[INFO] [stdout]    = help: or consider adding `println!("cargo::rustc-check-cfg=cfg(tarpaulin_include)");` to the top of the `build.rs`
[INFO] [stdout]    = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stdout]    = note: `#[warn(unexpected_cfgs)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unexpected `cfg` condition name: `tarpaulin_include`
[INFO] [stdout]    --> src/errors.rs:127:11
[INFO] [stdout]     |
[INFO] [stdout] 127 | #[cfg(not(tarpaulin_include))]
[INFO] [stdout]     |           ^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = help: consider using a Cargo feature instead
[INFO] [stdout]     = help: or consider adding in `Cargo.toml` the `check-cfg` lint config for the lint:
[INFO] [stdout]              [lints.rust]
[INFO] [stdout]              unexpected_cfgs = { level = "warn", check-cfg = ['cfg(tarpaulin_include)'] }
[INFO] [stdout]     = help: or consider adding `println!("cargo::rustc-check-cfg=cfg(tarpaulin_include)");` to the top of the `build.rs`
[INFO] [stdout]     = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unexpected `cfg` condition name: `tarpaulin_include`
[INFO] [stdout]    --> src/errors.rs:135:11
[INFO] [stdout]     |
[INFO] [stdout] 135 | #[cfg(not(tarpaulin_include))]
[INFO] [stdout]     |           ^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = help: consider using a Cargo feature instead
[INFO] [stdout]     = help: or consider adding in `Cargo.toml` the `check-cfg` lint config for the lint:
[INFO] [stdout]              [lints.rust]
[INFO] [stdout]              unexpected_cfgs = { level = "warn", check-cfg = ['cfg(tarpaulin_include)'] }
[INFO] [stdout]     = help: or consider adding `println!("cargo::rustc-check-cfg=cfg(tarpaulin_include)");` to the top of the `build.rs`
[INFO] [stdout]     = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unexpected `cfg` condition name: `tarpaulin_include`
[INFO] [stdout]    --> src/errors.rs:144:11
[INFO] [stdout]     |
[INFO] [stdout] 144 | #[cfg(not(tarpaulin_include))]
[INFO] [stdout]     |           ^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = help: consider using a Cargo feature instead
[INFO] [stdout]     = help: or consider adding in `Cargo.toml` the `check-cfg` lint config for the lint:
[INFO] [stdout]              [lints.rust]
[INFO] [stdout]              unexpected_cfgs = { level = "warn", check-cfg = ['cfg(tarpaulin_include)'] }
[INFO] [stdout]     = help: or consider adding `println!("cargo::rustc-check-cfg=cfg(tarpaulin_include)");` to the top of the `build.rs`
[INFO] [stdout]     = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::mcaptcha`
[INFO] [stdout]    --> src/master/embedded/counter.rs:226:9
[INFO] [stdout]     |
[INFO] [stdout] 226 |     use crate::mcaptcha;
[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: `log::debug`
[INFO] [stdout]   --> src/queue.rs:24:5
[INFO] [stdout]    |
[INFO] [stdout] 24 | use log::debug;
[INFO] [stdout]    |     ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: this function depends on never type fallback being `()`
[INFO] [stdout]    --> src/redis/mcaptcha_redis.rs:125:5
[INFO] [stdout]     |
[INFO] [stdout] 125 |     pub async fn add_mcaptcha(&self, msg: AddSite) -> CaptchaResult<()> {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = help: specify the types explicitly
[INFO] [stdout] note: in edition 2024, the requirement `!: FromRedisValue` will fail
[INFO] [stdout]    --> src/redis/mcaptcha_redis.rs:130:14
[INFO] [stdout]     |
[INFO] [stdout] 130 |             .exec(redis::cmd(ADD_CAPTCHA).arg(&[name, payload]))
[INFO] [stdout]     |              ^^^^
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in Rust 2024 and in a future release in all editions!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/never-type-fallback.html>
[INFO] [stdout]     = note: `#[warn(dependency_on_unit_never_type_fallback)]` (part of `#[warn(rust_2024_compatibility)]`) on by default
[INFO] [stdout] help: use `()` annotations to avoid fallback changes
[INFO] [stdout]     |
[INFO] [stdout] 130 |             .exec::<()>(redis::cmd(ADD_CAPTCHA).arg(&[name, payload]))
[INFO] [stdout]     |                  ++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: this function depends on never type fallback being `()`
[INFO] [stdout]    --> src/redis/mcaptcha_redis.rs:156:5
[INFO] [stdout]     |
[INFO] [stdout] 156 |     pub async fn delete_captcha(&self, captcha: &str) -> CaptchaResult<()> {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = help: specify the types explicitly
[INFO] [stdout] note: in edition 2024, the requirement `!: FromRedisValue` will fail
[INFO] [stdout]    --> src/redis/mcaptcha_redis.rs:157:16
[INFO] [stdout]     |
[INFO] [stdout] 157 |         self.0.exec(redis::cmd(DEL).arg(&[captcha])).await?;
[INFO] [stdout]     |                ^^^^
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in Rust 2024 and in a future release in all editions!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/never-type-fallback.html>
[INFO] [stdout] help: use `()` annotations to avoid fallback changes
[INFO] [stdout]     |
[INFO] [stdout] 157 |         self.0.exec::<()>(redis::cmd(DEL).arg(&[captcha])).await?;
[INFO] [stdout]     |                    ++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `m`
[INFO] [stdout]    --> src/master/redis/master.rs:118:26
[INFO] [stdout]     |
[INFO] [stdout] 118 |     fn handle(&mut self, m: GetInternalData, ctx: &mut Self::Context) -> Self::Result {
[INFO] [stdout]     |                          ^ help: if this is intentional, prefix it with an underscore: `_m`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `ctx`
[INFO] [stdout]    --> src/master/redis/master.rs:118:46
[INFO] [stdout]     |
[INFO] [stdout] 118 |     fn handle(&mut self, m: GetInternalData, ctx: &mut Self::Context) -> Self::Result {
[INFO] [stdout]     |                                              ^^^ help: if this is intentional, prefix it with an underscore: `_ctx`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: this function depends on never type fallback being `()`
[INFO] [stdout]    --> src/redis/mcaptcha_redis.rs:162:5
[INFO] [stdout]     |
[INFO] [stdout] 162 |     pub async fn rename_captcha(&self, name: &str, rename_to: &str) -> CaptchaResult<()> {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = help: specify the types explicitly
[INFO] [stdout] note: in edition 2024, the requirement `!: FromRedisValue` will fail
[INFO] [stdout]    --> src/redis/mcaptcha_redis.rs:164:14
[INFO] [stdout]     |
[INFO] [stdout] 164 |             .exec(redis::cmd(RENAME_CAPTCHA).arg(&[name, rename_to]))
[INFO] [stdout]     |              ^^^^
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in Rust 2024 and in a future release in all editions!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/never-type-fallback.html>
[INFO] [stdout] help: use `()` annotations to avoid fallback changes
[INFO] [stdout]     |
[INFO] [stdout] 164 |             .exec::<()>(redis::cmd(RENAME_CAPTCHA).arg(&[name, rename_to]))
[INFO] [stdout]     |                  ++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `m`
[INFO] [stdout]    --> src/master/redis/master.rs:126:26
[INFO] [stdout]     |
[INFO] [stdout] 126 |     fn handle(&mut self, m: SetInternalData, ctx: &mut Self::Context) -> Self::Result {
[INFO] [stdout]     |                          ^ help: if this is intentional, prefix it with an underscore: `_m`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `ctx`
[INFO] [stdout]    --> src/master/redis/master.rs:126:46
[INFO] [stdout]     |
[INFO] [stdout] 126 |     fn handle(&mut self, m: SetInternalData, ctx: &mut Self::Context) -> Self::Result {
[INFO] [stdout]     |                                              ^^^ help: if this is intentional, prefix it with an underscore: `_ctx`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: this function depends on never type fallback being `()`
[INFO] [stdout]    --> src/redis/mcaptcha_redis.rs:170:5
[INFO] [stdout]     |
[INFO] [stdout] 170 | /     pub async fn add_challenge(
[INFO] [stdout] 171 | |         &self,
[INFO] [stdout] 172 | |         captcha: &str,
[INFO] [stdout] 173 | |         challlenge: &AddChallenge,
[INFO] [stdout] 174 | |     ) -> CaptchaResult<()> {
[INFO] [stdout]     | |__________________________^
[INFO] [stdout]     |
[INFO] [stdout]     = help: specify the types explicitly
[INFO] [stdout] note: in edition 2024, the requirement `!: FromRedisValue` will fail
[INFO] [stdout]    --> src/redis/mcaptcha_redis.rs:177:14
[INFO] [stdout]     |
[INFO] [stdout] 177 |             .exec(redis::cmd(ADD_CHALLENGE).arg(&[captcha, &payload]))
[INFO] [stdout]     |              ^^^^
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in Rust 2024 and in a future release in all editions!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/never-type-fallback.html>
[INFO] [stdout] help: use `()` annotations to avoid fallback changes
[INFO] [stdout]     |
[INFO] [stdout] 177 |             .exec::<()>(redis::cmd(ADD_CHALLENGE).arg(&[captcha, &payload]))
[INFO] [stdout]     |                  ++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: this function depends on never type fallback being `()`
[INFO] [stdout]    --> src/redis/mcaptcha_redis.rs:195:5
[INFO] [stdout]     |
[INFO] [stdout] 195 |     pub async fn delete_challenge(&self, msg: &VerifyCaptchaResult) -> CaptchaResult<()> {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = help: specify the types explicitly
[INFO] [stdout] note: in edition 2024, the requirement `!: FromRedisValue` will fail
[INFO] [stdout]    --> src/redis/mcaptcha_redis.rs:197:14
[INFO] [stdout]     |
[INFO] [stdout] 197 |             .exec(redis::cmd(DELETE_CHALLENGE).arg(&[&msg.key, &msg.token]))
[INFO] [stdout]     |              ^^^^
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in Rust 2024 and in a future release in all editions!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/never-type-fallback.html>
[INFO] [stdout] help: use `()` annotations to avoid fallback changes
[INFO] [stdout]     |
[INFO] [stdout] 197 |             .exec::<()>(redis::cmd(DELETE_CHALLENGE).arg(&[&msg.key, &msg.token]))
[INFO] [stdout]     |                  ++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: this function depends on never type fallback being `()`
[INFO] [stdout]    --> src/redis/mcaptcha_redis.rs:237:5
[INFO] [stdout]     |
[INFO] [stdout] 237 |     pub async fn delete_token(&self, msg: &VerifyCaptchaResult) -> CaptchaResult<()> {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = help: specify the types explicitly
[INFO] [stdout] note: in edition 2024, the requirement `!: FromRedisValue` will fail
[INFO] [stdout]    --> src/redis/mcaptcha_redis.rs:241:16
[INFO] [stdout]     |
[INFO] [stdout] 241 |         self.0.exec(redis::cmd("DEL").arg(&[&key])).await?;
[INFO] [stdout]     |                ^^^^
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in Rust 2024 and in a future release in all editions!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/never-type-fallback.html>
[INFO] [stdout] help: use `()` annotations to avoid fallback changes
[INFO] [stdout]     |
[INFO] [stdout] 241 |         self.0.exec::<()>(redis::cmd("DEL").arg(&[&key])).await?;
[INFO] [stdout]     |                    ++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated associated function `redis::cluster::ClusterClient::open`: Use new()
[INFO] [stdout]   --> src/redis/mod.rs:50:53
[INFO] [stdout]    |
[INFO] [stdout] 50 |                 let cluster_client = ClusterClient::open(nodes.to_owned()).unwrap();
[INFO] [stdout]    |                                                     ^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(deprecated)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> src/master/embedded/master.rs:254:13
[INFO] [stdout]     |
[INFO] [stdout] 254 |             tx.send(Ok(data));
[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] 254 |             let _ = tx.send(Ok(data));
[INFO] [stdout]     |             +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `m`
[INFO] [stdout]    --> src/master/redis/master.rs:118:26
[INFO] [stdout]     |
[INFO] [stdout] 118 |     fn handle(&mut self, m: GetInternalData, ctx: &mut Self::Context) -> Self::Result {
[INFO] [stdout]     |                          ^ help: if this is intentional, prefix it with an underscore: `_m`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `ctx`
[INFO] [stdout]    --> src/master/redis/master.rs:118:46
[INFO] [stdout]     |
[INFO] [stdout] 118 |     fn handle(&mut self, m: GetInternalData, ctx: &mut Self::Context) -> Self::Result {
[INFO] [stdout]     |                                              ^^^ help: if this is intentional, prefix it with an underscore: `_ctx`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `m`
[INFO] [stdout]    --> src/master/redis/master.rs:126:26
[INFO] [stdout]     |
[INFO] [stdout] 126 |     fn handle(&mut self, m: SetInternalData, ctx: &mut Self::Context) -> Self::Result {
[INFO] [stdout]     |                          ^ help: if this is intentional, prefix it with an underscore: `_m`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `ctx`
[INFO] [stdout]    --> src/master/redis/master.rs:126:46
[INFO] [stdout]     |
[INFO] [stdout] 126 |     fn handle(&mut self, m: SetInternalData, ctx: &mut Self::Context) -> Self::Result {
[INFO] [stdout]     |                                              ^^^ help: if this is intentional, prefix it with an underscore: `_ctx`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> src/master/embedded/master.rs:254:13
[INFO] [stdout]     |
[INFO] [stdout] 254 |             tx.send(Ok(data));
[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] 254 |             let _ = tx.send(Ok(data));
[INFO] [stdout]     |             +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `release` profile [optimized] target(s) in 18.22s
[INFO] [stderr] warning: the following packages contain code that will be rejected by a future version of Rust: libmcaptcha v0.2.4 (/opt/rustwide/workdir), redis v0.23.3
[INFO] [stderr] note: to see what the problems were, use the option `--future-incompat-report`, or run `cargo report future-incompatibilities --id 7`
[INFO] running `Command { std: "docker" "inspect" "81beaa11a966797dad5e1c3e34a318ca2aafe8ae647cd090df6e69a7d23c3652", 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" "81beaa11a966797dad5e1c3e34a318ca2aafe8ae647cd090df6e69a7d23c3652" "/opt/rustwide/cargo-home/bin/cargo" "+1.99.0-beta.8" "test" "--frozen" "--release", kill_on_drop: false }`
[INFO] [stderr] warning: unexpected `cfg` condition name: `tarpaulin_include`
[INFO] [stderr]   --> src/errors.rs:28:11
[INFO] [stderr]    |
[INFO] [stderr] 28 | #[cfg(not(tarpaulin_include))]
[INFO] [stderr]    |           ^^^^^^^^^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = help: expected names are: `docsrs`, `feature`, and `test` and 34 more
[INFO] [stderr]    = help: consider using a Cargo feature instead
[INFO] [stderr]    = help: or consider adding in `Cargo.toml` the `check-cfg` lint config for the lint:
[INFO] [stderr]             [lints.rust]
[INFO] [stderr]             unexpected_cfgs = { level = "warn", check-cfg = ['cfg(tarpaulin_include)'] }
[INFO] [stderr]    = help: or consider adding `println!("cargo::rustc-check-cfg=cfg(tarpaulin_include)");` to the top of the `build.rs`
[INFO] [stderr]    = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stderr]    = note: `#[warn(unexpected_cfgs)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unexpected `cfg` condition name: `tarpaulin_include`
[INFO] [stderr]    --> src/errors.rs:127:11
[INFO] [stderr]     |
[INFO] [stderr] 127 | #[cfg(not(tarpaulin_include))]
[INFO] [stderr]     |           ^^^^^^^^^^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = help: consider using a Cargo feature instead
[INFO] [stderr]     = help: or consider adding in `Cargo.toml` the `check-cfg` lint config for the lint:
[INFO] [stderr]              [lints.rust]
[INFO] [stderr]              unexpected_cfgs = { level = "warn", check-cfg = ['cfg(tarpaulin_include)'] }
[INFO] [stderr]     = help: or consider adding `println!("cargo::rustc-check-cfg=cfg(tarpaulin_include)");` to the top of the `build.rs`
[INFO] [stderr]     = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stderr] 
[INFO] [stderr] warning: unexpected `cfg` condition name: `tarpaulin_include`
[INFO] [stderr]    --> src/errors.rs:135:11
[INFO] [stderr]     |
[INFO] [stderr] 135 | #[cfg(not(tarpaulin_include))]
[INFO] [stderr]     |           ^^^^^^^^^^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = help: consider using a Cargo feature instead
[INFO] [stderr]     = help: or consider adding in `Cargo.toml` the `check-cfg` lint config for the lint:
[INFO] [stderr]              [lints.rust]
[INFO] [stderr]              unexpected_cfgs = { level = "warn", check-cfg = ['cfg(tarpaulin_include)'] }
[INFO] [stderr]     = help: or consider adding `println!("cargo::rustc-check-cfg=cfg(tarpaulin_include)");` to the top of the `build.rs`
[INFO] [stderr]     = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stderr] 
[INFO] [stderr] warning: unexpected `cfg` condition name: `tarpaulin_include`
[INFO] [stderr]    --> src/errors.rs:144:11
[INFO] [stderr]     |
[INFO] [stderr] 144 | #[cfg(not(tarpaulin_include))]
[INFO] [stderr]     |           ^^^^^^^^^^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = help: consider using a Cargo feature instead
[INFO] [stderr]     = help: or consider adding in `Cargo.toml` the `check-cfg` lint config for the lint:
[INFO] [stderr]              [lints.rust]
[INFO] [stderr]              unexpected_cfgs = { level = "warn", check-cfg = ['cfg(tarpaulin_include)'] }
[INFO] [stderr]     = help: or consider adding `println!("cargo::rustc-check-cfg=cfg(tarpaulin_include)");` to the top of the `build.rs`
[INFO] [stderr]     = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `log::debug`
[INFO] [stderr]   --> src/queue.rs:24:5
[INFO] [stderr]    |
[INFO] [stderr] 24 | use log::debug;
[INFO] [stderr]    |     ^^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `log::error`
[INFO] [stderr]   --> src/queue.rs:25:5
[INFO] [stderr]    |
[INFO] [stderr] 25 | use log::error;
[INFO] [stderr]    |     ^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: this function depends on never type fallback being `()`
[INFO] [stderr]    --> src/redis/mcaptcha_redis.rs:125:5
[INFO] [stderr]     |
[INFO] [stderr] 125 |     pub async fn add_mcaptcha(&self, msg: AddSite) -> CaptchaResult<()> {
[INFO] [stderr]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = help: specify the types explicitly
[INFO] [stderr] note: in edition 2024, the requirement `!: FromRedisValue` will fail
[INFO] [stderr]    --> src/redis/mcaptcha_redis.rs:130:14
[INFO] [stderr]     |
[INFO] [stderr] 130 |             .exec(redis::cmd(ADD_CAPTCHA).arg(&[name, payload]))
[INFO] [stderr]     |              ^^^^
[INFO] [stderr]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in Rust 2024 and in a future release in all editions!
[INFO] [stderr]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/never-type-fallback.html>
[INFO] [stderr]     = note: `#[warn(dependency_on_unit_never_type_fallback)]` (part of `#[warn(rust_2024_compatibility)]`) on by default
[INFO] [stderr] help: use `()` annotations to avoid fallback changes
[INFO] [stderr]     |
[INFO] [stderr] 130 |             .exec::<()>(redis::cmd(ADD_CAPTCHA).arg(&[name, payload]))
[INFO] [stderr]     |                  ++++++
[INFO] [stderr] 
[INFO] [stderr] warning: this function depends on never type fallback being `()`
[INFO] [stderr]    --> src/redis/mcaptcha_redis.rs:156:5
[INFO] [stderr]     |
[INFO] [stderr] 156 |     pub async fn delete_captcha(&self, captcha: &str) -> CaptchaResult<()> {
[INFO] [stderr]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = help: specify the types explicitly
[INFO] [stderr] note: in edition 2024, the requirement `!: FromRedisValue` will fail
[INFO] [stderr]    --> src/redis/mcaptcha_redis.rs:157:16
[INFO] [stderr]     |
[INFO] [stderr] 157 |         self.0.exec(redis::cmd(DEL).arg(&[captcha])).await?;
[INFO] [stderr]     |                ^^^^
[INFO] [stderr]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in Rust 2024 and in a future release in all editions!
[INFO] [stderr]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/never-type-fallback.html>
[INFO] [stderr] help: use `()` annotations to avoid fallback changes
[INFO] [stderr]     |
[INFO] [stderr] 157 |         self.0.exec::<()>(redis::cmd(DEL).arg(&[captcha])).await?;
[INFO] [stderr]     |                    ++++++
[INFO] [stderr] 
[INFO] [stderr] warning: this function depends on never type fallback being `()`
[INFO] [stderr]    --> src/redis/mcaptcha_redis.rs:162:5
[INFO] [stderr]     |
[INFO] [stderr] 162 |     pub async fn rename_captcha(&self, name: &str, rename_to: &str) -> CaptchaResult<()> {
[INFO] [stderr]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = help: specify the types explicitly
[INFO] [stderr] note: in edition 2024, the requirement `!: FromRedisValue` will fail
[INFO] [stderr]    --> src/redis/mcaptcha_redis.rs:164:14
[INFO] [stderr]     |
[INFO] [stderr] 164 |             .exec(redis::cmd(RENAME_CAPTCHA).arg(&[name, rename_to]))
[INFO] [stderr]     |              ^^^^
[INFO] [stderr]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in Rust 2024 and in a future release in all editions!
[INFO] [stderr]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/never-type-fallback.html>
[INFO] [stderr] help: use `()` annotations to avoid fallback changes
[INFO] [stderr]     |
[INFO] [stderr] 164 |             .exec::<()>(redis::cmd(RENAME_CAPTCHA).arg(&[name, rename_to]))
[INFO] [stderr]     |                  ++++++
[INFO] [stderr] 
[INFO] [stderr] warning: this function depends on never type fallback being `()`
[INFO] [stderr]    --> src/redis/mcaptcha_redis.rs:170:5
[INFO] [stderr]     |
[INFO] [stderr] 170 | /     pub async fn add_challenge(
[INFO] [stderr] 171 | |         &self,
[INFO] [stderr] 172 | |         captcha: &str,
[INFO] [stderr] 173 | |         challlenge: &AddChallenge,
[INFO] [stderr] 174 | |     ) -> CaptchaResult<()> {
[INFO] [stderr]     | |__________________________^
[INFO] [stderr]     |
[INFO] [stderr]     = help: specify the types explicitly
[INFO] [stderr] note: in edition 2024, the requirement `!: FromRedisValue` will fail
[INFO] [stderr]    --> src/redis/mcaptcha_redis.rs:177:14
[INFO] [stderr]     |
[INFO] [stderr] 177 |             .exec(redis::cmd(ADD_CHALLENGE).arg(&[captcha, &payload]))
[INFO] [stderr]     |              ^^^^
[INFO] [stderr]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in Rust 2024 and in a future release in all editions!
[INFO] [stderr]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/never-type-fallback.html>
[INFO] [stderr] help: use `()` annotations to avoid fallback changes
[INFO] [stderr]     |
[INFO] [stderr] 177 |             .exec::<()>(redis::cmd(ADD_CHALLENGE).arg(&[captcha, &payload]))
[INFO] [stderr]     |                  ++++++
[INFO] [stderr] 
[INFO] [stderr] warning: this function depends on never type fallback being `()`
[INFO] [stderr]    --> src/redis/mcaptcha_redis.rs:195:5
[INFO] [stderr]     |
[INFO] [stderr] 195 |     pub async fn delete_challenge(&self, msg: &VerifyCaptchaResult) -> CaptchaResult<()> {
[INFO] [stderr]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = help: specify the types explicitly
[INFO] [stderr] note: in edition 2024, the requirement `!: FromRedisValue` will fail
[INFO] [stderr]    --> src/redis/mcaptcha_redis.rs:197:14
[INFO] [stderr]     |
[INFO] [stderr] 197 |             .exec(redis::cmd(DELETE_CHALLENGE).arg(&[&msg.key, &msg.token]))
[INFO] [stderr]     |              ^^^^
[INFO] [stderr]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in Rust 2024 and in a future release in all editions!
[INFO] [stderr]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/never-type-fallback.html>
[INFO] [stderr] help: use `()` annotations to avoid fallback changes
[INFO] [stderr]     |
[INFO] [stderr] 197 |             .exec::<()>(redis::cmd(DELETE_CHALLENGE).arg(&[&msg.key, &msg.token]))
[INFO] [stderr]     |                  ++++++
[INFO] [stderr] 
[INFO] [stderr] warning: this function depends on never type fallback being `()`
[INFO] [stderr]    --> src/redis/mcaptcha_redis.rs:237:5
[INFO] [stderr]     |
[INFO] [stderr] 237 |     pub async fn delete_token(&self, msg: &VerifyCaptchaResult) -> CaptchaResult<()> {
[INFO] [stderr]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = help: specify the types explicitly
[INFO] [stderr] note: in edition 2024, the requirement `!: FromRedisValue` will fail
[INFO] [stderr]    --> src/redis/mcaptcha_redis.rs:241:16
[INFO] [stderr]     |
[INFO] [stderr] 241 |         self.0.exec(redis::cmd("DEL").arg(&[&key])).await?;
[INFO] [stderr]     |                ^^^^
[INFO] [stderr]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in Rust 2024 and in a future release in all editions!
[INFO] [stderr]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/never-type-fallback.html>
[INFO] [stderr] help: use `()` annotations to avoid fallback changes
[INFO] [stderr]     |
[INFO] [stderr] 241 |         self.0.exec::<()>(redis::cmd("DEL").arg(&[&key])).await?;
[INFO] [stderr]     |                    ++++++
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated associated function `redis::cluster::ClusterClient::open`: Use new()
[INFO] [stderr]   --> src/redis/mod.rs:50:53
[INFO] [stderr]    |
[INFO] [stderr] 50 |                 let cluster_client = ClusterClient::open(nodes.to_owned()).unwrap();
[INFO] [stderr]    |                                                     ^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(deprecated)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `m`
[INFO] [stderr]    --> src/master/redis/master.rs:118:26
[INFO] [stderr]     |
[INFO] [stderr] 118 |     fn handle(&mut self, m: GetInternalData, ctx: &mut Self::Context) -> Self::Result {
[INFO] [stderr]     |                          ^ help: if this is intentional, prefix it with an underscore: `_m`
[INFO] [stderr]     |
[INFO] [stderr]     = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `ctx`
[INFO] [stderr]    --> src/master/redis/master.rs:118:46
[INFO] [stderr]     |
[INFO] [stderr] 118 |     fn handle(&mut self, m: GetInternalData, ctx: &mut Self::Context) -> Self::Result {
[INFO] [stderr]     |                                              ^^^ help: if this is intentional, prefix it with an underscore: `_ctx`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `m`
[INFO] [stderr]    --> src/master/redis/master.rs:126:26
[INFO] [stderr]     |
[INFO] [stderr] 126 |     fn handle(&mut self, m: SetInternalData, ctx: &mut Self::Context) -> Self::Result {
[INFO] [stderr]     |                          ^ help: if this is intentional, prefix it with an underscore: `_m`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `ctx`
[INFO] [stderr]    --> src/master/redis/master.rs:126:46
[INFO] [stderr]     |
[INFO] [stderr] 126 |     fn handle(&mut self, m: SetInternalData, ctx: &mut Self::Context) -> Self::Result {
[INFO] [stderr]     |                                              ^^^ help: if this is intentional, prefix it with an underscore: `_ctx`
[INFO] [stderr] 
[INFO] [stderr] warning: unused `Result` that must be used
[INFO] [stderr]    --> src/master/embedded/master.rs:254:13
[INFO] [stderr]     |
[INFO] [stderr] 254 |             tx.send(Ok(data));
[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] 254 |             let _ = tx.send(Ok(data));
[INFO] [stderr]     |             +++++++
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `crate::mcaptcha`
[INFO] [stderr]    --> src/master/embedded/counter.rs:226:9
[INFO] [stderr]     |
[INFO] [stderr] 226 |     use crate::mcaptcha;
[INFO] [stderr]     |         ^^^^^^^^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `log::debug`
[INFO] [stderr]   --> src/queue.rs:24:5
[INFO] [stderr]    |
[INFO] [stderr] 24 | use log::debug;
[INFO] [stderr]    |     ^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: `libmcaptcha` (lib) generated 18 warnings (run `cargo fix --lib -p libmcaptcha` to apply 12 suggestions)
[INFO] [stderr] warning: `libmcaptcha` (lib test) generated 18 warnings (16 duplicates) (run `cargo fix --lib -p libmcaptcha --tests` to apply 2 suggestions)
[INFO] [stderr]     Finished `release` profile [optimized] target(s) in 0.13s
[INFO] [stderr] warning: the following packages contain code that will be rejected by a future version of Rust: libmcaptcha v0.2.4 (/opt/rustwide/workdir), redis v0.23.3
[INFO] [stderr] note: to see what the problems were, use the option `--future-incompat-report`, or run `cargo report future-incompatibilities --id 7`
[INFO] [stderr]      Running unittests src/lib.rs (/opt/rustwide/target/release/deps/libmcaptcha-44bd5004d70c379f)
[INFO] [stdout] 
[INFO] [stdout] running 30 tests
[INFO] [stdout] test master::embedded::counter::tests::bulk_delete_works ... ok
[INFO] [stdout] test defense::tests::max_defense_works ... ok
[INFO] [stdout] test master::embedded::counter::tests::get_current_visitor_count_works ... ok
[INFO] [stdout] test defense::tests::defense_builder_duplicate_visitor_threshold ... ok
[INFO] [stdout] test defense::tests::defense_builder_works ... ok
[INFO] [stdout] test master::embedded::counter::tests::stop_works - should panic ... ok
[INFO] [stdout] test master::embedded::counter::tests::test_mcatcptha_builder ... ok
[INFO] [stdout] test defense::tests::level_builder_works ... ok
[INFO] [stdout] test defense::tests::minimum_defense_works ... ok
[INFO] [stdout] test master::embedded::counter::tests::mcaptcha_decrement_by_works ... ok
[INFO] [stdout] test defense::tests::loosen_up_works ... ok
[INFO] [stdout] test defense::tests::checking_for_integer_overflow ... ok
[INFO] [stdout] test defense::tests::tighten_up_works ... ok
[INFO] [stdout] test defense::tests::defense_builder_decreasing_difficulty_factor ... ok
[INFO] [stdout] test system::tests::get_pow_works ... ok
[INFO] [stdout] test system::tests::verify_pow_works ... ok
[INFO] [stdout] test master::embedded::counter::tests::counter_defense_tightenup_works ... ok
[INFO] [stdout] test queue::tests::manager_works ... ok
[INFO] [stdout] test master::redis::master::tests::redis_master_works ... FAILED
[INFO] [stdout] test queue::tests::abuse_manager ... ok
[INFO] [stdout] test master::embedded::counter::tests::counter_defense_loosenup_works ... ok
[INFO] [stdout] test cache::redis::tests::rediscache_pow_cache_works ... FAILED
[INFO] [stdout] test redis::mcaptcha_redis::tests::redis_master_works ... FAILED
[INFO] [stdout] test redis::tests::ping_works ... FAILED
[INFO] [stdout] test master::embedded::counter::tests::get_set_internal_data_works ... ok
[INFO] [stdout] test master::redis::master::tests::race_redis_master ... FAILED
[INFO] [stdout] test cache::hashcache::tests::hashcache_result_cache_works ... ok
[INFO] [stdout] test master::embedded::master::tests::master_actor_works ... ok
[INFO] [stdout] test cache::hashcache::tests::hashcache_pow_cache_works ... ok
[INFO] [stdout] test cache::redis::tests::redishashcache_result_cache_works ... FAILED
[INFO] [stdout] 
[INFO] [stdout] failures:
[INFO] [stdout] 
[INFO] [stdout] ---- master::redis::master::tests::redis_master_works stdout ----
[INFO] [stdout] 
[INFO] [stdout] thread 'master::redis::master::tests::redis_master_works' (1862) panicked at src/redis/mod.rs:46:22:
[INFO] [stdout] called `Result::unwrap()` on an `Err` value: Connection refused (os error 111)
[INFO] [stdout] stack backtrace:
[INFO] [stdout]    0:     0x5b35df580e01 - <<std[70759c8f55707aa4]::sys::backtrace::BacktraceLock>::print::DisplayBacktrace as core[df12db4294e9bfd3]::fmt::Display>::fmt
[INFO] [stdout]    1:     0x5b35df596cea - core[df12db4294e9bfd3]::fmt::write
[INFO] [stdout]    2:     0x5b35df58599c - <alloc[2182bb758b4b3781]::vec::Vec<u8> as core[df12db4294e9bfd3]::io::write::Write>::write_fmt
[INFO] [stdout]    3:     0x5b35df55ba36 - std[70759c8f55707aa4]::panicking::default_hook::{closure#0}
[INFO] [stdout]    4:     0x5b35df578959 - std[70759c8f55707aa4]::panicking::default_hook
[INFO] [stdout]    5:     0x5b35df48e7f0 - test[9d35eded1c95d3be]::test_main_inner::<test[9d35eded1c95d3be]::test_main_static::{closure#0}>::{closure#0}
[INFO] [stdout]    6:     0x5b35df578c82 - std[70759c8f55707aa4]::panicking::panic_with_hook
[INFO] [stdout]    7:     0x5b35df55bae2 - std[70759c8f55707aa4]::panicking::panic_handler::{closure#0}
[INFO] [stdout]    8:     0x5b35df554789 - std[70759c8f55707aa4]::sys::backtrace::__rust_end_short_backtrace::<std[70759c8f55707aa4]::panicking::panic_handler::{closure#0}, !>
[INFO] [stdout]    9:     0x5b35df55c8cd - __rustc[8fa7c3cbc660c2b3]::rust_begin_unwind
[INFO] [stdout]   10:     0x5b35df59744c - core[df12db4294e9bfd3]::panicking::panic_fmt
[INFO] [stdout]   11:     0x5b35df597222 - core[df12db4294e9bfd3]::result::unwrap_failed
[INFO] [stdout]   12:     0x5b35df3d3bc1 - <libmcaptcha[84c67e014cdc95c4]::redis::Redis>::new::{closure#0}
[INFO] [stdout]   13:     0x5b35df3d1f9e - <libmcaptcha[84c67e014cdc95c4]::redis::mcaptcha_redis::MCaptchaRedis>::new::{closure#0}
[INFO] [stdout]   14:     0x5b35df3d2612 - <libmcaptcha[84c67e014cdc95c4]::master::redis::master::Master>::new::{closure#0}
[INFO] [stdout]   15:     0x5b35df3c23cf - <std[70759c8f55707aa4]::thread::local::LocalKey<tokio[e6b49670655a2e24]::task::local::LocalData>>::with::<<tokio[e6b49670655a2e24]::task::local::LocalSet>::with<core[df12db4294e9bfd3]::task::poll::Poll<()>, <tokio[e6b49670655a2e24]::task::local::RunUntil<libmcaptcha[84c67e014cdc95c4]::master::redis::master::tests::redis_master_works::{closure#0}> as core[df12db4294e9bfd3]::future::future::Future>::poll::{closure#0}>::{closure#0}, core[df12db4294e9bfd3]::task::poll::Poll<()>>
[INFO] [stdout]   16:     0x5b35df447f23 - <core[df12db4294e9bfd3]::pin::Pin<&mut <tokio[e6b49670655a2e24]::task::local::LocalSet>::run_until<libmcaptcha[84c67e014cdc95c4]::master::redis::master::tests::redis_master_works::{closure#0}>::{closure#0}> as core[df12db4294e9bfd3]::future::future::Future>::poll
[INFO] [stdout]   17:     0x5b35df3dec6f - <tokio[e6b49670655a2e24]::runtime::scheduler::current_thread::Context>::enter::<core[df12db4294e9bfd3]::task::poll::Poll<()>, <tokio[e6b49670655a2e24]::runtime::scheduler::current_thread::CoreGuard>::block_on<core[df12db4294e9bfd3]::pin::Pin<&mut <tokio[e6b49670655a2e24]::task::local::LocalSet>::run_until<libmcaptcha[84c67e014cdc95c4]::master::redis::master::tests::redis_master_works::{closure#0}>::{closure#0}>>::{closure#0}::{closure#0}>
[INFO] [stdout]   18:     0x5b35df3eaf82 - <tokio[e6b49670655a2e24]::runtime::context::scoped::Scoped<tokio[e6b49670655a2e24]::runtime::scheduler::Context>>::set::<<tokio[e6b49670655a2e24]::runtime::scheduler::current_thread::CoreGuard>::enter<<tokio[e6b49670655a2e24]::runtime::scheduler::current_thread::CoreGuard>::block_on<core[df12db4294e9bfd3]::pin::Pin<&mut <tokio[e6b49670655a2e24]::task::local::LocalSet>::run_until<libmcaptcha[84c67e014cdc95c4]::master::redis::master::tests::redis_master_works::{closure#0}>::{closure#0}>>::{closure#0}, core[df12db4294e9bfd3]::option::Option<()>>::{closure#0}, (alloc[2182bb758b4b3781]::boxed::Box<tokio[e6b49670655a2e24]::runtime::scheduler::current_thread::Core>, core[df12db4294e9bfd3]::option::Option<()>)>
[INFO] [stdout]   19:     0x5b35df3e0f05 - <tokio[e6b49670655a2e24]::runtime::scheduler::current_thread::CoreGuard>::block_on::<core[df12db4294e9bfd3]::pin::Pin<&mut <tokio[e6b49670655a2e24]::task::local::LocalSet>::run_until<libmcaptcha[84c67e014cdc95c4]::master::redis::master::tests::redis_master_works::{closure#0}>::{closure#0}>>
[INFO] [stdout]   20:     0x5b35df456281 - tokio[e6b49670655a2e24]::runtime::context::runtime::enter_runtime::<<tokio[e6b49670655a2e24]::runtime::scheduler::current_thread::CurrentThread>::block_on<<tokio[e6b49670655a2e24]::task::local::LocalSet>::run_until<libmcaptcha[84c67e014cdc95c4]::master::redis::master::tests::redis_master_works::{closure#0}>::{closure#0}>::{closure#0}, ()>
[INFO] [stdout]   21:     0x5b35df44ab60 - <tokio[e6b49670655a2e24]::runtime::runtime::Runtime>::block_on::<<tokio[e6b49670655a2e24]::task::local::LocalSet>::run_until<libmcaptcha[84c67e014cdc95c4]::master::redis::master::tests::redis_master_works::{closure#0}>::{closure#0}>
[INFO] [stdout]   22:     0x5b35df47df76 - <libmcaptcha[84c67e014cdc95c4]::master::redis::master::tests::redis_master_works::{closure#0} as core[df12db4294e9bfd3]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]   23:     0x5b35df481adb - test[9d35eded1c95d3be]::__rust_begin_short_backtrace::<core[df12db4294e9bfd3]::result::Result<(), alloc[2182bb758b4b3781]::string::String>, fn() -> core[df12db4294e9bfd3]::result::Result<(), alloc[2182bb758b4b3781]::string::String>>
[INFO] [stdout]   24:     0x5b35df48f145 - test[9d35eded1c95d3be]::run_test::{closure#0}
[INFO] [stdout]   25:     0x5b35df488a04 - std[70759c8f55707aa4]::sys::backtrace::__rust_begin_short_backtrace::<test[9d35eded1c95d3be]::run_test::{closure#1}, ()>
[INFO] [stdout]   26:     0x5b35df4922a2 - <std[70759c8f55707aa4]::thread::lifecycle::spawn_unchecked<test[9d35eded1c95d3be]::run_test::{closure#1}, ()>::{closure#1} as core[df12db4294e9bfd3]::ops::function::FnOnce<()>>::call_once::{shim:vtable#0}
[INFO] [stdout]   27:     0x5b35df580179 - <std[70759c8f55707aa4]::sys::thread::unix::Thread>::new::thread_start
[INFO] [stdout]   28:     0x729597a9bdfa - <unknown>
[INFO] [stdout]   29:     0x729597b2f3d4 - clone
[INFO] [stdout]   30:                0x0 - <unknown>
[INFO] [stdout] 
[INFO] [stdout] ---- cache::redis::tests::rediscache_pow_cache_works stdout ----
[INFO] [stdout] 
[INFO] [stdout] thread 'cache::redis::tests::rediscache_pow_cache_works' (1841) panicked at src/redis/mod.rs:46:22:
[INFO] [stdout] called `Result::unwrap()` on an `Err` value: Connection refused (os error 111)
[INFO] [stdout] stack backtrace:
[INFO] [stdout]    0:     0x5b35df580e01 - <<std[70759c8f55707aa4]::sys::backtrace::BacktraceLock>::print::DisplayBacktrace as core[df12db4294e9bfd3]::fmt::Display>::fmt
[INFO] [stdout]    1:     0x5b35df596cea - core[df12db4294e9bfd3]::fmt::write
[INFO] [stdout]    2:     0x5b35df58599c - <alloc[2182bb758b4b3781]::vec::Vec<u8> as core[df12db4294e9bfd3]::io::write::Write>::write_fmt
[INFO] [stdout]    3:     0x5b35df55ba36 - std[70759c8f55707aa4]::panicking::default_hook::{closure#0}
[INFO] [stdout]    4:     0x5b35df578959 - std[70759c8f55707aa4]::panicking::default_hook
[INFO] [stdout]    5:     0x5b35df48e7f0 - test[9d35eded1c95d3be]::test_main_inner::<test[9d35eded1c95d3be]::test_main_static::{closure#0}>::{closure#0}
[INFO] [stdout]    6:     0x5b35df578c82 - std[70759c8f55707aa4]::panicking::panic_with_hook
[INFO] [stdout]    7:     0x5b35df55bae2 - std[70759c8f55707aa4]::panicking::panic_handler::{closure#0}
[INFO] [stdout]    8:     0x5b35df554789 - std[70759c8f55707aa4]::sys::backtrace::__rust_end_short_backtrace::<std[70759c8f55707aa4]::panicking::panic_handler::{closure#0}, !>
[INFO] [stdout]    9:     0x5b35df55c8cd - __rustc[8fa7c3cbc660c2b3]::rust_begin_unwind
[INFO] [stdout]   10:     0x5b35df59744c - core[df12db4294e9bfd3]::panicking::panic_fmt
[INFO] [stdout]   11:     0x5b35df597222 - core[df12db4294e9bfd3]::result::unwrap_failed
[INFO] [stdout]   12:     0x5b35df3d3bc1 - <libmcaptcha[84c67e014cdc95c4]::redis::Redis>::new::{closure#0}
[INFO] [stdout]   13:     0x5b35df3d1f9e - <libmcaptcha[84c67e014cdc95c4]::redis::mcaptcha_redis::MCaptchaRedis>::new::{closure#0}
[INFO] [stdout]   14:     0x5b35df3d1d12 - <libmcaptcha[84c67e014cdc95c4]::cache::redis::RedisCache>::new::{closure#0}
[INFO] [stdout]   15:     0x5b35df3bb899 - <std[70759c8f55707aa4]::thread::local::LocalKey<tokio[e6b49670655a2e24]::task::local::LocalData>>::with::<<tokio[e6b49670655a2e24]::task::local::LocalSet>::with<core[df12db4294e9bfd3]::task::poll::Poll<()>, <tokio[e6b49670655a2e24]::task::local::RunUntil<libmcaptcha[84c67e014cdc95c4]::cache::redis::tests::rediscache_pow_cache_works::{closure#0}> as core[df12db4294e9bfd3]::future::future::Future>::poll::{closure#0}>::{closure#0}, core[df12db4294e9bfd3]::task::poll::Poll<()>>
[INFO] [stdout]   16:     0x5b35df447923 - <core[df12db4294e9bfd3]::pin::Pin<&mut <tokio[e6b49670655a2e24]::task::local::LocalSet>::run_until<libmcaptcha[84c67e014cdc95c4]::cache::redis::tests::rediscache_pow_cache_works::{closure#0}>::{closure#0}> as core[df12db4294e9bfd3]::future::future::Future>::poll
[INFO] [stdout]   17:     0x5b35df3de2af - <tokio[e6b49670655a2e24]::runtime::scheduler::current_thread::Context>::enter::<core[df12db4294e9bfd3]::task::poll::Poll<()>, <tokio[e6b49670655a2e24]::runtime::scheduler::current_thread::CoreGuard>::block_on<core[df12db4294e9bfd3]::pin::Pin<&mut <tokio[e6b49670655a2e24]::task::local::LocalSet>::run_until<libmcaptcha[84c67e014cdc95c4]::cache::redis::tests::rediscache_pow_cache_works::{closure#0}>::{closure#0}>>::{closure#0}::{closure#0}>
[INFO] [stdout]   18:     0x5b35df3ea682 - <tokio[e6b49670655a2e24]::runtime::context::scoped::Scoped<tokio[e6b49670655a2e24]::runtime::scheduler::Context>>::set::<<tokio[e6b49670655a2e24]::runtime::scheduler::current_thread::CoreGuard>::enter<<tokio[e6b49670655a2e24]::runtime::scheduler::current_thread::CoreGuard>::block_on<core[df12db4294e9bfd3]::pin::Pin<&mut <tokio[e6b49670655a2e24]::task::local::LocalSet>::run_until<libmcaptcha[84c67e014cdc95c4]::cache::redis::tests::rediscache_pow_cache_works::{closure#0}>::{closure#0}>>::{closure#0}, core[df12db4294e9bfd3]::option::Option<()>>::{closure#0}, (alloc[2182bb758b4b3781]::boxed::Box<tokio[e6b49670655a2e24]::runtime::scheduler::current_thread::Core>, core[df12db4294e9bfd3]::option::Option<()>)>
[INFO] [stdout]   19:     0x5b35df3e0425 - <tokio[e6b49670655a2e24]::runtime::scheduler::current_thread::CoreGuard>::block_on::<core[df12db4294e9bfd3]::pin::Pin<&mut <tokio[e6b49670655a2e24]::task::local::LocalSet>::run_until<libmcaptcha[84c67e014cdc95c4]::cache::redis::tests::rediscache_pow_cache_works::{closure#0}>::{closure#0}>>
[INFO] [stdout]   20:     0x5b35df454f61 - tokio[e6b49670655a2e24]::runtime::context::runtime::enter_runtime::<<tokio[e6b49670655a2e24]::runtime::scheduler::current_thread::CurrentThread>::block_on<<tokio[e6b49670655a2e24]::task::local::LocalSet>::run_until<libmcaptcha[84c67e014cdc95c4]::cache::redis::tests::rediscache_pow_cache_works::{closure#0}>::{closure#0}>::{closure#0}, ()>
[INFO] [stdout]   21:     0x5b35df44a380 - <tokio[e6b49670655a2e24]::runtime::runtime::Runtime>::block_on::<<tokio[e6b49670655a2e24]::task::local::LocalSet>::run_until<libmcaptcha[84c67e014cdc95c4]::cache::redis::tests::rediscache_pow_cache_works::{closure#0}>::{closure#0}>
[INFO] [stdout]   22:     0x5b35df47dc76 - <libmcaptcha[84c67e014cdc95c4]::cache::redis::tests::rediscache_pow_cache_works::{closure#0} as core[df12db4294e9bfd3]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]   23:     0x5b35df481adb - test[9d35eded1c95d3be]::__rust_begin_short_backtrace::<core[df12db4294e9bfd3]::result::Result<(), alloc[2182bb758b4b3781]::string::String>, fn() -> core[df12db4294e9bfd3]::result::Result<(), alloc[2182bb758b4b3781]::string::String>>
[INFO] [stdout]   24:     0x5b35df48f145 - test[9d35eded1c95d3be]::run_test::{closure#0}
[INFO] [stdout]   25:     0x5b35df488a04 - std[70759c8f55707aa4]::sys::backtrace::__rust_begin_short_backtrace::<test[9d35eded1c95d3be]::run_test::{closure#1}, ()>
[INFO] [stdout]   26:     0x5b35df4922a2 - <std[70759c8f55707aa4]::thread::lifecycle::spawn_unchecked<test[9d35eded1c95d3be]::run_test::{closure#1}, ()>::{closure#1} as core[df12db4294e9bfd3]::ops::function::FnOnce<()>>::call_once::{shim:vtable#0}
[INFO] [stdout]   27:     0x5b35df580179 - <std[70759c8f55707aa4]::sys::thread::unix::Thread>::new::thread_start
[INFO] [stdout]   28:     0x729597a9bdfa - <unknown>
[INFO] [stdout]   29:     0x729597b2f3d4 - clone
[INFO] [stdout]   30:                0x0 - <unknown>
[INFO] [stdout] 
[INFO] [stdout] ---- redis::mcaptcha_redis::tests::redis_master_works stdout ----
[INFO] [stdout] 
[INFO] [stdout] thread 'redis::mcaptcha_redis::tests::redis_master_works' (1870) panicked at src/redis/mod.rs:46:22:
[INFO] [stdout] called `Result::unwrap()` on an `Err` value: Connection refused (os error 111)
[INFO] [stdout] stack backtrace:
[INFO] [stdout]    0:     0x5b35df580e01 - <<std[70759c8f55707aa4]::sys::backtrace::BacktraceLock>::print::DisplayBacktrace as core[df12db4294e9bfd3]::fmt::Display>::fmt
[INFO] [stdout]    1:     0x5b35df596cea - core[df12db4294e9bfd3]::fmt::write
[INFO] [stdout]    2:     0x5b35df58599c - <alloc[2182bb758b4b3781]::vec::Vec<u8> as core[df12db4294e9bfd3]::io::write::Write>::write_fmt
[INFO] [stdout]    3:     0x5b35df55ba36 - std[70759c8f55707aa4]::panicking::default_hook::{closure#0}
[INFO] [stdout]    4:     0x5b35df578959 - std[70759c8f55707aa4]::panicking::default_hook
[INFO] [stdout]    5:     0x5b35df48e7f0 - test[9d35eded1c95d3be]::test_main_inner::<test[9d35eded1c95d3be]::test_main_static::{closure#0}>::{closure#0}
[INFO] [stdout]    6:     0x5b35df578c82 - std[70759c8f55707aa4]::panicking::panic_with_hook
[INFO] [stdout]    7:     0x5b35df55bae2 - std[70759c8f55707aa4]::panicking::panic_handler::{closure#0}
[INFO] [stdout]    8:     0x5b35df554789 - std[70759c8f55707aa4]::sys::backtrace::__rust_end_short_backtrace::<std[70759c8f55707aa4]::panicking::panic_handler::{closure#0}, !>
[INFO] [stdout]    9:     0x5b35df55c8cd - __rustc[8fa7c3cbc660c2b3]::rust_begin_unwind
[INFO] [stdout]   10:     0x5b35df59744c - core[df12db4294e9bfd3]::panicking::panic_fmt
[INFO] [stdout]   11:     0x5b35df597222 - core[df12db4294e9bfd3]::result::unwrap_failed
[INFO] [stdout]   12:     0x5b35df3d3bc1 - <libmcaptcha[84c67e014cdc95c4]::redis::Redis>::new::{closure#0}
[INFO] [stdout]   13:     0x5b35df3d9793 - libmcaptcha[84c67e014cdc95c4]::redis::mcaptcha_redis::tests::redis_master_works::{closure#0}
[INFO] [stdout]   14:     0x5b35df3c0da3 - <std[70759c8f55707aa4]::thread::local::LocalKey<tokio[e6b49670655a2e24]::task::local::LocalData>>::with::<<tokio[e6b49670655a2e24]::task::local::LocalSet>::with<core[df12db4294e9bfd3]::task::poll::Poll<()>, <tokio[e6b49670655a2e24]::task::local::RunUntil<libmcaptcha[84c67e014cdc95c4]::redis::mcaptcha_redis::tests::redis_master_works::{closure#0}> as core[df12db4294e9bfd3]::future::future::Future>::poll::{closure#0}>::{closure#0}, core[df12db4294e9bfd3]::task::poll::Poll<()>>
[INFO] [stdout]   15:     0x5b35df447d23 - <core[df12db4294e9bfd3]::pin::Pin<&mut <tokio[e6b49670655a2e24]::task::local::LocalSet>::run_until<libmcaptcha[84c67e014cdc95c4]::redis::mcaptcha_redis::tests::redis_master_works::{closure#0}>::{closure#0}> as core[df12db4294e9bfd3]::future::future::Future>::poll
[INFO] [stdout]   16:     0x5b35df3de92f - <tokio[e6b49670655a2e24]::runtime::scheduler::current_thread::Context>::enter::<core[df12db4294e9bfd3]::task::poll::Poll<()>, <tokio[e6b49670655a2e24]::runtime::scheduler::current_thread::CoreGuard>::block_on<core[df12db4294e9bfd3]::pin::Pin<&mut <tokio[e6b49670655a2e24]::task::local::LocalSet>::run_until<libmcaptcha[84c67e014cdc95c4]::redis::mcaptcha_redis::tests::redis_master_works::{closure#0}>::{closure#0}>>::{closure#0}::{closure#0}>
[INFO] [stdout]   17:     0x5b35df3eac82 - <tokio[e6b49670655a2e24]::runtime::context::scoped::Scoped<tokio[e6b49670655a2e24]::runtime::scheduler::Context>>::set::<<tokio[e6b49670655a2e24]::runtime::scheduler::current_thread::CoreGuard>::enter<<tokio[e6b49670655a2e24]::runtime::scheduler::current_thread::CoreGuard>::block_on<core[df12db4294e9bfd3]::pin::Pin<&mut <tokio[e6b49670655a2e24]::task::local::LocalSet>::run_until<libmcaptcha[84c67e014cdc95c4]::redis::mcaptcha_redis::tests::redis_master_works::{closure#0}>::{closure#0}>>::{closure#0}, core[df12db4294e9bfd3]::option::Option<()>>::{closure#0}, (alloc[2182bb758b4b3781]::boxed::Box<tokio[e6b49670655a2e24]::runtime::scheduler::current_thread::Core>, core[df12db4294e9bfd3]::option::Option<()>)>
[INFO] [stdout]   18:     0x5b35df3e0b65 - <tokio[e6b49670655a2e24]::runtime::scheduler::current_thread::CoreGuard>::block_on::<core[df12db4294e9bfd3]::pin::Pin<&mut <tokio[e6b49670655a2e24]::task::local::LocalSet>::run_until<libmcaptcha[84c67e014cdc95c4]::redis::mcaptcha_redis::tests::redis_master_works::{closure#0}>::{closure#0}>>
[INFO] [stdout]   19:     0x5b35df455c21 - tokio[e6b49670655a2e24]::runtime::context::runtime::enter_runtime::<<tokio[e6b49670655a2e24]::runtime::scheduler::current_thread::CurrentThread>::block_on<<tokio[e6b49670655a2e24]::task::local::LocalSet>::run_until<libmcaptcha[84c67e014cdc95c4]::redis::mcaptcha_redis::tests::redis_master_works::{closure#0}>::{closure#0}>::{closure#0}, ()>
[INFO] [stdout]   20:     0x5b35df44a8c0 - <tokio[e6b49670655a2e24]::runtime::runtime::Runtime>::block_on::<<tokio[e6b49670655a2e24]::task::local::LocalSet>::run_until<libmcaptcha[84c67e014cdc95c4]::redis::mcaptcha_redis::tests::redis_master_works::{closure#0}>::{closure#0}>
[INFO] [stdout]   21:     0x5b35df47de76 - <libmcaptcha[84c67e014cdc95c4]::redis::mcaptcha_redis::tests::redis_master_works::{closure#0} as core[df12db4294e9bfd3]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]   22:     0x5b35df481adb - test[9d35eded1c95d3be]::__rust_begin_short_backtrace::<core[df12db4294e9bfd3]::result::Result<(), alloc[2182bb758b4b3781]::string::String>, fn() -> core[df12db4294e9bfd3]::result::Result<(), alloc[2182bb758b4b3781]::string::String>>
[INFO] [stdout]   23:     0x5b35df48f145 - test[9d35eded1c95d3be]::run_test::{closure#0}
[INFO] [stdout]   24:     0x5b35df488a04 - std[70759c8f55707aa4]::sys::backtrace::__rust_begin_short_backtrace::<test[9d35eded1c95d3be]::run_test::{closure#1}, ()>
[INFO] [stdout]   25:     0x5b35df4922a2 - <std[70759c8f55707aa4]::thread::lifecycle::spawn_unchecked<test[9d35eded1c95d3be]::run_test::{closure#1}, ()>::{closure#1} as core[df12db4294e9bfd3]::ops::function::FnOnce<()>>::call_once::{shim:vtable#0}
[INFO] [stdout]   26:     0x5b35df580179 - <std[70759c8f55707aa4]::sys::thread::unix::Thread>::new::thread_start
[INFO] [stdout]   27:     0x729597a9bdfa - <unknown>
[INFO] [stdout]   28:     0x729597b2f3d4 - clone
[INFO] [stdout]   29:                0x0 - <unknown>
[INFO] [stdout] 
[INFO] [stdout] ---- redis::tests::ping_works stdout ----
[INFO] [stdout] 
[INFO] [stdout] thread 'redis::tests::ping_works' (1871) panicked at src/redis/mod.rs:46:22:
[INFO] [stdout] called `Result::unwrap()` on an `Err` value: Connection refused (os error 111)
[INFO] [stdout] stack backtrace:
[INFO] [stdout]    0:     0x5b35df580e01 - <<std[70759c8f55707aa4]::sys::backtrace::BacktraceLock>::print::DisplayBacktrace as core[df12db4294e9bfd3]::fmt::Display>::fmt
[INFO] [stdout]    1:     0x5b35df596cea - core[df12db4294e9bfd3]::fmt::write
[INFO] [stdout]    2:     0x5b35df58599c - <alloc[2182bb758b4b3781]::vec::Vec<u8> as core[df12db4294e9bfd3]::io::write::Write>::write_fmt
[INFO] [stdout]    3:     0x5b35df55ba36 - std[70759c8f55707aa4]::panicking::default_hook::{closure#0}
[INFO] [stdout]    4:     0x5b35df578959 - std[70759c8f55707aa4]::panicking::default_hook
[INFO] [stdout]    5:     0x5b35df48e7f0 - test[9d35eded1c95d3be]::test_main_inner::<test[9d35eded1c95d3be]::test_main_static::{closure#0}>::{closure#0}
[INFO] [stdout]    6:     0x5b35df578c82 - std[70759c8f55707aa4]::panicking::panic_with_hook
[INFO] [stdout]    7:     0x5b35df55bae2 - std[70759c8f55707aa4]::panicking::panic_handler::{closure#0}
[INFO] [stdout]    8:     0x5b35df554789 - std[70759c8f55707aa4]::sys::backtrace::__rust_end_short_backtrace::<std[70759c8f55707aa4]::panicking::panic_handler::{closure#0}, !>
[INFO] [stdout]    9:     0x5b35df55c8cd - __rustc[8fa7c3cbc660c2b3]::rust_begin_unwind
[INFO] [stdout]   10:     0x5b35df59744c - core[df12db4294e9bfd3]::panicking::panic_fmt
[INFO] [stdout]   11:     0x5b35df597222 - core[df12db4294e9bfd3]::result::unwrap_failed
[INFO] [stdout]   12:     0x5b35df3d3bc1 - <libmcaptcha[84c67e014cdc95c4]::redis::Redis>::new::{closure#0}
[INFO] [stdout]   13:     0x5b35df3b8d5d - <std[70759c8f55707aa4]::thread::local::LocalKey<tokio[e6b49670655a2e24]::task::local::LocalData>>::with::<<tokio[e6b49670655a2e24]::task::local::LocalSet>::with<core[df12db4294e9bfd3]::task::poll::Poll<()>, <tokio[e6b49670655a2e24]::task::local::RunUntil<libmcaptcha[84c67e014cdc95c4]::redis::tests::ping_works::{closure#0}> as core[df12db4294e9bfd3]::future::future::Future>::poll::{closure#0}>::{closure#0}, core[df12db4294e9bfd3]::task::poll::Poll<()>>
[INFO] [stdout]   14:     0x5b35df4475e3 - <core[df12db4294e9bfd3]::pin::Pin<&mut <tokio[e6b49670655a2e24]::task::local::LocalSet>::run_until<libmcaptcha[84c67e014cdc95c4]::redis::tests::ping_works::{closure#0}>::{closure#0}> as core[df12db4294e9bfd3]::future::future::Future>::poll
[INFO] [stdout]   15:     0x5b35df3dddcf - <tokio[e6b49670655a2e24]::runtime::scheduler::current_thread::Context>::enter::<core[df12db4294e9bfd3]::task::poll::Poll<()>, <tokio[e6b49670655a2e24]::runtime::scheduler::current_thread::CoreGuard>::block_on<core[df12db4294e9bfd3]::pin::Pin<&mut <tokio[e6b49670655a2e24]::task::local::LocalSet>::run_until<libmcaptcha[84c67e014cdc95c4]::redis::tests::ping_works::{closure#0}>::{closure#0}>>::{closure#0}::{closure#0}>
[INFO] [stdout]   16:     0x5b35df3ea202 - <tokio[e6b49670655a2e24]::runtime::context::scoped::Scoped<tokio[e6b49670655a2e24]::runtime::scheduler::Context>>::set::<<tokio[e6b49670655a2e24]::runtime::scheduler::current_thread::CoreGuard>::enter<<tokio[e6b49670655a2e24]::runtime::scheduler::current_thread::CoreGuard>::block_on<core[df12db4294e9bfd3]::pin::Pin<&mut <tokio[e6b49670655a2e24]::task::local::LocalSet>::run_until<libmcaptcha[84c67e014cdc95c4]::redis::tests::ping_works::{closure#0}>::{closure#0}>>::{closure#0}, core[df12db4294e9bfd3]::option::Option<()>>::{closure#0}, (alloc[2182bb758b4b3781]::boxed::Box<tokio[e6b49670655a2e24]::runtime::scheduler::current_thread::Core>, core[df12db4294e9bfd3]::option::Option<()>)>
[INFO] [stdout]   17:     0x5b35df3dfeb5 - <tokio[e6b49670655a2e24]::runtime::scheduler::current_thread::CoreGuard>::block_on::<core[df12db4294e9bfd3]::pin::Pin<&mut <tokio[e6b49670655a2e24]::task::local::LocalSet>::run_until<libmcaptcha[84c67e014cdc95c4]::redis::tests::ping_works::{closure#0}>::{closure#0}>>
[INFO] [stdout]   18:     0x5b35df4545d1 - tokio[e6b49670655a2e24]::runtime::context::runtime::enter_runtime::<<tokio[e6b49670655a2e24]::runtime::scheduler::current_thread::CurrentThread>::block_on<<tokio[e6b49670655a2e24]::task::local::LocalSet>::run_until<libmcaptcha[84c67e014cdc95c4]::redis::tests::ping_works::{closure#0}>::{closure#0}>::{closure#0}, ()>
[INFO] [stdout]   19:     0x5b35df449fe0 - <tokio[e6b49670655a2e24]::runtime::runtime::Runtime>::block_on::<<tokio[e6b49670655a2e24]::task::local::LocalSet>::run_until<libmcaptcha[84c67e014cdc95c4]::redis::tests::ping_works::{closure#0}>::{closure#0}>
[INFO] [stdout]   20:     0x5b35df47cc73 - <libmcaptcha[84c67e014cdc95c4]::redis::tests::ping_works::{closure#0} as core[df12db4294e9bfd3]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]   21:     0x5b35df481adb - test[9d35eded1c95d3be]::__rust_begin_short_backtrace::<core[df12db4294e9bfd3]::result::Result<(), alloc[2182bb758b4b3781]::string::String>, fn() -> core[df12db4294e9bfd3]::result::Result<(), alloc[2182bb758b4b3781]::string::String>>
[INFO] [stdout]   22:     0x5b35df48f145 - test[9d35eded1c95d3be]::run_test::{closure#0}
[INFO] [stdout]   23:     0x5b35df488a04 - std[70759c8f55707aa4]::sys::backtrace::__rust_begin_short_backtrace::<test[9d35eded1c95d3be]::run_test::{closure#1}, ()>
[INFO] [stdout]   24:     0x5b35df4922a2 - <std[70759c8f55707aa4]::thread::lifecycle::spawn_unchecked<test[9d35eded1c95d3be]::run_test::{closure#1}, ()>::{closure#1} as core[df12db4294e9bfd3]::ops::function::FnOnce<()>>::call_once::{shim:vtable#0}
[INFO] [stdout]   25:     0x5b35df580179 - <std[70759c8f55707aa4]::sys::thread::unix::Thread>::new::thread_start
[INFO] [stdout]   26:     0x729597a9bdfa - <unknown>
[INFO] [stdout]   27:     0x729597b2f3d4 - clone
[INFO] [stdout]   28:                0x0 - <unknown>
[INFO] [stdout] 
[INFO] [stdout] ---- master::redis::master::tests::race_redis_master stdout ----
[INFO] [stdout] 
[INFO] [stdout] thread 'master::redis::master::tests::race_redis_master' (1861) panicked at src/redis/mod.rs:46:22:
[INFO] [stdout] called `Result::unwrap()` on an `Err` value: Connection refused (os error 111)
[INFO] [stdout] stack backtrace:
[INFO] [stdout]    0:     0x5b35df580e01 - <<std[70759c8f55707aa4]::sys::backtrace::BacktraceLock>::print::DisplayBacktrace as core[df12db4294e9bfd3]::fmt::Display>::fmt
[INFO] [stdout]    1:     0x5b35df596cea - core[df12db4294e9bfd3]::fmt::write
[INFO] [stdout]    2:     0x5b35df58599c - <alloc[2182bb758b4b3781]::vec::Vec<u8> as core[df12db4294e9bfd3]::io::write::Write>::write_fmt
[INFO] [stdout]    3:     0x5b35df55ba36 - std[70759c8f55707aa4]::panicking::default_hook::{closure#0}
[INFO] [stdout]    4:     0x5b35df578959 - std[70759c8f55707aa4]::panicking::default_hook
[INFO] [stdout]    5:     0x5b35df48e7f0 - test[9d35eded1c95d3be]::test_main_inner::<test[9d35eded1c95d3be]::test_main_static::{closure#0}>::{closure#0}
[INFO] [stdout]    6:     0x5b35df578c82 - std[70759c8f55707aa4]::panicking::panic_with_hook
[INFO] [stdout]    7:     0x5b35df55bae2 - std[70759c8f55707aa4]::panicking::panic_handler::{closure#0}
[INFO] [stdout]    8:     0x5b35df554789 - std[70759c8f55707aa4]::sys::backtrace::__rust_end_short_backtrace::<std[70759c8f55707aa4]::panicking::panic_handler::{closure#0}, !>
[INFO] [stdout]    9:     0x5b35df55c8cd - __rustc[8fa7c3cbc660c2b3]::rust_begin_unwind
[INFO] [stdout]   10:     0x5b35df59744c - core[df12db4294e9bfd3]::panicking::panic_fmt
[INFO] [stdout]   11:     0x5b35df597222 - core[df12db4294e9bfd3]::result::unwrap_failed
[INFO] [stdout]   12:     0x5b35df3d3bc1 - <libmcaptcha[84c67e014cdc95c4]::redis::Redis>::new::{closure#0}
[INFO] [stdout]   13:     0x5b35df3d1f9e - <libmcaptcha[84c67e014cdc95c4]::redis::mcaptcha_redis::MCaptchaRedis>::new::{closure#0}
[INFO] [stdout]   14:     0x5b35df3d2612 - <libmcaptcha[84c67e014cdc95c4]::master::redis::master::Master>::new::{closure#0}
[INFO] [stdout]   15:     0x5b35df3c0f8b - <std[70759c8f55707aa4]::thread::local::LocalKey<tokio[e6b49670655a2e24]::task::local::LocalData>>::with::<<tokio[e6b49670655a2e24]::task::local::LocalSet>::with<core[df12db4294e9bfd3]::task::poll::Poll<()>, <tokio[e6b49670655a2e24]::task::local::RunUntil<libmcaptcha[84c67e014cdc95c4]::master::redis::master::tests::race_redis_master::{closure#0}> as core[df12db4294e9bfd3]::future::future::Future>::poll::{closure#0}>::{closure#0}, core[df12db4294e9bfd3]::task::poll::Poll<()>>
[INFO] [stdout]   16:     0x5b35df447e23 - <core[df12db4294e9bfd3]::pin::Pin<&mut <tokio[e6b49670655a2e24]::task::local::LocalSet>::run_until<libmcaptcha[84c67e014cdc95c4]::master::redis::master::tests::race_redis_master::{closure#0}>::{closure#0}> as core[df12db4294e9bfd3]::future::future::Future>::poll
[INFO] [stdout]   17:     0x5b35df3deacf - <tokio[e6b49670655a2e24]::runtime::scheduler::current_thread::Context>::enter::<core[df12db4294e9bfd3]::task::poll::Poll<()>, <tokio[e6b49670655a2e24]::runtime::scheduler::current_thread::CoreGuard>::block_on<core[df12db4294e9bfd3]::pin::Pin<&mut <tokio[e6b49670655a2e24]::task::local::LocalSet>::run_until<libmcaptcha[84c67e014cdc95c4]::master::redis::master::tests::race_redis_master::{closure#0}>::{closure#0}>>::{closure#0}::{closure#0}>
[INFO] [stdout]   18:     0x5b35df3eae02 - <tokio[e6b49670655a2e24]::runtime::context::scoped::Scoped<tokio[e6b49670655a2e24]::runtime::scheduler::Context>>::set::<<tokio[e6b49670655a2e24]::runtime::scheduler::current_thread::CoreGuard>::enter<<tokio[e6b49670655a2e24]::runtime::scheduler::current_thread::CoreGuard>::block_on<core[df12db4294e9bfd3]::pin::Pin<&mut <tokio[e6b49670655a2e24]::task::local::LocalSet>::run_until<libmcaptcha[84c67e014cdc95c4]::master::redis::master::tests::race_redis_master::{closure#0}>::{closure#0}>>::{closure#0}, core[df12db4294e9bfd3]::option::Option<()>>::{closure#0}, (alloc[2182bb758b4b3781]::boxed::Box<tokio[e6b49670655a2e24]::runtime::scheduler::current_thread::Core>, core[df12db4294e9bfd3]::option::Option<()>)>
[INFO] [stdout]   19:     0x5b35df3e0d35 - <tokio[e6b49670655a2e24]::runtime::scheduler::current_thread::CoreGuard>::block_on::<core[df12db4294e9bfd3]::pin::Pin<&mut <tokio[e6b49670655a2e24]::task::local::LocalSet>::run_until<libmcaptcha[84c67e014cdc95c4]::master::redis::master::tests::race_redis_master::{closure#0}>::{closure#0}>>
[INFO] [stdout]   20:     0x5b35df455f51 - tokio[e6b49670655a2e24]::runtime::context::runtime::enter_runtime::<<tokio[e6b49670655a2e24]::runtime::scheduler::current_thread::CurrentThread>::block_on<<tokio[e6b49670655a2e24]::task::local::LocalSet>::run_until<libmcaptcha[84c67e014cdc95c4]::master::redis::master::tests::race_redis_master::{closure#0}>::{closure#0}>::{closure#0}, ()>
[INFO] [stdout]   21:     0x5b35df44aa10 - <tokio[e6b49670655a2e24]::runtime::runtime::Runtime>::block_on::<<tokio[e6b49670655a2e24]::task::local::LocalSet>::run_until<libmcaptcha[84c67e014cdc95c4]::master::redis::master::tests::race_redis_master::{closure#0}>::{closure#0}>
[INFO] [stdout]   22:     0x5b35df47def6 - <libmcaptcha[84c67e014cdc95c4]::master::redis::master::tests::race_redis_master::{closure#0} as core[df12db4294e9bfd3]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]   23:     0x5b35df481adb - test[9d35eded1c95d3be]::__rust_begin_short_backtrace::<core[df12db4294e9bfd3]::result::Result<(), alloc[2182bb758b4b3781]::string::String>, fn() -> core[df12db4294e9bfd3]::result::Result<(), alloc[2182bb758b4b3781]::string::String>>
[INFO] [stdout]   24:     0x5b35df48f145 - test[9d35eded1c95d3be]::run_test::{closure#0}
[INFO] [stdout]   25:     0x5b35df488a04 - std[70759c8f55707aa4]::sys::backtrace::__rust_begin_short_backtrace::<test[9d35eded1c95d3be]::run_test::{closure#1}, ()>
[INFO] [stdout]   26:     0x5b35df4922a2 - <std[70759c8f55707aa4]::thread::lifecycle::spawn_unchecked<test[9d35eded1c95d3be]::run_test::{closure#1}, ()>::{closure#1} as core[df12db4294e9bfd3]::ops::function::FnOnce<()>>::call_once::{shim:vtable#0}
[INFO] [stdout]   27:     0x5b35df580179 - <std[70759c8f55707aa4]::sys::thread::unix::Thread>::new::thread_start
[INFO] [stdout]   28:     0x729597a9bdfa - <unknown>
[INFO] [stdout]   29:     0x729597b2f3d4 - clone
[INFO] [stdout]   30:                0x0 - <unknown>
[INFO] [stdout] 
[INFO] [stdout] ---- cache::redis::tests::redishashcache_result_cache_works stdout ----
[INFO] [stdout] 
[INFO] [stdout] thread 'cache::redis::tests::redishashcache_result_cache_works' (1842) panicked at src/redis/mod.rs:46:22:
[INFO] [stdout] called `Result::unwrap()` on an `Err` value: Connection refused (os error 111)
[INFO] [stdout] stack backtrace:
[INFO] [stdout]    0:     0x5b35df580e01 - <<std[70759c8f55707aa4]::sys::backtrace::BacktraceLock>::print::DisplayBacktrace as core[df12db4294e9bfd3]::fmt::Display>::fmt
[INFO] [stdout]    1:     0x5b35df596cea - core[df12db4294e9bfd3]::fmt::write
[INFO] [stdout]    2:     0x5b35df58599c - <alloc[2182bb758b4b3781]::vec::Vec<u8> as core[df12db4294e9bfd3]::io::write::Write>::write_fmt
[INFO] [stdout]    3:     0x5b35df55ba36 - std[70759c8f55707aa4]::panicking::default_hook::{closure#0}
[INFO] [stdout]    4:     0x5b35df578959 - std[70759c8f55707aa4]::panicking::default_hook
[INFO] [stdout]    5:     0x5b35df48e7f0 - test[9d35eded1c95d3be]::test_main_inner::<test[9d35eded1c95d3be]::test_main_static::{closure#0}>::{closure#0}
[INFO] [stdout]    6:     0x5b35df578c82 - std[70759c8f55707aa4]::panicking::panic_with_hook
[INFO] [stdout]    7:     0x5b35df55bae2 - std[70759c8f55707aa4]::panicking::panic_handler::{closure#0}
[INFO] [stdout]    8:     0x5b35df554789 - std[70759c8f55707aa4]::sys::backtrace::__rust_end_short_backtrace::<std[70759c8f55707aa4]::panicking::panic_handler::{closure#0}, !>
[INFO] [stdout]    9:     0x5b35df55c8cd - __rustc[8fa7c3cbc660c2b3]::rust_begin_unwind
[INFO] [stdout]   10:     0x5b35df59744c - core[df12db4294e9bfd3]::panicking::panic_fmt
[INFO] [stdout]   11:     0x5b35df597222 - core[df12db4294e9bfd3]::result::unwrap_failed
[INFO] [stdout]   12:     0x5b35df3d3bc1 - <libmcaptcha[84c67e014cdc95c4]::redis::Redis>::new::{closure#0}
[INFO] [stdout]   13:     0x5b35df3d1f9e - <libmcaptcha[84c67e014cdc95c4]::redis::mcaptcha_redis::MCaptchaRedis>::new::{closure#0}
[INFO] [stdout]   14:     0x5b35df3d1d12 - <libmcaptcha[84c67e014cdc95c4]::cache::redis::RedisCache>::new::{closure#0}
[INFO] [stdout]   15:     0x5b35df3bce44 - <std[70759c8f55707aa4]::thread::local::LocalKey<tokio[e6b49670655a2e24]::task::local::LocalData>>::with::<<tokio[e6b49670655a2e24]::task::local::LocalSet>::with<core[df12db4294e9bfd3]::task::poll::Poll<()>, <tokio[e6b49670655a2e24]::task::local::RunUntil<libmcaptcha[84c67e014cdc95c4]::cache::redis::tests::redishashcache_result_cache_works::{closure#0}> as core[df12db4294e9bfd3]::future::future::Future>::poll::{closure#0}>::{closure#0}, core[df12db4294e9bfd3]::task::poll::Poll<()>>
[INFO] [stdout]   16:     0x5b35df447a23 - <core[df12db4294e9bfd3]::pin::Pin<&mut <tokio[e6b49670655a2e24]::task::local::LocalSet>::run_until<libmcaptcha[84c67e014cdc95c4]::cache::redis::tests::redishashcache_result_cache_works::{closure#0}>::{closure#0}> as core[df12db4294e9bfd3]::future::future::Future>::poll
[INFO] [stdout]   17:     0x5b35df3de44f - <tokio[e6b49670655a2e24]::runtime::scheduler::current_thread::Context>::enter::<core[df12db4294e9bfd3]::task::poll::Poll<()>, <tokio[e6b49670655a2e24]::runtime::scheduler::current_thread::CoreGuard>::block_on<core[df12db4294e9bfd3]::pin::Pin<&mut <tokio[e6b49670655a2e24]::task::local::LocalSet>::run_until<libmcaptcha[84c67e014cdc95c4]::cache::redis::tests::redishashcache_result_cache_works::{closure#0}>::{closure#0}>>::{closure#0}::{closure#0}>
[INFO] [stdout]   18:     0x5b35df3ea802 - <tokio[e6b49670655a2e24]::runtime::context::scoped::Scoped<tokio[e6b49670655a2e24]::runtime::scheduler::Context>>::set::<<tokio[e6b49670655a2e24]::runtime::scheduler::current_thread::CoreGuard>::enter<<tokio[e6b49670655a2e24]::runtime::scheduler::current_thread::CoreGuard>::block_on<core[df12db4294e9bfd3]::pin::Pin<&mut <tokio[e6b49670655a2e24]::task::local::LocalSet>::run_until<libmcaptcha[84c67e014cdc95c4]::cache::redis::tests::redishashcache_result_cache_works::{closure#0}>::{closure#0}>>::{closure#0}, core[df12db4294e9bfd3]::option::Option<()>>::{closure#0}, (alloc[2182bb758b4b3781]::boxed::Box<tokio[e6b49670655a2e24]::runtime::scheduler::current_thread::Core>, core[df12db4294e9bfd3]::option::Option<()>)>
[INFO] [stdout]   19:     0x5b35df3e05f5 - <tokio[e6b49670655a2e24]::runtime::scheduler::current_thread::CoreGuard>::block_on::<core[df12db4294e9bfd3]::pin::Pin<&mut <tokio[e6b49670655a2e24]::task::local::LocalSet>::run_until<libmcaptcha[84c67e014cdc95c4]::cache::redis::tests::redishashcache_result_cache_works::{closure#0}>::{closure#0}>>
[INFO] [stdout]   20:     0x5b35df455291 - tokio[e6b49670655a2e24]::runtime::context::runtime::enter_runtime::<<tokio[e6b49670655a2e24]::runtime::scheduler::current_thread::CurrentThread>::block_on<<tokio[e6b49670655a2e24]::task::local::LocalSet>::run_until<libmcaptcha[84c67e014cdc95c4]::cache::redis::tests::redishashcache_result_cache_works::{closure#0}>::{closure#0}>::{closure#0}, ()>
[INFO] [stdout]   21:     0x5b35df44a4d0 - <tokio[e6b49670655a2e24]::runtime::runtime::Runtime>::block_on::<<tokio[e6b49670655a2e24]::task::local::LocalSet>::run_until<libmcaptcha[84c67e014cdc95c4]::cache::redis::tests::redishashcache_result_cache_works::{closure#0}>::{closure#0}>
[INFO] [stdout]   22:     0x5b35df47dcf6 - <libmcaptcha[84c67e014cdc95c4]::cache::redis::tests::redishashcache_result_cache_works::{closure#0} as core[df12db4294e9bfd3]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]   23:     0x5b35df481adb - test[9d35eded1c95d3be]::__rust_begin_short_backtrace::<core[df12db4294e9bfd3]::result::Result<(), alloc[2182bb758b4b3781]::string::String>, fn() -> core[df12db4294e9bfd3]::result::Result<(), alloc[2182bb758b4b3781]::string::String>>
[INFO] [stdout]   24:     0x5b35df48f145 - test[9d35eded1c95d3be]::run_test::{closure#0}
[INFO] [stdout]   25:     0x5b35df488a04 - std[70759c8f55707aa4]::sys::backtrace::__rust_begin_short_backtrace::<test[9d35eded1c95d3be]::run_test::{closure#1}, ()>
[INFO] [stdout]   26:     0x5b35df4922a2 - <std[70759c8f55707aa4]::thread::lifecycle::spawn_unchecked<test[9d35eded1c95d3be]::run_test::{closure#1}, ()>::{closure#1} as core[df12db4294e9bfd3]::ops::function::FnOnce<()>>::call_once::{shim:vtable#0}
[INFO] [stdout]   27:     0x5b35df580179 - <std[70759c8f55707aa4]::sys::thread::unix::Thread>::new::thread_start
[INFO] [stdout]   28:     0x729597a9bdfa - <unknown>
[INFO] [stdout]   29:     0x729597b2f3d4 - clone
[INFO] [stdout]   30:                0x0 - <unknown>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] failures:
[INFO] [stdout]     cache::redis::tests::rediscache_pow_cache_works
[INFO] [stdout]     cache::redis::tests::redishashcache_result_cache_works
[INFO] [stdout]     master::redis::master::tests::race_redis_master
[INFO] [stdout]     master::redis::master::tests::redis_master_works
[INFO] [stdout]     redis::mcaptcha_redis::tests::redis_master_works
[INFO] [stdout]     redis::tests::ping_works
[INFO] [stdout] 
[INFO] [stdout] test result: FAILED. 24 passed; 6 failed; 0 ignored; 0 measured; 0 filtered out; finished in 11.18s
[INFO] [stdout] 
[INFO] [stderr] error: test failed, to rerun pass `--lib`
[INFO] running `Command { std: "docker" "inspect" "81beaa11a966797dad5e1c3e34a318ca2aafe8ae647cd090df6e69a7d23c3652", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "81beaa11a966797dad5e1c3e34a318ca2aafe8ae647cd090df6e69a7d23c3652", kill_on_drop: false }`
[INFO] [stdout] 81beaa11a966797dad5e1c3e34a318ca2aafe8ae647cd090df6e69a7d23c3652
