[INFO] cloning repository https://github.com/erichuang2013/rust_todo_demo
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/erichuang2013/rust_todo_demo" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Ferichuang2013%2Frust_todo_demo", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Ferichuang2013%2Frust_todo_demo'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] eba2ca859a8cfde7418548c3730b624453c8640f
[INFO] checking erichuang2013/rust_todo_demo against try#7b3da9103634dffd4f4365cfd8642427c781d99f+rustflags=-Dinherent-method-on-receiver for 152214-denied
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Ferichuang2013%2Frust_todo_demo" "/workspace/builds/worker-0-tc2/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-0-tc2/source'...
[INFO] [stderr] done.
[INFO] started tweaking git repo https://github.com/erichuang2013/rust_todo_demo
[INFO] finished tweaking git repo https://github.com/erichuang2013/rust_todo_demo
[INFO] tweaked toml for git repo https://github.com/erichuang2013/rust_todo_demo written to /workspace/builds/worker-0-tc2/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/erichuang2013/rust_todo_demo on toolchain 7b3da9103634dffd4f4365cfd8642427c781d99f
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+7b3da9103634dffd4f4365cfd8642427c781d99f" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate git repo https://github.com/erichuang2013/rust_todo_demo 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" "+7b3da9103634dffd4f4365cfd8642427c781d99f" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Blocking waiting for file lock on package cache
[INFO] [stderr]     Blocking waiting for file lock on package cache
[INFO] [stderr]  Downloading crates ...
[INFO] [stderr]   Downloaded auto-future v1.0.0
[INFO] [stderr]   Downloaded rust-multipart-rfc7578_2 v0.6.1
[INFO] [stderr]   Downloaded reserve-port v2.3.0
[INFO] [stderr]   Downloaded rusqlite v0.31.0
[INFO] [stderr]   Downloaded axum-test v15.7.4
[INFO] [stderr]   Downloaded libsqlite3-sys v0.28.0
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:61361fe0aef631f17e9d025a70c5a647956f8c671dd02950a60ad3f5cc5526d7" "/opt/rustwide/cargo-home/bin/cargo" "+7b3da9103634dffd4f4365cfd8642427c781d99f" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] 14ec587fe27293ab4039d6290957eb058834225f3fb076c579d1137c2a03499a
[INFO] running `Command { std: "docker" "start" "-a" "14ec587fe27293ab4039d6290957eb058834225f3fb076c579d1137c2a03499a", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "14ec587fe27293ab4039d6290957eb058834225f3fb076c579d1137c2a03499a", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "14ec587fe27293ab4039d6290957eb058834225f3fb076c579d1137c2a03499a", kill_on_drop: false }`
[INFO] [stdout] 14ec587fe27293ab4039d6290957eb058834225f3fb076c579d1137c2a03499a
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid -Dinherent-method-on-receiver" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:61361fe0aef631f17e9d025a70c5a647956f8c671dd02950a60ad3f5cc5526d7" "/opt/rustwide/cargo-home/bin/cargo" "+7b3da9103634dffd4f4365cfd8642427c781d99f" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] fdefba6a7c4c840ac6b7d7d4f4a873bb996e75afc3cb0a376c808d0ed6102ed3
[INFO] running `Command { std: "docker" "start" "-a" "fdefba6a7c4c840ac6b7d7d4f4a873bb996e75afc3cb0a376c808d0ed6102ed3", kill_on_drop: false }`
[INFO] [stderr]    Compiling zerocopy v0.8.33
[INFO] [stderr]     Checking zerovec v0.11.5
[INFO] [stderr]     Checking tracing-core v0.1.36
[INFO] [stderr]     Checking socket2 v0.6.2
[INFO] [stderr]     Checking mio v1.1.1
[INFO] [stderr]    Compiling tokio-macros v2.6.0
[INFO] [stderr]     Checking log v0.4.29
[INFO] [stderr]     Checking futures-util v0.3.31
[INFO] [stderr]    Compiling tracing-attributes v0.1.31
[INFO] [stderr]     Checking zerotrie v0.2.3
[INFO] [stderr]     Checking serde v1.0.228
[INFO] [stderr]    Compiling cc v1.2.54
[INFO] [stderr]     Checking getrandom v0.2.17
[INFO] [stderr]     Checking regex-syntax v0.8.8
[INFO] [stderr]    Compiling time-core v0.1.8
[INFO] [stderr]    Compiling num-conv v0.2.0
[INFO] [stderr]     Checking rand_core v0.6.4
[INFO] [stderr]     Checking serde_json v1.0.149
[INFO] [stderr]     Checking serde_path_to_error v0.1.20
[INFO] [stderr]    Compiling time-macros v0.2.26
[INFO] [stderr]    Compiling axum-macros v0.4.2
[INFO] [stderr]    Compiling thiserror-impl v2.0.18
[INFO] [stderr]    Compiling rustix v1.1.3
[INFO] [stderr]     Checking http v0.2.12
[INFO] [stderr]     Checking tracing-log v0.2.0
[INFO] [stderr]     Checking thiserror v1.0.69
[INFO] [stderr]     Checking serde_urlencoded v0.7.1
[INFO] [stderr]     Checking chrono v0.4.43
[INFO] [stderr]     Checking thread_local v1.1.9
[INFO] [stderr]     Checking tinystr v0.8.2
[INFO] [stderr]     Checking potential_utf v0.1.4
[INFO] [stderr]     Checking tokio v1.49.0
[INFO] [stderr]     Checking icu_locale_core v2.1.1
[INFO] [stderr]     Checking yansi v1.0.1
[INFO] [stderr]     Checking icu_collections v2.1.1
[INFO] [stderr]     Checking diff v0.1.13
[INFO] [stderr]     Checking fallible-streaming-iterator v0.1.9
[INFO] [stderr]     Checking fallible-iterator v0.3.0
[INFO] [stderr]     Checking nu-ansi-term v0.50.3
[INFO] [stderr]     Checking pretty_assertions v1.4.1
[INFO] [stderr]     Checking uuid v1.19.0
[INFO] [stderr]     Checking auto-future v1.0.0
[INFO] [stderr]     Checking regex-automata v0.4.13
[INFO] [stderr]    Compiling libsqlite3-sys v0.28.0
[INFO] [stderr]     Checking time v0.3.46
[INFO] [stderr]     Checking thiserror v2.0.18
[INFO] [stderr]     Checking tracing v0.1.44
[INFO] [stderr]     Checking reserve-port v2.3.0
[INFO] [stderr]     Checking icu_provider v2.1.1
[INFO] [stderr]     Checking tower v0.4.13
[INFO] [stderr]     Checking icu_normalizer v2.1.1
[INFO] [stderr]     Checking icu_properties v2.1.2
[INFO] [stderr]     Checking ahash v0.8.12
[INFO] [stderr]     Checking ppv-lite86 v0.2.21
[INFO] [stderr]     Checking axum-core v0.4.5
[INFO] [stderr]     Checking futures-executor v0.3.31
[INFO] [stderr]     Checking tempfile v3.24.0
[INFO] [stderr]     Checking futures v0.3.31
[INFO] [stderr]     Checking hashbrown v0.14.5
[INFO] [stderr]     Checking rand_chacha v0.3.1
[INFO] [stderr]     Checking rand v0.8.5
[INFO] [stderr]     Checking matchers v0.2.0
[INFO] [stderr]     Checking cookie v0.18.1
[INFO] [stderr]     Checking tracing-subscriber v0.3.22
[INFO] [stderr]     Checking idna_adapter v1.2.1
[INFO] [stderr]     Checking hashlink v0.9.1
[INFO] [stderr]     Checking idna v1.1.0
[INFO] [stderr]     Checking url v2.5.8
[INFO] [stderr]     Checking rust-multipart-rfc7578_2 v0.6.1
[INFO] [stderr]     Checking hyper v1.8.1
[INFO] [stderr]     Checking tower v0.5.3
[INFO] [stderr]     Checking tokio-util v0.7.18
[INFO] [stderr]     Checking tokio-stream v0.1.18
[INFO] [stderr]     Checking tower-http v0.5.2
[INFO] [stderr]     Checking tokio-test v0.4.5
[INFO] [stderr]     Checking hyper-util v0.1.19
[INFO] [stderr]     Checking axum v0.7.9
[INFO] [stderr]     Checking axum-test v15.7.4
[INFO] [stderr]     Checking rusqlite v0.31.0
[INFO] [stderr]     Checking rust-todo-demo v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] error[E0432]: unresolved import `tower::ServiceExt`
[INFO] [stdout]    --> tests/handler_tests.rs:10:5
[INFO] [stdout]     |
[INFO] [stdout]  10 | use tower::ServiceExt;
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^ no `ServiceExt` in the root
[INFO] [stdout]     |
[INFO] [stdout] note: found an item that was configured out
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tower-0.4.13/src/lib.rs:223:34
[INFO] [stdout]     |
[INFO] [stdout] 220 | #[cfg(feature = "util")]
[INFO] [stdout]     |       ---------------- the item is gated behind the `util` feature
[INFO] [stdout] ...
[INFO] [stdout] 223 | pub use self::util::{service_fn, ServiceExt};
[INFO] [stdout]     |                                  ^^^^^^^^^^
[INFO] [stdout] help: a similar name exists in the module
[INFO] [stdout]     |
[INFO] [stdout]  10 - use tower::ServiceExt;
[INFO] [stdout]  10 + use tower::Service;
[INFO] [stdout]     |
[INFO] [stdout] help: consider importing this trait instead
[INFO] [stdout]     |
[INFO] [stdout]  10 - use tower::ServiceExt;
[INFO] [stdout]  10 + use axum::ServiceExt;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of unresolved module or unlinked crate `rust_todo_demo`
[INFO] [stdout]   --> tests/handler_tests.rs:12:5
[INFO] [stdout]    |
[INFO] [stdout] 12 | use rust_todo_demo::{
[INFO] [stdout]    |     ^^^^^^^^^^^^^^ use of unresolved module or unlinked crate `rust_todo_demo`
[INFO] [stdout]    |
[INFO] [stdout]    = help: if you wanted to use a crate named `rust_todo_demo`, use `cargo add rust_todo_demo` to add it to your `Cargo.toml`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of unresolved module or unlinked crate `tests`
[INFO] [stdout]   --> tests/handler_tests.rs:18:5
[INFO] [stdout]    |
[INFO] [stdout] 18 | use tests::test_utils::{create_test_state, TodoFactory};
[INFO] [stdout]    |     ^^^^^ use of unresolved module or unlinked crate `tests`
[INFO] [stdout]    |
[INFO] [stdout] help: there is a crate or module with a similar name
[INFO] [stdout]    |
[INFO] [stdout] 18 - use tests::test_utils::{create_test_state, TodoFactory};
[INFO] [stdout] 18 + use test::test_utils::{create_test_state, TodoFactory};
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0432]: unresolved import `rust_todo_demo`
[INFO] [stdout]   --> tests/handler_tests.rs:12:5
[INFO] [stdout]    |
[INFO] [stdout] 12 | use rust_todo_demo::{
[INFO] [stdout]    |     ^^^^^^^^^^^^^^ use of unresolved module or unlinked crate `rust_todo_demo`
[INFO] [stdout]    |
[INFO] [stdout]    = help: if you wanted to use a crate named `rust_todo_demo`, use `cargo add rust_todo_demo` to add it to your `Cargo.toml`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Request`, `body::Body`, and `response::Json`
[INFO] [stdout]  --> tests/handler_tests.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 4 |     body::Body,
[INFO] [stdout]   |     ^^^^^^^^^^
[INFO] [stdout] 5 |     http::{Request, StatusCode},
[INFO] [stdout]   |            ^^^^^^^
[INFO] [stdout] 6 |     response::Json,
[INFO] [stdout]   |     ^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of unresolved module or unlinked crate `rust_todo_demo`
[INFO] [stdout]  --> tests/database_tests.rs:6:5
[INFO] [stdout]   |
[INFO] [stdout] 6 | use rust_todo_demo::db::Database;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^ use of unresolved module or unlinked crate `rust_todo_demo`
[INFO] [stdout]   |
[INFO] [stdout]   = help: if you wanted to use a crate named `rust_todo_demo`, use `cargo add rust_todo_demo` to add it to your `Cargo.toml`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of unresolved module or unlinked crate `rust_todo_demo`
[INFO] [stdout]  --> tests/database_tests.rs:7:5
[INFO] [stdout]   |
[INFO] [stdout] 7 | use rust_todo_demo::models::{CreateTodo, UpdateTodo};
[INFO] [stdout]   |     ^^^^^^^^^^^^^^ use of unresolved module or unlinked crate `rust_todo_demo`
[INFO] [stdout]   |
[INFO] [stdout]   = help: if you wanted to use a crate named `rust_todo_demo`, use `cargo add rust_todo_demo` to add it to your `Cargo.toml`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of unresolved module or unlinked crate `tests`
[INFO] [stdout]  --> tests/database_tests.rs:8:5
[INFO] [stdout]   |
[INFO] [stdout] 8 | use tests::test_utils::{create_test_database, TodoFactory};
[INFO] [stdout]   |     ^^^^^ use of unresolved module or unlinked crate `tests`
[INFO] [stdout]   |
[INFO] [stdout]   = help: if you wanted to use a crate named `tests`, use `cargo add tests` to add it to your `Cargo.toml`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0432]: unresolved import `tower::ServiceExt`
[INFO] [stdout]    --> tests/handler_tests.rs:10:5
[INFO] [stdout]     |
[INFO] [stdout]  10 | use tower::ServiceExt;
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^ no `ServiceExt` in the root
[INFO] [stdout]     |
[INFO] [stdout] note: found an item that was configured out
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tower-0.4.13/src/lib.rs:223:34
[INFO] [stdout]     |
[INFO] [stdout] 220 | #[cfg(feature = "util")]
[INFO] [stdout]     |       ---------------- the item is gated behind the `util` feature
[INFO] [stdout] ...
[INFO] [stdout] 223 | pub use self::util::{service_fn, ServiceExt};
[INFO] [stdout]     |                                  ^^^^^^^^^^
[INFO] [stdout] help: a similar name exists in the module
[INFO] [stdout]     |
[INFO] [stdout]  10 - use tower::ServiceExt;
[INFO] [stdout]  10 + use tower::Service;
[INFO] [stdout]     |
[INFO] [stdout] help: consider importing this trait instead
[INFO] [stdout]     |
[INFO] [stdout]  10 - use tower::ServiceExt;
[INFO] [stdout]  10 + use axum::ServiceExt;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of unresolved module or unlinked crate `rust_todo_demo`
[INFO] [stdout]   --> tests/handler_tests.rs:12:5
[INFO] [stdout]    |
[INFO] [stdout] 12 | use rust_todo_demo::{
[INFO] [stdout]    |     ^^^^^^^^^^^^^^ use of unresolved module or unlinked crate `rust_todo_demo`
[INFO] [stdout]    |
[INFO] [stdout]    = help: if you wanted to use a crate named `rust_todo_demo`, use `cargo add rust_todo_demo` to add it to your `Cargo.toml`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of unresolved module or unlinked crate `tests`
[INFO] [stdout]   --> tests/handler_tests.rs:18:5
[INFO] [stdout]    |
[INFO] [stdout] 18 | use tests::test_utils::{create_test_state, TodoFactory};
[INFO] [stdout]    |     ^^^^^ use of unresolved module or unlinked crate `tests`
[INFO] [stdout]    |
[INFO] [stdout]    = help: if you wanted to use a crate named `tests`, use `cargo add tests` to add it to your `Cargo.toml`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of unresolved module or unlinked crate `rust_todo_demo`
[INFO] [stdout]  --> tests/integration_tests.rs:7:5
[INFO] [stdout]   |
[INFO] [stdout] 7 | use rust_todo_demo::{models::Todo, routes::create_router};
[INFO] [stdout]   |     ^^^^^^^^^^^^^^ use of unresolved module or unlinked crate `rust_todo_demo`
[INFO] [stdout]   |
[INFO] [stdout]   = help: if you wanted to use a crate named `rust_todo_demo`, use `cargo add rust_todo_demo` to add it to your `Cargo.toml`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of unresolved module or unlinked crate `tests`
[INFO] [stdout]  --> tests/integration_tests.rs:8:5
[INFO] [stdout]   |
[INFO] [stdout] 8 | use tests::test_utils::{create_test_state, TodoFactory};
[INFO] [stdout]   |     ^^^^^ use of unresolved module or unlinked crate `tests`
[INFO] [stdout]   |
[INFO] [stdout]   = help: if you wanted to use a crate named `tests`, use `cargo add tests` to add it to your `Cargo.toml`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0282]: type annotations needed
[INFO] [stdout]   --> tests/handler_tests.rs:60:20
[INFO] [stdout]    |
[INFO] [stdout] 60 |     let created1 = state.db.create_todo(&todo1).await.unwrap();
[INFO] [stdout]    |                    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ cannot infer type
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0282]: type annotations needed
[INFO] [stdout]   --> tests/handler_tests.rs:61:20
[INFO] [stdout]    |
[INFO] [stdout] 61 |     let created2 = state.db.create_todo(&todo2).await.unwrap();
[INFO] [stdout]    |                    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ cannot infer type
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0432]: unresolved import `rust_todo_demo`
[INFO] [stdout]   --> tests/handler_tests.rs:12:5
[INFO] [stdout]    |
[INFO] [stdout] 12 | use rust_todo_demo::{
[INFO] [stdout]    |     ^^^^^^^^^^^^^^ use of unresolved module or unlinked crate `rust_todo_demo`
[INFO] [stdout]    |
[INFO] [stdout]    = help: if you wanted to use a crate named `rust_todo_demo`, use `cargo add rust_todo_demo` to add it to your `Cargo.toml`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0432]: unresolved import `crate::db`
[INFO] [stdout]  --> tests/test_utils.rs:7:12
[INFO] [stdout]   |
[INFO] [stdout] 7 | use crate::db::Database;
[INFO] [stdout]   |            ^^ could not find `db` in the crate root
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0282]: type annotations needed
[INFO] [stdout]    --> tests/handler_tests.rs:138:24
[INFO] [stdout]     |
[INFO] [stdout] 138 |     let created_todo = state.db.create_todo(&create_todo).await.unwrap();
[INFO] [stdout]     |                        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ cannot infer type
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0282]: type annotations needed
[INFO] [stdout]    --> tests/handler_tests.rs:184:24
[INFO] [stdout]     |
[INFO] [stdout] 184 |     let created_todo = state.db.create_todo(&create_todo).await.unwrap();
[INFO] [stdout]     |                        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ cannot infer type
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0432]: unresolved import `crate::models`
[INFO] [stdout]  --> tests/test_utils.rs:8:12
[INFO] [stdout]   |
[INFO] [stdout] 8 | use crate::models::{CreateTodo, Todo, UpdateTodo};
[INFO] [stdout]   |            ^^^^^^ could not find `models` in the crate root
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0432]: unresolved import `crate::state`
[INFO] [stdout]  --> tests/test_utils.rs:9:12
[INFO] [stdout]   |
[INFO] [stdout] 9 | use crate::state::AppState;
[INFO] [stdout]   |            ^^^^^ could not find `state` in the crate root
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0282]: type annotations needed
[INFO] [stdout]    --> tests/handler_tests.rs:297:9
[INFO] [stdout]     |
[INFO] [stdout] 297 |     let result = handlers::get_todos(axum::extract::State(state)).await;
[INFO] [stdout]     |         ^^^^^^
[INFO] [stdout] 298 |     assert!(result.is_ok(), "Handler should return successful result");
[INFO] [stdout]     |             ------ type must be known at this point
[INFO] [stdout]     |
[INFO] [stdout] help: consider giving `result` an explicit type
[INFO] [stdout]     |
[INFO] [stdout] 297 |     let result: /* Type */ = handlers::get_todos(axum::extract::State(state)).await;
[INFO] [stdout]     |               ++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0282]: type annotations needed
[INFO] [stdout]    --> tests/handler_tests.rs:306:9
[INFO] [stdout]     |
[INFO] [stdout] 306 |     let result = handlers::health_check().await;
[INFO] [stdout]     |         ^^^^^^
[INFO] [stdout] 307 |     assert!(result.is_ok(), "Health check should always succeed");
[INFO] [stdout]     |             ------ type must be known at this point
[INFO] [stdout]     |
[INFO] [stdout] help: consider giving `result` an explicit type
[INFO] [stdout]     |
[INFO] [stdout] 306 |     let result: /* Type */ = handlers::health_check().await;
[INFO] [stdout]     |               ++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of unresolved module or unlinked crate `rust_todo_demo`
[INFO] [stdout]  --> tests/database_tests.rs:6:5
[INFO] [stdout]   |
[INFO] [stdout] 6 | use rust_todo_demo::db::Database;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^ use of unresolved module or unlinked crate `rust_todo_demo`
[INFO] [stdout]   |
[INFO] [stdout]   = help: if you wanted to use a crate named `rust_todo_demo`, use `cargo add rust_todo_demo` to add it to your `Cargo.toml`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of unresolved module or unlinked crate `rust_todo_demo`
[INFO] [stdout]  --> tests/database_tests.rs:7:5
[INFO] [stdout]   |
[INFO] [stdout] 7 | use rust_todo_demo::models::{CreateTodo, UpdateTodo};
[INFO] [stdout]   |     ^^^^^^^^^^^^^^ use of unresolved module or unlinked crate `rust_todo_demo`
[INFO] [stdout]   |
[INFO] [stdout]   = help: if you wanted to use a crate named `rust_todo_demo`, use `cargo add rust_todo_demo` to add it to your `Cargo.toml`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of unresolved module or unlinked crate `tests`
[INFO] [stdout]  --> tests/database_tests.rs:8:5
[INFO] [stdout]   |
[INFO] [stdout] 8 | use tests::test_utils::{create_test_database, TodoFactory};
[INFO] [stdout]   |     ^^^^^ use of unresolved module or unlinked crate `tests`
[INFO] [stdout]   |
[INFO] [stdout] help: there is a crate or module with a similar name
[INFO] [stdout]   |
[INFO] [stdout] 8 - use tests::test_utils::{create_test_database, TodoFactory};
[INFO] [stdout] 8 + use test::test_utils::{create_test_database, TodoFactory};
[INFO] [stdout]   |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `rust-todo-demo` (test "handler_tests") due to 10 previous errors; 1 warning emitted
[INFO] [stdout] Some errors have detailed explanations: E0282, E0432, E0433.
[INFO] [stdout] 
[INFO] [stderr] warning: build failed, waiting for other jobs to finish...
[INFO] [stdout] For more information about an error, try `rustc --explain E0282`.
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `put`
[INFO] [stdout]  --> src/routes.rs:4:34
[INFO] [stdout]   |
[INFO] [stdout] 4 |     routing::{delete, get, post, put},
[INFO] [stdout]   |                                  ^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of unresolved module or unlinked crate `rust_todo_demo`
[INFO] [stdout]  --> tests/integration_tests.rs:7:5
[INFO] [stdout]   |
[INFO] [stdout] 7 | use rust_todo_demo::{models::Todo, routes::create_router};
[INFO] [stdout]   |     ^^^^^^^^^^^^^^ use of unresolved module or unlinked crate `rust_todo_demo`
[INFO] [stdout]   |
[INFO] [stdout]   = help: if you wanted to use a crate named `rust_todo_demo`, use `cargo add rust_todo_demo` to add it to your `Cargo.toml`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of unresolved module or unlinked crate `tests`
[INFO] [stdout]  --> tests/integration_tests.rs:8:5
[INFO] [stdout]   |
[INFO] [stdout] 8 | use tests::test_utils::{create_test_state, TodoFactory};
[INFO] [stdout]   |     ^^^^^ use of unresolved module or unlinked crate `tests`
[INFO] [stdout]   |
[INFO] [stdout] help: there is a crate or module with a similar name
[INFO] [stdout]   |
[INFO] [stdout] 8 - use tests::test_utils::{create_test_state, TodoFactory};
[INFO] [stdout] 8 + use test::test_utils::{create_test_state, TodoFactory};
[INFO] [stdout]   |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `Arc`
[INFO] [stdout]    --> tests/database_tests.rs:222:14
[INFO] [stdout]     |
[INFO] [stdout] 222 |     let db = Arc::new(std::sync::Mutex::new(db));
[INFO] [stdout]     |              ^^^ use of undeclared type `Arc`
[INFO] [stdout]     |
[INFO] [stdout] help: consider importing this struct
[INFO] [stdout]     |
[INFO] [stdout]   3 + use std::sync::Arc;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `tempfile::TempDir`
[INFO] [stdout]  --> tests/database_tests.rs:3:5
[INFO] [stdout]   |
[INFO] [stdout] 3 | use tempfile::TempDir;
[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: `tokio_test`
[INFO] [stdout]  --> tests/database_tests.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | use tokio_test;
[INFO] [stdout]   |     ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0282]: type annotations needed for `(_, _)`
[INFO] [stdout]   --> tests/database_tests.rs:20:9
[INFO] [stdout]    |
[INFO] [stdout] 20 |     let (db, _temp_dir) = create_test_database().await;
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 23 |     let todos = db.get_all_todos().await.unwrap();
[INFO] [stdout]    |                 -- type must be known at this point
[INFO] [stdout]    |
[INFO] [stdout] help: consider giving this pattern a type, where the placeholders `_` are specified
[INFO] [stdout]    |
[INFO] [stdout] 20 |     let (db, _temp_dir): (_, _) = create_test_database().await;
[INFO] [stdout]    |                        ++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0282]: type annotations needed
[INFO] [stdout]   --> tests/database_tests.rs:23:17
[INFO] [stdout]    |
[INFO] [stdout] 23 |     let todos = db.get_all_todos().await.unwrap();
[INFO] [stdout]    |                 ^^^^^^^^^^^^^^^^^^^^^^^^ cannot infer type
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0282]: type annotations needed for `(_, _)`
[INFO] [stdout]   --> tests/database_tests.rs:32:9
[INFO] [stdout]    |
[INFO] [stdout] 32 |     let (db, _temp_dir) = create_test_database().await;
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 35 |     let created_todo = db.create_todo(&create_todo).await.unwrap();
[INFO] [stdout]    |                        -- type must be known at this point
[INFO] [stdout]    |
[INFO] [stdout] help: consider giving this pattern a type, where the placeholders `_` are specified
[INFO] [stdout]    |
[INFO] [stdout] 32 |     let (db, _temp_dir): (_, _) = create_test_database().await;
[INFO] [stdout]    |                        ++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0282]: type annotations needed
[INFO] [stdout]   --> tests/database_tests.rs:35:24
[INFO] [stdout]    |
[INFO] [stdout] 35 |     let created_todo = db.create_todo(&create_todo).await.unwrap();
[INFO] [stdout]    |                        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ cannot infer type
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0282]: type annotations needed for `(_, _)`
[INFO] [stdout]   --> tests/database_tests.rs:44:9
[INFO] [stdout]    |
[INFO] [stdout] 44 |     let (db, _temp_dir) = create_test_database().await;
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 49 |     let created1 = db.create_todo(&todo1).await.unwrap();
[INFO] [stdout]    |                    -- type must be known at this point
[INFO] [stdout]    |
[INFO] [stdout] help: consider giving this pattern a type, where the placeholders `_` are specified
[INFO] [stdout]    |
[INFO] [stdout] 44 |     let (db, _temp_dir): (_, _) = create_test_database().await;
[INFO] [stdout]    |                        ++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0282]: type annotations needed
[INFO] [stdout]   --> tests/database_tests.rs:49:20
[INFO] [stdout]    |
[INFO] [stdout] 49 |     let created1 = db.create_todo(&todo1).await.unwrap();
[INFO] [stdout]    |                    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ cannot infer type
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0282]: type annotations needed
[INFO] [stdout]   --> tests/database_tests.rs:50:20
[INFO] [stdout]    |
[INFO] [stdout] 50 |     let created2 = db.create_todo(&todo2).await.unwrap();
[INFO] [stdout]    |                    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ cannot infer type
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0282]: type annotations needed for `(_, _)`
[INFO] [stdout]   --> tests/database_tests.rs:59:9
[INFO] [stdout]    |
[INFO] [stdout] 59 |     let (db, _temp_dir) = create_test_database().await;
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^
[INFO] [stdout] 60 |
[INFO] [stdout] 61 |     let todos = db.get_all_todos().await.unwrap();
[INFO] [stdout]    |                 -- type must be known at this point
[INFO] [stdout]    |
[INFO] [stdout] help: consider giving this pattern a type, where the placeholders `_` are specified
[INFO] [stdout]    |
[INFO] [stdout] 59 |     let (db, _temp_dir): (_, _) = create_test_database().await;
[INFO] [stdout]    |                        ++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0282]: type annotations needed
[INFO] [stdout]   --> tests/database_tests.rs:61:17
[INFO] [stdout]    |
[INFO] [stdout] 61 |     let todos = db.get_all_todos().await.unwrap();
[INFO] [stdout]    |                 ^^^^^^^^^^^^^^^^^^^^^^^^ cannot infer type
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0282]: type annotations needed for `(_, _)`
[INFO] [stdout]   --> tests/database_tests.rs:70:9
[INFO] [stdout]    |
[INFO] [stdout] 70 |     let (db, _temp_dir) = create_test_database().await;
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 76 |     db.create_todo(&todo1).await.unwrap();
[INFO] [stdout]    |     -- type must be known at this point
[INFO] [stdout]    |
[INFO] [stdout] help: consider giving this pattern a type, where the placeholders `_` are specified
[INFO] [stdout]    |
[INFO] [stdout] 70 |     let (db, _temp_dir): (_, _) = create_test_database().await;
[INFO] [stdout]    |                        ++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0282]: type annotations needed
[INFO] [stdout]   --> tests/database_tests.rs:76:5
[INFO] [stdout]    |
[INFO] [stdout] 76 |     db.create_todo(&todo1).await.unwrap();
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ cannot infer type
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0282]: type annotations needed
[INFO] [stdout]   --> tests/database_tests.rs:77:5
[INFO] [stdout]    |
[INFO] [stdout] 77 |     db.create_todo(&todo2).await.unwrap();
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ cannot infer type
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0282]: type annotations needed
[INFO] [stdout]   --> tests/database_tests.rs:79:17
[INFO] [stdout]    |
[INFO] [stdout] 79 |     let todos = db.get_all_todos().await.unwrap();
[INFO] [stdout]    |                 ^^^^^^^^^^^^^^^^^^^^^^^^ cannot infer type
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0282]: type annotations needed for `(_, _)`
[INFO] [stdout]   --> tests/database_tests.rs:89:9
[INFO] [stdout]    |
[INFO] [stdout] 89 |     let (db, _temp_dir) = create_test_database().await;
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 92 |     let created_todo = db.create_todo(&create_todo).await.unwrap();
[INFO] [stdout]    |                        -- type must be known at this point
[INFO] [stdout]    |
[INFO] [stdout] help: consider giving this pattern a type, where the placeholders `_` are specified
[INFO] [stdout]    |
[INFO] [stdout] 89 |     let (db, _temp_dir): (_, _) = create_test_database().await;
[INFO] [stdout]    |                        ++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0282]: type annotations needed
[INFO] [stdout]   --> tests/database_tests.rs:92:24
[INFO] [stdout]    |
[INFO] [stdout] 92 |     let created_todo = db.create_todo(&create_todo).await.unwrap();
[INFO] [stdout]    |                        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ cannot infer type
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0282]: type annotations needed
[INFO] [stdout]   --> tests/database_tests.rs:94:26
[INFO] [stdout]    |
[INFO] [stdout] 94 |     let retrieved_todo = db.get_todo_by_id(created_todo.id).await.unwrap();
[INFO] [stdout]    |                          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ cannot infer type
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0282]: type annotations needed for `(_, _)`
[INFO] [stdout]    --> tests/database_tests.rs:102:9
[INFO] [stdout]     |
[INFO] [stdout] 102 |     let (db, _temp_dir) = create_test_database().await;
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^
[INFO] [stdout] 103 |
[INFO] [stdout] 104 |     let result = db.get_todo_by_id(999).await;
[INFO] [stdout]     |                  -- type must be known at this point
[INFO] [stdout]     |
[INFO] [stdout] help: consider giving this pattern a type, where the placeholders `_` are specified
[INFO] [stdout]     |
[INFO] [stdout] 102 |     let (db, _temp_dir): (_, _) = create_test_database().await;
[INFO] [stdout]     |                        ++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0282]: type annotations needed
[INFO] [stdout]    --> tests/database_tests.rs:104:9
[INFO] [stdout]     |
[INFO] [stdout] 104 |     let result = db.get_todo_by_id(999).await;
[INFO] [stdout]     |         ^^^^^^
[INFO] [stdout] 105 |     assert!(result.is_err(), "Should return error for non-existent todo");
[INFO] [stdout]     |             ------ type must be known at this point
[INFO] [stdout]     |
[INFO] [stdout] help: consider giving `result` an explicit type
[INFO] [stdout]     |
[INFO] [stdout] 104 |     let result: /* Type */ = db.get_todo_by_id(999).await;
[INFO] [stdout]     |               ++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0282]: type annotations needed for `(_, _)`
[INFO] [stdout]    --> tests/database_tests.rs:110:9
[INFO] [stdout]     |
[INFO] [stdout] 110 |     let (db, _temp_dir) = create_test_database().await;
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 114 |     let created_todo = db.create_todo(&create_todo).await.unwrap();
[INFO] [stdout]     |                        -- type must be known at this point
[INFO] [stdout]     |
[INFO] [stdout] help: consider giving this pattern a type, where the placeholders `_` are specified
[INFO] [stdout]     |
[INFO] [stdout] 110 |     let (db, _temp_dir): (_, _) = create_test_database().await;
[INFO] [stdout]     |                        ++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0282]: type annotations needed
[INFO] [stdout]    --> tests/database_tests.rs:114:24
[INFO] [stdout]     |
[INFO] [stdout] 114 |     let created_todo = db.create_todo(&create_todo).await.unwrap();
[INFO] [stdout]     |                        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ cannot infer type
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0282]: type annotations needed
[INFO] [stdout]    --> tests/database_tests.rs:118:24
[INFO] [stdout]     |
[INFO] [stdout] 118 |     let updated_todo = db.update_todo(created_todo.id, update_todo).await.unwrap();
[INFO] [stdout]     |                        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ cannot infer type
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0282]: type annotations needed for `(_, _)`
[INFO] [stdout]    --> tests/database_tests.rs:129:9
[INFO] [stdout]     |
[INFO] [stdout] 129 |     let (db, _temp_dir) = create_test_database().await;
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 133 |     let created_todo = db.create_todo(&create_todo).await.unwrap();
[INFO] [stdout]     |                        -- type must be known at this point
[INFO] [stdout]     |
[INFO] [stdout] help: consider giving this pattern a type, where the placeholders `_` are specified
[INFO] [stdout]     |
[INFO] [stdout] 129 |     let (db, _temp_dir): (_, _) = create_test_database().await;
[INFO] [stdout]     |                        ++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0282]: type annotations needed
[INFO] [stdout]    --> tests/database_tests.rs:133:24
[INFO] [stdout]     |
[INFO] [stdout] 133 |     let created_todo = db.create_todo(&create_todo).await.unwrap();
[INFO] [stdout]     |                        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ cannot infer type
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0282]: type annotations needed
[INFO] [stdout]    --> tests/database_tests.rs:137:24
[INFO] [stdout]     |
[INFO] [stdout] 137 |     let updated_todo = db.update_todo(created_todo.id, update_todo).await.unwrap();
[INFO] [stdout]     |                        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ cannot infer type
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0282]: type annotations needed for `(_, _)`
[INFO] [stdout]    --> tests/database_tests.rs:145:9
[INFO] [stdout]     |
[INFO] [stdout] 145 |     let (db, _temp_dir) = create_test_database().await;
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 149 |     let created_todo = db.create_todo(&create_todo).await.unwrap();
[INFO] [stdout]     |                        -- type must be known at this point
[INFO] [stdout]     |
[INFO] [stdout] help: consider giving this pattern a type, where the placeholders `_` are specified
[INFO] [stdout]     |
[INFO] [stdout] 145 |     let (db, _temp_dir): (_, _) = create_test_database().await;
[INFO] [stdout]     |                        ++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0282]: type annotations needed
[INFO] [stdout]    --> tests/database_tests.rs:149:24
[INFO] [stdout]     |
[INFO] [stdout] 149 |     let created_todo = db.create_todo(&create_todo).await.unwrap();
[INFO] [stdout]     |                        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ cannot infer type
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0282]: type annotations needed
[INFO] [stdout]    --> tests/database_tests.rs:153:24
[INFO] [stdout]     |
[INFO] [stdout] 153 |     let updated_todo = db.update_todo(created_todo.id, update_todo).await.unwrap();
[INFO] [stdout]     |                        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ cannot infer type
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0282]: type annotations needed for `(_, _)`
[INFO] [stdout]    --> tests/database_tests.rs:161:9
[INFO] [stdout]     |
[INFO] [stdout] 161 |     let (db, _temp_dir) = create_test_database().await;
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 165 |     let created_todo = db.create_todo(&create_todo).await.unwrap();
[INFO] [stdout]     |                        -- type must be known at this point
[INFO] [stdout]     |
[INFO] [stdout] help: consider giving this pattern a type, where the placeholders `_` are specified
[INFO] [stdout]     |
[INFO] [stdout] 161 |     let (db, _temp_dir): (_, _) = create_test_database().await;
[INFO] [stdout]     |                        ++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0282]: type annotations needed
[INFO] [stdout]    --> tests/database_tests.rs:165:24
[INFO] [stdout]     |
[INFO] [stdout] 165 |     let created_todo = db.create_todo(&create_todo).await.unwrap();
[INFO] [stdout]     |                        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ cannot infer type
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0282]: type annotations needed
[INFO] [stdout]    --> tests/database_tests.rs:172:24
[INFO] [stdout]     |
[INFO] [stdout] 172 |     let updated_todo = db.update_todo(created_todo.id, update_todo).await.unwrap();
[INFO] [stdout]     |                        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ cannot infer type
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0282]: type annotations needed for `(_, _)`
[INFO] [stdout]    --> tests/database_tests.rs:181:9
[INFO] [stdout]     |
[INFO] [stdout] 181 |     let (db, _temp_dir) = create_test_database().await;
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 184 |     let result = db.update_todo(999, update_todo).await;
[INFO] [stdout]     |                  -- type must be known at this point
[INFO] [stdout]     |
[INFO] [stdout] help: consider giving this pattern a type, where the placeholders `_` are specified
[INFO] [stdout]     |
[INFO] [stdout] 181 |     let (db, _temp_dir): (_, _) = create_test_database().await;
[INFO] [stdout]     |                        ++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0282]: type annotations needed
[INFO] [stdout]    --> tests/database_tests.rs:184:9
[INFO] [stdout]     |
[INFO] [stdout] 184 |     let result = db.update_todo(999, update_todo).await;
[INFO] [stdout]     |         ^^^^^^
[INFO] [stdout] 185 |     assert!(result.is_err(), "Should return error for non-existent todo");
[INFO] [stdout]     |             ------ type must be known at this point
[INFO] [stdout]     |
[INFO] [stdout] help: consider giving `result` an explicit type
[INFO] [stdout]     |
[INFO] [stdout] 184 |     let result: /* Type */ = db.update_todo(999, update_todo).await;
[INFO] [stdout]     |               ++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0282]: type annotations needed for `(_, _)`
[INFO] [stdout]    --> tests/database_tests.rs:190:9
[INFO] [stdout]     |
[INFO] [stdout] 190 |     let (db, _temp_dir) = create_test_database().await;
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 194 |     let created_todo = db.create_todo(&create_todo).await.unwrap();
[INFO] [stdout]     |                        -- type must be known at this point
[INFO] [stdout]     |
[INFO] [stdout] help: consider giving this pattern a type, where the placeholders `_` are specified
[INFO] [stdout]     |
[INFO] [stdout] 190 |     let (db, _temp_dir): (_, _) = create_test_database().await;
[INFO] [stdout]     |                        ++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0282]: type annotations needed
[INFO] [stdout]    --> tests/database_tests.rs:194:24
[INFO] [stdout]     |
[INFO] [stdout] 194 |     let created_todo = db.create_todo(&create_todo).await.unwrap();
[INFO] [stdout]     |                        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ cannot infer type
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0282]: type annotations needed
[INFO] [stdout]    --> tests/database_tests.rs:197:5
[INFO] [stdout]     |
[INFO] [stdout] 197 |     db.delete_todo(created_todo.id).await.unwrap();
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ cannot infer type
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0282]: type annotations needed
[INFO] [stdout]    --> tests/database_tests.rs:200:17
[INFO] [stdout]     |
[INFO] [stdout] 200 |     let todos = db.get_all_todos().await.unwrap();
[INFO] [stdout]     |                 ^^^^^^^^^^^^^^^^^^^^^^^^ cannot infer type
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0282]: type annotations needed
[INFO] [stdout]    --> tests/database_tests.rs:204:9
[INFO] [stdout]     |
[INFO] [stdout] 204 |     let result = db.get_todo_by_id(created_todo.id).await;
[INFO] [stdout]     |         ^^^^^^
[INFO] [stdout] 205 |     assert!(
[INFO] [stdout] 206 |         result.is_err(),
[INFO] [stdout]     |         ------ type must be known at this point
[INFO] [stdout]     |
[INFO] [stdout] help: consider giving `result` an explicit type
[INFO] [stdout]     |
[INFO] [stdout] 204 |     let result: /* Type */ = db.get_todo_by_id(created_todo.id).await;
[INFO] [stdout]     |               ++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0282]: type annotations needed for `(_, _)`
[INFO] [stdout]    --> tests/database_tests.rs:213:9
[INFO] [stdout]     |
[INFO] [stdout] 213 |     let (db, _temp_dir) = create_test_database().await;
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^
[INFO] [stdout] 214 |
[INFO] [stdout] 215 |     let result = db.delete_todo(999).await;
[INFO] [stdout]     |                  -- type must be known at this point
[INFO] [stdout]     |
[INFO] [stdout] help: consider giving this pattern a type, where the placeholders `_` are specified
[INFO] [stdout]     |
[INFO] [stdout] 213 |     let (db, _temp_dir): (_, _) = create_test_database().await;
[INFO] [stdout]     |                        ++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0282]: type annotations needed
[INFO] [stdout]    --> tests/database_tests.rs:215:9
[INFO] [stdout]     |
[INFO] [stdout] 215 |     let result = db.delete_todo(999).await;
[INFO] [stdout]     |         ^^^^^^
[INFO] [stdout] 216 |     assert!(result.is_err(), "Should return error for non-existent todo");
[INFO] [stdout]     |             ------ type must be known at this point
[INFO] [stdout]     |
[INFO] [stdout] help: consider giving `result` an explicit type
[INFO] [stdout]     |
[INFO] [stdout] 215 |     let result: /* Type */ = db.delete_todo(999).await;
[INFO] [stdout]     |               ++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0282]: type annotations needed
[INFO] [stdout]    --> tests/database_tests.rs:250:17
[INFO] [stdout]     |
[INFO] [stdout] 250 |     let todos = db_lock.get_all_todos().await.unwrap();
[INFO] [stdout]     |                 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ cannot infer type
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0282]: type annotations needed for `(_, _)`
[INFO] [stdout]    --> tests/database_tests.rs:256:9
[INFO] [stdout]     |
[INFO] [stdout] 256 |     let (db, _temp_dir) = create_test_database().await;
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 262 |     let result = db.create_todo(&empty_todo).await;
[INFO] [stdout]     |                  -- type must be known at this point
[INFO] [stdout]     |
[INFO] [stdout] help: consider giving this pattern a type, where the placeholders `_` are specified
[INFO] [stdout]     |
[INFO] [stdout] 256 |     let (db, _temp_dir): (_, _) = create_test_database().await;
[INFO] [stdout]     |                        ++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0282]: type annotations needed
[INFO] [stdout]    --> tests/database_tests.rs:262:9
[INFO] [stdout]     |
[INFO] [stdout] 262 |     let result = db.create_todo(&empty_todo).await;
[INFO] [stdout]     |         ^^^^^^
[INFO] [stdout] 263 |     assert!(
[INFO] [stdout] 264 |         result.is_ok(),
[INFO] [stdout]     |         ------ type must be known at this point
[INFO] [stdout]     |
[INFO] [stdout] help: consider giving `result` an explicit type
[INFO] [stdout]     |
[INFO] [stdout] 262 |     let result: /* Type */ = db.create_todo(&empty_todo).await;
[INFO] [stdout]     |               ++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0282]: type annotations needed
[INFO] [stdout]    --> tests/database_tests.rs:273:9
[INFO] [stdout]     |
[INFO] [stdout] 273 |     let result = db.create_todo(&long_todo).await;
[INFO] [stdout]     |         ^^^^^^
[INFO] [stdout] 274 |     assert!(result.is_ok(), "Long titles should be allowed");
[INFO] [stdout]     |             ------ type must be known at this point
[INFO] [stdout]     |
[INFO] [stdout] help: consider giving `result` an explicit type
[INFO] [stdout]     |
[INFO] [stdout] 273 |     let result: /* Type */ = db.create_todo(&long_todo).await;
[INFO] [stdout]     |               ++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0282]: type annotations needed
[INFO] [stdout]    --> tests/database_tests.rs:284:9
[INFO] [stdout]     |
[INFO] [stdout] 284 |     let result = db.create_todo(&special_todo).await;
[INFO] [stdout]     |         ^^^^^^
[INFO] [stdout] 285 |     assert!(result.is_ok(), "Special characters should be allowed");
[INFO] [stdout]     |             ------ type must be known at this point
[INFO] [stdout]     |
[INFO] [stdout] help: consider giving `result` an explicit type
[INFO] [stdout]     |
[INFO] [stdout] 284 |     let result: /* Type */ = db.create_todo(&special_todo).await;
[INFO] [stdout]     |               ++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] Some errors have detailed explanations: E0282, E0433.
[INFO] [stdout] 
[INFO] [stdout] For more information about an error, try `rustc --explain E0282`.
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `rust-todo-demo` (test "database_tests") due to 48 previous errors; 2 warnings emitted
[INFO] [stdout] warning: unused import: `put`
[INFO] [stdout]  --> src/routes.rs:4:34
[INFO] [stdout]   |
[INFO] [stdout] 4 |     routing::{delete, get, post, put},
[INFO] [stdout]   |                                  ^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0432]: unresolved import `crate::db`
[INFO] [stdout]  --> tests/test_utils.rs:7:12
[INFO] [stdout]   |
[INFO] [stdout] 7 | use crate::db::Database;
[INFO] [stdout]   |            ^^ could not find `db` in the crate root
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0432]: unresolved import `crate::models`
[INFO] [stdout]  --> tests/test_utils.rs:8:12
[INFO] [stdout]   |
[INFO] [stdout] 8 | use crate::models::{CreateTodo, Todo, UpdateTodo};
[INFO] [stdout]   |            ^^^^^^ could not find `models` in the crate root
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0432]: unresolved import `crate::state`
[INFO] [stdout]  --> tests/test_utils.rs:9:12
[INFO] [stdout]   |
[INFO] [stdout] 9 | use crate::state::AppState;
[INFO] [stdout]   |            ^^^^^ could not find `state` in the crate root
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Arc` and `Mutex`
[INFO] [stdout]  --> tests/test_utils.rs:3:17
[INFO] [stdout]   |
[INFO] [stdout] 3 | use std::sync::{Arc, Mutex};
[INFO] [stdout]   |                 ^^^  ^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `tokio_test`
[INFO] [stdout]  --> tests/test_utils.rs:5:5
[INFO] [stdout]   |
[INFO] [stdout] 5 | use tokio_test;
[INFO] [stdout]   |     ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0282]: type annotations needed
[INFO] [stdout]   --> tests/test_utils.rs:17:14
[INFO] [stdout]    |
[INFO] [stdout] 17 |       let db = Database::new(&db_url)
[INFO] [stdout]    |  ______________^
[INFO] [stdout] 18 | |         .await
[INFO] [stdout]    | |______________^ cannot infer type
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0282]: type annotations needed
[INFO] [stdout]   --> tests/test_utils.rs:21:5
[INFO] [stdout]    |
[INFO] [stdout] 21 |     db.migrate().await.expect("Failed to run test migrations");
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^ cannot infer type
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] Some errors have detailed explanations: E0282, E0432.
[INFO] [stdout] 
[INFO] [stdout] For more information about an error, try `rustc --explain E0282`.
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `rust-todo-demo` (test "test_utils") due to 5 previous errors; 2 warnings emitted
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `Arc`
[INFO] [stdout]    --> tests/database_tests.rs:222:14
[INFO] [stdout]     |
[INFO] [stdout] 222 |     let db = Arc::new(std::sync::Mutex::new(db));
[INFO] [stdout]     |              ^^^ use of undeclared type `Arc`
[INFO] [stdout]     |
[INFO] [stdout]     = note: struct `crate::test_utils::tests::Arc` exists but is inaccessible
[INFO] [stdout] help: consider importing this struct
[INFO] [stdout]     |
[INFO] [stdout]   3 + use std::sync::Arc;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::path::Path`
[INFO] [stdout]  --> tests/mod.rs:3:5
[INFO] [stdout]   |
[INFO] [stdout] 3 | use std::path::Path;
[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: `tempfile::TempDir`
[INFO] [stdout]  --> tests/database_tests.rs:3:5
[INFO] [stdout]   |
[INFO] [stdout] 3 | use tempfile::TempDir;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `tokio_test`
[INFO] [stdout]  --> tests/database_tests.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | use tokio_test;
[INFO] [stdout]   |     ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Request`, `body::Body`, and `response::Json`
[INFO] [stdout]  --> tests/handler_tests.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 4 |     body::Body,
[INFO] [stdout]   |     ^^^^^^^^^^
[INFO] [stdout] 5 |     http::{Request, StatusCode},
[INFO] [stdout]   |            ^^^^^^^
[INFO] [stdout] 6 |     response::Json,
[INFO] [stdout]   |     ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::collections::HashMap`
[INFO] [stdout]  --> tests/integration_tests.rs:5:5
[INFO] [stdout]   |
[INFO] [stdout] 5 | use std::collections::HashMap;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Arc` and `Mutex`
[INFO] [stdout]  --> tests/test_utils.rs:3:17
[INFO] [stdout]   |
[INFO] [stdout] 3 | use std::sync::{Arc, Mutex};
[INFO] [stdout]   |                 ^^^  ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `tokio_test`
[INFO] [stdout]  --> tests/test_utils.rs:5:5
[INFO] [stdout]   |
[INFO] [stdout] 5 | use tokio_test;
[INFO] [stdout]   |     ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `database_tests::*`
[INFO] [stdout]   --> tests/mod.rs:10:9
[INFO] [stdout]    |
[INFO] [stdout] 10 | pub use database_tests::*;
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `handler_tests::*`
[INFO] [stdout]   --> tests/mod.rs:11:9
[INFO] [stdout]    |
[INFO] [stdout] 11 | pub use handler_tests::*;
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `integration_tests::*`
[INFO] [stdout]   --> tests/mod.rs:12:9
[INFO] [stdout]    |
[INFO] [stdout] 12 | pub use integration_tests::*;
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `super::*`
[INFO] [stdout]   --> tests/mod.rs:25:9
[INFO] [stdout]    |
[INFO] [stdout] 25 |     use super::*;
[INFO] [stdout]    |         ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0282]: type annotations needed
[INFO] [stdout]   --> tests/test_utils.rs:17:14
[INFO] [stdout]    |
[INFO] [stdout] 17 |       let db = Database::new(&db_url)
[INFO] [stdout]    |  ______________^
[INFO] [stdout] 18 | |         .await
[INFO] [stdout]    | |______________^ cannot infer type
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0282]: type annotations needed
[INFO] [stdout]   --> tests/test_utils.rs:21:5
[INFO] [stdout]    |
[INFO] [stdout] 21 |     db.migrate().await.expect("Failed to run test migrations");
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^ cannot infer type
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0282]: type annotations needed for `(_, _)`
[INFO] [stdout]   --> tests/database_tests.rs:20:9
[INFO] [stdout]    |
[INFO] [stdout] 20 |     let (db, _temp_dir) = create_test_database().await;
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 23 |     let todos = db.get_all_todos().await.unwrap();
[INFO] [stdout]    |                 -- type must be known at this point
[INFO] [stdout]    |
[INFO] [stdout] help: consider giving this pattern a type, where the placeholders `_` are specified
[INFO] [stdout]    |
[INFO] [stdout] 20 |     let (db, _temp_dir): (_, _) = create_test_database().await;
[INFO] [stdout]    |                        ++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0282]: type annotations needed
[INFO] [stdout]   --> tests/database_tests.rs:23:17
[INFO] [stdout]    |
[INFO] [stdout] 23 |     let todos = db.get_all_todos().await.unwrap();
[INFO] [stdout]    |                 ^^^^^^^^^^^^^^^^^^^^^^^^ cannot infer type
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0282]: type annotations needed for `(_, _)`
[INFO] [stdout]   --> tests/database_tests.rs:32:9
[INFO] [stdout]    |
[INFO] [stdout] 32 |     let (db, _temp_dir) = create_test_database().await;
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 35 |     let created_todo = db.create_todo(&create_todo).await.unwrap();
[INFO] [stdout]    |                        -- type must be known at this point
[INFO] [stdout]    |
[INFO] [stdout] help: consider giving this pattern a type, where the placeholders `_` are specified
[INFO] [stdout]    |
[INFO] [stdout] 32 |     let (db, _temp_dir): (_, _) = create_test_database().await;
[INFO] [stdout]    |                        ++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0282]: type annotations needed
[INFO] [stdout]   --> tests/database_tests.rs:35:24
[INFO] [stdout]    |
[INFO] [stdout] 35 |     let created_todo = db.create_todo(&create_todo).await.unwrap();
[INFO] [stdout]    |                        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ cannot infer type
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0282]: type annotations needed for `(_, _)`
[INFO] [stdout]   --> tests/database_tests.rs:44:9
[INFO] [stdout]    |
[INFO] [stdout] 44 |     let (db, _temp_dir) = create_test_database().await;
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 49 |     let created1 = db.create_todo(&todo1).await.unwrap();
[INFO] [stdout]    |                    -- type must be known at this point
[INFO] [stdout]    |
[INFO] [stdout] help: consider giving this pattern a type, where the placeholders `_` are specified
[INFO] [stdout]    |
[INFO] [stdout] 44 |     let (db, _temp_dir): (_, _) = create_test_database().await;
[INFO] [stdout]    |                        ++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0282]: type annotations needed
[INFO] [stdout]   --> tests/database_tests.rs:49:20
[INFO] [stdout]    |
[INFO] [stdout] 49 |     let created1 = db.create_todo(&todo1).await.unwrap();
[INFO] [stdout]    |                    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ cannot infer type
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0282]: type annotations needed
[INFO] [stdout]   --> tests/database_tests.rs:50:20
[INFO] [stdout]    |
[INFO] [stdout] 50 |     let created2 = db.create_todo(&todo2).await.unwrap();
[INFO] [stdout]    |                    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ cannot infer type
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0282]: type annotations needed for `(_, _)`
[INFO] [stdout]   --> tests/database_tests.rs:59:9
[INFO] [stdout]    |
[INFO] [stdout] 59 |     let (db, _temp_dir) = create_test_database().await;
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^
[INFO] [stdout] 60 |
[INFO] [stdout] 61 |     let todos = db.get_all_todos().await.unwrap();
[INFO] [stdout]    |                 -- type must be known at this point
[INFO] [stdout]    |
[INFO] [stdout] help: consider giving this pattern a type, where the placeholders `_` are specified
[INFO] [stdout]    |
[INFO] [stdout] 59 |     let (db, _temp_dir): (_, _) = create_test_database().await;
[INFO] [stdout]    |                        ++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0282]: type annotations needed
[INFO] [stdout]   --> tests/database_tests.rs:61:17
[INFO] [stdout]    |
[INFO] [stdout] 61 |     let todos = db.get_all_todos().await.unwrap();
[INFO] [stdout]    |                 ^^^^^^^^^^^^^^^^^^^^^^^^ cannot infer type
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0282]: type annotations needed for `(_, _)`
[INFO] [stdout]   --> tests/database_tests.rs:70:9
[INFO] [stdout]    |
[INFO] [stdout] 70 |     let (db, _temp_dir) = create_test_database().await;
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 76 |     db.create_todo(&todo1).await.unwrap();
[INFO] [stdout]    |     -- type must be known at this point
[INFO] [stdout]    |
[INFO] [stdout] help: consider giving this pattern a type, where the placeholders `_` are specified
[INFO] [stdout]    |
[INFO] [stdout] 70 |     let (db, _temp_dir): (_, _) = create_test_database().await;
[INFO] [stdout]    |                        ++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0282]: type annotations needed
[INFO] [stdout]   --> tests/database_tests.rs:76:5
[INFO] [stdout]    |
[INFO] [stdout] 76 |     db.create_todo(&todo1).await.unwrap();
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ cannot infer type
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0282]: type annotations needed
[INFO] [stdout]   --> tests/database_tests.rs:77:5
[INFO] [stdout]    |
[INFO] [stdout] 77 |     db.create_todo(&todo2).await.unwrap();
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ cannot infer type
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0282]: type annotations needed
[INFO] [stdout]   --> tests/database_tests.rs:79:17
[INFO] [stdout]    |
[INFO] [stdout] 79 |     let todos = db.get_all_todos().await.unwrap();
[INFO] [stdout]    |                 ^^^^^^^^^^^^^^^^^^^^^^^^ cannot infer type
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::collections::HashMap`
[INFO] [stdout]  --> tests/integration_tests.rs:5:5
[INFO] [stdout]   |
[INFO] [stdout] 5 | use std::collections::HashMap;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0282]: type annotations needed for `(_, _)`
[INFO] [stdout]   --> tests/database_tests.rs:89:9
[INFO] [stdout]    |
[INFO] [stdout] 89 |     let (db, _temp_dir) = create_test_database().await;
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 92 |     let created_todo = db.create_todo(&create_todo).await.unwrap();
[INFO] [stdout]    |                        -- type must be known at this point
[INFO] [stdout]    |
[INFO] [stdout] help: consider giving this pattern a type, where the placeholders `_` are specified
[INFO] [stdout]    |
[INFO] [stdout] 89 |     let (db, _temp_dir): (_, _) = create_test_database().await;
[INFO] [stdout]    |                        ++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0282]: type annotations needed
[INFO] [stdout]   --> tests/database_tests.rs:92:24
[INFO] [stdout]    |
[INFO] [stdout] 92 |     let created_todo = db.create_todo(&create_todo).await.unwrap();
[INFO] [stdout]    |                        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ cannot infer type
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0282]: type annotations needed
[INFO] [stdout]   --> tests/database_tests.rs:94:26
[INFO] [stdout]    |
[INFO] [stdout] 94 |     let retrieved_todo = db.get_todo_by_id(created_todo.id).await.unwrap();
[INFO] [stdout]    |                          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ cannot infer type
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0282]: type annotations needed for `(_, _)`
[INFO] [stdout]    --> tests/database_tests.rs:102:9
[INFO] [stdout]     |
[INFO] [stdout] 102 |     let (db, _temp_dir) = create_test_database().await;
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^
[INFO] [stdout] 103 |
[INFO] [stdout] 104 |     let result = db.get_todo_by_id(999).await;
[INFO] [stdout]     |                  -- type must be known at this point
[INFO] [stdout]     |
[INFO] [stdout] help: consider giving this pattern a type, where the placeholders `_` are specified
[INFO] [stdout]     |
[INFO] [stdout] 102 |     let (db, _temp_dir): (_, _) = create_test_database().await;
[INFO] [stdout]     |                        ++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0282]: type annotations needed
[INFO] [stdout]    --> tests/database_tests.rs:104:9
[INFO] [stdout]     |
[INFO] [stdout] 104 |     let result = db.get_todo_by_id(999).await;
[INFO] [stdout]     |         ^^^^^^
[INFO] [stdout] 105 |     assert!(result.is_err(), "Should return error for non-existent todo");
[INFO] [stdout]     |             ------ type must be known at this point
[INFO] [stdout]     |
[INFO] [stdout] help: consider giving `result` an explicit type
[INFO] [stdout]     |
[INFO] [stdout] 104 |     let result: /* Type */ = db.get_todo_by_id(999).await;
[INFO] [stdout]     |               ++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0282]: type annotations needed for `(_, _)`
[INFO] [stdout]    --> tests/database_tests.rs:110:9
[INFO] [stdout]     |
[INFO] [stdout] 110 |     let (db, _temp_dir) = create_test_database().await;
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 114 |     let created_todo = db.create_todo(&create_todo).await.unwrap();
[INFO] [stdout]     |                        -- type must be known at this point
[INFO] [stdout]     |
[INFO] [stdout] help: consider giving this pattern a type, where the placeholders `_` are specified
[INFO] [stdout]     |
[INFO] [stdout] 110 |     let (db, _temp_dir): (_, _) = create_test_database().await;
[INFO] [stdout]     |                        ++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0282]: type annotations needed
[INFO] [stdout]    --> tests/database_tests.rs:114:24
[INFO] [stdout]     |
[INFO] [stdout] 114 |     let created_todo = db.create_todo(&create_todo).await.unwrap();
[INFO] [stdout]     |                        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ cannot infer type
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0282]: type annotations needed
[INFO] [stdout]    --> tests/database_tests.rs:118:24
[INFO] [stdout]     |
[INFO] [stdout] 118 |     let updated_todo = db.update_todo(created_todo.id, update_todo).await.unwrap();
[INFO] [stdout]     |                        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ cannot infer type
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0282]: type annotations needed for `(_, _)`
[INFO] [stdout]    --> tests/database_tests.rs:129:9
[INFO] [stdout]     |
[INFO] [stdout] 129 |     let (db, _temp_dir) = create_test_database().await;
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 133 |     let created_todo = db.create_todo(&create_todo).await.unwrap();
[INFO] [stdout]     |                        -- type must be known at this point
[INFO] [stdout]     |
[INFO] [stdout] help: consider giving this pattern a type, where the placeholders `_` are specified
[INFO] [stdout]     |
[INFO] [stdout] 129 |     let (db, _temp_dir): (_, _) = create_test_database().await;
[INFO] [stdout]     |                        ++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0282]: type annotations needed
[INFO] [stdout]    --> tests/database_tests.rs:133:24
[INFO] [stdout]     |
[INFO] [stdout] 133 |     let created_todo = db.create_todo(&create_todo).await.unwrap();
[INFO] [stdout]     |                        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ cannot infer type
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0282]: type annotations needed
[INFO] [stdout]    --> tests/database_tests.rs:137:24
[INFO] [stdout]     |
[INFO] [stdout] 137 |     let updated_todo = db.update_todo(created_todo.id, update_todo).await.unwrap();
[INFO] [stdout]     |                        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ cannot infer type
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `StatusCode`
[INFO] [stdout]   --> tests/integration_tests.rs:28:28
[INFO] [stdout]    |
[INFO] [stdout] 28 |     response.assert_status(StatusCode::CREATED);
[INFO] [stdout]    |                            ^^^^^^^^^^ use of undeclared type `StatusCode`
[INFO] [stdout]    |
[INFO] [stdout] help: there is an enum variant `tower_http::classify::ServerErrorsFailureClass::StatusCode` and 1 other; try using the variant's enum
[INFO] [stdout]    |
[INFO] [stdout] 28 -     response.assert_status(StatusCode::CREATED);
[INFO] [stdout] 28 +     response.assert_status(tower_http::classify::ServerErrorsFailureClass::CREATED);
[INFO] [stdout]    |
[INFO] [stdout] 28 -     response.assert_status(StatusCode::CREATED);
[INFO] [stdout] 28 +     response.assert_status(tower_http::classify::StatusInRangeFailureClass::CREATED);
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0282]: type annotations needed for `(_, _)`
[INFO] [stdout]    --> tests/database_tests.rs:145:9
[INFO] [stdout]     |
[INFO] [stdout] 145 |     let (db, _temp_dir) = create_test_database().await;
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 149 |     let created_todo = db.create_todo(&create_todo).await.unwrap();
[INFO] [stdout]     |                        -- type must be known at this point
[INFO] [stdout]     |
[INFO] [stdout] help: consider giving this pattern a type, where the placeholders `_` are specified
[INFO] [stdout]     |
[INFO] [stdout] 145 |     let (db, _temp_dir): (_, _) = create_test_database().await;
[INFO] [stdout]     |                        ++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0282]: type annotations needed
[INFO] [stdout]    --> tests/database_tests.rs:149:24
[INFO] [stdout]     |
[INFO] [stdout] 149 |     let created_todo = db.create_todo(&create_todo).await.unwrap();
[INFO] [stdout]     |                        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ cannot infer type
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0282]: type annotations needed
[INFO] [stdout]    --> tests/database_tests.rs:153:24
[INFO] [stdout]     |
[INFO] [stdout] 153 |     let updated_todo = db.update_todo(created_todo.id, update_todo).await.unwrap();
[INFO] [stdout]     |                        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ cannot infer type
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `StatusCode`
[INFO] [stdout]   --> tests/integration_tests.rs:51:28
[INFO] [stdout]    |
[INFO] [stdout] 51 |     response.assert_status(StatusCode::NO_CONTENT);
[INFO] [stdout]    |                            ^^^^^^^^^^ use of undeclared type `StatusCode`
[INFO] [stdout]    |
[INFO] [stdout] help: there is an enum variant `tower_http::classify::ServerErrorsFailureClass::StatusCode` and 1 other; try using the variant's enum
[INFO] [stdout]    |
[INFO] [stdout] 51 -     response.assert_status(StatusCode::NO_CONTENT);
[INFO] [stdout] 51 +     response.assert_status(tower_http::classify::ServerErrorsFailureClass::NO_CONTENT);
[INFO] [stdout]    |
[INFO] [stdout] 51 -     response.assert_status(StatusCode::NO_CONTENT);
[INFO] [stdout] 51 +     response.assert_status(tower_http::classify::StatusInRangeFailureClass::NO_CONTENT);
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0282]: type annotations needed for `(_, _)`
[INFO] [stdout]    --> tests/database_tests.rs:161:9
[INFO] [stdout]     |
[INFO] [stdout] 161 |     let (db, _temp_dir) = create_test_database().await;
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 165 |     let created_todo = db.create_todo(&create_todo).await.unwrap();
[INFO] [stdout]     |                        -- type must be known at this point
[INFO] [stdout]     |
[INFO] [stdout] help: consider giving this pattern a type, where the placeholders `_` are specified
[INFO] [stdout]     |
[INFO] [stdout] 161 |     let (db, _temp_dir): (_, _) = create_test_database().await;
[INFO] [stdout]     |                        ++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0282]: type annotations needed
[INFO] [stdout]    --> tests/database_tests.rs:165:24
[INFO] [stdout]     |
[INFO] [stdout] 165 |     let created_todo = db.create_todo(&create_todo).await.unwrap();
[INFO] [stdout]     |                        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ cannot infer type
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `StatusCode`
[INFO] [stdout]   --> tests/integration_tests.rs:55:28
[INFO] [stdout]    |
[INFO] [stdout] 55 |     response.assert_status(StatusCode::NOT_FOUND);
[INFO] [stdout]    |                            ^^^^^^^^^^ use of undeclared type `StatusCode`
[INFO] [stdout]    |
[INFO] [stdout] help: there is an enum variant `tower_http::classify::ServerErrorsFailureClass::StatusCode` and 1 other; try using the variant's enum
[INFO] [stdout]    |
[INFO] [stdout] 55 -     response.assert_status(StatusCode::NOT_FOUND);
[INFO] [stdout] 55 +     response.assert_status(tower_http::classify::ServerErrorsFailureClass::NOT_FOUND);
[INFO] [stdout]    |
[INFO] [stdout] 55 -     response.assert_status(StatusCode::NOT_FOUND);
[INFO] [stdout] 55 +     response.assert_status(tower_http::classify::StatusInRangeFailureClass::NOT_FOUND);
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0282]: type annotations needed
[INFO] [stdout]    --> tests/database_tests.rs:172:24
[INFO] [stdout]     |
[INFO] [stdout] 172 |     let updated_todo = db.update_todo(created_todo.id, update_todo).await.unwrap();
[INFO] [stdout]     |                        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ cannot infer type
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0282]: type annotations needed for `(_, _)`
[INFO] [stdout]    --> tests/database_tests.rs:181:9
[INFO] [stdout]     |
[INFO] [stdout] 181 |     let (db, _temp_dir) = create_test_database().await;
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 184 |     let result = db.update_todo(999, update_todo).await;
[INFO] [stdout]     |                  -- type must be known at this point
[INFO] [stdout]     |
[INFO] [stdout] help: consider giving this pattern a type, where the placeholders `_` are specified
[INFO] [stdout]     |
[INFO] [stdout] 181 |     let (db, _temp_dir): (_, _) = create_test_database().await;
[INFO] [stdout]     |                        ++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0282]: type annotations needed
[INFO] [stdout]    --> tests/database_tests.rs:184:9
[INFO] [stdout]     |
[INFO] [stdout] 184 |     let result = db.update_todo(999, update_todo).await;
[INFO] [stdout]     |         ^^^^^^
[INFO] [stdout] 185 |     assert!(result.is_err(), "Should return error for non-existent todo");
[INFO] [stdout]     |             ------ type must be known at this point
[INFO] [stdout]     |
[INFO] [stdout] help: consider giving `result` an explicit type
[INFO] [stdout]     |
[INFO] [stdout] 184 |     let result: /* Type */ = db.update_todo(999, update_todo).await;
[INFO] [stdout]     |               ++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `StatusCode`
[INFO] [stdout]   --> tests/integration_tests.rs:70:28
[INFO] [stdout]    |
[INFO] [stdout] 70 |     response.assert_status(StatusCode::NOT_FOUND);
[INFO] [stdout]    |                            ^^^^^^^^^^ use of undeclared type `StatusCode`
[INFO] [stdout]    |
[INFO] [stdout] help: there is an enum variant `tower_http::classify::ServerErrorsFailureClass::StatusCode` and 1 other; try using the variant's enum
[INFO] [stdout]    |
[INFO] [stdout] 70 -     response.assert_status(StatusCode::NOT_FOUND);
[INFO] [stdout] 70 +     response.assert_status(tower_http::classify::ServerErrorsFailureClass::NOT_FOUND);
[INFO] [stdout]    |
[INFO] [stdout] 70 -     response.assert_status(StatusCode::NOT_FOUND);
[INFO] [stdout] 70 +     response.assert_status(tower_http::classify::StatusInRangeFailureClass::NOT_FOUND);
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `StatusCode`
[INFO] [stdout]   --> tests/integration_tests.rs:74:28
[INFO] [stdout]    |
[INFO] [stdout] 74 |     response.assert_status(StatusCode::NOT_FOUND);
[INFO] [stdout]    |                            ^^^^^^^^^^ use of undeclared type `StatusCode`
[INFO] [stdout]    |
[INFO] [stdout] help: there is an enum variant `tower_http::classify::ServerErrorsFailureClass::StatusCode` and 1 other; try using the variant's enum
[INFO] [stdout]    |
[INFO] [stdout] 74 -     response.assert_status(StatusCode::NOT_FOUND);
[INFO] [stdout] 74 +     response.assert_status(tower_http::classify::ServerErrorsFailureClass::NOT_FOUND);
[INFO] [stdout]    |
[INFO] [stdout] 74 -     response.assert_status(StatusCode::NOT_FOUND);
[INFO] [stdout] 74 +     response.assert_status(tower_http::classify::StatusInRangeFailureClass::NOT_FOUND);
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `StatusCode`
[INFO] [stdout]   --> tests/integration_tests.rs:78:28
[INFO] [stdout]    |
[INFO] [stdout] 78 |     response.assert_status(StatusCode::BAD_REQUEST);
[INFO] [stdout]    |                            ^^^^^^^^^^ use of undeclared type `StatusCode`
[INFO] [stdout]    |
[INFO] [stdout] help: there is an enum variant `tower_http::classify::ServerErrorsFailureClass::StatusCode` and 1 other; try using the variant's enum
[INFO] [stdout]    |
[INFO] [stdout] 78 -     response.assert_status(StatusCode::BAD_REQUEST);
[INFO] [stdout] 78 +     response.assert_status(tower_http::classify::ServerErrorsFailureClass::BAD_REQUEST);
[INFO] [stdout]    |
[INFO] [stdout] 78 -     response.assert_status(StatusCode::BAD_REQUEST);
[INFO] [stdout] 78 +     response.assert_status(tower_http::classify::StatusInRangeFailureClass::BAD_REQUEST);
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0282]: type annotations needed for `(_, _)`
[INFO] [stdout]    --> tests/database_tests.rs:190:9
[INFO] [stdout]     |
[INFO] [stdout] 190 |     let (db, _temp_dir) = create_test_database().await;
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 194 |     let created_todo = db.create_todo(&create_todo).await.unwrap();
[INFO] [stdout]     |                        -- type must be known at this point
[INFO] [stdout]     |
[INFO] [stdout] help: consider giving this pattern a type, where the placeholders `_` are specified
[INFO] [stdout]     |
[INFO] [stdout] 190 |     let (db, _temp_dir): (_, _) = create_test_database().await;
[INFO] [stdout]     |                        ++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0282]: type annotations needed
[INFO] [stdout]    --> tests/database_tests.rs:194:24
[INFO] [stdout]     |
[INFO] [stdout] 194 |     let created_todo = db.create_todo(&create_todo).await.unwrap();
[INFO] [stdout]     |                        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ cannot infer type
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0282]: type annotations needed
[INFO] [stdout]    --> tests/database_tests.rs:197:5
[INFO] [stdout]     |
[INFO] [stdout] 197 |     db.delete_todo(created_todo.id).await.unwrap();
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ cannot infer type
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `StatusCode`
[INFO] [stdout]   --> tests/integration_tests.rs:81:28
[INFO] [stdout]    |
[INFO] [stdout] 81 |     response.assert_status(StatusCode::BAD_REQUEST);
[INFO] [stdout]    |                            ^^^^^^^^^^ use of undeclared type `StatusCode`
[INFO] [stdout]    |
[INFO] [stdout] help: there is an enum variant `tower_http::classify::ServerErrorsFailureClass::StatusCode` and 1 other; try using the variant's enum
[INFO] [stdout]    |
[INFO] [stdout] 81 -     response.assert_status(StatusCode::BAD_REQUEST);
[INFO] [stdout] 81 +     response.assert_status(tower_http::classify::ServerErrorsFailureClass::BAD_REQUEST);
[INFO] [stdout]    |
[INFO] [stdout] 81 -     response.assert_status(StatusCode::BAD_REQUEST);
[INFO] [stdout] 81 +     response.assert_status(tower_http::classify::StatusInRangeFailureClass::BAD_REQUEST);
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0282]: type annotations needed
[INFO] [stdout]    --> tests/database_tests.rs:200:17
[INFO] [stdout]     |
[INFO] [stdout] 200 |     let todos = db.get_all_todos().await.unwrap();
[INFO] [stdout]     |                 ^^^^^^^^^^^^^^^^^^^^^^^^ cannot infer type
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0282]: type annotations needed
[INFO] [stdout]    --> tests/database_tests.rs:204:9
[INFO] [stdout]     |
[INFO] [stdout] 204 |     let result = db.get_todo_by_id(created_todo.id).await;
[INFO] [stdout]     |         ^^^^^^
[INFO] [stdout] 205 |     assert!(
[INFO] [stdout] 206 |         result.is_err(),
[INFO] [stdout]     |         ------ type must be known at this point
[INFO] [stdout]     |
[INFO] [stdout] help: consider giving `result` an explicit type
[INFO] [stdout]     |
[INFO] [stdout] 204 |     let result: /* Type */ = db.get_todo_by_id(created_todo.id).await;
[INFO] [stdout]     |               ++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `StatusCode`
[INFO] [stdout]   --> tests/integration_tests.rs:86:28
[INFO] [stdout]    |
[INFO] [stdout] 86 |     response.assert_status(StatusCode::BAD_REQUEST);
[INFO] [stdout]    |                            ^^^^^^^^^^ use of undeclared type `StatusCode`
[INFO] [stdout]    |
[INFO] [stdout] help: there is an enum variant `tower_http::classify::ServerErrorsFailureClass::StatusCode` and 1 other; try using the variant's enum
[INFO] [stdout]    |
[INFO] [stdout] 86 -     response.assert_status(StatusCode::BAD_REQUEST);
[INFO] [stdout] 86 +     response.assert_status(tower_http::classify::ServerErrorsFailureClass::BAD_REQUEST);
[INFO] [stdout]    |
[INFO] [stdout] 86 -     response.assert_status(StatusCode::BAD_REQUEST);
[INFO] [stdout] 86 +     response.assert_status(tower_http::classify::StatusInRangeFailureClass::BAD_REQUEST);
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `StatusCode`
[INFO] [stdout]   --> tests/integration_tests.rs:94:28
[INFO] [stdout]    |
[INFO] [stdout] 94 |     response.assert_status(StatusCode::BAD_REQUEST);
[INFO] [stdout]    |                            ^^^^^^^^^^ use of undeclared type `StatusCode`
[INFO] [stdout]    |
[INFO] [stdout] help: there is an enum variant `tower_http::classify::ServerErrorsFailureClass::StatusCode` and 1 other; try using the variant's enum
[INFO] [stdout]    |
[INFO] [stdout] 94 -     response.assert_status(StatusCode::BAD_REQUEST);
[INFO] [stdout] 94 +     response.assert_status(tower_http::classify::ServerErrorsFailureClass::BAD_REQUEST);
[INFO] [stdout]    |
[INFO] [stdout] 94 -     response.assert_status(StatusCode::BAD_REQUEST);
[INFO] [stdout] 94 +     response.assert_status(tower_http::classify::StatusInRangeFailureClass::BAD_REQUEST);
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0282]: type annotations needed for `(_, _)`
[INFO] [stdout]    --> tests/database_tests.rs:213:9
[INFO] [stdout]     |
[INFO] [stdout] 213 |     let (db, _temp_dir) = create_test_database().await;
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^
[INFO] [stdout] 214 |
[INFO] [stdout] 215 |     let result = db.delete_todo(999).await;
[INFO] [stdout]     |                  -- type must be known at this point
[INFO] [stdout]     |
[INFO] [stdout] help: consider giving this pattern a type, where the placeholders `_` are specified
[INFO] [stdout]     |
[INFO] [stdout] 213 |     let (db, _temp_dir): (_, _) = create_test_database().await;
[INFO] [stdout]     |                        ++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0282]: type annotations needed
[INFO] [stdout]    --> tests/database_tests.rs:215:9
[INFO] [stdout]     |
[INFO] [stdout] 215 |     let result = db.delete_todo(999).await;
[INFO] [stdout]     |         ^^^^^^
[INFO] [stdout] 216 |     assert!(result.is_err(), "Should return error for non-existent todo");
[INFO] [stdout]     |             ------ type must be known at this point
[INFO] [stdout]     |
[INFO] [stdout] help: consider giving `result` an explicit type
[INFO] [stdout]     |
[INFO] [stdout] 215 |     let result: /* Type */ = db.delete_todo(999).await;
[INFO] [stdout]     |               ++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `StatusCode`
[INFO] [stdout]    --> tests/integration_tests.rs:110:28
[INFO] [stdout]     |
[INFO] [stdout] 110 |     response.assert_status(StatusCode::CREATED);
[INFO] [stdout]     |                            ^^^^^^^^^^ use of undeclared type `StatusCode`
[INFO] [stdout]     |
[INFO] [stdout] help: there is an enum variant `tower_http::classify::ServerErrorsFailureClass::StatusCode` and 1 other; try using the variant's enum
[INFO] [stdout]     |
[INFO] [stdout] 110 -     response.assert_status(StatusCode::CREATED);
[INFO] [stdout] 110 +     response.assert_status(tower_http::classify::ServerErrorsFailureClass::CREATED);
[INFO] [stdout]     |
[INFO] [stdout] 110 -     response.assert_status(StatusCode::CREATED);
[INFO] [stdout] 110 +     response.assert_status(tower_http::classify::StatusInRangeFailureClass::CREATED);
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `StatusCode`
[INFO] [stdout]    --> tests/integration_tests.rs:122:28
[INFO] [stdout]     |
[INFO] [stdout] 122 |     response.assert_status(StatusCode::CREATED);
[INFO] [stdout]     |                            ^^^^^^^^^^ use of undeclared type `StatusCode`
[INFO] [stdout]     |
[INFO] [stdout] help: there is an enum variant `tower_http::classify::ServerErrorsFailureClass::StatusCode` and 1 other; try using the variant's enum
[INFO] [stdout]     |
[INFO] [stdout] 122 -     response.assert_status(StatusCode::CREATED);
[INFO] [stdout] 122 +     response.assert_status(tower_http::classify::ServerErrorsFailureClass::CREATED);
[INFO] [stdout]     |
[INFO] [stdout] 122 -     response.assert_status(StatusCode::CREATED);
[INFO] [stdout] 122 +     response.assert_status(tower_http::classify::StatusInRangeFailureClass::CREATED);
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `StatusCode`
[INFO] [stdout]    --> tests/integration_tests.rs:133:28
[INFO] [stdout]     |
[INFO] [stdout] 133 |     response.assert_status(StatusCode::CREATED);
[INFO] [stdout]     |                            ^^^^^^^^^^ use of undeclared type `StatusCode`
[INFO] [stdout]     |
[INFO] [stdout] help: there is an enum variant `tower_http::classify::ServerErrorsFailureClass::StatusCode` and 1 other; try using the variant's enum
[INFO] [stdout]     |
[INFO] [stdout] 133 -     response.assert_status(StatusCode::CREATED);
[INFO] [stdout] 133 +     response.assert_status(tower_http::classify::ServerErrorsFailureClass::CREATED);
[INFO] [stdout]     |
[INFO] [stdout] 133 -     response.assert_status(StatusCode::CREATED);
[INFO] [stdout] 133 +     response.assert_status(tower_http::classify::StatusInRangeFailureClass::CREATED);
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0282]: type annotations needed
[INFO] [stdout]    --> tests/database_tests.rs:250:17
[INFO] [stdout]     |
[INFO] [stdout] 250 |     let todos = db_lock.get_all_todos().await.unwrap();
[INFO] [stdout]     |                 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ cannot infer type
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `StatusCode`
[INFO] [stdout]    --> tests/integration_tests.rs:162:32
[INFO] [stdout]     |
[INFO] [stdout] 162 |         response.assert_status(StatusCode::CREATED);
[INFO] [stdout]     |                                ^^^^^^^^^^ use of undeclared type `StatusCode`
[INFO] [stdout]     |
[INFO] [stdout] help: there is an enum variant `tower_http::classify::ServerErrorsFailureClass::StatusCode` and 1 other; try using the variant's enum
[INFO] [stdout]     |
[INFO] [stdout] 162 -         response.assert_status(StatusCode::CREATED);
[INFO] [stdout] 162 +         response.assert_status(tower_http::classify::ServerErrorsFailureClass::CREATED);
[INFO] [stdout]     |
[INFO] [stdout] 162 -         response.assert_status(StatusCode::CREATED);
[INFO] [stdout] 162 +         response.assert_status(tower_http::classify::StatusInRangeFailureClass::CREATED);
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0282]: type annotations needed for `(_, _)`
[INFO] [stdout]    --> tests/database_tests.rs:256:9
[INFO] [stdout]     |
[INFO] [stdout] 256 |     let (db, _temp_dir) = create_test_database().await;
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 262 |     let result = db.create_todo(&empty_todo).await;
[INFO] [stdout]     |                  -- type must be known at this point
[INFO] [stdout]     |
[INFO] [stdout] help: consider giving this pattern a type, where the placeholders `_` are specified
[INFO] [stdout]     |
[INFO] [stdout] 256 |     let (db, _temp_dir): (_, _) = create_test_database().await;
[INFO] [stdout]     |                        ++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `StatusCode`
[INFO] [stdout]    --> tests/integration_tests.rs:182:28
[INFO] [stdout]     |
[INFO] [stdout] 182 |     response.assert_status(StatusCode::METHOD_NOT_ALLOWED);
[INFO] [stdout]     |                            ^^^^^^^^^^ use of undeclared type `StatusCode`
[INFO] [stdout]     |
[INFO] [stdout] help: there is an enum variant `tower_http::classify::ServerErrorsFailureClass::StatusCode` and 1 other; try using the variant's enum
[INFO] [stdout]     |
[INFO] [stdout] 182 -     response.assert_status(StatusCode::METHOD_NOT_ALLOWED);
[INFO] [stdout] 182 +     response.assert_status(tower_http::classify::ServerErrorsFailureClass::METHOD_NOT_ALLOWED);
[INFO] [stdout]     |
[INFO] [stdout] 182 -     response.assert_status(StatusCode::METHOD_NOT_ALLOWED);
[INFO] [stdout] 182 +     response.assert_status(tower_http::classify::StatusInRangeFailureClass::METHOD_NOT_ALLOWED);
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0282]: type annotations needed
[INFO] [stdout]    --> tests/database_tests.rs:262:9
[INFO] [stdout]     |
[INFO] [stdout] 262 |     let result = db.create_todo(&empty_todo).await;
[INFO] [stdout]     |         ^^^^^^
[INFO] [stdout] 263 |     assert!(
[INFO] [stdout] 264 |         result.is_ok(),
[INFO] [stdout]     |         ------ type must be known at this point
[INFO] [stdout]     |
[INFO] [stdout] help: consider giving `result` an explicit type
[INFO] [stdout]     |
[INFO] [stdout] 262 |     let result: /* Type */ = db.create_todo(&empty_todo).await;
[INFO] [stdout]     |               ++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `StatusCode`
[INFO] [stdout]    --> tests/integration_tests.rs:185:28
[INFO] [stdout]     |
[INFO] [stdout] 185 |     response.assert_status(StatusCode::METHOD_NOT_ALLOWED);
[INFO] [stdout]     |                            ^^^^^^^^^^ use of undeclared type `StatusCode`
[INFO] [stdout]     |
[INFO] [stdout] help: there is an enum variant `tower_http::classify::ServerErrorsFailureClass::StatusCode` and 1 other; try using the variant's enum
[INFO] [stdout]     |
[INFO] [stdout] 185 -     response.assert_status(StatusCode::METHOD_NOT_ALLOWED);
[INFO] [stdout] 185 +     response.assert_status(tower_http::classify::ServerErrorsFailureClass::METHOD_NOT_ALLOWED);
[INFO] [stdout]     |
[INFO] [stdout] 185 -     response.assert_status(StatusCode::METHOD_NOT_ALLOWED);
[INFO] [stdout] 185 +     response.assert_status(tower_http::classify::StatusInRangeFailureClass::METHOD_NOT_ALLOWED);
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `StatusCode`
[INFO] [stdout]    --> tests/integration_tests.rs:189:28
[INFO] [stdout]     |
[INFO] [stdout] 189 |     response.assert_status(StatusCode::METHOD_NOT_ALLOWED);
[INFO] [stdout]     |                            ^^^^^^^^^^ use of undeclared type `StatusCode`
[INFO] [stdout]     |
[INFO] [stdout] help: there is an enum variant `tower_http::classify::ServerErrorsFailureClass::StatusCode` and 1 other; try using the variant's enum
[INFO] [stdout]     |
[INFO] [stdout] 189 -     response.assert_status(StatusCode::METHOD_NOT_ALLOWED);
[INFO] [stdout] 189 +     response.assert_status(tower_http::classify::ServerErrorsFailureClass::METHOD_NOT_ALLOWED);
[INFO] [stdout]     |
[INFO] [stdout] 189 -     response.assert_status(StatusCode::METHOD_NOT_ALLOWED);
[INFO] [stdout] 189 +     response.assert_status(tower_http::classify::StatusInRangeFailureClass::METHOD_NOT_ALLOWED);
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0282]: type annotations needed
[INFO] [stdout]    --> tests/database_tests.rs:273:9
[INFO] [stdout]     |
[INFO] [stdout] 273 |     let result = db.create_todo(&long_todo).await;
[INFO] [stdout]     |         ^^^^^^
[INFO] [stdout] 274 |     assert!(result.is_ok(), "Long titles should be allowed");
[INFO] [stdout]     |             ------ type must be known at this point
[INFO] [stdout]     |
[INFO] [stdout] help: consider giving `result` an explicit type
[INFO] [stdout]     |
[INFO] [stdout] 273 |     let result: /* Type */ = db.create_todo(&long_todo).await;
[INFO] [stdout]     |               ++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0282]: type annotations needed
[INFO] [stdout]    --> tests/database_tests.rs:284:9
[INFO] [stdout]     |
[INFO] [stdout] 284 |     let result = db.create_todo(&special_todo).await;
[INFO] [stdout]     |         ^^^^^^
[INFO] [stdout] 285 |     assert!(result.is_ok(), "Special characters should be allowed");
[INFO] [stdout]     |             ------ type must be known at this point
[INFO] [stdout]     |
[INFO] [stdout] help: consider giving `result` an explicit type
[INFO] [stdout]     |
[INFO] [stdout] 284 |     let result: /* Type */ = db.create_todo(&special_todo).await;
[INFO] [stdout]     |               ++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0282]: type annotations needed
[INFO] [stdout]   --> tests/handler_tests.rs:60:20
[INFO] [stdout]    |
[INFO] [stdout] 60 |     let created1 = state.db.create_todo(&todo1).await.unwrap();
[INFO] [stdout]    |                    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ cannot infer type
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0282]: type annotations needed
[INFO] [stdout]   --> tests/handler_tests.rs:61:20
[INFO] [stdout]    |
[INFO] [stdout] 61 |     let created2 = state.db.create_todo(&todo2).await.unwrap();
[INFO] [stdout]    |                    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ cannot infer type
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0282]: type annotations needed
[INFO] [stdout]    --> tests/handler_tests.rs:138:24
[INFO] [stdout]     |
[INFO] [stdout] 138 |     let created_todo = state.db.create_todo(&create_todo).await.unwrap();
[INFO] [stdout]     |                        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ cannot infer type
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0282]: type annotations needed
[INFO] [stdout]    --> tests/handler_tests.rs:184:24
[INFO] [stdout]     |
[INFO] [stdout] 184 |     let created_todo = state.db.create_todo(&create_todo).await.unwrap();
[INFO] [stdout]     |                        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ cannot infer type
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `head` found for struct `TestServer` in the current scope
[INFO] [stdout]    --> tests/integration_tests.rs:192:27
[INFO] [stdout]     |
[INFO] [stdout] 192 |     let response = server.head("/todos").await;
[INFO] [stdout]     |                           ^^^^ method not found in `TestServer`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0282]: type annotations needed
[INFO] [stdout]    --> tests/integration_tests.rs:192:9
[INFO] [stdout]     |
[INFO] [stdout] 192 |     let response = server.head("/todos").await;
[INFO] [stdout]     |         ^^^^^^^^
[INFO] [stdout] 193 |     response.assert_status_ok();
[INFO] [stdout]     |     -------- type must be known at this point
[INFO] [stdout]     |
[INFO] [stdout] help: consider giving `response` an explicit type
[INFO] [stdout]     |
[INFO] [stdout] 192 |     let response: /* Type */ = server.head("/todos").await;
[INFO] [stdout]     |                 ++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0282]: type annotations needed
[INFO] [stdout]    --> tests/handler_tests.rs:297:9
[INFO] [stdout]     |
[INFO] [stdout] 297 |     let result = handlers::get_todos(axum::extract::State(state)).await;
[INFO] [stdout]     |         ^^^^^^
[INFO] [stdout] 298 |     assert!(result.is_ok(), "Handler should return successful result");
[INFO] [stdout]     |             ------ type must be known at this point
[INFO] [stdout]     |
[INFO] [stdout] help: consider giving `result` an explicit type
[INFO] [stdout]     |
[INFO] [stdout] 297 |     let result: /* Type */ = handlers::get_todos(axum::extract::State(state)).await;
[INFO] [stdout]     |               ++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0282]: type annotations needed
[INFO] [stdout]    --> tests/handler_tests.rs:306:9
[INFO] [stdout]     |
[INFO] [stdout] 306 |     let result = handlers::health_check().await;
[INFO] [stdout]     |         ^^^^^^
[INFO] [stdout] 307 |     assert!(result.is_ok(), "Health check should always succeed");
[INFO] [stdout]     |             ------ type must be known at this point
[INFO] [stdout]     |
[INFO] [stdout] help: consider giving `result` an explicit type
[INFO] [stdout]     |
[INFO] [stdout] 306 |     let result: /* Type */ = handlers::health_check().await;
[INFO] [stdout]     |               ++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `StatusCode`
[INFO] [stdout]   --> tests/integration_tests.rs:28:28
[INFO] [stdout]    |
[INFO] [stdout] 28 |     response.assert_status(StatusCode::CREATED);
[INFO] [stdout]    |                            ^^^^^^^^^^ use of undeclared type `StatusCode`
[INFO] [stdout]    |
[INFO] [stdout] help: there is an enum variant `tower_http::classify::ServerErrorsFailureClass::StatusCode` and 1 other; try using the variant's enum
[INFO] [stdout]    |
[INFO] [stdout] 28 -     response.assert_status(StatusCode::CREATED);
[INFO] [stdout] 28 +     response.assert_status(tower_http::classify::ServerErrorsFailureClass::CREATED);
[INFO] [stdout]    |
[INFO] [stdout] 28 -     response.assert_status(StatusCode::CREATED);
[INFO] [stdout] 28 +     response.assert_status(tower_http::classify::StatusInRangeFailureClass::CREATED);
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `StatusCode`
[INFO] [stdout]   --> tests/integration_tests.rs:51:28
[INFO] [stdout]    |
[INFO] [stdout] 51 |     response.assert_status(StatusCode::NO_CONTENT);
[INFO] [stdout]    |                            ^^^^^^^^^^ use of undeclared type `StatusCode`
[INFO] [stdout]    |
[INFO] [stdout] help: there is an enum variant `tower_http::classify::ServerErrorsFailureClass::StatusCode` and 1 other; try using the variant's enum
[INFO] [stdout]    |
[INFO] [stdout] 51 -     response.assert_status(StatusCode::NO_CONTENT);
[INFO] [stdout] 51 +     response.assert_status(tower_http::classify::ServerErrorsFailureClass::NO_CONTENT);
[INFO] [stdout]    |
[INFO] [stdout] 51 -     response.assert_status(StatusCode::NO_CONTENT);
[INFO] [stdout] 51 +     response.assert_status(tower_http::classify::StatusInRangeFailureClass::NO_CONTENT);
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `StatusCode`
[INFO] [stdout]   --> tests/integration_tests.rs:55:28
[INFO] [stdout]    |
[INFO] [stdout] 55 |     response.assert_status(StatusCode::NOT_FOUND);
[INFO] [stdout]    |                            ^^^^^^^^^^ use of undeclared type `StatusCode`
[INFO] [stdout]    |
[INFO] [stdout] help: there is an enum variant `tower_http::classify::ServerErrorsFailureClass::StatusCode` and 1 other; try using the variant's enum
[INFO] [stdout]    |
[INFO] [stdout] 55 -     response.assert_status(StatusCode::NOT_FOUND);
[INFO] [stdout] 55 +     response.assert_status(tower_http::classify::ServerErrorsFailureClass::NOT_FOUND);
[INFO] [stdout]    |
[INFO] [stdout] 55 -     response.assert_status(StatusCode::NOT_FOUND);
[INFO] [stdout] 55 +     response.assert_status(tower_http::classify::StatusInRangeFailureClass::NOT_FOUND);
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `options` found for struct `TestServer` in the current scope
[INFO] [stdout]    --> tests/integration_tests.rs:197:10
[INFO] [stdout]     |
[INFO] [stdout] 196 |       let response = server
[INFO] [stdout]     |  ____________________-
[INFO] [stdout] 197 | |         .options("/todos")
[INFO] [stdout]     | |         -^^^^^^^ method not found in `TestServer`
[INFO] [stdout]     | |_________|
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0282]: type annotations needed
[INFO] [stdout]    --> tests/integration_tests.rs:196:9
[INFO] [stdout]     |
[INFO] [stdout] 196 |     let response = server
[INFO] [stdout]     |         ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 202 |     response.assert_status_ok();
[INFO] [stdout]     |     -------- type must be known at this point
[INFO] [stdout]     |
[INFO] [stdout] help: consider giving `response` an explicit type
[INFO] [stdout]     |
[INFO] [stdout] 196 |     let response: /* Type */ = server
[INFO] [stdout]     |                 ++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `StatusCode`
[INFO] [stdout]   --> tests/integration_tests.rs:70:28
[INFO] [stdout]    |
[INFO] [stdout] 70 |     response.assert_status(StatusCode::NOT_FOUND);
[INFO] [stdout]    |                            ^^^^^^^^^^ use of undeclared type `StatusCode`
[INFO] [stdout]    |
[INFO] [stdout] help: there is an enum variant `tower_http::classify::ServerErrorsFailureClass::StatusCode` and 1 other; try using the variant's enum
[INFO] [stdout]    |
[INFO] [stdout] 70 -     response.assert_status(StatusCode::NOT_FOUND);
[INFO] [stdout] 70 +     response.assert_status(tower_http::classify::ServerErrorsFailureClass::NOT_FOUND);
[INFO] [stdout]    |
[INFO] [stdout] 70 -     response.assert_status(StatusCode::NOT_FOUND);
[INFO] [stdout] 70 +     response.assert_status(tower_http::classify::StatusInRangeFailureClass::NOT_FOUND);
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `StatusCode`
[INFO] [stdout]   --> tests/integration_tests.rs:74:28
[INFO] [stdout]    |
[INFO] [stdout] 74 |     response.assert_status(StatusCode::NOT_FOUND);
[INFO] [stdout]    |                            ^^^^^^^^^^ use of undeclared type `StatusCode`
[INFO] [stdout]    |
[INFO] [stdout] help: there is an enum variant `tower_http::classify::ServerErrorsFailureClass::StatusCode` and 1 other; try using the variant's enum
[INFO] [stdout]    |
[INFO] [stdout] 74 -     response.assert_status(StatusCode::NOT_FOUND);
[INFO] [stdout] 74 +     response.assert_status(tower_http::classify::ServerErrorsFailureClass::NOT_FOUND);
[INFO] [stdout]    |
[INFO] [stdout] 74 -     response.assert_status(StatusCode::NOT_FOUND);
[INFO] [stdout] 74 +     response.assert_status(tower_http::classify::StatusInRangeFailureClass::NOT_FOUND);
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `StatusCode`
[INFO] [stdout]   --> tests/integration_tests.rs:78:28
[INFO] [stdout]    |
[INFO] [stdout] 78 |     response.assert_status(StatusCode::BAD_REQUEST);
[INFO] [stdout]    |                            ^^^^^^^^^^ use of undeclared type `StatusCode`
[INFO] [stdout]    |
[INFO] [stdout] help: there is an enum variant `tower_http::classify::ServerErrorsFailureClass::StatusCode` and 1 other; try using the variant's enum
[INFO] [stdout]    |
[INFO] [stdout] 78 -     response.assert_status(StatusCode::BAD_REQUEST);
[INFO] [stdout] 78 +     response.assert_status(tower_http::classify::ServerErrorsFailureClass::BAD_REQUEST);
[INFO] [stdout]    |
[INFO] [stdout] 78 -     response.assert_status(StatusCode::BAD_REQUEST);
[INFO] [stdout] 78 +     response.assert_status(tower_http::classify::StatusInRangeFailureClass::BAD_REQUEST);
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `StatusCode`
[INFO] [stdout]   --> tests/integration_tests.rs:81:28
[INFO] [stdout]    |
[INFO] [stdout] 81 |     response.assert_status(StatusCode::BAD_REQUEST);
[INFO] [stdout]    |                            ^^^^^^^^^^ use of undeclared type `StatusCode`
[INFO] [stdout]    |
[INFO] [stdout] help: there is an enum variant `tower_http::classify::ServerErrorsFailureClass::StatusCode` and 1 other; try using the variant's enum
[INFO] [stdout]    |
[INFO] [stdout] 81 -     response.assert_status(StatusCode::BAD_REQUEST);
[INFO] [stdout] 81 +     response.assert_status(tower_http::classify::ServerErrorsFailureClass::BAD_REQUEST);
[INFO] [stdout]    |
[INFO] [stdout] 81 -     response.assert_status(StatusCode::BAD_REQUEST);
[INFO] [stdout] 81 +     response.assert_status(tower_http::classify::StatusInRangeFailureClass::BAD_REQUEST);
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `StatusCode`
[INFO] [stdout]   --> tests/integration_tests.rs:86:28
[INFO] [stdout]    |
[INFO] [stdout] 86 |     response.assert_status(StatusCode::BAD_REQUEST);
[INFO] [stdout]    |                            ^^^^^^^^^^ use of undeclared type `StatusCode`
[INFO] [stdout]    |
[INFO] [stdout] help: there is an enum variant `tower_http::classify::ServerErrorsFailureClass::StatusCode` and 1 other; try using the variant's enum
[INFO] [stdout]    |
[INFO] [stdout] 86 -     response.assert_status(StatusCode::BAD_REQUEST);
[INFO] [stdout] 86 +     response.assert_status(tower_http::classify::ServerErrorsFailureClass::BAD_REQUEST);
[INFO] [stdout]    |
[INFO] [stdout] 86 -     response.assert_status(StatusCode::BAD_REQUEST);
[INFO] [stdout] 86 +     response.assert_status(tower_http::classify::StatusInRangeFailureClass::BAD_REQUEST);
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `StatusCode`
[INFO] [stdout]   --> tests/integration_tests.rs:94:28
[INFO] [stdout]    |
[INFO] [stdout] 94 |     response.assert_status(StatusCode::BAD_REQUEST);
[INFO] [stdout]    |                            ^^^^^^^^^^ use of undeclared type `StatusCode`
[INFO] [stdout]    |
[INFO] [stdout] help: there is an enum variant `tower_http::classify::ServerErrorsFailureClass::StatusCode` and 1 other; try using the variant's enum
[INFO] [stdout]    |
[INFO] [stdout] 94 -     response.assert_status(StatusCode::BAD_REQUEST);
[INFO] [stdout] 94 +     response.assert_status(tower_http::classify::ServerErrorsFailureClass::BAD_REQUEST);
[INFO] [stdout]    |
[INFO] [stdout] 94 -     response.assert_status(StatusCode::BAD_REQUEST);
[INFO] [stdout] 94 +     response.assert_status(tower_http::classify::StatusInRangeFailureClass::BAD_REQUEST);
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `StatusCode`
[INFO] [stdout]    --> tests/integration_tests.rs:110:28
[INFO] [stdout]     |
[INFO] [stdout] 110 |     response.assert_status(StatusCode::CREATED);
[INFO] [stdout]     |                            ^^^^^^^^^^ use of undeclared type `StatusCode`
[INFO] [stdout]     |
[INFO] [stdout] help: there is an enum variant `tower_http::classify::ServerErrorsFailureClass::StatusCode` and 1 other; try using the variant's enum
[INFO] [stdout]     |
[INFO] [stdout] 110 -     response.assert_status(StatusCode::CREATED);
[INFO] [stdout] 110 +     response.assert_status(tower_http::classify::ServerErrorsFailureClass::CREATED);
[INFO] [stdout]     |
[INFO] [stdout] 110 -     response.assert_status(StatusCode::CREATED);
[INFO] [stdout] 110 +     response.assert_status(tower_http::classify::StatusInRangeFailureClass::CREATED);
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `StatusCode`
[INFO] [stdout]    --> tests/integration_tests.rs:244:28
[INFO] [stdout]     |
[INFO] [stdout] 244 |     response.assert_status(StatusCode::CREATED);
[INFO] [stdout]     |                            ^^^^^^^^^^ use of undeclared type `StatusCode`
[INFO] [stdout]     |
[INFO] [stdout] help: there is an enum variant `tower_http::classify::ServerErrorsFailureClass::StatusCode` and 1 other; try using the variant's enum
[INFO] [stdout]     |
[INFO] [stdout] 244 -     response.assert_status(StatusCode::CREATED);
[INFO] [stdout] 244 +     response.assert_status(tower_http::classify::ServerErrorsFailureClass::CREATED);
[INFO] [stdout]     |
[INFO] [stdout] 244 -     response.assert_status(StatusCode::CREATED);
[INFO] [stdout] 244 +     response.assert_status(tower_http::classify::StatusInRangeFailureClass::CREATED);
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `StatusCode`
[INFO] [stdout]    --> tests/integration_tests.rs:122:28
[INFO] [stdout]     |
[INFO] [stdout] 122 |     response.assert_status(StatusCode::CREATED);
[INFO] [stdout]     |                            ^^^^^^^^^^ use of undeclared type `StatusCode`
[INFO] [stdout]     |
[INFO] [stdout] help: there is an enum variant `tower_http::classify::ServerErrorsFailureClass::StatusCode` and 1 other; try using the variant's enum
[INFO] [stdout]     |
[INFO] [stdout] 122 -     response.assert_status(StatusCode::CREATED);
[INFO] [stdout] 122 +     response.assert_status(tower_http::classify::ServerErrorsFailureClass::CREATED);
[INFO] [stdout]     |
[INFO] [stdout] 122 -     response.assert_status(StatusCode::CREATED);
[INFO] [stdout] 122 +     response.assert_status(tower_http::classify::StatusInRangeFailureClass::CREATED);
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `StatusCode`
[INFO] [stdout]    --> tests/integration_tests.rs:133:28
[INFO] [stdout]     |
[INFO] [stdout] 133 |     response.assert_status(StatusCode::CREATED);
[INFO] [stdout]     |                            ^^^^^^^^^^ use of undeclared type `StatusCode`
[INFO] [stdout]     |
[INFO] [stdout] help: there is an enum variant `tower_http::classify::ServerErrorsFailureClass::StatusCode` and 1 other; try using the variant's enum
[INFO] [stdout]     |
[INFO] [stdout] 133 -     response.assert_status(StatusCode::CREATED);
[INFO] [stdout] 133 +     response.assert_status(tower_http::classify::ServerErrorsFailureClass::CREATED);
[INFO] [stdout]     |
[INFO] [stdout] 133 -     response.assert_status(StatusCode::CREATED);
[INFO] [stdout] 133 +     response.assert_status(tower_http::classify::StatusInRangeFailureClass::CREATED);
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `StatusCode`
[INFO] [stdout]    --> tests/integration_tests.rs:262:32
[INFO] [stdout]     |
[INFO] [stdout] 262 |         response.assert_status(StatusCode::CREATED);
[INFO] [stdout]     |                                ^^^^^^^^^^ use of undeclared type `StatusCode`
[INFO] [stdout]     |
[INFO] [stdout] help: there is an enum variant `tower_http::classify::ServerErrorsFailureClass::StatusCode` and 1 other; try using the variant's enum
[INFO] [stdout]     |
[INFO] [stdout] 262 -         response.assert_status(StatusCode::CREATED);
[INFO] [stdout] 262 +         response.assert_status(tower_http::classify::ServerErrorsFailureClass::CREATED);
[INFO] [stdout]     |
[INFO] [stdout] 262 -         response.assert_status(StatusCode::CREATED);
[INFO] [stdout] 262 +         response.assert_status(tower_http::classify::StatusInRangeFailureClass::CREATED);
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `StatusCode`
[INFO] [stdout]    --> tests/integration_tests.rs:282:32
[INFO] [stdout]     |
[INFO] [stdout] 282 |         response.assert_status(StatusCode::NO_CONTENT);
[INFO] [stdout]     |                                ^^^^^^^^^^ use of undeclared type `StatusCode`
[INFO] [stdout]     |
[INFO] [stdout] help: there is an enum variant `tower_http::classify::ServerErrorsFailureClass::StatusCode` and 1 other; try using the variant's enum
[INFO] [stdout]     |
[INFO] [stdout] 282 -         response.assert_status(StatusCode::NO_CONTENT);
[INFO] [stdout] 282 +         response.assert_status(tower_http::classify::ServerErrorsFailureClass::NO_CONTENT);
[INFO] [stdout]     |
[INFO] [stdout] 282 -         response.assert_status(StatusCode::NO_CONTENT);
[INFO] [stdout] 282 +         response.assert_status(tower_http::classify::StatusInRangeFailureClass::NO_CONTENT);
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `rust-todo-demo` (test "integration_tests") due to 26 previous errors; 1 warning emitted
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `StatusCode`
[INFO] [stdout]    --> tests/integration_tests.rs:162:32
[INFO] [stdout]     |
[INFO] [stdout] 162 |         response.assert_status(StatusCode::CREATED);
[INFO] [stdout]     |                                ^^^^^^^^^^ use of undeclared type `StatusCode`
[INFO] [stdout]     |
[INFO] [stdout] help: there is an enum variant `tower_http::classify::ServerErrorsFailureClass::StatusCode` and 1 other; try using the variant's enum
[INFO] [stdout]     |
[INFO] [stdout] 162 -         response.assert_status(StatusCode::CREATED);
[INFO] [stdout] 162 +         response.assert_status(tower_http::classify::ServerErrorsFailureClass::CREATED);
[INFO] [stdout]     |
[INFO] [stdout] 162 -         response.assert_status(StatusCode::CREATED);
[INFO] [stdout] 162 +         response.assert_status(tower_http::classify::StatusInRangeFailureClass::CREATED);
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `StatusCode`
[INFO] [stdout]    --> tests/integration_tests.rs:182:28
[INFO] [stdout]     |
[INFO] [stdout] 182 |     response.assert_status(StatusCode::METHOD_NOT_ALLOWED);
[INFO] [stdout]     |                            ^^^^^^^^^^ use of undeclared type `StatusCode`
[INFO] [stdout]     |
[INFO] [stdout] help: there is an enum variant `tower_http::classify::ServerErrorsFailureClass::StatusCode` and 1 other; try using the variant's enum
[INFO] [stdout]     |
[INFO] [stdout] 182 -     response.assert_status(StatusCode::METHOD_NOT_ALLOWED);
[INFO] [stdout] 182 +     response.assert_status(tower_http::classify::ServerErrorsFailureClass::METHOD_NOT_ALLOWED);
[INFO] [stdout]     |
[INFO] [stdout] 182 -     response.assert_status(StatusCode::METHOD_NOT_ALLOWED);
[INFO] [stdout] 182 +     response.assert_status(tower_http::classify::StatusInRangeFailureClass::METHOD_NOT_ALLOWED);
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `StatusCode`
[INFO] [stdout]    --> tests/integration_tests.rs:185:28
[INFO] [stdout]     |
[INFO] [stdout] 185 |     response.assert_status(StatusCode::METHOD_NOT_ALLOWED);
[INFO] [stdout]     |                            ^^^^^^^^^^ use of undeclared type `StatusCode`
[INFO] [stdout]     |
[INFO] [stdout] help: there is an enum variant `tower_http::classify::ServerErrorsFailureClass::StatusCode` and 1 other; try using the variant's enum
[INFO] [stdout]     |
[INFO] [stdout] 185 -     response.assert_status(StatusCode::METHOD_NOT_ALLOWED);
[INFO] [stdout] 185 +     response.assert_status(tower_http::classify::ServerErrorsFailureClass::METHOD_NOT_ALLOWED);
[INFO] [stdout]     |
[INFO] [stdout] 185 -     response.assert_status(StatusCode::METHOD_NOT_ALLOWED);
[INFO] [stdout] 185 +     response.assert_status(tower_http::classify::StatusInRangeFailureClass::METHOD_NOT_ALLOWED);
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `StatusCode`
[INFO] [stdout]    --> tests/integration_tests.rs:189:28
[INFO] [stdout]     |
[INFO] [stdout] 189 |     response.assert_status(StatusCode::METHOD_NOT_ALLOWED);
[INFO] [stdout]     |                            ^^^^^^^^^^ use of undeclared type `StatusCode`
[INFO] [stdout]     |
[INFO] [stdout] help: there is an enum variant `tower_http::classify::ServerErrorsFailureClass::StatusCode` and 1 other; try using the variant's enum
[INFO] [stdout]     |
[INFO] [stdout] 189 -     response.assert_status(StatusCode::METHOD_NOT_ALLOWED);
[INFO] [stdout] 189 +     response.assert_status(tower_http::classify::ServerErrorsFailureClass::METHOD_NOT_ALLOWED);
[INFO] [stdout]     |
[INFO] [stdout] 189 -     response.assert_status(StatusCode::METHOD_NOT_ALLOWED);
[INFO] [stdout] 189 +     response.assert_status(tower_http::classify::StatusInRangeFailureClass::METHOD_NOT_ALLOWED);
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `StatusCode`
[INFO] [stdout]    --> tests/integration_tests.rs:300:28
[INFO] [stdout]     |
[INFO] [stdout] 300 |     response.assert_status(StatusCode::CREATED);
[INFO] [stdout]     |                            ^^^^^^^^^^ use of undeclared type `StatusCode`
[INFO] [stdout]     |
[INFO] [stdout] help: there is an enum variant `tower_http::classify::ServerErrorsFailureClass::StatusCode` and 1 other; try using the variant's enum
[INFO] [stdout]     |
[INFO] [stdout] 300 -     response.assert_status(StatusCode::CREATED);
[INFO] [stdout] 300 +     response.assert_status(tower_http::classify::ServerErrorsFailureClass::CREATED);
[INFO] [stdout]     |
[INFO] [stdout] 300 -     response.assert_status(StatusCode::CREATED);
[INFO] [stdout] 300 +     response.assert_status(tower_http::classify::StatusInRangeFailureClass::CREATED);
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] Some errors have detailed explanations: E0282, E0433, E0599.
[INFO] [stdout] 
[INFO] [stdout] For more information about an error, try `rustc --explain E0282`.
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `head` found for struct `TestServer` in the current scope
[INFO] [stdout]    --> tests/integration_tests.rs:192:27
[INFO] [stdout]     |
[INFO] [stdout] 192 |     let response = server.head("/todos").await;
[INFO] [stdout]     |                           ^^^^ method not found in `TestServer`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0282]: type annotations needed
[INFO] [stdout]    --> tests/integration_tests.rs:192:9
[INFO] [stdout]     |
[INFO] [stdout] 192 |     let response = server.head("/todos").await;
[INFO] [stdout]     |         ^^^^^^^^
[INFO] [stdout] 193 |     response.assert_status_ok();
[INFO] [stdout]     |     -------- type must be known at this point
[INFO] [stdout]     |
[INFO] [stdout] help: consider giving `response` an explicit type
[INFO] [stdout]     |
[INFO] [stdout] 192 |     let response: /* Type */ = server.head("/todos").await;
[INFO] [stdout]     |                 ++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `options` found for struct `TestServer` in the current scope
[INFO] [stdout]    --> tests/integration_tests.rs:197:10
[INFO] [stdout]     |
[INFO] [stdout] 196 |       let response = server
[INFO] [stdout]     |  ____________________-
[INFO] [stdout] 197 | |         .options("/todos")
[INFO] [stdout]     | |         -^^^^^^^ method not found in `TestServer`
[INFO] [stdout]     | |_________|
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0282]: type annotations needed
[INFO] [stdout]    --> tests/integration_tests.rs:196:9
[INFO] [stdout]     |
[INFO] [stdout] 196 |     let response = server
[INFO] [stdout]     |         ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 202 |     response.assert_status_ok();
[INFO] [stdout]     |     -------- type must be known at this point
[INFO] [stdout]     |
[INFO] [stdout] help: consider giving `response` an explicit type
[INFO] [stdout]     |
[INFO] [stdout] 196 |     let response: /* Type */ = server
[INFO] [stdout]     |                 ++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `StatusCode`
[INFO] [stdout]    --> tests/integration_tests.rs:244:28
[INFO] [stdout]     |
[INFO] [stdout] 244 |     response.assert_status(StatusCode::CREATED);
[INFO] [stdout]     |                            ^^^^^^^^^^ use of undeclared type `StatusCode`
[INFO] [stdout]     |
[INFO] [stdout] help: there is an enum variant `tower_http::classify::ServerErrorsFailureClass::StatusCode` and 1 other; try using the variant's enum
[INFO] [stdout]     |
[INFO] [stdout] 244 -     response.assert_status(StatusCode::CREATED);
[INFO] [stdout] 244 +     response.assert_status(tower_http::classify::ServerErrorsFailureClass::CREATED);
[INFO] [stdout]     |
[INFO] [stdout] 244 -     response.assert_status(StatusCode::CREATED);
[INFO] [stdout] 244 +     response.assert_status(tower_http::classify::StatusInRangeFailureClass::CREATED);
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `StatusCode`
[INFO] [stdout]    --> tests/integration_tests.rs:262:32
[INFO] [stdout]     |
[INFO] [stdout] 262 |         response.assert_status(StatusCode::CREATED);
[INFO] [stdout]     |                                ^^^^^^^^^^ use of undeclared type `StatusCode`
[INFO] [stdout]     |
[INFO] [stdout] help: there is an enum variant `tower_http::classify::ServerErrorsFailureClass::StatusCode` and 1 other; try using the variant's enum
[INFO] [stdout]     |
[INFO] [stdout] 262 -         response.assert_status(StatusCode::CREATED);
[INFO] [stdout] 262 +         response.assert_status(tower_http::classify::ServerErrorsFailureClass::CREATED);
[INFO] [stdout]     |
[INFO] [stdout] 262 -         response.assert_status(StatusCode::CREATED);
[INFO] [stdout] 262 +         response.assert_status(tower_http::classify::StatusInRangeFailureClass::CREATED);
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `StatusCode`
[INFO] [stdout]    --> tests/integration_tests.rs:282:32
[INFO] [stdout]     |
[INFO] [stdout] 282 |         response.assert_status(StatusCode::NO_CONTENT);
[INFO] [stdout]     |                                ^^^^^^^^^^ use of undeclared type `StatusCode`
[INFO] [stdout]     |
[INFO] [stdout] help: there is an enum variant `tower_http::classify::ServerErrorsFailureClass::StatusCode` and 1 other; try using the variant's enum
[INFO] [stdout]     |
[INFO] [stdout] 282 -         response.assert_status(StatusCode::NO_CONTENT);
[INFO] [stdout] 282 +         response.assert_status(tower_http::classify::ServerErrorsFailureClass::NO_CONTENT);
[INFO] [stdout]     |
[INFO] [stdout] 282 -         response.assert_status(StatusCode::NO_CONTENT);
[INFO] [stdout] 282 +         response.assert_status(tower_http::classify::StatusInRangeFailureClass::NO_CONTENT);
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `update_todo` is never used
[INFO] [stdout]    --> src/db.rs:143:18
[INFO] [stdout]     |
[INFO] [stdout]   9 | impl Database {
[INFO] [stdout]     | ------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 143 |     pub async fn update_todo(&self, id: i64, update_todo: UpdateTodo) -> Result<Todo, AppError> {
[INFO] [stdout]     |                  ^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `update_todo` is never used
[INFO] [stdout]   --> src/handlers.rs:40:14
[INFO] [stdout]    |
[INFO] [stdout] 40 | pub async fn update_todo(
[INFO] [stdout]    |              ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `UpdateTodo` is never constructed
[INFO] [stdout]   --> src/models.rs:17:12
[INFO] [stdout]    |
[INFO] [stdout] 17 | pub struct UpdateTodo {
[INFO] [stdout]    |            ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `StatusCode`
[INFO] [stdout]    --> tests/integration_tests.rs:300:28
[INFO] [stdout]     |
[INFO] [stdout] 300 |     response.assert_status(StatusCode::CREATED);
[INFO] [stdout]     |                            ^^^^^^^^^^ use of undeclared type `StatusCode`
[INFO] [stdout]     |
[INFO] [stdout] help: there is an enum variant `tower_http::classify::ServerErrorsFailureClass::StatusCode` and 1 other; try using the variant's enum
[INFO] [stdout]     |
[INFO] [stdout] 300 -     response.assert_status(StatusCode::CREATED);
[INFO] [stdout] 300 +     response.assert_status(tower_http::classify::ServerErrorsFailureClass::CREATED);
[INFO] [stdout]     |
[INFO] [stdout] 300 -     response.assert_status(StatusCode::CREATED);
[INFO] [stdout] 300 +     response.assert_status(tower_http::classify::StatusInRangeFailureClass::CREATED);
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] Some errors have detailed explanations: E0282, E0432, E0433, E0599.
[INFO] [stdout] 
[INFO] [stdout] For more information about an error, try `rustc --explain E0282`.
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `rust-todo-demo` (test "mod") due to 89 previous errors; 11 warnings emitted
[INFO] [stdout] warning: method `update_todo` is never used
[INFO] [stdout]    --> src/db.rs:143:18
[INFO] [stdout]     |
[INFO] [stdout]   9 | impl Database {
[INFO] [stdout]     | ------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 143 |     pub async fn update_todo(&self, id: i64, update_todo: UpdateTodo) -> Result<Todo, AppError> {
[INFO] [stdout]     |                  ^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `update_todo` is never used
[INFO] [stdout]   --> src/handlers.rs:40:14
[INFO] [stdout]    |
[INFO] [stdout] 40 | pub async fn update_todo(
[INFO] [stdout]    |              ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `UpdateTodo` is never constructed
[INFO] [stdout]   --> src/models.rs:17:12
[INFO] [stdout]    |
[INFO] [stdout] 17 | pub struct UpdateTodo {
[INFO] [stdout]    |            ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] running `Command { std: "docker" "inspect" "fdefba6a7c4c840ac6b7d7d4f4a873bb996e75afc3cb0a376c808d0ed6102ed3", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "fdefba6a7c4c840ac6b7d7d4f4a873bb996e75afc3cb0a376c808d0ed6102ed3", kill_on_drop: false }`
[INFO] [stdout] fdefba6a7c4c840ac6b7d7d4f4a873bb996e75afc3cb0a376c808d0ed6102ed3
