[INFO] fetching crate gchdb 0.2.6... [INFO] testing gchdb-0.2.6 against beta-2022-04-10 for beta-1.61-1 [INFO] extracting crate gchdb 0.2.6 into /workspace/builds/worker-1/source [INFO] validating manifest of crates.io crate gchdb 0.2.6 on toolchain beta-2022-04-10 [INFO] running `Command { std: "/workspace/cargo-home/bin/cargo" "+beta-2022-04-10" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] started tweaking crates.io crate gchdb 0.2.6 [INFO] finished tweaking crates.io crate gchdb 0.2.6 [INFO] tweaked toml for crates.io crate gchdb 0.2.6 written to /workspace/builds/worker-1/source/Cargo.toml [INFO] running `Command { std: "/workspace/cargo-home/bin/cargo" "+beta-2022-04-10" "generate-lockfile" "--manifest-path" "Cargo.toml" "-Zno-index-update", kill_on_drop: false }` [INFO] running `Command { std: "/workspace/cargo-home/bin/cargo" "+beta-2022-04-10" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-1/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:eaef2f80f755933c374d2ae5edccceec0c1312ceb8a4e0b6404e8ab76561e1e5" "/opt/rustwide/cargo-home/bin/cargo" "+beta-2022-04-10" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stderr] WARNING: Your kernel does not support swap limit capabilities or the cgroup is not mounted. Memory limited without swap. [INFO] [stdout] bdb40508e88d4334cb5e2b7cf527edd46e117cd128f7a2e98cdfb00487519183 [INFO] running `Command { std: "docker" "start" "-a" "bdb40508e88d4334cb5e2b7cf527edd46e117cd128f7a2e98cdfb00487519183", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "bdb40508e88d4334cb5e2b7cf527edd46e117cd128f7a2e98cdfb00487519183", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "bdb40508e88d4334cb5e2b7cf527edd46e117cd128f7a2e98cdfb00487519183", kill_on_drop: false }` [INFO] [stdout] bdb40508e88d4334cb5e2b7cf527edd46e117cd128f7a2e98cdfb00487519183 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=warn" "-e" "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:eaef2f80f755933c374d2ae5edccceec0c1312ceb8a4e0b6404e8ab76561e1e5" "/opt/rustwide/cargo-home/bin/cargo" "+beta-2022-04-10" "build" "--frozen" "--message-format=json", kill_on_drop: false }` [INFO] [stderr] WARNING: Your kernel does not support swap limit capabilities or the cgroup is not mounted. Memory limited without swap. [INFO] [stdout] e4b2f173524f50b2ed30fb41535fe79f979589b5acacc4bb19e5bc4e5723e63e [INFO] running `Command { std: "docker" "start" "-a" "e4b2f173524f50b2ed30fb41535fe79f979589b5acacc4bb19e5bc4e5723e63e", kill_on_drop: false }` [INFO] [stderr] Compiling regex-syntax v0.4.2 [INFO] [stderr] Compiling levenshtein_automata v0.2.1 [INFO] [stderr] Compiling htmlescape v0.3.1 [INFO] [stderr] Compiling census v0.4.0 [INFO] [stderr] Compiling lz4-sys v1.9.3 [INFO] [stderr] Compiling cedarwood v0.4.5 [INFO] [stderr] Compiling murmurhash32 v0.2.0 [INFO] [stderr] Compiling libsqlite3-sys v0.18.0 [INFO] [stderr] Compiling phf v0.10.1 [INFO] [stderr] Compiling crossbeam-queue v0.3.5 [INFO] [stderr] Compiling combine v4.6.3 [INFO] [stderr] Compiling syn v1.0.91 [INFO] [stderr] Compiling ahash v0.7.6 [INFO] [stderr] Compiling bitpacking v0.8.4 [INFO] [stderr] Compiling block-buffer v0.9.0 [INFO] [stderr] Compiling scheduled-thread-pool v0.2.5 [INFO] [stderr] Compiling fail v0.4.0 [INFO] [stderr] Compiling phf_codegen v0.10.0 [INFO] [stderr] Compiling sha3 v0.9.1 [INFO] [stderr] Compiling r2d2 v0.8.9 [INFO] [stderr] Compiling crossbeam v0.8.1 [INFO] [stderr] Compiling hashbrown v0.11.2 [INFO] [stderr] Compiling jieba-rs v0.6.6 [INFO] [stderr] Compiling tantivy-fst v0.3.0 [INFO] [stderr] Compiling lru v0.6.6 [INFO] [stderr] Compiling serde_derive v1.0.136 [INFO] [stderr] Compiling futures-macro v0.3.21 [INFO] [stderr] Compiling diesel_derives v1.4.1 [INFO] [stderr] Compiling thiserror-impl v1.0.30 [INFO] [stderr] Compiling tantivy-query-grammar v0.14.0 [INFO] [stderr] Compiling futures-util v0.3.21 [INFO] [stderr] Compiling thiserror v1.0.30 [INFO] [stderr] Compiling serde v1.0.136 [INFO] [stderr] Compiling diesel v1.4.8 [INFO] [stderr] Compiling futures-executor v0.3.21 [INFO] [stderr] Compiling futures v0.3.21 [INFO] [stderr] Compiling lz4 v1.23.3 [INFO] [stderr] Compiling uuid v0.8.2 [INFO] [stderr] Compiling serde_json v1.0.79 [INFO] [stderr] Compiling rust-stemmers v1.2.0 [INFO] [stderr] Compiling tantivy v0.14.0 [INFO] [stderr] Compiling migrations_internals v1.4.1 [INFO] [stderr] Compiling migrations_macros v1.4.2 [INFO] [stderr] Compiling cang-jie v0.11.1 [INFO] [stderr] Compiling diesel_migrations v1.4.0 [INFO] [stderr] Compiling gchdb v0.2.6 (/opt/rustwide/workdir) [INFO] [stdout] error[E0532]: expected tuple struct or tuple variant, found function `Ok` [INFO] [stdout] --> src/adapter/sqlite/record.rs:22:9 [INFO] [stdout] | [INFO] [stdout] 22 | Ok(data) => Ok(RecordExistence::Exist(data)), [INFO] [stdout] | ^^ not a tuple struct or tuple variant [INFO] [stdout] | [INFO] [stdout] help: consider importing one of these items instead [INFO] [stdout] | [INFO] [stdout] 1 | use core::result::Result::Ok; [INFO] [stdout] | [INFO] [stdout] 1 | use serde::__private::Ok; [INFO] [stdout] | [INFO] [stdout] 1 | use std::result::Result::Ok; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `remove_blob` [INFO] [stdout] --> src/adapter/sqlite/mod.rs:7:35 [INFO] [stdout] | [INFO] [stdout] 7 | use blob::{get_blob, insert_blob, remove_blob}; [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0308]: mismatched types [INFO] [stdout] --> src/adapter/sqlite/attach.rs:5:5 [INFO] [stdout] | [INFO] [stdout] 3 | fn check_attach(conn: &SqliteConnection, attach: &Attachment) -> ChatRecordResult { [INFO] [stdout] | ---------------------- expected `Result` because of return type [INFO] [stdout] 4 | use schema::attachments::dsl::*; [INFO] [stdout] 5 | / Ok(select(exists(attachments.filter( [INFO] [stdout] 6 | | record_id.eq(&attach.record_id).and(name.eq(&attach.name)), [INFO] [stdout] 7 | | ))) [INFO] [stdout] 8 | | .get_result(conn) [INFO] [stdout] 9 | | .unwrap_or(false)) [INFO] [stdout] | |______________________^ expected enum `ChatRecordError`, found struct `anyhow::Error` [INFO] [stdout] | [INFO] [stdout] = note: expected enum `Result<_, ChatRecordError>` [INFO] [stdout] found enum `Result<_, anyhow::Error>` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0308]: mismatched types [INFO] [stdout] --> src/adapter/sqlite/attach.rs:14:5 [INFO] [stdout] | [INFO] [stdout] 12 | fn update_attach(conn: &SqliteConnection, attach: &Attachment) -> ChatRecordResult { [INFO] [stdout] | ----------------------- expected `Result` because of return type [INFO] [stdout] 13 | use schema::attachments::dsl::*; [INFO] [stdout] 14 | / Ok( [INFO] [stdout] 15 | | update(attachments.filter(record_id.eq(&attach.record_id).and(name.eq(&attach.name)))) [INFO] [stdout] 16 | | .set(hash.eq(&attach.hash)) [INFO] [stdout] 17 | | .execute(conn)?, [INFO] [stdout] 18 | | ) [INFO] [stdout] | |_____^ expected enum `ChatRecordError`, found struct `anyhow::Error` [INFO] [stdout] | [INFO] [stdout] = note: expected enum `Result<_, ChatRecordError>` [INFO] [stdout] found enum `Result<_, anyhow::Error>` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0308]: mismatched types [INFO] [stdout] --> src/adapter/sqlite/attach.rs:22:5 [INFO] [stdout] | [INFO] [stdout] 21 | fn insert_attach(conn: &SqliteConnection, attach: &Attachment) -> ChatRecordResult { [INFO] [stdout] | ----------------------- expected `Result` because of return type [INFO] [stdout] 22 | / Ok(insert_into(attachments::table) [INFO] [stdout] 23 | | .values(attach) [INFO] [stdout] 24 | | .execute(conn)?) [INFO] [stdout] | |________________________^ expected enum `ChatRecordError`, found struct `anyhow::Error` [INFO] [stdout] | [INFO] [stdout] = note: expected enum `Result<_, ChatRecordError>` [INFO] [stdout] found enum `Result<_, anyhow::Error>` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0308]: mismatched types [INFO] [stdout] --> src/adapter/sqlite/attach.rs:29:5 [INFO] [stdout] | [INFO] [stdout] 27 | fn remove_attach(conn: &SqliteConnection, attach: &Attachment) -> ChatRecordResult { [INFO] [stdout] | ----------------------- expected `Result` because of return type [INFO] [stdout] 28 | use schema::attachments::{dsl::*, table}; [INFO] [stdout] 29 | / Ok(delete(table) [INFO] [stdout] 30 | | .filter( [INFO] [stdout] 31 | | id.eq(attach.id) [INFO] [stdout] 32 | | .or(record_id.eq(&attach.record_id).and(name.eq(&attach.name))), [INFO] [stdout] 33 | | ) [INFO] [stdout] 34 | | .execute(conn)?) [INFO] [stdout] | |________________________^ expected enum `ChatRecordError`, found struct `anyhow::Error` [INFO] [stdout] | [INFO] [stdout] = note: expected enum `Result<_, ChatRecordError>` [INFO] [stdout] found enum `Result<_, anyhow::Error>` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0308]: mismatched types [INFO] [stdout] --> src/adapter/sqlite/attach.rs:39:5 [INFO] [stdout] | [INFO] [stdout] 37 | fn get_attachs(conn: &SqliteConnection, record_id: i32) -> ChatRecordResult> { [INFO] [stdout] | --------------------------------- expected `Result, ChatRecordError>` because of return type [INFO] [stdout] 38 | use schema::attachments::dsl; [INFO] [stdout] 39 | / Ok(dsl::attachments [INFO] [stdout] 40 | | .filter(dsl::record_id.eq(record_id)) [INFO] [stdout] 41 | | .load(conn)?) [INFO] [stdout] | |_____________________^ expected enum `ChatRecordError`, found struct `anyhow::Error` [INFO] [stdout] | [INFO] [stdout] = note: expected enum `Result, ChatRecordError>` [INFO] [stdout] found enum `Result, anyhow::Error>` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0308]: mismatched types [INFO] [stdout] --> src/adapter/sqlite/attach.rs:46:5 [INFO] [stdout] | [INFO] [stdout] 44 | pub fn remove_attachs(conn: &SqliteConnection, record_id: i32) -> ChatRecordResult { [INFO] [stdout] | ---------------------- expected `Result` because of return type [INFO] [stdout] 45 | let attachs = get_attachs(&conn, record_id)?; [INFO] [stdout] 46 | / Ok(attachs [INFO] [stdout] 47 | | .iter() [INFO] [stdout] 48 | | .filter(|attach| remove_attach(&conn, attach).unwrap_or(0) == 1) [INFO] [stdout] 49 | | .count() [INFO] [stdout] 50 | | == attachs.len()) [INFO] [stdout] | |_________________________^ expected enum `ChatRecordError`, found struct `anyhow::Error` [INFO] [stdout] | [INFO] [stdout] = note: expected enum `Result<_, ChatRecordError>` [INFO] [stdout] found enum `Result<_, anyhow::Error>` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0308]: mismatched types [INFO] [stdout] --> src/adapter/sqlite/attach.rs:57:5 [INFO] [stdout] | [INFO] [stdout] 56 | ) -> ChatRecordResult { [INFO] [stdout] | ---------------------- expected `Result` because of return type [INFO] [stdout] 57 | / Ok(if check_attach(&conn, &attach)? { [INFO] [stdout] 58 | | update_attach(conn, &attach) [INFO] [stdout] 59 | | } else { [INFO] [stdout] 60 | | insert_attach(conn, &attach) [INFO] [stdout] 61 | | }? == 1) [INFO] [stdout] | |____________^ expected enum `ChatRecordError`, found struct `anyhow::Error` [INFO] [stdout] | [INFO] [stdout] = note: expected enum `Result<_, ChatRecordError>` [INFO] [stdout] found enum `Result<_, anyhow::Error>` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0308]: mismatched types [INFO] [stdout] --> src/adapter/sqlite/attach.rs:72:9 [INFO] [stdout] | [INFO] [stdout] 69 | ) -> ChatRecordResult { [INFO] [stdout] | ---------------------- expected `Result` because of return type [INFO] [stdout] ... [INFO] [stdout] 72 | / Ok(insert_or_update_attach_inner( [INFO] [stdout] 73 | | &conn, [INFO] [stdout] 74 | | &Attachment::new(blob.hash, name, record_id), [INFO] [stdout] 75 | | )?) [INFO] [stdout] | |___________^ expected enum `ChatRecordError`, found struct `anyhow::Error` [INFO] [stdout] | [INFO] [stdout] = note: expected enum `Result<_, ChatRecordError>` [INFO] [stdout] found enum `Result<_, anyhow::Error>` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0308]: mismatched types [INFO] [stdout] --> src/adapter/sqlite/attach.rs:77:9 [INFO] [stdout] | [INFO] [stdout] 69 | ) -> ChatRecordResult { [INFO] [stdout] | ---------------------- expected `Result` because of return type [INFO] [stdout] ... [INFO] [stdout] 77 | Ok(false) [INFO] [stdout] | ^^^^^^^^^ expected enum `ChatRecordError`, found struct `anyhow::Error` [INFO] [stdout] | [INFO] [stdout] = note: expected enum `Result<_, ChatRecordError>` [INFO] [stdout] found enum `Result<_, anyhow::Error>` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0308]: mismatched types [INFO] [stdout] --> src/adapter/sqlite/blob.rs:5:5 [INFO] [stdout] | [INFO] [stdout] 3 | fn check_blob(conn: &SqliteConnection, hash: i64) -> ChatRecordResult { [INFO] [stdout] | ---------------------- expected `Result` because of return type [INFO] [stdout] 4 | use schema::blobs::dsl; [INFO] [stdout] 5 | / Ok(select(exists(dsl::blobs.filter(dsl::hash.eq(hash)))) [INFO] [stdout] 6 | | .get_result(conn) [INFO] [stdout] 7 | | .unwrap_or(false)) [INFO] [stdout] | |__________________________^ expected enum `ChatRecordError`, found struct `anyhow::Error` [INFO] [stdout] | [INFO] [stdout] = note: expected enum `Result<_, ChatRecordError>` [INFO] [stdout] found enum `Result<_, anyhow::Error>` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0308]: mismatched types [INFO] [stdout] --> src/adapter/sqlite/blob.rs:11:5 [INFO] [stdout] | [INFO] [stdout] 10 | fn insert_blob_inner(conn: &SqliteConnection, blob: &Blob) -> ChatRecordResult { [INFO] [stdout] | ----------------------- expected `Result` because of return type [INFO] [stdout] 11 | Ok(insert_into(blobs::table).values(blob).execute(conn)?) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ expected enum `ChatRecordError`, found struct `anyhow::Error` [INFO] [stdout] | [INFO] [stdout] = note: expected enum `Result<_, ChatRecordError>` [INFO] [stdout] found enum `Result<_, anyhow::Error>` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0308]: mismatched types [INFO] [stdout] --> src/adapter/sqlite/blob.rs:15:5 [INFO] [stdout] | [INFO] [stdout] 14 | pub fn insert_blob(conn: &SqliteConnection, blob: &Blob) -> ChatRecordResult { [INFO] [stdout] | ---------------------- expected `Result` because of return type [INFO] [stdout] 15 | / Ok(if check_blob(&conn, blob.hash)? { [INFO] [stdout] 16 | | true [INFO] [stdout] 17 | | } else { [INFO] [stdout] 18 | | insert_blob_inner(conn, &blob)? == 1 [INFO] [stdout] 19 | | }) [INFO] [stdout] | |______^ expected enum `ChatRecordError`, found struct `anyhow::Error` [INFO] [stdout] | [INFO] [stdout] = note: expected enum `Result<_, ChatRecordError>` [INFO] [stdout] found enum `Result<_, anyhow::Error>` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0308]: mismatched types [INFO] [stdout] --> src/adapter/sqlite/blob.rs:24:5 [INFO] [stdout] | [INFO] [stdout] 22 | pub fn get_blob(conn: &SqliteConnection, blob_hash: i64) -> ChatRecordResult> { [INFO] [stdout] | ------------------------- expected `Result, ChatRecordError>` because of return type [INFO] [stdout] 23 | use schema::blobs::dsl::*; [INFO] [stdout] 24 | / Ok(blobs [INFO] [stdout] 25 | | .filter(hash.eq(blob_hash)) [INFO] [stdout] 26 | | .select(blob) [INFO] [stdout] 27 | | .get_result::>(conn)?) [INFO] [stdout] | |______________________________________^ expected enum `ChatRecordError`, found struct `anyhow::Error` [INFO] [stdout] | [INFO] [stdout] = note: expected enum `Result<_, ChatRecordError>` [INFO] [stdout] found enum `Result<_, anyhow::Error>` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0308]: mismatched types [INFO] [stdout] --> src/adapter/sqlite/blob.rs:32:5 [INFO] [stdout] | [INFO] [stdout] 30 | pub fn remove_blob(conn: &SqliteConnection, hash: i64) -> ChatRecordResult { [INFO] [stdout] | ----------------------- expected `Result` because of return type [INFO] [stdout] 31 | use schema::blobs::{dsl, table}; [INFO] [stdout] 32 | Ok(delete(table).filter(dsl::hash.eq(hash)).execute(conn)?) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ expected enum `ChatRecordError`, found struct `anyhow::Error` [INFO] [stdout] | [INFO] [stdout] = note: expected enum `Result<_, ChatRecordError>` [INFO] [stdout] found enum `Result<_, anyhow::Error>` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0308]: mismatched types [INFO] [stdout] --> src/adapter/sqlite/record.rs:22:21 [INFO] [stdout] | [INFO] [stdout] 8 | fn check_record(conn: &SqliteConnection, record: &Record) -> ChatRecordResult { [INFO] [stdout] | --------------------------------- expected `Result` because of return type [INFO] [stdout] ... [INFO] [stdout] 22 | Ok(data) => Ok(RecordExistence::Exist(data)), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ expected enum `ChatRecordError`, found struct `anyhow::Error` [INFO] [stdout] | [INFO] [stdout] = note: expected enum `Result<_, ChatRecordError>` [INFO] [stdout] found enum `Result<_, anyhow::Error>` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0308]: mismatched types [INFO] [stdout] --> src/adapter/sqlite/record.rs:30:5 [INFO] [stdout] | [INFO] [stdout] 28 | fn update_record(conn: &SqliteConnection, record: &Record) -> ChatRecordResult { [INFO] [stdout] | ----------------------- expected `Result` because of return type [INFO] [stdout] 29 | use schema::records::dsl::*; [INFO] [stdout] 30 | / Ok(update( [INFO] [stdout] 31 | | records.filter( [INFO] [stdout] 32 | | id.eq(record.id).or(chat_type [INFO] [stdout] 33 | | .eq(&record.chat_type) [INFO] [stdout] ... | [INFO] [stdout] 44 | | )) [INFO] [stdout] 45 | | .execute(conn)?) [INFO] [stdout] | |____________________^ expected enum `ChatRecordError`, found struct `anyhow::Error` [INFO] [stdout] | [INFO] [stdout] = note: expected enum `Result<_, ChatRecordError>` [INFO] [stdout] found enum `Result<_, anyhow::Error>` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0308]: mismatched types [INFO] [stdout] --> src/adapter/sqlite/record.rs:49:5 [INFO] [stdout] | [INFO] [stdout] 48 | fn insert_record(conn: &SqliteConnection, record: &Record) -> ChatRecordResult { [INFO] [stdout] | ----------------------- expected `Result` because of return type [INFO] [stdout] 49 | Ok(insert_into(records::table).values(record).execute(conn)?) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ expected enum `ChatRecordError`, found struct `anyhow::Error` [INFO] [stdout] | [INFO] [stdout] = note: expected enum `Result<_, ChatRecordError>` [INFO] [stdout] found enum `Result<_, anyhow::Error>` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0308]: mismatched types [INFO] [stdout] --> src/adapter/sqlite/record.rs:59:5 [INFO] [stdout] | [INFO] [stdout] 58 | ) -> ChatRecordResult { [INFO] [stdout] | ---------------------- expected `Result` because of return type [INFO] [stdout] 59 | / Ok( [INFO] [stdout] 60 | | if let RecordExistence::Exist(old_metadata) = check_record(&conn, &record)? { [INFO] [stdout] 61 | | let mut record = record.clone(); [INFO] [stdout] 62 | | if let Some(metadata) = record.metadata { [INFO] [stdout] ... | [INFO] [stdout] 74 | | }? == 1, [INFO] [stdout] 75 | | ) [INFO] [stdout] | |_____^ expected enum `ChatRecordError`, found struct `anyhow::Error` [INFO] [stdout] | [INFO] [stdout] = note: expected enum `Result<_, ChatRecordError>` [INFO] [stdout] found enum `Result<_, anyhow::Error>` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0308]: mismatched types [INFO] [stdout] --> src/adapter/sqlite/record.rs:80:5 [INFO] [stdout] | [INFO] [stdout] 78 | pub fn remove_record(conn: &SqliteConnection, record: &Record) -> ChatRecordResult { [INFO] [stdout] | ----------------------- expected `Result` because of return type [INFO] [stdout] 79 | use schema::records::{dsl::*, table}; [INFO] [stdout] 80 | / Ok(delete(table) [INFO] [stdout] 81 | | .filter( [INFO] [stdout] 82 | | id.eq(record.id).or(chat_type [INFO] [stdout] 83 | | .eq(&record.chat_type) [INFO] [stdout] ... | [INFO] [stdout] 87 | | ) [INFO] [stdout] 88 | | .execute(conn)?) [INFO] [stdout] | |________________________^ expected enum `ChatRecordError`, found struct `anyhow::Error` [INFO] [stdout] | [INFO] [stdout] = note: expected enum `Result<_, ChatRecordError>` [INFO] [stdout] found enum `Result<_, anyhow::Error>` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0308]: mismatched types [INFO] [stdout] --> src/adapter/sqlite/record.rs:92:5 [INFO] [stdout] | [INFO] [stdout] 91 | pub fn remove_record_by_id(conn: &SqliteConnection, id: i32) -> ChatRecordResult { [INFO] [stdout] | ----------------------- expected `Result` because of return type [INFO] [stdout] 92 | / Ok(delete(records::table) [INFO] [stdout] 93 | | .filter(records::id.eq(Some(id))) [INFO] [stdout] 94 | | .execute(conn)?) [INFO] [stdout] | |________________________^ expected enum `ChatRecordError`, found struct `anyhow::Error` [INFO] [stdout] | [INFO] [stdout] = note: expected enum `Result<_, ChatRecordError>` [INFO] [stdout] found enum `Result<_, anyhow::Error>` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0308]: mismatched types [INFO] [stdout] --> src/adapter/sqlite/record.rs:99:5 [INFO] [stdout] | [INFO] [stdout] 97 | pub fn get_record_id(conn: &SqliteConnection, record: &Record) -> ChatRecordResult { [INFO] [stdout] | --------------------- expected `Result` because of return type [INFO] [stdout] 98 | use schema::records::dsl::*; [INFO] [stdout] 99 | / Ok(records [INFO] [stdout] 100 | | .filter( [INFO] [stdout] 101 | | id.eq(record.id).or(chat_type [INFO] [stdout] 102 | | .eq(&record.chat_type) [INFO] [stdout] ... | [INFO] [stdout] 108 | | .get_result::>(conn)? [INFO] [stdout] 109 | | .unwrap_or(0)) [INFO] [stdout] | |______________________^ expected enum `ChatRecordError`, found struct `anyhow::Error` [INFO] [stdout] | [INFO] [stdout] = note: expected enum `Result<_, ChatRecordError>` [INFO] [stdout] found enum `Result<_, anyhow::Error>` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0308]: mismatched types [INFO] [stdout] --> src/adapter/sqlite/mod.rs:46:9 [INFO] [stdout] | [INFO] [stdout] 29 | pub fn new>(db_name: P) -> ChatRecordResult { [INFO] [stdout] | ---------------------- expected `Result` because of return type [INFO] [stdout] ... [INFO] [stdout] 46 | Ok(recoder) [INFO] [stdout] | ^^^^^^^^^^^ expected enum `ChatRecordError`, found struct `anyhow::Error` [INFO] [stdout] | [INFO] [stdout] = note: expected enum `Result<_, ChatRecordError>` [INFO] [stdout] found enum `Result<_, anyhow::Error>` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0308]: mismatched types [INFO] [stdout] --> src/adapter/sqlite/mod.rs:52:9 [INFO] [stdout] | [INFO] [stdout] 49 | pub fn refresh_index(&mut self) -> ChatRecordResult<()> { [INFO] [stdout] | -------------------- expected `Result<(), ChatRecordError>` because of return type [INFO] [stdout] ... [INFO] [stdout] 52 | Ok(()) [INFO] [stdout] | ^^^^^^ expected enum `ChatRecordError`, found struct `anyhow::Error` [INFO] [stdout] | [INFO] [stdout] = note: expected enum `Result<_, ChatRecordError>` [INFO] [stdout] found enum `Result<_, anyhow::Error>` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0308]: mismatched types [INFO] [stdout] --> src/adapter/sqlite/mod.rs:57:9 [INFO] [stdout] | [INFO] [stdout] 55 | fn record_all(&self) -> ChatRecordResult> { [INFO] [stdout] | ----------------------------- expected `Result, ChatRecordError>` because of return type [INFO] [stdout] 56 | use schema::records::dsl::*; [INFO] [stdout] 57 | Ok(records.load::(&self.conn.get()?)?) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ expected enum `ChatRecordError`, found struct `anyhow::Error` [INFO] [stdout] | [INFO] [stdout] = note: expected enum `Result<_, ChatRecordError>` [INFO] [stdout] found enum `Result<_, anyhow::Error>` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0308]: mismatched types [INFO] [stdout] --> src/adapter/sqlite/mod.rs:67:9 [INFO] [stdout] | [INFO] [stdout] 60 | fn record_query(&self, query: Query) -> ChatRecordResult> { [INFO] [stdout] | ----------------------------- expected `Result, ChatRecordError>` because of return type [INFO] [stdout] ... [INFO] [stdout] 67 | / Ok(if let Some(keyword) = &query.keyword { [INFO] [stdout] 68 | | default_query [INFO] [stdout] 69 | | .filter(id.eq_any(self.indexer.search( [INFO] [stdout] 70 | | query.get_offset(), [INFO] [stdout] ... | [INFO] [stdout] 87 | | .load::(&self.conn.get()?)? [INFO] [stdout] 88 | | }) [INFO] [stdout] | |__________^ expected enum `ChatRecordError`, found struct `anyhow::Error` [INFO] [stdout] | [INFO] [stdout] = note: expected enum `Result<_, ChatRecordError>` [INFO] [stdout] found enum `Result<_, anyhow::Error>` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0308]: mismatched types [INFO] [stdout] --> src/adapter/sqlite/mod.rs:98:9 [INFO] [stdout] | [INFO] [stdout] 96 | ) -> ChatRecordResult { [INFO] [stdout] | ---------------------- expected `Result` because of return type [INFO] [stdout] 97 | let conn = self.conn.get()?; [INFO] [stdout] 98 | / Ok( [INFO] [stdout] 99 | | insert_or_update_record(&conn, self, record, &attachs, merger)? && { [INFO] [stdout] 100 | | let mut len = 0; [INFO] [stdout] 101 | | let record_id = get_record_id(&conn, &record)?; [INFO] [stdout] ... | [INFO] [stdout] 111 | | } == attachs.len(), [INFO] [stdout] 112 | | ) [INFO] [stdout] | |_________^ expected enum `ChatRecordError`, found struct `anyhow::Error` [INFO] [stdout] | [INFO] [stdout] = note: expected enum `Result<_, ChatRecordError>` [INFO] [stdout] found enum `Result<_, anyhow::Error>` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0308]: mismatched types [INFO] [stdout] --> src/adapter/sqlite/mod.rs:140:9 [INFO] [stdout] | [INFO] [stdout] 135 | ) -> ChatRecordResult [INFO] [stdout] | ---------------------- expected `Result` because of return type [INFO] [stdout] ... [INFO] [stdout] 140 | / Ok(match record.into() { [INFO] [stdout] 141 | | RecordType::Id(_) => false, [INFO] [stdout] 142 | | RecordType::Record(record) => { [INFO] [stdout] 143 | | self.record_auto_insert(&record, Default::default(), merger)? [INFO] [stdout] ... | [INFO] [stdout] 153 | | } [INFO] [stdout] 154 | | }) [INFO] [stdout] | |__________^ expected enum `ChatRecordError`, found struct `anyhow::Error` [INFO] [stdout] | [INFO] [stdout] = note: expected enum `Result<_, ChatRecordError>` [INFO] [stdout] found enum `Result<_, anyhow::Error>` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0308]: mismatched types [INFO] [stdout] --> src/adapter/sqlite/mod.rs:159:9 [INFO] [stdout] | [INFO] [stdout] 157 | fn remove_record>>(&mut self, record: R) -> ChatRecordResult { [INFO] [stdout] | ---------------------- expected `Result` because of return type [INFO] [stdout] 158 | let conn = self.conn.get()?; [INFO] [stdout] 159 | / Ok(match record.into() { [INFO] [stdout] 160 | | RecordType::Id(id) => remove_record_by_id(&conn, id)? == 1, [INFO] [stdout] 161 | | RecordType::Record(record) | RecordType::RecordWithAttachs { record, .. } => { [INFO] [stdout] 162 | | remove_record(&conn, &record)? == 1 && remove_attachs(&conn, record.get_id())? [INFO] [stdout] ... | [INFO] [stdout] 166 | | } [INFO] [stdout] 167 | | }) [INFO] [stdout] | |__________^ expected enum `ChatRecordError`, found struct `anyhow::Error` [INFO] [stdout] | [INFO] [stdout] = note: expected enum `Result<_, ChatRecordError>` [INFO] [stdout] found enum `Result<_, anyhow::Error>` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: aborting due to 29 previous errors; 1 warning emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] Some errors have detailed explanations: E0308, E0532. [INFO] [stdout] [INFO] [stdout] For more information about an error, try `rustc --explain E0308`. [INFO] [stdout] [INFO] [stderr] error: could not compile `gchdb` due to 30 previous errors; 1 warning emitted [INFO] running `Command { std: "docker" "inspect" "e4b2f173524f50b2ed30fb41535fe79f979589b5acacc4bb19e5bc4e5723e63e", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "e4b2f173524f50b2ed30fb41535fe79f979589b5acacc4bb19e5bc4e5723e63e", kill_on_drop: false }` [INFO] [stdout] e4b2f173524f50b2ed30fb41535fe79f979589b5acacc4bb19e5bc4e5723e63e