[INFO] fetching crate arcx-core 0.1.9...
[INFO] testing arcx-core-0.1.9 against 1.97.0-beta.6 for beta-1.98-1
[INFO] extracting crate arcx-core 0.1.9 into /workspace/builds/worker-5-tc1/source
[INFO] started tweaking crates.io crate arcx-core 0.1.9
[INFO] finished tweaking crates.io crate arcx-core 0.1.9
[INFO] tweaked toml for crates.io crate arcx-core 0.1.9 written to /workspace/builds/worker-5-tc1/source/Cargo.toml
[INFO] validating manifest of crates.io crate arcx-core 0.1.9 on toolchain 1.97.0-beta.6
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+1.97.0-beta.6" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate crates.io crate arcx-core 0.1.9 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.97.0-beta.6" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Updating crates.io index
[INFO] [stderr]  Downloading crates ...
[INFO] [stderr]   Downloaded tracing-appender v0.2.5
[INFO] [stderr]   Downloaded symlink v0.1.0
[INFO] [stderr]   Downloaded croner v3.0.1
[INFO] [stderr]   Downloaded tokio-cron-scheduler v0.15.1
[INFO] [stderr]   Downloaded arcx-macros v0.1.9
[INFO] [stderr]   Downloaded chrono-tz v0.10.4
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-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:3d5ced03c013a94a2f102a4510f48a6e9184255caf5fd8244f58017bde7f5210" "sleep" "infinity", kill_on_drop: false }`
[INFO] [stdout] 2852dd67c72736f9c62f5c96f2deca00b70e8f182744e1050bf2e3d37dc705d6
[INFO] running `Command { std: "docker" "start" "2852dd67c72736f9c62f5c96f2deca00b70e8f182744e1050bf2e3d37dc705d6", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "2852dd67c72736f9c62f5c96f2deca00b70e8f182744e1050bf2e3d37dc705d6", 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" "2852dd67c72736f9c62f5c96f2deca00b70e8f182744e1050bf2e3d37dc705d6" "/opt/rustwide/cargo-home/bin/cargo" "+1.97.0-beta.6" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "2852dd67c72736f9c62f5c96f2deca00b70e8f182744e1050bf2e3d37dc705d6", 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" "2852dd67c72736f9c62f5c96f2deca00b70e8f182744e1050bf2e3d37dc705d6" "/opt/rustwide/cargo-home/bin/cargo" "+1.97.0-beta.6" "build" "--frozen" "--message-format=json", kill_on_drop: false }`
[INFO] [stderr]    Compiling num-traits v0.2.19
[INFO] [stderr]    Compiling serde v1.0.228
[INFO] [stderr]    Compiling tokio v1.52.3
[INFO] [stderr]    Compiling typenum v1.20.1
[INFO] [stderr]    Compiling futures-util v0.3.32
[INFO] [stderr]    Compiling time-macros v0.2.31
[INFO] [stderr]    Compiling serde_json v1.0.150
[INFO] [stderr]    Compiling deranged v0.5.8
[INFO] [stderr]    Compiling fnv v1.0.7
[INFO] [stderr]    Compiling darling_core v0.20.11
[INFO] [stderr]    Compiling chrono v0.4.45
[INFO] [stderr]    Compiling generic-array v0.14.7
[INFO] [stderr]    Compiling num-integer v0.1.46
[INFO] [stderr]    Compiling idna v1.1.0
[INFO] [stderr]    Compiling num-bigint v0.4.6
[INFO] [stderr]    Compiling block-buffer v0.10.4
[INFO] [stderr]    Compiling crypto-common v0.1.7
[INFO] [stderr]    Compiling digest v0.10.7
[INFO] [stderr]    Compiling bigdecimal v0.4.10
[INFO] [stderr]    Compiling time v0.3.53
[INFO] [stderr]    Compiling rust_decimal v1.42.1
[INFO] [stderr]    Compiling url v2.5.8
[INFO] [stderr]    Compiling uuid v1.23.4
[INFO] [stderr]    Compiling arrayvec v0.7.7
[INFO] [stderr]    Compiling serde_urlencoded v0.7.1
[INFO] [stderr]    Compiling libsqlite3-sys v0.30.1
[INFO] [stderr]    Compiling proc-macro-error-attr2 v2.0.0
[INFO] [stderr]    Compiling regex-automata v0.4.14
[INFO] [stderr]    Compiling proc-macro-error2 v2.0.1
[INFO] [stderr]    Compiling darling_macro v0.20.11
[INFO] [stderr]    Compiling webpki-roots v0.26.11
[INFO] [stderr]    Compiling sha2 v0.10.9
[INFO] [stderr]    Compiling either v1.16.0
[INFO] [stderr]    Compiling darling v0.20.11
[INFO] [stderr]    Compiling futures-intrusive v0.5.0
[INFO] [stderr]    Compiling proc-macro2-diagnostics v0.10.1
[INFO] [stderr]    Compiling heck v0.4.1
[INFO] [stderr]    Compiling flume v0.11.1
[INFO] [stderr]    Compiling rand_chacha v0.3.1
[INFO] [stderr]    Compiling derive_builder_core v0.20.2
[INFO] [stderr]    Compiling futures-executor v0.3.32
[INFO] [stderr]    Compiling atoi v2.0.0
[INFO] [stderr]    Compiling thiserror-impl v1.0.69
[INFO] [stderr]    Compiling siphasher v1.0.3
[INFO] [stderr]    Compiling phf_shared v0.12.1
[INFO] [stderr]    Compiling rand v0.8.6
[INFO] [stderr]    Compiling strum_macros v0.27.2
[INFO] [stderr]    Compiling sha1 v0.10.6
[INFO] [stderr]    Compiling derive_builder_macro v0.20.2
[INFO] [stderr]    Compiling ordered-float v4.6.0
[INFO] [stderr]    Compiling inherent v1.0.13
[INFO] [stderr]    Compiling tokio-util v0.7.18
[INFO] [stderr]    Compiling hyper v1.10.1
[INFO] [stderr]    Compiling tokio-stream v0.1.18
[INFO] [stderr]    Compiling thiserror v1.0.69
[INFO] [stderr]    Compiling tower v0.5.3
[INFO] [stderr]    Compiling chrono-tz v0.10.4
[INFO] [stderr]    Compiling derive_more-impl v2.1.1
[INFO] [stderr]    Compiling sqlx-core v0.8.6
[INFO] [stderr]    Compiling tungstenite v0.24.0
[INFO] [stderr]    Compiling hyper-util v0.1.20
[INFO] [stderr]    Compiling strum v0.27.2
[INFO] [stderr]    Compiling matchers v0.2.0
[INFO] [stderr]    Compiling sea-query v0.32.7
[INFO] [stderr]    Compiling tokio-rustls v0.26.4
[INFO] [stderr]    Compiling derive_builder v0.20.2
[INFO] [stderr]    Compiling ouroboros_macro v0.18.5
[INFO] [stderr]    Compiling phf v0.12.1
[INFO] [stderr]    Compiling sea-bae v0.2.1
[INFO] [stderr]    Compiling toml_datetime v0.6.11
[INFO] [stderr]    Compiling serde_spanned v0.6.9
[INFO] [stderr]    Compiling async-stream-impl v0.3.6
[INFO] [stderr]    Compiling pin-project-internal v1.1.13
[INFO] [stderr]    Compiling aliasable v0.1.3
[INFO] [stderr]    Compiling tokio-cron-scheduler v0.15.1
[INFO] [stderr]    Compiling toml_edit v0.22.27
[INFO] [stderr]    Compiling axum-core v0.4.5
[INFO] [stderr]    Compiling ouroboros v0.18.5
[INFO] [stderr]    Compiling tracing-subscriber v0.3.23
[INFO] [stderr]    Compiling async-stream v0.3.6
[INFO] [stderr]    Compiling hyper-rustls v0.27.9
[INFO] [stderr]    Compiling pin-project v1.1.13
[INFO] [stderr]    Compiling sea-orm-macros v1.1.20
[INFO] [stderr]    Compiling croner v3.0.1
[INFO] [stderr]    Compiling derive_more v2.1.1
[INFO] [stderr]    Compiling tokio-tungstenite v0.24.0
[INFO] [stderr]    Compiling tower-http v0.6.11
[INFO] [stderr]    Compiling regex v1.12.4
[INFO] [stderr]    Compiling simple_asn1 v0.6.4
[INFO] [stderr]    Compiling validator_derive v0.20.0
[INFO] [stderr]    Compiling crossbeam-channel v0.5.15
[INFO] [stderr]    Compiling num-derive v0.4.2
[INFO] [stderr]    Compiling serde_path_to_error v0.1.20
[INFO] [stderr]    Compiling symlink v0.1.0
[INFO] [stderr]    Compiling strum v0.26.3
[INFO] [stderr]    Compiling tracing-appender v0.2.5
[INFO] [stderr]    Compiling jsonwebtoken v9.3.1
[INFO] [stderr]    Compiling validator v0.20.0
[INFO] [stderr]    Compiling axum v0.7.9
[INFO] [stderr]    Compiling reqwest v0.12.28
[INFO] [stderr]    Compiling toml v0.8.23
[INFO] [stderr]    Compiling sqlx-sqlite v0.8.6
[INFO] [stderr]    Compiling tower v0.4.13
[INFO] [stderr]    Compiling tower-http v0.5.2
[INFO] [stderr]    Compiling hmac v0.12.1
[INFO] [stderr]    Compiling arcx-macros v0.1.9
[INFO] [stderr]    Compiling sqlx v0.8.6
[INFO] [stderr]    Compiling sea-query-binder v0.7.0
[INFO] [stderr]    Compiling sea-orm v1.1.20
[INFO] [stderr]    Compiling arcx-core v0.1.9 (/opt/rustwide/workdir)
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 2m 39s
[INFO] [stderr] warning: the following packages contain code that will be rejected by a future version of Rust: proc-macro-error2 v2.0.1
[INFO] [stderr] note: to see what the problems were, use the option `--future-incompat-report`, or run `cargo report future-incompatibilities --id 1`
[INFO] running `Command { std: "docker" "inspect" "2852dd67c72736f9c62f5c96f2deca00b70e8f182744e1050bf2e3d37dc705d6", 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" "2852dd67c72736f9c62f5c96f2deca00b70e8f182744e1050bf2e3d37dc705d6" "/opt/rustwide/cargo-home/bin/cargo" "+1.97.0-beta.6" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }`
[INFO] [stderr]    Compiling arcx-core v0.1.9 (/opt/rustwide/workdir)
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 5.28s
[INFO] [stderr] warning: the following packages contain code that will be rejected by a future version of Rust: proc-macro-error2 v2.0.1
[INFO] [stderr] note: to see what the problems were, use the option `--future-incompat-report`, or run `cargo report future-incompatibilities --id 1`
[INFO] running `Command { std: "docker" "inspect" "2852dd67c72736f9c62f5c96f2deca00b70e8f182744e1050bf2e3d37dc705d6", 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" "2852dd67c72736f9c62f5c96f2deca00b70e8f182744e1050bf2e3d37dc705d6" "/opt/rustwide/cargo-home/bin/cargo" "+1.97.0-beta.6" "test" "--frozen", kill_on_drop: false }`
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 0.48s
[INFO] [stderr] warning: the following packages contain code that will be rejected by a future version of Rust: proc-macro-error2 v2.0.1
[INFO] [stderr] note: to see what the problems were, use the option `--future-incompat-report`, or run `cargo report future-incompatibilities --id 1`
[INFO] [stderr]      Running unittests src/lib.rs (/opt/rustwide/target/debug/deps/arcx_core-20a16d68b4c8bb63)
[INFO] [stdout] 
[INFO] [stdout] running 0 tests
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s
[INFO] [stdout] 
[INFO] [stderr]    Doc-tests arcx_core
[INFO] [stdout] 
[INFO] [stdout] running 40 tests
[INFO] [stdout] test src/ctx.rs - ctx (line 15) ... ignored
[INFO] [stdout] test src/ctx.rs - ctx (line 33) ... ignored
[INFO] [stdout] test src/ctx.rs - ctx::Ctx::conf (line 324) ... ignored
[INFO] [stdout] test src/ctx.rs - ctx::Ctx::get (line 410) ... ignored
[INFO] [stdout] test src/ctx.rs - ctx::Ctx::header (line 249) ... ignored
[INFO] [stdout] test src/ctx.rs - ctx::Ctx::next (line 198) ... ignored
[INFO] [stdout] test src/ctx.rs - ctx::Ctx::res (line 297) ... ignored
[INFO] [stdout] test src/ctx.rs - ctx::Ctx::set (line 397) ... ignored
[INFO] [stdout] test src/config/mod.rs - config::AppConfig::get_section (line 172) ... FAILED
[INFO] [stdout] test src/httpclient/mod.rs - httpclient (line 18) ... FAILED
[INFO] [stdout] test src/client/event_bus.rs - client::event_bus (line 14) ... FAILED
[INFO] [stdout] test src/config/mod.rs - config::AppConfig::get (line 151) ... FAILED
[INFO] [stdout] test src/response.rs - response (line 5) ... ignored
[INFO] [stdout] test src/response.rs - response::ResBuilder::bytes (line 169) ... ignored
[INFO] [stdout] test src/response.rs - response::ResBuilder::cookie (line 78) ... ignored
[INFO] [stdout] test src/response.rs - response::ResBuilder::empty (line 156) ... ignored
[INFO] [stdout] test src/response.rs - response::ResBuilder::header (line 60) ... ignored
[INFO] [stdout] test src/response.rs - response::ResBuilder::html (line 107) ... ignored
[INFO] [stdout] test src/response.rs - response::ResBuilder::json (line 92) ... ignored
[INFO] [stdout] test src/response.rs - response::ResBuilder::redirect (line 141) ... ignored
[INFO] [stdout] test src/response.rs - response::ResBuilder::sse (line 188) ... ignored
[INFO] [stdout] test src/response.rs - response::ResBuilder::status (line 47) ... ignored
[INFO] [stdout] test src/response.rs - response::ResBuilder::text (line 124) ... ignored
[INFO] [stdout] test src/router/mod.rs - router (line 39) ... ignored
[INFO] [stdout] test src/router/mod.rs - router (line 8) ... ignored
[INFO] [stdout] test src/router/mod.rs - router::ArcxRouter::middleware (line 277) ... ignored
[INFO] [stdout] test src/router/mod.rs - router::ArcxRouter::scope (line 393) ... ignored
[INFO] [stdout] test src/router/mod.rs - router::RouteBuilder<'a>::middleware (line 84) ... ignored
[INFO] [stdout] test src/client/example.rs - client::example (line 6) ... FAILED
[INFO] [stdout] test src/config/mod.rs - config::AppConfig::get_as (line 182) ... FAILED
[INFO] [stdout] test src/service_macro.rs - service_macro::services (line 10) ... FAILED
[INFO] [stdout] test src/session/mod.rs - session (line 20) ... FAILED
[INFO] [stdout] test src/plugin/builtin/database.rs - plugin::builtin::database (line 13) ... FAILED
[INFO] [stdout] test src/extract.rs - extract (line 7) ... FAILED
[INFO] [stdout] test src/config/watcher.rs - config::watcher (line 15) ... FAILED
[INFO] [stdout] test src/plugin/builtin/jwt.rs - plugin::builtin::jwt (line 12) ... FAILED
[INFO] [stdout] test src/schedule/mod.rs - schedule (line 10) ... FAILED
[INFO] [stdout] test src/lib.rs - (line 8) - compile ... FAILED
[INFO] [stdout] test src/service_macro.rs - service_macro::services (line 18) ... FAILED
[INFO] [stdout] test src/ws/mod.rs - ws (line 9) ... FAILED
[INFO] [stdout] 
[INFO] [stdout] failures:
[INFO] [stdout] 
[INFO] [stdout] ---- src/config/mod.rs - config::AppConfig::get_section (line 172) stdout ----
[INFO] [stdout] error[E0425]: cannot find value `config` in this scope
[INFO] [stdout]    --> src/config/mod.rs:173:20
[INFO] [stdout]     |
[INFO] [stdout] 173 | let redis_config = config.get_section("redis");
[INFO] [stdout]     |                    ^^^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] error: aborting due to 1 previous error
[INFO] [stdout] 
[INFO] [stdout] For more information about this error, try `rustc --explain E0425`.
[INFO] [stdout] Couldn't compile the test.
[INFO] [stdout] ---- src/httpclient/mod.rs - httpclient (line 18) stdout ----
[INFO] [stdout] error[E0425]: cannot find value `ctx` in this scope
[INFO] [stdout]   --> src/httpclient/mod.rs:19:14
[INFO] [stdout]    |
[INFO] [stdout] 19 | let client = ctx.resource::<HttpClient>().unwrap();
[INFO] [stdout]    |              ^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find type `HttpClient` in this scope
[INFO] [stdout]   --> src/httpclient/mod.rs:19:29
[INFO] [stdout]    |
[INFO] [stdout] 19 | let client = ctx.resource::<HttpClient>().unwrap();
[INFO] [stdout]    |                             ^^^^^^^^^^ not found in this scope
[INFO] [stdout]    |
[INFO] [stdout] help: you might be missing a type parameter
[INFO] [stdout]    |
[INFO] [stdout] 18 | fn main() { #[allow(non_snake_case)] fn _doctest_main_src_httpclient_mod_rs_18_0<HttpClient>() {
[INFO] [stdout]    |                                                                                 ++++++++++++
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find type `MyData` in this scope
[INFO] [stdout]   --> src/httpclient/mod.rs:21:11
[INFO] [stdout]    |
[INFO] [stdout] 21 | let body: MyData = resp.json().await?;
[INFO] [stdout]    |           ^^^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] error[E0728]: `await` is only allowed inside `async` functions and blocks
[INFO] [stdout]   --> src/httpclient/mod.rs:20:62
[INFO] [stdout]    |
[INFO] [stdout] 18 | fn main() { #[allow(non_snake_case)] fn _doctest_main_src_httpclient_mod_rs_18_0() {
[INFO] [stdout]    |                                      --------------------------------------------- this is not `async`
[INFO] [stdout] 19 | let client = ctx.resource::<HttpClient>().unwrap();
[INFO] [stdout] 20 | let resp = client.get("https://api.example.com/data").send().await?;
[INFO] [stdout]    |                                                              ^^^^^ only allowed inside `async` functions and blocks
[INFO] [stdout] 
[INFO] [stdout] error[E0728]: `await` is only allowed inside `async` functions and blocks
[INFO] [stdout]   --> src/httpclient/mod.rs:21:32
[INFO] [stdout]    |
[INFO] [stdout] 18 | fn main() { #[allow(non_snake_case)] fn _doctest_main_src_httpclient_mod_rs_18_0() {
[INFO] [stdout]    |                                      --------------------------------------------- this is not `async`
[INFO] [stdout] ...
[INFO] [stdout] 21 | let body: MyData = resp.json().await?;
[INFO] [stdout]    |                                ^^^^^ only allowed inside `async` functions and blocks
[INFO] [stdout] 
[INFO] [stdout] error: aborting due to 5 previous errors
[INFO] [stdout] 
[INFO] [stdout] Some errors have detailed explanations: E0425, E0728.
[INFO] [stdout] For more information about an error, try `rustc --explain E0425`.
[INFO] [stdout] Couldn't compile the test.
[INFO] [stdout] ---- src/client/event_bus.rs - client::event_bus (line 14) stdout ----
[INFO] [stdout] error[E0433]: cannot find type `EventBus` in this scope
[INFO] [stdout]   --> src/client/event_bus.rs:15:11
[INFO] [stdout]    |
[INFO] [stdout] 15 | let bus = EventBus::new(128);
[INFO] [stdout]    |           ^^^^^^^^ use of undeclared type `EventBus`
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: cannot find type `AppEvent` in this scope
[INFO] [stdout]   --> src/client/event_bus.rs:18:10
[INFO] [stdout]    |
[INFO] [stdout] 18 | bus.emit(AppEvent::Started);
[INFO] [stdout]    |          ^^^^^^^^ use of undeclared type `AppEvent`
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: cannot find type `AppEvent` in this scope
[INFO] [stdout]   --> src/client/event_bus.rs:25:13
[INFO] [stdout]    |
[INFO] [stdout] 25 |             AppEvent::Started => println!("App started!"),
[INFO] [stdout]    |             ^^^^^^^^ use of undeclared type `AppEvent`
[INFO] [stdout] 
[INFO] [stdout] error: aborting due to 3 previous errors
[INFO] [stdout] 
[INFO] [stdout] For more information about this error, try `rustc --explain E0433`.
[INFO] [stdout] Couldn't compile the test.
[INFO] [stdout] ---- src/config/mod.rs - config::AppConfig::get (line 151) stdout ----
[INFO] [stdout] error[E0425]: cannot find value `config` in this scope
[INFO] [stdout]    --> src/config/mod.rs:157:27
[INFO] [stdout]     |
[INFO] [stdout] 157 | let url: Option<String> = config.get("redis.url");
[INFO] [stdout]     |                           ^^^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find value `config` in this scope
[INFO] [stdout]    --> src/config/mod.rs:158:25
[INFO] [stdout]     |
[INFO] [stdout] 158 | let pool: Option<i64> = config.get("redis.pool_size");
[INFO] [stdout]     |                         ^^^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find value `config` in this scope
[INFO] [stdout]    --> src/config/mod.rs:159:25
[INFO] [stdout]     |
[INFO] [stdout] 159 | let port: Option<i64> = config.get("server.port");
[INFO] [stdout]     |                         ^^^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] error: aborting due to 3 previous errors
[INFO] [stdout] 
[INFO] [stdout] For more information about this error, try `rustc --explain E0425`.
[INFO] [stdout] Couldn't compile the test.
[INFO] [stdout] ---- src/client/example.rs - client::example (line 6) stdout ----
[INFO] [stdout] error[E0425]: cannot find value `client_registry` in this scope
[INFO] [stdout]  --> src/client/example.rs:8:1
[INFO] [stdout]   |
[INFO] [stdout] 8 | client_registry.register(
[INFO] [stdout]   | ^^^^^^^^^^^^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: cannot find type `Arc` in this scope
[INFO] [stdout]  --> src/client/example.rs:9:5
[INFO] [stdout]   |
[INFO] [stdout] 9 |     Arc::new(RedisPubSubClient::new("redis://127.0.0.1:6379")),
[INFO] [stdout]   |     ^^^ use of undeclared type `Arc`
[INFO] [stdout]   |
[INFO] [stdout] help: consider importing this struct
[INFO] [stdout]   |
[INFO] [stdout] 6 + use std::sync::Arc;
[INFO] [stdout]   |
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: cannot find type `Duration` in this scope
[INFO] [stdout]   --> src/client/example.rs:10:10
[INFO] [stdout]    |
[INFO] [stdout] 10 |     Some(Duration::from_secs(10)),
[INFO] [stdout]    |          ^^^^^^^^ use of undeclared type `Duration`
[INFO] [stdout]    |
[INFO] [stdout] help: consider importing this struct
[INFO] [stdout]    |
[INFO] [stdout]  6 + use std::time::Duration;
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find value `ctx` in this scope
[INFO] [stdout]   --> src/client/example.rs:14:14
[INFO] [stdout]    |
[INFO] [stdout] 14 | let client = ctx.resource::<RedisPubSubClient>().unwrap();
[INFO] [stdout]    |              ^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find type `RedisPubSubClient` in this scope
[INFO] [stdout]   --> src/client/example.rs:14:29
[INFO] [stdout]    |
[INFO] [stdout] 14 | let client = ctx.resource::<RedisPubSubClient>().unwrap();
[INFO] [stdout]    |                             ^^^^^^^^^^^^^^^^^ not found in this scope
[INFO] [stdout]    |
[INFO] [stdout] help: you might be missing a type parameter
[INFO] [stdout]    |
[INFO] [stdout]  6 | fn main() { #[allow(non_snake_case)] fn _doctest_main_src_client_example_rs_6_0<RedisPubSubClient>() {
[INFO] [stdout]    |                                                                                +++++++++++++++++++
[INFO] [stdout] 
[INFO] [stdout] error[E0728]: `await` is only allowed inside `async` functions and blocks
[INFO] [stdout]   --> src/client/example.rs:11:3
[INFO] [stdout]    |
[INFO] [stdout]  6 | fn main() { #[allow(non_snake_case)] fn _doctest_main_src_client_example_rs_6_0() {
[INFO] [stdout]    |                                      -------------------------------------------- this is not `async`
[INFO] [stdout] ...
[INFO] [stdout] 11 | ).await?;
[INFO] [stdout]    |   ^^^^^ only allowed inside `async` functions and blocks
[INFO] [stdout] 
[INFO] [stdout] error[E0728]: `await` is only allowed inside `async` functions and blocks
[INFO] [stdout]   --> src/client/example.rs:15:52
[INFO] [stdout]    |
[INFO] [stdout]  6 | fn main() { #[allow(non_snake_case)] fn _doctest_main_src_client_example_rs_6_0() {
[INFO] [stdout]    |                                      -------------------------------------------- this is not `async`
[INFO] [stdout] ...
[INFO] [stdout] 15 | let mut stream = client.subscribe("order.created").await?;
[INFO] [stdout]    |                                                    ^^^^^ only allowed inside `async` functions and blocks
[INFO] [stdout] 
[INFO] [stdout] error[E0728]: `await` is only allowed inside `async` functions and blocks
[INFO] [stdout]   --> src/client/example.rs:16:37
[INFO] [stdout]    |
[INFO] [stdout]  6 | fn main() { #[allow(non_snake_case)] fn _doctest_main_src_client_example_rs_6_0() {
[INFO] [stdout]    |                                      -------------------------------------------- this is not `async`
[INFO] [stdout] ...
[INFO] [stdout] 16 | while let Some(msg) = stream.next().await {
[INFO] [stdout]    |                                     ^^^^^ only allowed inside `async` functions and blocks
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: cannot find type `RedisPubSubClient` in this scope
[INFO] [stdout]  --> src/client/example.rs:9:14
[INFO] [stdout]   |
[INFO] [stdout] 9 |     Arc::new(RedisPubSubClient::new("redis://127.0.0.1:6379")),
[INFO] [stdout]   |              ^^^^^^^^^^^^^^^^^ use of undeclared type `RedisPubSubClient`
[INFO] [stdout] 
[INFO] [stdout] error: aborting due to 9 previous errors
[INFO] [stdout] 
[INFO] [stdout] Some errors have detailed explanations: E0425, E0433, E0728.
[INFO] [stdout] For more information about an error, try `rustc --explain E0425`.
[INFO] [stdout] Couldn't compile the test.
[INFO] [stdout] ---- src/config/mod.rs - config::AppConfig::get_as (line 182) stdout ----
[INFO] [stdout] error: cannot find derive macro `Deserialize` in this scope
[INFO] [stdout]    --> src/config/mod.rs:183:10
[INFO] [stdout]     |
[INFO] [stdout] 183 | #[derive(Deserialize)]
[INFO] [stdout]     |          ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find value `config` in this scope
[INFO] [stdout]    --> src/config/mod.rs:186:34
[INFO] [stdout]     |
[INFO] [stdout] 186 | let redis: Option<RedisConfig> = config.get_as("redis");
[INFO] [stdout]     |                                  ^^^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] error: aborting due to 2 previous errors
[INFO] [stdout] 
[INFO] [stdout] For more information about this error, try `rustc --explain E0425`.
[INFO] [stdout] Couldn't compile the test.
[INFO] [stdout] ---- src/service_macro.rs - service_macro::services (line 10) stdout ----
[INFO] [stdout] error[E0433]: cannot find module or crate `arcx` in this scope
[INFO] [stdout]   --> src/service_macro.rs:12:1
[INFO] [stdout]    |
[INFO] [stdout] 12 | arcx::services! {
[INFO] [stdout]    | ^^^^ use of unresolved module or unlinked crate `arcx`
[INFO] [stdout] 
[INFO] [stdout] error: aborting due to 1 previous error
[INFO] [stdout] 
[INFO] [stdout] For more information about this error, try `rustc --explain E0433`.
[INFO] [stdout] Couldn't compile the test.
[INFO] [stdout] ---- src/session/mod.rs - session (line 20) stdout ----
[INFO] [stdout] error[E0425]: cannot find type `Session` in this scope
[INFO] [stdout]   --> src/session/mod.rs:21:27
[INFO] [stdout]    |
[INFO] [stdout] 21 | async fn handler(session: Session) -> impl IntoResponse {
[INFO] [stdout]    |                           ^^^^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] error[E0405]: cannot find trait `IntoResponse` in this scope
[INFO] [stdout]   --> src/session/mod.rs:21:44
[INFO] [stdout]    |
[INFO] [stdout] 21 | async fn handler(session: Session) -> impl IntoResponse {
[INFO] [stdout]    |                                            ^^^^^^^^^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] error: aborting due to 2 previous errors
[INFO] [stdout] 
[INFO] [stdout] Some errors have detailed explanations: E0405, E0425.
[INFO] [stdout] For more information about an error, try `rustc --explain E0405`.
[INFO] [stdout] Couldn't compile the test.
[INFO] [stdout] ---- src/plugin/builtin/database.rs - plugin::builtin::database (line 13) stdout ----
[INFO] [stdout] error[E0425]: cannot find value `ctx` in this scope
[INFO] [stdout]   --> src/plugin/builtin/database.rs:14:10
[INFO] [stdout]    |
[INFO] [stdout] 14 | let db = ctx.resource::<DatabaseConnection>().unwrap();
[INFO] [stdout]    |          ^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find type `DatabaseConnection` in this scope
[INFO] [stdout]   --> src/plugin/builtin/database.rs:14:25
[INFO] [stdout]    |
[INFO] [stdout] 14 | let db = ctx.resource::<DatabaseConnection>().unwrap();
[INFO] [stdout]    |                         ^^^^^^^^^^^^^^^^^^ not found in this scope
[INFO] [stdout]    |
[INFO] [stdout] help: you might be missing a type parameter
[INFO] [stdout]    |
[INFO] [stdout] 13 | fn main() { #[allow(non_snake_case)] fn _doctest_main_src_plugin_builtin_database_rs_13_0<DatabaseConnection>() {
[INFO] [stdout]    |                                                                                          ++++++++++++++++++++
[INFO] [stdout] 
[INFO] [stdout] error: aborting due to 2 previous errors
[INFO] [stdout] 
[INFO] [stdout] For more information about this error, try `rustc --explain E0425`.
[INFO] [stdout] Couldn't compile the test.
[INFO] [stdout] ---- src/extract.rs - extract (line 7) stdout ----
[INFO] [stdout] error: unexpected token: `...`
[INFO] [stdout]   --> src/extract.rs:18:76
[INFO] [stdout]    |
[INFO] [stdout] 18 | async fn create(ctx: Context, body: ValidJson<CreateUserDto>) -> AppResult<...> {
[INFO] [stdout]    |                                                                            ^^^
[INFO] [stdout]    |
[INFO] [stdout] help: use `..` for an exclusive range
[INFO] [stdout]    |
[INFO] [stdout] 18 - async fn create(ctx: Context, body: ValidJson<CreateUserDto>) -> AppResult<...> {
[INFO] [stdout] 18 + async fn create(ctx: Context, body: ValidJson<CreateUserDto>) -> AppResult<..> {
[INFO] [stdout]    |
[INFO] [stdout] help: or `..=` for an inclusive range
[INFO] [stdout]    |
[INFO] [stdout] 18 - async fn create(ctx: Context, body: ValidJson<CreateUserDto>) -> AppResult<...> {
[INFO] [stdout] 18 + async fn create(ctx: Context, body: ValidJson<CreateUserDto>) -> AppResult<..=> {
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] error[E0586]: inclusive range with no end
[INFO] [stdout]   --> src/extract.rs:18:76
[INFO] [stdout]    |
[INFO] [stdout] 18 | async fn create(ctx: Context, body: ValidJson<CreateUserDto>) -> AppResult<...> {
[INFO] [stdout]    |                                                                            ^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: inclusive ranges must be bounded at the end (`..=b` or `a..=b`)
[INFO] [stdout] help: use `..` instead
[INFO] [stdout]    |
[INFO] [stdout] 18 - async fn create(ctx: Context, body: ValidJson<CreateUserDto>) -> AppResult<...> {
[INFO] [stdout] 18 + async fn create(ctx: Context, body: ValidJson<CreateUserDto>) -> AppResult<..> {
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] error: invalid const generic expression
[INFO] [stdout]   --> src/extract.rs:18:76
[INFO] [stdout]    |
[INFO] [stdout] 18 | async fn create(ctx: Context, body: ValidJson<CreateUserDto>) -> AppResult<...> {
[INFO] [stdout]    |                                                                            ^^^
[INFO] [stdout]    |
[INFO] [stdout] help: expressions must be enclosed in braces to be used as const generic arguments
[INFO] [stdout]    |
[INFO] [stdout] 18 | async fn create(ctx: Context, body: ValidJson<CreateUserDto>) -> AppResult<{ ... }> {
[INFO] [stdout]    |                                                                            +     +
[INFO] [stdout] 
[INFO] [stdout] error: cannot find derive macro `Deserialize` in this scope
[INFO] [stdout]   --> src/extract.rs:10:10
[INFO] [stdout]    |
[INFO] [stdout] 10 | #[derive(Deserialize, Validate)]
[INFO] [stdout]    |          ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find type `Context` in this scope
[INFO] [stdout]   --> src/extract.rs:18:22
[INFO] [stdout]    |
[INFO] [stdout] 18 | async fn create(ctx: Context, body: ValidJson<CreateUserDto>) -> AppResult<...> {
[INFO] [stdout]    |                      ^^^^^^^ not found in this scope
[INFO] [stdout]    |
[INFO] [stdout] help: consider importing this struct
[INFO] [stdout]    |
[INFO] [stdout]  7 + use std::task::Context;
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find type `ValidJson` in this scope
[INFO] [stdout]   --> src/extract.rs:18:37
[INFO] [stdout]    |
[INFO] [stdout] 18 | async fn create(ctx: Context, body: ValidJson<CreateUserDto>) -> AppResult<...> {
[INFO] [stdout]    |                                     ^^^^^^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find type `AppResult` in this scope
[INFO] [stdout]   --> src/extract.rs:18:66
[INFO] [stdout]    |
[INFO] [stdout] 18 | async fn create(ctx: Context, body: ValidJson<CreateUserDto>) -> AppResult<...> {
[INFO] [stdout]    |                                                                  ^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]   --> /rustc/b2282dd5646a57d570fc86fbe8df0e8826665ef6/library/core/src/result.rs:557:0
[INFO] [stdout]    |
[INFO] [stdout]    = note: similarly named enum `Result` defined here
[INFO] [stdout] help: an enum with a similar name exists
[INFO] [stdout]    |
[INFO] [stdout] 18 - async fn create(ctx: Context, body: ValidJson<CreateUserDto>) -> AppResult<...> {
[INFO] [stdout] 18 + async fn create(ctx: Context, body: ValidJson<CreateUserDto>) -> Result<...> {
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] error: aborting due to 7 previous errors
[INFO] [stdout] 
[INFO] [stdout] Some errors have detailed explanations: E0425, E0586.
[INFO] [stdout] For more information about an error, try `rustc --explain E0425`.
[INFO] [stdout] Couldn't compile the test.
[INFO] [stdout] ---- src/config/watcher.rs - config::watcher (line 15) stdout ----
[INFO] [stdout] error[E0425]: cannot find value `initial_config` in this scope
[INFO] [stdout]   --> src/config/watcher.rs:16:46
[INFO] [stdout]    |
[INFO] [stdout] 16 | let (notifier, watcher) = ConfigWatcher::new(initial_config);
[INFO] [stdout]    |                                              ^^^^^^^^^^^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find value `new_config` in this scope
[INFO] [stdout]   --> src/config/watcher.rs:28:17
[INFO] [stdout]    |
[INFO] [stdout] 28 | notifier.update(new_config);
[INFO] [stdout]    |                 ^^^^^^^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: cannot find type `ConfigWatcher` in this scope
[INFO] [stdout]   --> src/config/watcher.rs:16:27
[INFO] [stdout]    |
[INFO] [stdout] 16 | let (notifier, watcher) = ConfigWatcher::new(initial_config);
[INFO] [stdout]    |                           ^^^^^^^^^^^^^ use of undeclared type `ConfigWatcher`
[INFO] [stdout] 
[INFO] [stdout] error: aborting due to 3 previous errors
[INFO] [stdout] 
[INFO] [stdout] Some errors have detailed explanations: E0425, E0433.
[INFO] [stdout] For more information about an error, try `rustc --explain E0425`.
[INFO] [stdout] Couldn't compile the test.
[INFO] [stdout] ---- src/plugin/builtin/jwt.rs - plugin::builtin::jwt (line 12) stdout ----
[INFO] [stdout] error[E0425]: cannot find value `ctx` in this scope
[INFO] [stdout]   --> src/plugin/builtin/jwt.rs:14:11
[INFO] [stdout]    |
[INFO] [stdout] 14 | let jwt = ctx.resource::<JwtService>().unwrap();
[INFO] [stdout]    |           ^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find type `JwtService` in this scope
[INFO] [stdout]   --> src/plugin/builtin/jwt.rs:14:26
[INFO] [stdout]    |
[INFO] [stdout] 14 | let jwt = ctx.resource::<JwtService>().unwrap();
[INFO] [stdout]    |                          ^^^^^^^^^^ not found in this scope
[INFO] [stdout]    |
[INFO] [stdout] help: you might be missing a type parameter
[INFO] [stdout]    |
[INFO] [stdout] 12 | fn main() { #[allow(non_snake_case)] fn _doctest_main_src_plugin_builtin_jwt_rs_12_0<JwtService>() {
[INFO] [stdout]    |                                                                                     ++++++++++++
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find value `claims` in this scope
[INFO] [stdout]   --> src/plugin/builtin/jwt.rs:15:22
[INFO] [stdout]    |
[INFO] [stdout] 15 | let token = jwt.sign(claims)?;
[INFO] [stdout]    |                      ^^^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] error: aborting due to 3 previous errors
[INFO] [stdout] 
[INFO] [stdout] For more information about this error, try `rustc --explain E0425`.
[INFO] [stdout] Couldn't compile the test.
[INFO] [stdout] ---- src/schedule/mod.rs - schedule (line 10) stdout ----
[INFO] [stdout] error: cannot find attribute `async_trait` in this scope
[INFO] [stdout]   --> src/schedule/mod.rs:13:3
[INFO] [stdout]    |
[INFO] [stdout] 13 | #[async_trait]
[INFO] [stdout]    |   ^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `async_trait` is in scope, but it is a crate, not an attribute
[INFO] [stdout] 
[INFO] [stdout] error[E0405]: cannot find trait `ScheduleJob` in this scope
[INFO] [stdout]   --> src/schedule/mod.rs:14:6
[INFO] [stdout]    |
[INFO] [stdout] 14 | impl ScheduleJob for CleanExpiredTokens {
[INFO] [stdout]    |      ^^^^^^^^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find type `JobContext` in this scope
[INFO] [stdout]   --> src/schedule/mod.rs:17:31
[INFO] [stdout]    |
[INFO] [stdout] 17 |     async fn run(&self, ctx: &JobContext) {
[INFO] [stdout]    |                               ^^^^^^^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] error: aborting due to 3 previous errors
[INFO] [stdout] 
[INFO] [stdout] Some errors have detailed explanations: E0405, E0425.
[INFO] [stdout] For more information about an error, try `rustc --explain E0405`.
[INFO] [stdout] Couldn't compile the test.
[INFO] [stdout] ---- src/lib.rs - (line 8) stdout ----
[INFO] [stdout] error[E0583]: file not found for module `controller`
[INFO] [stdout]   --> src/lib.rs:12:1
[INFO] [stdout]    |
[INFO] [stdout] 12 | mod controller;
[INFO] [stdout]    | ^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = help: to create the module `controller`, create file "src/controller.rs" or "src/controller/mod.rs"
[INFO] [stdout]    = note: if there is a `mod controller` elsewhere in the crate already, import it with `use crate::...` instead
[INFO] [stdout] 
[INFO] [stdout] error[E0583]: file not found for module `service`
[INFO] [stdout]   --> src/lib.rs:13:1
[INFO] [stdout]    |
[INFO] [stdout] 13 | mod service;
[INFO] [stdout]    | ^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = help: to create the module `service`, create file "src/service.rs" or "src/service/mod.rs"
[INFO] [stdout]    = note: if there is a `mod service` elsewhere in the crate already, import it with `use crate::...` instead
[INFO] [stdout] 
[INFO] [stdout] error[E0432]: unresolved import `crate::context`
[INFO] [stdout]   --> src/router/mod.rs:58:12
[INFO] [stdout]    |
[INFO] [stdout] 58 | use crate::context::AppState;
[INFO] [stdout]    |            ^^^^^^^ could not find `context` in the crate root
[INFO] [stdout] 
[INFO] [stdout] error[E0432]: unresolved import `crate::ctx`
[INFO] [stdout]   --> src/router/mod.rs:59:12
[INFO] [stdout]    |
[INFO] [stdout] 59 | use crate::ctx::{Ctx, ReqParts};
[INFO] [stdout]    |            ^^^ could not find `ctx` in the crate root
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find value `routes` in module `router`
[INFO] [stdout]   --> src/lib.rs:19:25
[INFO] [stdout]    |
[INFO] [stdout] 19 |         .routes(router::routes)
[INFO] [stdout]    |                         ^^^^^^ not found in `router`
[INFO] [stdout] 
[INFO] [stdout] error: aborting due to 5 previous errors
[INFO] [stdout] 
[INFO] [stdout] Some errors have detailed explanations: E0425, E0432, E0583.
[INFO] [stdout] For more information about an error, try `rustc --explain E0425`.
[INFO] [stdout] Couldn't compile the test.
[INFO] [stdout] ---- src/service_macro.rs - service_macro::services (line 18) stdout ----
[INFO] [stdout] error[E0432]: unresolved import `crate::prelude`
[INFO] [stdout]   --> src/service_macro.rs:20:12
[INFO] [stdout]    |
[INFO] [stdout] 20 | use crate::prelude::*;
[INFO] [stdout]    |            ^^^^^^^ unresolved import
[INFO] [stdout]    |
[INFO] [stdout] help: a similar path exists
[INFO] [stdout]    |
[INFO] [stdout] 20 | use crate::core::prelude::*;
[INFO] [stdout]    |            ++++++
[INFO] [stdout] 
[INFO] [stdout] error: aborting due to 1 previous error
[INFO] [stdout] 
[INFO] [stdout] For more information about this error, try `rustc --explain E0432`.
[INFO] [stdout] Couldn't compile the test.
[INFO] [stdout] ---- src/ws/mod.rs - ws (line 9) stdout ----
[INFO] [stdout] error: cannot find attribute `async_trait` in this scope
[INFO] [stdout]   --> src/ws/mod.rs:12:3
[INFO] [stdout]    |
[INFO] [stdout] 12 | #[async_trait]
[INFO] [stdout]    |   ^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `async_trait` is in scope, but it is a crate, not an attribute
[INFO] [stdout] 
[INFO] [stdout] error[E0405]: cannot find trait `WsHandler` in this scope
[INFO] [stdout]   --> src/ws/mod.rs:13:6
[INFO] [stdout]    |
[INFO] [stdout] 13 | impl WsHandler for ChatWs {
[INFO] [stdout]    |      ^^^^^^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find type `WsSession` in this scope
[INFO] [stdout]   --> src/ws/mod.rs:16:42
[INFO] [stdout]    |
[INFO] [stdout] 16 |     async fn on_message(&self, session: &WsSession, msg: WsMessage) {
[INFO] [stdout]    |                                          ^^^^^^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find type `WsMessage` in this scope
[INFO] [stdout]   --> src/ws/mod.rs:16:58
[INFO] [stdout]    |
[INFO] [stdout] 16 |     async fn on_message(&self, session: &WsSession, msg: WsMessage) {
[INFO] [stdout]    |                                                          ^^^^^^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] error: aborting due to 4 previous errors
[INFO] [stdout] 
[INFO] [stdout] Some errors have detailed explanations: E0405, E0425.
[INFO] [stdout] For more information about an error, try `rustc --explain E0405`.
[INFO] [stdout] Couldn't compile the test.
[INFO] [stdout] 
[INFO] [stdout] failures:
[INFO] [stdout]     src/client/event_bus.rs - client::event_bus (line 14)
[INFO] [stdout]     src/client/example.rs - client::example (line 6)
[INFO] [stdout]     src/config/mod.rs - config::AppConfig::get (line 151)
[INFO] [stdout]     src/config/mod.rs - config::AppConfig::get_as (line 182)
[INFO] [stdout]     src/config/mod.rs - config::AppConfig::get_section (line 172)
[INFO] [stdout]     src/config/watcher.rs - config::watcher (line 15)
[INFO] [stdout]     src/extract.rs - extract (line 7)
[INFO] [stdout]     src/httpclient/mod.rs - httpclient (line 18)
[INFO] [stdout]     src/lib.rs - (line 8)
[INFO] [stdout]     src/plugin/builtin/database.rs - plugin::builtin::database (line 13)
[INFO] [stdout]     src/plugin/builtin/jwt.rs - plugin::builtin::jwt (line 12)
[INFO] [stdout]     src/schedule/mod.rs - schedule (line 10)
[INFO] [stdout]     src/service_macro.rs - service_macro::services (line 10)
[INFO] [stdout]     src/service_macro.rs - service_macro::services (line 18)
[INFO] [stdout]     src/session/mod.rs - session (line 20)
[INFO] [stdout]     src/ws/mod.rs - ws (line 9)
[INFO] [stdout] 
[INFO] [stdout] test result: FAILED. 0 passed; 16 failed; 24 ignored; 0 measured; 0 filtered out; finished in 1.85s
[INFO] [stdout] 
[INFO] [stderr] error: doctest failed, to rerun pass `--doc`
[INFO] running `Command { std: "docker" "inspect" "2852dd67c72736f9c62f5c96f2deca00b70e8f182744e1050bf2e3d37dc705d6", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "2852dd67c72736f9c62f5c96f2deca00b70e8f182744e1050bf2e3d37dc705d6", kill_on_drop: false }`
[INFO] [stdout] 2852dd67c72736f9c62f5c96f2deca00b70e8f182744e1050bf2e3d37dc705d6
