[INFO] cloning repository https://github.com/ir1keren/REST-rust-starter [INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/ir1keren/REST-rust-starter" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fir1keren%2FREST-rust-starter", kill_on_drop: false }` [INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fir1keren%2FREST-rust-starter'... [INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }` [INFO] [stdout] 7b946d2f282da58e223e833b4d0fa3c3a067c236 [INFO] testing ir1keren/REST-rust-starter against try#db823df02fd0c2cf67b43025ac3fef3f2d743245 for pr-150681-1 [INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fir1keren%2FREST-rust-starter" "/workspace/builds/worker-5-tc2/source", kill_on_drop: false }` [INFO] [stderr] Cloning into '/workspace/builds/worker-5-tc2/source'... [INFO] [stderr] done. [INFO] started tweaking git repo https://github.com/ir1keren/REST-rust-starter [INFO] finished tweaking git repo https://github.com/ir1keren/REST-rust-starter [INFO] tweaked toml for git repo https://github.com/ir1keren/REST-rust-starter written to /workspace/builds/worker-5-tc2/source/Cargo.toml [INFO] validating manifest of git repo https://github.com/ir1keren/REST-rust-starter on toolchain db823df02fd0c2cf67b43025ac3fef3f2d743245 [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+db823df02fd0c2cf67b43025ac3fef3f2d743245" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] crate git repo https://github.com/ir1keren/REST-rust-starter 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" "+db823df02fd0c2cf67b43025ac3fef3f2d743245" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:845e597a41426bbf2703be69acdb67d10b6de511142d05cba7bbe119c898b2c7" "/opt/rustwide/cargo-home/bin/cargo" "+db823df02fd0c2cf67b43025ac3fef3f2d743245" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] ce59b411ee79f06ba20e85ba08ae3caacc286c0ebfc843f4ef45104e9fb686c7 [INFO] running `Command { std: "docker" "start" "-a" "ce59b411ee79f06ba20e85ba08ae3caacc286c0ebfc843f4ef45104e9fb686c7", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "ce59b411ee79f06ba20e85ba08ae3caacc286c0ebfc843f4ef45104e9fb686c7", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "ce59b411ee79f06ba20e85ba08ae3caacc286c0ebfc843f4ef45104e9fb686c7", kill_on_drop: false }` [INFO] [stdout] ce59b411ee79f06ba20e85ba08ae3caacc286c0ebfc843f4ef45104e9fb686c7 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-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:845e597a41426bbf2703be69acdb67d10b6de511142d05cba7bbe119c898b2c7" "/opt/rustwide/cargo-home/bin/cargo" "+db823df02fd0c2cf67b43025ac3fef3f2d743245" "build" "--frozen" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] c28c05637bc5b5e29befa736f0e6d020956e1a9bd456ff95839a96cae830f473 [INFO] running `Command { std: "docker" "start" "-a" "c28c05637bc5b5e29befa736f0e6d020956e1a9bd456ff95839a96cae830f473", kill_on_drop: false }` [INFO] [stderr] Compiling proc-macro2 v1.0.103 [INFO] [stderr] Compiling futures-core v0.3.31 [INFO] [stderr] Compiling crossbeam-utils v0.8.21 [INFO] [stderr] Compiling log v0.4.28 [INFO] [stderr] Compiling bitflags v2.10.0 [INFO] [stderr] Compiling getrandom v0.3.4 [INFO] [stderr] Compiling ahash v0.8.12 [INFO] [stderr] Compiling mio v1.1.0 [INFO] [stderr] Compiling ntex-service v3.5.0 [INFO] [stderr] Compiling ntex-rt v0.4.32 [INFO] [stderr] Compiling oneshot v0.1.11 [INFO] [stderr] Compiling futures-timer v3.0.3 [INFO] [stderr] Compiling generic-array v0.14.9 [INFO] [stderr] Compiling syn v1.0.109 [INFO] [stderr] Compiling regex-automata v0.4.13 [INFO] [stderr] Compiling concurrent-queue v2.5.0 [INFO] [stderr] Compiling event-listener v5.4.1 [INFO] [stderr] Compiling rustix v1.1.2 [INFO] [stderr] Compiling event-listener-strategy v0.5.4 [INFO] [stderr] Compiling proc-macro-error-attr v1.0.4 [INFO] [stderr] Compiling async-channel v2.5.0 [INFO] [stderr] Compiling linux-raw-sys v0.11.0 [INFO] [stderr] Compiling signal-hook v0.3.18 [INFO] [stderr] Compiling num_cpus v1.17.0 [INFO] [stderr] Compiling proc-macro-error v1.0.4 [INFO] [stderr] Compiling quote v1.0.41 [INFO] [stderr] Compiling futures-sink v0.3.31 [INFO] [stderr] Compiling num-traits v0.2.19 [INFO] [stderr] Compiling core_affinity v0.8.3 [INFO] [stderr] Compiling syn v2.0.108 [INFO] [stderr] Compiling futures-channel v0.3.31 [INFO] [stderr] Compiling serde_json v1.0.145 [INFO] [stderr] Compiling env_filter v0.1.4 [INFO] [stderr] Compiling block-buffer v0.10.4 [INFO] [stderr] Compiling crypto-common v0.1.6 [INFO] [stderr] Compiling digest v0.10.7 [INFO] [stderr] Compiling tracing-core v0.1.34 [INFO] [stderr] Compiling socket2 v0.5.10 [INFO] [stderr] Compiling nanorand v0.8.0 [INFO] [stderr] Compiling futures-io v0.3.31 [INFO] [stderr] Compiling sha1 v0.10.6 [INFO] [stderr] Compiling env_logger v0.11.8 [INFO] [stderr] Compiling hashbrown v0.16.0 [INFO] [stderr] Compiling tracing-log v0.2.0 [INFO] [stderr] Compiling thread_local v1.1.9 [INFO] [stderr] Compiling smallvec v1.15.1 [INFO] [stderr] Compiling nu-ansi-term v0.50.3 [INFO] [stderr] Compiling dotenv v0.15.0 [INFO] [stderr] Compiling indexmap v2.12.0 [INFO] [stderr] Compiling regex v1.12.2 [INFO] [stderr] Compiling matchers v0.2.0 [INFO] [stderr] Compiling polling v3.11.0 [INFO] [stderr] Compiling ntex-macros v0.1.4 [INFO] [stderr] Compiling serde_derive v1.0.228 [INFO] [stderr] Compiling tokio-macros v2.6.0 [INFO] [stderr] Compiling thiserror-impl v2.0.17 [INFO] [stderr] Compiling futures-macro v0.3.31 [INFO] [stderr] Compiling variadics_please v1.1.0 [INFO] [stderr] Compiling tracing-attributes v0.1.30 [INFO] [stderr] Compiling thiserror-impl v1.0.69 [INFO] [stderr] Compiling utoipa-gen v4.3.1 [INFO] [stderr] Compiling thiserror v1.0.69 [INFO] [stderr] Compiling futures-util v0.3.31 [INFO] [stderr] Compiling tokio v1.48.0 [INFO] [stderr] Compiling thiserror v2.0.17 [INFO] [stderr] Compiling tracing v0.1.41 [INFO] [stderr] Compiling tracing-subscriber v0.3.20 [INFO] [stderr] Compiling serde v1.0.228 [INFO] [stderr] Compiling ntex-bytes v0.1.30 [INFO] [stderr] Compiling serde_urlencoded v0.7.1 [INFO] [stderr] Compiling uuid v1.18.1 [INFO] [stderr] Compiling chrono v0.4.42 [INFO] [stderr] Compiling utoipa v4.2.3 [INFO] [stderr] Compiling ntex-codec v0.6.2 [INFO] [stderr] Compiling ntex-http v0.1.15 [INFO] [stderr] Compiling ntex-router v0.5.3 [INFO] [stderr] Compiling futures-executor v0.3.31 [INFO] [stderr] Compiling futures v0.3.31 [INFO] [stderr] Compiling ntex-util v2.15.0 [INFO] [stderr] Compiling ntex-io v2.14.0 [INFO] [stderr] Compiling ntex-tokio v0.5.4 [INFO] [stderr] Compiling ntex-net v2.8.1 [INFO] [stderr] Compiling ntex-h2 v1.13.0 [INFO] [stderr] Compiling ntex-server v2.8.1 [INFO] [stderr] Compiling ntex-tls v2.6.1 [INFO] [stderr] Compiling ntex v2.16.0 [INFO] [stderr] Compiling ntex-remove-trailing-slash v0.1.0 [INFO] [stderr] Compiling rust-mvc-api v0.1.0 (/opt/rustwide/workdir) [INFO] [stdout] warning: unused variable: `project_service` [INFO] [stdout] --> src/main.rs:34:9 [INFO] [stdout] | [INFO] [stdout] 34 | let project_service = Arc::new(ProjectService::new(project_repository.clone())); [INFO] [stdout] | ^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_project_service` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `task_service` [INFO] [stdout] --> src/main.rs:35:9 [INFO] [stdout] | [INFO] [stdout] 35 | let task_service = Arc::new(TaskService::new(task_repository, project_repository)); [INFO] [stdout] | ^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_task_service` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `name` and `description` are never read [INFO] [stdout] --> src/models/project.rs:21:9 [INFO] [stdout] | [INFO] [stdout] 20 | pub struct ProjectCreate { [INFO] [stdout] | ------------- fields in this struct [INFO] [stdout] 21 | pub name: String, [INFO] [stdout] | ^^^^ [INFO] [stdout] 22 | pub description: Option, [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `ProjectCreate` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `name` and `description` are never read [INFO] [stdout] --> src/models/project.rs:28:9 [INFO] [stdout] | [INFO] [stdout] 27 | pub struct ProjectUpdate { [INFO] [stdout] | ------------- fields in this struct [INFO] [stdout] 28 | pub name: Option, [INFO] [stdout] | ^^^^ [INFO] [stdout] 29 | pub description: Option, [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `ProjectUpdate` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `new` and `update` are never used [INFO] [stdout] --> src/models/project.rs:33:12 [INFO] [stdout] | [INFO] [stdout] 32 | impl Project { [INFO] [stdout] | ------------ associated items in this implementation [INFO] [stdout] 33 | pub fn new(name: String, description: Option) -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 44 | pub fn update(&mut self, update: ProjectUpdate) { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `project_id`, `title`, and `description` are never read [INFO] [stdout] --> src/models/task.rs:23:9 [INFO] [stdout] | [INFO] [stdout] 22 | pub struct TaskCreate { [INFO] [stdout] | ---------- fields in this struct [INFO] [stdout] 23 | pub project_id: Uuid, [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] 24 | pub title: String, [INFO] [stdout] | ^^^^^ [INFO] [stdout] 25 | pub description: Option, [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `TaskCreate` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `title`, `description`, and `done` are never read [INFO] [stdout] --> src/models/task.rs:31:9 [INFO] [stdout] | [INFO] [stdout] 30 | pub struct TaskUpdate { [INFO] [stdout] | ---------- fields in this struct [INFO] [stdout] 31 | pub title: Option, [INFO] [stdout] | ^^^^^ [INFO] [stdout] 32 | pub description: Option, [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] 33 | pub done: Option, [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `TaskUpdate` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `new` and `update` are never used [INFO] [stdout] --> src/models/task.rs:37:12 [INFO] [stdout] | [INFO] [stdout] 36 | impl Task { [INFO] [stdout] | --------- associated items in this implementation [INFO] [stdout] 37 | pub fn new(project_id: Uuid, title: String, description: Option) -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 50 | pub fn update(&mut self, update: TaskUpdate) { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `projects` is never read [INFO] [stdout] --> src/repositories/project_repo.rs:8:5 [INFO] [stdout] | [INFO] [stdout] 7 | pub struct ProjectRepository { [INFO] [stdout] | ----------------- field in this struct [INFO] [stdout] 8 | projects: RwLock>, [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `ProjectRepository` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `create`, `find_by_id`, `find_all`, `update`, and `delete` are never used [INFO] [stdout] --> src/repositories/project_repo.rs:18:12 [INFO] [stdout] | [INFO] [stdout] 11 | impl ProjectRepository { [INFO] [stdout] | ---------------------- methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 18 | pub fn create(&self, project: Project) -> Result { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 28 | pub fn find_by_id(&self, id: &Uuid) -> Result, String> { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 36 | pub fn find_all(&self) -> Result, String> { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 44 | pub fn update(&self, id: &Uuid, updated_project: Project) -> Result, String> { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 57 | pub fn delete(&self, id: &Uuid) -> Result { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `tasks` is never read [INFO] [stdout] --> src/repositories/task_repo.rs:8:5 [INFO] [stdout] | [INFO] [stdout] 7 | pub struct TaskRepository { [INFO] [stdout] | -------------- field in this struct [INFO] [stdout] 8 | tasks: RwLock>, [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `TaskRepository` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: multiple methods are never used [INFO] [stdout] --> src/repositories/task_repo.rs:18:12 [INFO] [stdout] | [INFO] [stdout] 11 | impl TaskRepository { [INFO] [stdout] | ------------------- methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 18 | pub fn create(&self, task: Task) -> Result { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 28 | pub fn find_by_id(&self, id: &Uuid) -> Result, String> { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 36 | pub fn find_all(&self) -> Result, String> { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 44 | pub fn find_by_project_id(&self, project_id: &Uuid) -> Result, String> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 56 | pub fn update(&self, id: &Uuid, updated_task: Task) -> Result, String> { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 69 | pub fn delete(&self, id: &Uuid) -> Result { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 77 | pub fn delete_by_project_id(&self, project_id: &Uuid) -> Result { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `repository` is never read [INFO] [stdout] --> src/services/project_service.rs:9:5 [INFO] [stdout] | [INFO] [stdout] 8 | pub struct ProjectService { [INFO] [stdout] | -------------- field in this struct [INFO] [stdout] 9 | repository: Arc, [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `ProjectService` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `create_project`, `get_project`, `list_projects`, `update_project`, and `delete_project` are never used [INFO] [stdout] --> src/services/project_service.rs:17:18 [INFO] [stdout] | [INFO] [stdout] 12 | impl ProjectService { [INFO] [stdout] | ------------------- methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 17 | pub async fn create_project(&self, create_data: ProjectCreate) -> Result { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 44 | pub async fn get_project(&self, id: Uuid) -> Result { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 51 | pub async fn list_projects(&self) -> Result, ApiError> { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 57 | pub async fn update_project( [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 99 | pub async fn delete_project(&self, id: Uuid) -> Result<(), ApiError> { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `task_repository` and `project_repository` are never read [INFO] [stdout] --> src/services/task_service.rs:9:5 [INFO] [stdout] | [INFO] [stdout] 8 | pub struct TaskService { [INFO] [stdout] | ----------- fields in this struct [INFO] [stdout] 9 | task_repository: Arc, [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] 10 | project_repository: Arc, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `TaskService` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: multiple methods are never used [INFO] [stdout] --> src/services/task_service.rs:24:18 [INFO] [stdout] | [INFO] [stdout] 13 | impl TaskService { [INFO] [stdout] | ---------------- methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 24 | pub async fn create_task(&self, create_data: TaskCreate) -> Result { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 61 | pub async fn get_task(&self, id: Uuid) -> Result { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 68 | pub async fn list_tasks(&self) -> Result, ApiError> { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 74 | pub async fn list_tasks_by_project(&self, project_id: Uuid) -> Result, ApiError> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 86 | pub async fn update_task(&self, id: Uuid, update_data: TaskUpdate) -> Result { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 124 | pub async fn delete_task(&self, id: Uuid) -> Result<(), ApiError> { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 137 | pub async fn delete_tasks_by_project(&self, project_id: Uuid) -> Result { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated functions `success` and `error` are never used [INFO] [stdout] --> src/views/api_response.rs:26:12 [INFO] [stdout] | [INFO] [stdout] 25 | impl ApiResponse { [INFO] [stdout] | ---------------------- associated functions in this implementation [INFO] [stdout] 26 | pub fn success(data: T) -> Self { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 34 | pub fn error(error: ErrorResponse) -> Self { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variants `NotFound`, `BadRequest`, `ValidationError`, `InternalServerError`, and `Conflict` are never constructed [INFO] [stdout] --> src/views/api_response.rs:46:5 [INFO] [stdout] | [INFO] [stdout] 44 | pub enum ApiError { [INFO] [stdout] | -------- variants in this enum [INFO] [stdout] 45 | #[error("Resource not found: {resource}")] [INFO] [stdout] 46 | NotFound { resource: String }, [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 49 | BadRequest { message: String }, [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 52 | ValidationError { message: String }, [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 55 | InternalServerError, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 61 | Conflict { message: String }, [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `ApiError` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated functions `not_found`, `bad_request`, `validation_error`, `repository_error`, and `conflict` are never used [INFO] [stdout] --> src/views/api_response.rs:65:12 [INFO] [stdout] | [INFO] [stdout] 64 | impl ApiError { [INFO] [stdout] | ------------- associated functions in this implementation [INFO] [stdout] 65 | pub fn not_found(resource: &str) -> Self { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 71 | pub fn bad_request(message: &str) -> Self { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 77 | pub fn validation_error(message: &str) -> Self { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 83 | pub fn repository_error(message: &str) -> Self { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 89 | pub fn conflict(message: &str) -> Self { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished `dev` profile [unoptimized + debuginfo] target(s) in 1m 18s [INFO] running `Command { std: "docker" "inspect" "c28c05637bc5b5e29befa736f0e6d020956e1a9bd456ff95839a96cae830f473", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "c28c05637bc5b5e29befa736f0e6d020956e1a9bd456ff95839a96cae830f473", kill_on_drop: false }` [INFO] [stdout] c28c05637bc5b5e29befa736f0e6d020956e1a9bd456ff95839a96cae830f473 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-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:845e597a41426bbf2703be69acdb67d10b6de511142d05cba7bbe119c898b2c7" "/opt/rustwide/cargo-home/bin/cargo" "+db823df02fd0c2cf67b43025ac3fef3f2d743245" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] fad4552583808800c6d31048c7f5469aab6dd74df6ca8c4eb71ec5257d5a9a9f [INFO] running `Command { std: "docker" "start" "-a" "fad4552583808800c6d31048c7f5469aab6dd74df6ca8c4eb71ec5257d5a9a9f", kill_on_drop: false }` [INFO] [stderr] Compiling rust-mvc-api v0.1.0 (/opt/rustwide/workdir) [INFO] [stdout] warning: unused variable: `project_service` [INFO] [stdout] --> src/main.rs:34:9 [INFO] [stdout] | [INFO] [stdout] 34 | let project_service = Arc::new(ProjectService::new(project_repository.clone())); [INFO] [stdout] | ^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_project_service` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `task_service` [INFO] [stdout] --> src/main.rs:35:9 [INFO] [stdout] | [INFO] [stdout] 35 | let task_service = Arc::new(TaskService::new(task_repository, project_repository)); [INFO] [stdout] | ^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_task_service` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `name` and `description` are never read [INFO] [stdout] --> src/models/project.rs:21:9 [INFO] [stdout] | [INFO] [stdout] 20 | pub struct ProjectCreate { [INFO] [stdout] | ------------- fields in this struct [INFO] [stdout] 21 | pub name: String, [INFO] [stdout] | ^^^^ [INFO] [stdout] 22 | pub description: Option, [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `ProjectCreate` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `name` and `description` are never read [INFO] [stdout] --> src/models/project.rs:28:9 [INFO] [stdout] | [INFO] [stdout] 27 | pub struct ProjectUpdate { [INFO] [stdout] | ------------- fields in this struct [INFO] [stdout] 28 | pub name: Option, [INFO] [stdout] | ^^^^ [INFO] [stdout] 29 | pub description: Option, [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `ProjectUpdate` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `new` and `update` are never used [INFO] [stdout] --> src/models/project.rs:33:12 [INFO] [stdout] | [INFO] [stdout] 32 | impl Project { [INFO] [stdout] | ------------ associated items in this implementation [INFO] [stdout] 33 | pub fn new(name: String, description: Option) -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 44 | pub fn update(&mut self, update: ProjectUpdate) { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `project_id`, `title`, and `description` are never read [INFO] [stdout] --> src/models/task.rs:23:9 [INFO] [stdout] | [INFO] [stdout] 22 | pub struct TaskCreate { [INFO] [stdout] | ---------- fields in this struct [INFO] [stdout] 23 | pub project_id: Uuid, [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] 24 | pub title: String, [INFO] [stdout] | ^^^^^ [INFO] [stdout] 25 | pub description: Option, [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `TaskCreate` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `title`, `description`, and `done` are never read [INFO] [stdout] --> src/models/task.rs:31:9 [INFO] [stdout] | [INFO] [stdout] 30 | pub struct TaskUpdate { [INFO] [stdout] | ---------- fields in this struct [INFO] [stdout] 31 | pub title: Option, [INFO] [stdout] | ^^^^^ [INFO] [stdout] 32 | pub description: Option, [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] 33 | pub done: Option, [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `TaskUpdate` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `new` and `update` are never used [INFO] [stdout] --> src/models/task.rs:37:12 [INFO] [stdout] | [INFO] [stdout] 36 | impl Task { [INFO] [stdout] | --------- associated items in this implementation [INFO] [stdout] 37 | pub fn new(project_id: Uuid, title: String, description: Option) -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 50 | pub fn update(&mut self, update: TaskUpdate) { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `projects` is never read [INFO] [stdout] --> src/repositories/project_repo.rs:8:5 [INFO] [stdout] | [INFO] [stdout] 7 | pub struct ProjectRepository { [INFO] [stdout] | ----------------- field in this struct [INFO] [stdout] 8 | projects: RwLock>, [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `ProjectRepository` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `create`, `find_by_id`, `find_all`, `update`, and `delete` are never used [INFO] [stdout] --> src/repositories/project_repo.rs:18:12 [INFO] [stdout] | [INFO] [stdout] 11 | impl ProjectRepository { [INFO] [stdout] | ---------------------- methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 18 | pub fn create(&self, project: Project) -> Result { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 28 | pub fn find_by_id(&self, id: &Uuid) -> Result, String> { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 36 | pub fn find_all(&self) -> Result, String> { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 44 | pub fn update(&self, id: &Uuid, updated_project: Project) -> Result, String> { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 57 | pub fn delete(&self, id: &Uuid) -> Result { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `tasks` is never read [INFO] [stdout] --> src/repositories/task_repo.rs:8:5 [INFO] [stdout] | [INFO] [stdout] 7 | pub struct TaskRepository { [INFO] [stdout] | -------------- field in this struct [INFO] [stdout] 8 | tasks: RwLock>, [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `TaskRepository` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: multiple methods are never used [INFO] [stdout] --> src/repositories/task_repo.rs:18:12 [INFO] [stdout] | [INFO] [stdout] 11 | impl TaskRepository { [INFO] [stdout] | ------------------- methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 18 | pub fn create(&self, task: Task) -> Result { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 28 | pub fn find_by_id(&self, id: &Uuid) -> Result, String> { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 36 | pub fn find_all(&self) -> Result, String> { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 44 | pub fn find_by_project_id(&self, project_id: &Uuid) -> Result, String> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 56 | pub fn update(&self, id: &Uuid, updated_task: Task) -> Result, String> { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 69 | pub fn delete(&self, id: &Uuid) -> Result { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 77 | pub fn delete_by_project_id(&self, project_id: &Uuid) -> Result { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `repository` is never read [INFO] [stdout] --> src/services/project_service.rs:9:5 [INFO] [stdout] | [INFO] [stdout] 8 | pub struct ProjectService { [INFO] [stdout] | -------------- field in this struct [INFO] [stdout] 9 | repository: Arc, [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `ProjectService` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `create_project`, `get_project`, `list_projects`, `update_project`, and `delete_project` are never used [INFO] [stdout] --> src/services/project_service.rs:17:18 [INFO] [stdout] | [INFO] [stdout] 12 | impl ProjectService { [INFO] [stdout] | ------------------- methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 17 | pub async fn create_project(&self, create_data: ProjectCreate) -> Result { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 44 | pub async fn get_project(&self, id: Uuid) -> Result { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 51 | pub async fn list_projects(&self) -> Result, ApiError> { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 57 | pub async fn update_project( [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 99 | pub async fn delete_project(&self, id: Uuid) -> Result<(), ApiError> { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `task_repository` and `project_repository` are never read [INFO] [stdout] --> src/services/task_service.rs:9:5 [INFO] [stdout] | [INFO] [stdout] 8 | pub struct TaskService { [INFO] [stdout] | ----------- fields in this struct [INFO] [stdout] 9 | task_repository: Arc, [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] 10 | project_repository: Arc, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `TaskService` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: multiple methods are never used [INFO] [stdout] --> src/services/task_service.rs:24:18 [INFO] [stdout] | [INFO] [stdout] 13 | impl TaskService { [INFO] [stdout] | ---------------- methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 24 | pub async fn create_task(&self, create_data: TaskCreate) -> Result { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 61 | pub async fn get_task(&self, id: Uuid) -> Result { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 68 | pub async fn list_tasks(&self) -> Result, ApiError> { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 74 | pub async fn list_tasks_by_project(&self, project_id: Uuid) -> Result, ApiError> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 86 | pub async fn update_task(&self, id: Uuid, update_data: TaskUpdate) -> Result { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 124 | pub async fn delete_task(&self, id: Uuid) -> Result<(), ApiError> { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 137 | pub async fn delete_tasks_by_project(&self, project_id: Uuid) -> Result { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated functions `success` and `error` are never used [INFO] [stdout] --> src/views/api_response.rs:26:12 [INFO] [stdout] | [INFO] [stdout] 25 | impl ApiResponse { [INFO] [stdout] | ---------------------- associated functions in this implementation [INFO] [stdout] 26 | pub fn success(data: T) -> Self { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 34 | pub fn error(error: ErrorResponse) -> Self { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variants `NotFound`, `BadRequest`, `ValidationError`, `InternalServerError`, and `Conflict` are never constructed [INFO] [stdout] --> src/views/api_response.rs:46:5 [INFO] [stdout] | [INFO] [stdout] 44 | pub enum ApiError { [INFO] [stdout] | -------- variants in this enum [INFO] [stdout] 45 | #[error("Resource not found: {resource}")] [INFO] [stdout] 46 | NotFound { resource: String }, [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 49 | BadRequest { message: String }, [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 52 | ValidationError { message: String }, [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 55 | InternalServerError, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 61 | Conflict { message: String }, [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `ApiError` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated functions `not_found`, `bad_request`, `validation_error`, `repository_error`, and `conflict` are never used [INFO] [stdout] --> src/views/api_response.rs:65:12 [INFO] [stdout] | [INFO] [stdout] 64 | impl ApiError { [INFO] [stdout] | ------------- associated functions in this implementation [INFO] [stdout] 65 | pub fn not_found(resource: &str) -> Self { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 71 | pub fn bad_request(message: &str) -> Self { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 77 | pub fn validation_error(message: &str) -> Self { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 83 | pub fn repository_error(message: &str) -> Self { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 89 | pub fn conflict(message: &str) -> Self { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished `test` profile [unoptimized + debuginfo] target(s) in 1.54s [INFO] running `Command { std: "docker" "inspect" "fad4552583808800c6d31048c7f5469aab6dd74df6ca8c4eb71ec5257d5a9a9f", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "fad4552583808800c6d31048c7f5469aab6dd74df6ca8c4eb71ec5257d5a9a9f", kill_on_drop: false }` [INFO] [stdout] fad4552583808800c6d31048c7f5469aab6dd74df6ca8c4eb71ec5257d5a9a9f [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-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:845e597a41426bbf2703be69acdb67d10b6de511142d05cba7bbe119c898b2c7" "/opt/rustwide/cargo-home/bin/cargo" "+db823df02fd0c2cf67b43025ac3fef3f2d743245" "test" "--frozen", kill_on_drop: false }` [INFO] [stdout] fd1e8e624894c15c9afa5cb2973a0e4c09fae1cfb3444aaca2ba47a0042a3597 [INFO] running `Command { std: "docker" "start" "-a" "fd1e8e624894c15c9afa5cb2973a0e4c09fae1cfb3444aaca2ba47a0042a3597", kill_on_drop: false }` [INFO] [stderr] warning: unused variable: `project_service` [INFO] [stderr] --> src/main.rs:34:9 [INFO] [stderr] | [INFO] [stderr] 34 | let project_service = Arc::new(ProjectService::new(project_repository.clone())); [INFO] [stderr] | ^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_project_service` [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default [INFO] [stderr] [INFO] [stderr] warning: unused variable: `task_service` [INFO] [stderr] --> src/main.rs:35:9 [INFO] [stderr] | [INFO] [stderr] 35 | let task_service = Arc::new(TaskService::new(task_repository, project_repository)); [INFO] [stderr] | ^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_task_service` [INFO] [stderr] [INFO] [stderr] warning: fields `name` and `description` are never read [INFO] [stderr] --> src/models/project.rs:21:9 [INFO] [stderr] | [INFO] [stderr] 20 | pub struct ProjectCreate { [INFO] [stderr] | ------------- fields in this struct [INFO] [stderr] 21 | pub name: String, [INFO] [stderr] | ^^^^ [INFO] [stderr] 22 | pub description: Option, [INFO] [stderr] | ^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `ProjectCreate` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stderr] = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default [INFO] [stderr] [INFO] [stderr] warning: fields `name` and `description` are never read [INFO] [stderr] --> src/models/project.rs:28:9 [INFO] [stderr] | [INFO] [stderr] 27 | pub struct ProjectUpdate { [INFO] [stderr] | ------------- fields in this struct [INFO] [stderr] 28 | pub name: Option, [INFO] [stderr] | ^^^^ [INFO] [stderr] 29 | pub description: Option, [INFO] [stderr] | ^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `ProjectUpdate` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stderr] [INFO] [stderr] warning: associated items `new` and `update` are never used [INFO] [stderr] --> src/models/project.rs:33:12 [INFO] [stderr] | [INFO] [stderr] 32 | impl Project { [INFO] [stderr] | ------------ associated items in this implementation [INFO] [stderr] 33 | pub fn new(name: String, description: Option) -> Self { [INFO] [stderr] | ^^^ [INFO] [stderr] ... [INFO] [stderr] 44 | pub fn update(&mut self, update: ProjectUpdate) { [INFO] [stderr] | ^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: fields `project_id`, `title`, and `description` are never read [INFO] [stderr] --> src/models/task.rs:23:9 [INFO] [stderr] | [INFO] [stderr] 22 | pub struct TaskCreate { [INFO] [stderr] | ---------- fields in this struct [INFO] [stderr] 23 | pub project_id: Uuid, [INFO] [stderr] | ^^^^^^^^^^ [INFO] [stderr] 24 | pub title: String, [INFO] [stderr] | ^^^^^ [INFO] [stderr] 25 | pub description: Option, [INFO] [stderr] | ^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `TaskCreate` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stderr] [INFO] [stderr] warning: fields `title`, `description`, and `done` are never read [INFO] [stderr] --> src/models/task.rs:31:9 [INFO] [stderr] | [INFO] [stderr] 30 | pub struct TaskUpdate { [INFO] [stderr] | ---------- fields in this struct [INFO] [stderr] 31 | pub title: Option, [INFO] [stderr] | ^^^^^ [INFO] [stderr] 32 | pub description: Option, [INFO] [stderr] | ^^^^^^^^^^^ [INFO] [stderr] 33 | pub done: Option, [INFO] [stderr] | ^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `TaskUpdate` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stderr] [INFO] [stderr] warning: associated items `new` and `update` are never used [INFO] [stderr] --> src/models/task.rs:37:12 [INFO] [stderr] | [INFO] [stderr] 36 | impl Task { [INFO] [stderr] | --------- associated items in this implementation [INFO] [stderr] 37 | pub fn new(project_id: Uuid, title: String, description: Option) -> Self { [INFO] [stderr] | ^^^ [INFO] [stderr] ... [INFO] [stderr] 50 | pub fn update(&mut self, update: TaskUpdate) { [INFO] [stderr] | ^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: field `projects` is never read [INFO] [stderr] --> src/repositories/project_repo.rs:8:5 [INFO] [stderr] | [INFO] [stderr] 7 | pub struct ProjectRepository { [INFO] [stderr] | ----------------- field in this struct [INFO] [stderr] 8 | projects: RwLock>, [INFO] [stderr] | ^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `ProjectRepository` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stderr] [INFO] [stderr] warning: methods `create`, `find_by_id`, `find_all`, `update`, and `delete` are never used [INFO] [stderr] --> src/repositories/project_repo.rs:18:12 [INFO] [stderr] | [INFO] [stderr] 11 | impl ProjectRepository { [INFO] [stderr] | ---------------------- methods in this implementation [INFO] [stderr] ... [INFO] [stderr] 18 | pub fn create(&self, project: Project) -> Result { [INFO] [stderr] | ^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 28 | pub fn find_by_id(&self, id: &Uuid) -> Result, String> { [INFO] [stderr] | ^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 36 | pub fn find_all(&self) -> Result, String> { [INFO] [stderr] | ^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 44 | pub fn update(&self, id: &Uuid, updated_project: Project) -> Result, String> { [INFO] [stderr] | ^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 57 | pub fn delete(&self, id: &Uuid) -> Result { [INFO] [stderr] | ^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: field `tasks` is never read [INFO] [stderr] --> src/repositories/task_repo.rs:8:5 [INFO] [stderr] | [INFO] [stderr] 7 | pub struct TaskRepository { [INFO] [stderr] | -------------- field in this struct [INFO] [stderr] 8 | tasks: RwLock>, [INFO] [stderr] | ^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `TaskRepository` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stderr] [INFO] [stderr] warning: multiple methods are never used [INFO] [stderr] --> src/repositories/task_repo.rs:18:12 [INFO] [stderr] | [INFO] [stderr] 11 | impl TaskRepository { [INFO] [stderr] | ------------------- methods in this implementation [INFO] [stderr] ... [INFO] [stderr] 18 | pub fn create(&self, task: Task) -> Result { [INFO] [stderr] | ^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 28 | pub fn find_by_id(&self, id: &Uuid) -> Result, String> { [INFO] [stderr] | ^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 36 | pub fn find_all(&self) -> Result, String> { [INFO] [stderr] | ^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 44 | pub fn find_by_project_id(&self, project_id: &Uuid) -> Result, String> { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 56 | pub fn update(&self, id: &Uuid, updated_task: Task) -> Result, String> { [INFO] [stderr] | ^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 69 | pub fn delete(&self, id: &Uuid) -> Result { [INFO] [stderr] | ^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 77 | pub fn delete_by_project_id(&self, project_id: &Uuid) -> Result { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: field `repository` is never read [INFO] [stderr] --> src/services/project_service.rs:9:5 [INFO] [stderr] | [INFO] [stderr] 8 | pub struct ProjectService { [INFO] [stderr] | -------------- field in this struct [INFO] [stderr] 9 | repository: Arc, [INFO] [stderr] | ^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `ProjectService` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis [INFO] [stderr] [INFO] [stderr] warning: methods `create_project`, `get_project`, `list_projects`, `update_project`, and `delete_project` are never used [INFO] [stderr] --> src/services/project_service.rs:17:18 [INFO] [stderr] | [INFO] [stderr] 12 | impl ProjectService { [INFO] [stderr] | ------------------- methods in this implementation [INFO] [stderr] ... [INFO] [stderr] 17 | pub async fn create_project(&self, create_data: ProjectCreate) -> Result { [INFO] [stderr] | ^^^^^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 44 | pub async fn get_project(&self, id: Uuid) -> Result { [INFO] [stderr] | ^^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 51 | pub async fn list_projects(&self) -> Result, ApiError> { [INFO] [stderr] | ^^^^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 57 | pub async fn update_project( [INFO] [stderr] | ^^^^^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 99 | pub async fn delete_project(&self, id: Uuid) -> Result<(), ApiError> { [INFO] [stderr] | ^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: fields `task_repository` and `project_repository` are never read [INFO] [stderr] --> src/services/task_service.rs:9:5 [INFO] [stderr] | [INFO] [stderr] 8 | pub struct TaskService { [INFO] [stderr] | ----------- fields in this struct [INFO] [stderr] 9 | task_repository: Arc, [INFO] [stderr] | ^^^^^^^^^^^^^^^ [INFO] [stderr] 10 | project_repository: Arc, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `TaskService` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis [INFO] [stderr] [INFO] [stderr] warning: multiple methods are never used [INFO] [stderr] --> src/services/task_service.rs:24:18 [INFO] [stderr] | [INFO] [stderr] 13 | impl TaskService { [INFO] [stderr] | ---------------- methods in this implementation [INFO] [stderr] ... [INFO] [stderr] 24 | pub async fn create_task(&self, create_data: TaskCreate) -> Result { [INFO] [stderr] | ^^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 61 | pub async fn get_task(&self, id: Uuid) -> Result { [INFO] [stderr] | ^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 68 | pub async fn list_tasks(&self) -> Result, ApiError> { [INFO] [stderr] | ^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 74 | pub async fn list_tasks_by_project(&self, project_id: Uuid) -> Result, ApiError> { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 86 | pub async fn update_task(&self, id: Uuid, update_data: TaskUpdate) -> Result { [INFO] [stderr] | ^^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 124 | pub async fn delete_task(&self, id: Uuid) -> Result<(), ApiError> { [INFO] [stderr] | ^^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 137 | pub async fn delete_tasks_by_project(&self, project_id: Uuid) -> Result { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: associated functions `success` and `error` are never used [INFO] [stderr] --> src/views/api_response.rs:26:12 [INFO] [stderr] | [INFO] [stderr] 25 | impl ApiResponse { [INFO] [stderr] | ---------------------- associated functions in this implementation [INFO] [stderr] 26 | pub fn success(data: T) -> Self { [INFO] [stderr] | ^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 34 | pub fn error(error: ErrorResponse) -> Self { [INFO] [stderr] | ^^^^^ [INFO] [stderr] [INFO] [stderr] warning: variants `NotFound`, `BadRequest`, `ValidationError`, `InternalServerError`, and `Conflict` are never constructed [INFO] [stderr] --> src/views/api_response.rs:46:5 [INFO] [stderr] | [INFO] [stderr] 44 | pub enum ApiError { [INFO] [stderr] | -------- variants in this enum [INFO] [stderr] 45 | #[error("Resource not found: {resource}")] [INFO] [stderr] 46 | NotFound { resource: String }, [INFO] [stderr] | ^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 49 | BadRequest { message: String }, [INFO] [stderr] | ^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 52 | ValidationError { message: String }, [INFO] [stderr] | ^^^^^^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 55 | InternalServerError, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 61 | Conflict { message: String }, [INFO] [stderr] | ^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `ApiError` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stderr] [INFO] [stderr] warning: associated functions `not_found`, `bad_request`, `validation_error`, `repository_error`, and `conflict` are never used [INFO] [stderr] --> src/views/api_response.rs:65:12 [INFO] [stderr] | [INFO] [stderr] 64 | impl ApiError { [INFO] [stderr] | ------------- associated functions in this implementation [INFO] [stderr] 65 | pub fn not_found(resource: &str) -> Self { [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 71 | pub fn bad_request(message: &str) -> Self { [INFO] [stderr] | ^^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 77 | pub fn validation_error(message: &str) -> Self { [INFO] [stderr] | ^^^^^^^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 83 | pub fn repository_error(message: &str) -> Self { [INFO] [stderr] | ^^^^^^^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 89 | pub fn conflict(message: &str) -> Self { [INFO] [stderr] | ^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: `rust-mvc-api` (bin "rust-mvc-api" test) generated 19 warnings (run `cargo fix --bin "rust-mvc-api" -p rust-mvc-api --tests` to apply 2 suggestions) [INFO] [stderr] Finished `test` profile [unoptimized + debuginfo] target(s) in 0.34s [INFO] [stderr] Running unittests src/main.rs (/opt/rustwide/target/debug/deps/rust_mvc_api-10e4c0e9b700607f) [INFO] [stdout] [INFO] [stdout] running 0 tests [INFO] [stdout] [INFO] [stdout] test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s [INFO] [stdout] [INFO] running `Command { std: "docker" "inspect" "fd1e8e624894c15c9afa5cb2973a0e4c09fae1cfb3444aaca2ba47a0042a3597", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "fd1e8e624894c15c9afa5cb2973a0e4c09fae1cfb3444aaca2ba47a0042a3597", kill_on_drop: false }` [INFO] [stdout] fd1e8e624894c15c9afa5cb2973a0e4c09fae1cfb3444aaca2ba47a0042a3597