[INFO] fetching crate crudly 0.6.0...
[INFO] testing crudly-0.6.0 against 1.100.0-beta.1+cargoflags=--release for beta-release-1.100-2
[INFO] extracting crate crudly 0.6.0 into /workspace/builds/worker-1-tc2/source
[INFO] started tweaking crates.io crate crudly 0.6.0
[INFO] removed 0 missing examples
[INFO] removed 0 missing tests
[INFO] finished tweaking crates.io crate crudly 0.6.0
[INFO] tweaked toml for crates.io crate crudly 0.6.0 written to /workspace/builds/worker-1-tc2/source/Cargo.toml
[INFO] validating manifest of crates.io crate crudly 0.6.0 on toolchain 1.100.0-beta.1
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+1.100.0-beta.1" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate crates.io crate crudly 0.6.0 already has a lockfile, it will not be regenerated
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+1.100.0-beta.1" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-m" "1610612736" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:77db811e55d90add9212f6832c23229e3de5f1c1f9905e8cb07319ea15df73ac" "sleep" "infinity", kill_on_drop: false }`
[INFO] [stdout] 0adf385b2edeb9a4ec6524b43758bcd0614e1037f4a4665deb47fef7a5d73380
[INFO] running `Command { std: "docker" "start" "0adf385b2edeb9a4ec6524b43758bcd0614e1037f4a4665deb47fef7a5d73380", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "0adf385b2edeb9a4ec6524b43758bcd0614e1037f4a4665deb47fef7a5d73380", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "exec" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-w" "/opt/rustwide/workdir" "--user" "0:0" "0adf385b2edeb9a4ec6524b43758bcd0614e1037f4a4665deb47fef7a5d73380" "/opt/rustwide/cargo-home/bin/cargo" "+1.100.0-beta.1" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "0adf385b2edeb9a4ec6524b43758bcd0614e1037f4a4665deb47fef7a5d73380", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "exec" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=warn" "-e" "RUSTDOCFLAGS=--cap-lints=warn" "-w" "/opt/rustwide/workdir" "--user" "0:0" "0adf385b2edeb9a4ec6524b43758bcd0614e1037f4a4665deb47fef7a5d73380" "/opt/rustwide/cargo-home/bin/cargo" "+1.100.0-beta.1" "build" "--frozen" "--message-format=json" "--release", kill_on_drop: false }`
[INFO] [stderr]    Compiling crossbeam-utils v0.8.21
[INFO] [stderr]    Compiling zerovec-derive v0.11.3
[INFO] [stderr]    Compiling displaydoc v0.2.6
[INFO] [stderr]    Compiling parking_lot_core v0.9.12
[INFO] [stderr]    Compiling crypto-common v0.1.7
[INFO] [stderr]    Compiling zerofrom-derive v0.1.7
[INFO] [stderr]    Compiling yoke-derive v0.8.2
[INFO] [stderr]    Compiling thiserror-impl v2.0.18
[INFO] [stderr]    Compiling digest v0.10.7
[INFO] [stderr]    Compiling futures-sink v0.3.32
[INFO] [stderr]    Compiling parking_lot v0.12.5
[INFO] [stderr]    Compiling memchr v2.8.2
[INFO] [stderr]    Compiling concurrent-queue v2.5.0
[INFO] [stderr]    Compiling log v0.4.32
[INFO] [stderr]    Compiling event-listener v5.4.1
[INFO] [stderr]    Compiling tracing v0.1.44
[INFO] [stderr]    Compiling futures-util v0.3.32
[INFO] [stderr]    Compiling sha2 v0.10.9
[INFO] [stderr]    Compiling crossbeam-queue v0.3.12
[INFO] [stderr]    Compiling futures-intrusive v0.5.0
[INFO] [stderr]    Compiling thiserror v2.0.18
[INFO] [stderr]    Compiling zerofrom v0.1.8
[INFO] [stderr]    Compiling hashlink v0.11.1
[INFO] [stderr]    Compiling either v1.16.0
[INFO] [stderr]    Compiling yoke v0.8.3
[INFO] [stderr]    Compiling crudly-macros v0.6.0
[INFO] [stderr]    Compiling zerovec v0.11.6
[INFO] [stderr]    Compiling zerotrie v0.2.4
[INFO] [stderr]    Compiling tinystr v0.8.3
[INFO] [stderr]    Compiling potential_utf v0.1.5
[INFO] [stderr]    Compiling icu_collections v2.1.1
[INFO] [stderr]    Compiling icu_locale_core v2.1.1
[INFO] [stderr]    Compiling icu_provider v2.1.1
[INFO] [stderr]    Compiling icu_properties v2.1.2
[INFO] [stderr]    Compiling icu_normalizer v2.1.1
[INFO] [stderr]    Compiling idna_adapter v1.2.1
[INFO] [stderr]    Compiling idna v1.1.0
[INFO] [stderr]    Compiling url v2.5.8
[INFO] [stderr]    Compiling sqlx-core v0.9.0
[INFO] [stderr]    Compiling sqlx v0.9.0
[INFO] [stderr]    Compiling crudly v0.6.0 (/opt/rustwide/workdir)
[INFO] [stderr]     Finished `release` profile [optimized] target(s) in 35.40s
[INFO] running `Command { std: "docker" "inspect" "0adf385b2edeb9a4ec6524b43758bcd0614e1037f4a4665deb47fef7a5d73380", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "exec" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=warn" "-e" "RUSTDOCFLAGS=--cap-lints=warn" "-w" "/opt/rustwide/workdir" "--user" "0:0" "0adf385b2edeb9a4ec6524b43758bcd0614e1037f4a4665deb47fef7a5d73380" "/opt/rustwide/cargo-home/bin/cargo" "+1.100.0-beta.1" "test" "--frozen" "--no-run" "--message-format=json" "--release", kill_on_drop: false }`
[INFO] [stderr]    Compiling smallvec v1.15.2
[INFO] [stderr]    Compiling num-traits v0.2.19
[INFO] [stderr]    Compiling zerofrom v0.1.8
[INFO] [stderr]    Compiling cc v1.2.64
[INFO] [stderr]    Compiling serde_json v1.0.150
[INFO] [stderr]    Compiling typenum v1.20.1
[INFO] [stderr]    Compiling memchr v2.8.2
[INFO] [stderr]    Compiling serde_core v1.0.228
[INFO] [stderr]    Compiling foldhash v0.2.0
[INFO] [stderr]    Compiling yoke v0.8.3
[INFO] [stderr]    Compiling form_urlencoded v1.2.2
[INFO] [stderr]    Compiling parking_lot_core v0.9.12
[INFO] [stderr]    Compiling hashbrown v0.16.1
[INFO] [stderr]    Compiling tokio v1.52.3
[INFO] [stderr]    Compiling zerovec v0.11.6
[INFO] [stderr]    Compiling zerotrie v0.2.4
[INFO] [stderr]    Compiling futures-util v0.3.32
[INFO] [stderr]    Compiling parking_lot v0.12.5
[INFO] [stderr]    Compiling serde v1.0.228
[INFO] [stderr]    Compiling generic-array v0.14.7
[INFO] [stderr]    Compiling tinystr v0.8.3
[INFO] [stderr]    Compiling potential_utf v0.1.5
[INFO] [stderr]    Compiling icu_collections v2.1.1
[INFO] [stderr]    Compiling icu_locale_core v2.1.1
[INFO] [stderr]    Compiling thiserror v2.0.18
[INFO] [stderr]    Compiling crypto-common v0.1.7
[INFO] [stderr]    Compiling block-buffer v0.10.4
[INFO] [stderr]    Compiling crc-catalog v2.5.0
[INFO] [stderr]    Compiling digest v0.10.7
[INFO] [stderr]    Compiling log v0.4.32
[INFO] [stderr]    Compiling libsqlite3-sys v0.30.1
[INFO] [stderr]    Compiling tracing v0.1.44
[INFO] [stderr]    Compiling sha2 v0.10.9
[INFO] [stderr]    Compiling indexmap v2.14.0
[INFO] [stderr]    Compiling icu_provider v2.1.1
[INFO] [stderr]    Compiling crc v3.4.0
[INFO] [stderr]    Compiling icu_properties v2.1.2
[INFO] [stderr]    Compiling icu_normalizer v2.1.1
[INFO] [stderr]    Compiling either v1.16.0
[INFO] [stderr]    Compiling futures-intrusive v0.5.0
[INFO] [stderr]    Compiling hashlink v0.11.1
[INFO] [stderr]    Compiling spin v0.9.8
[INFO] [stderr]    Compiling mio v1.2.1
[INFO] [stderr]    Compiling socket2 v0.6.4
[INFO] [stderr]    Compiling tokio-macros v2.7.0
[INFO] [stderr]    Compiling idna_adapter v1.2.1
[INFO] [stderr]    Compiling idna v1.1.0
[INFO] [stderr]    Compiling base64 v0.22.1
[INFO] [stderr]    Compiling futures-executor v0.3.32
[INFO] [stderr]    Compiling url v2.5.8
[INFO] [stderr]    Compiling atoi v2.0.0
[INFO] [stderr]    Compiling flume v0.12.0
[INFO] [stderr]    Compiling tokio-stream v0.1.18
[INFO] [stderr]    Compiling sqlx-core v0.9.0
[INFO] [stderr]    Compiling futures-channel v0.3.32
[INFO] [stderr]    Compiling sqlx-sqlite v0.9.0
[INFO] [stderr]    Compiling sqlx-macros-core v0.9.0
[INFO] [stderr]    Compiling sqlx-macros v0.9.0
[INFO] [stderr]    Compiling sqlx v0.9.0
[INFO] [stderr]    Compiling crudly v0.6.0 (/opt/rustwide/workdir)
[INFO] [stdout] error: `json` field attribute requires the `json` feature on `crudly`
[INFO] [stdout]    --> tests/into_row.rs:147:9
[INFO] [stdout]     |
[INFO] [stdout] 147 |         #[sqlx(json)]
[INFO] [stdout]     |         ^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: `json` field attribute requires the `json` feature on `crudly`
[INFO] [stdout]    --> tests/into_row.rs:164:5
[INFO] [stdout]     |
[INFO] [stdout] 164 |     #[crudly(json(nullable))]
[INFO] [stdout]     |     ^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no associated function or constant named `select_all` found for struct `User` in the current scope
[INFO] [stdout]   --> tests/no_into_row.rs:25:21
[INFO] [stdout]    |
[INFO] [stdout]  9 | pub struct User {
[INFO] [stdout]    | --------------- associated function or constant `select_all` not found for this struct
[INFO] [stdout] ...
[INFO] [stdout] 25 |     let all = User::select_all(&pool).await.unwrap();
[INFO] [stdout]    |                     ^^^^^^^^^^ associated function or constant not found in `User`
[INFO] [stdout]    |
[INFO] [stdout]    = help: items from traits can only be used if the trait is implemented and in scope
[INFO] [stdout]    = note: the following traits define an item `select_all`, perhaps you need to implement one of them:
[INFO] [stdout]            candidate #1: `SelectAll`
[INFO] [stdout]            candidate #2: `SelectAllNoId`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `insert` found for struct `User` in the current scope
[INFO] [stdout]   --> examples/basic.rs:29:28
[INFO] [stdout]    |
[INFO] [stdout] 10 | struct User {
[INFO] [stdout]    | ----------- method `insert` not found for this struct
[INFO] [stdout] ...
[INFO] [stdout] 29 |     let inserted_id = user.insert(&pool).await.unwrap();
[INFO] [stdout]    |                            ^^^^^^ method not found in `User`
[INFO] [stdout]    |
[INFO] [stdout]    = help: items from traits can only be used if the trait is implemented and in scope
[INFO] [stdout]    = note: the following traits define an item `insert`, perhaps you need to implement one of them:
[INFO] [stdout]            candidate #1: `InsertNoId`
[INFO] [stdout]            candidate #2: `InsertWithoutId`
[INFO] [stdout]            candidate #3: `crudly::Insert`
[INFO] [stdout] help: one of the expressions' fields has a method of the same name
[INFO] [stdout]    |
[INFO] [stdout] 29 |     let inserted_id = user.name.insert(&pool).await.unwrap();
[INFO] [stdout]    |                            +++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no associated function or constant named `select_by_id` found for struct `User` in the current scope
[INFO] [stdout]   --> tests/no_into_row.rs:28:23
[INFO] [stdout]    |
[INFO] [stdout]  9 | pub struct User {
[INFO] [stdout]    | --------------- associated function or constant `select_by_id` not found for this struct
[INFO] [stdout] ...
[INFO] [stdout] 28 |     let by_id = User::select_by_id(&1, &pool).await.unwrap();
[INFO] [stdout]    |                       ^^^^^^^^^^^^ associated function or constant not found in `User`
[INFO] [stdout]    |
[INFO] [stdout]    = help: items from traits can only be used if the trait is implemented and in scope
[INFO] [stdout]    = note: the following trait defines an item `select_by_id`, perhaps you need to implement it:
[INFO] [stdout]            candidate #1: `SelectById`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no associated function or constant named `select_all` found for struct `User` in the current scope
[INFO] [stdout]   --> examples/basic.rs:34:38
[INFO] [stdout]    |
[INFO] [stdout] 10 | struct User {
[INFO] [stdout]    | ----------- associated function or constant `select_all` not found for this struct
[INFO] [stdout] ...
[INFO] [stdout] 34 |     let mut users: Vec<User> = User::select_all(&pool).await.unwrap();
[INFO] [stdout]    |                                      ^^^^^^^^^^ associated function or constant not found in `User`
[INFO] [stdout]    |
[INFO] [stdout]    = help: items from traits can only be used if the trait is implemented and in scope
[INFO] [stdout]    = note: the following traits define an item `select_all`, perhaps you need to implement one of them:
[INFO] [stdout]            candidate #1: `SelectAll`
[INFO] [stdout]            candidate #2: `SelectAllNoId`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no associated function or constant named `select_by_ids` found for struct `User` in the current scope
[INFO] [stdout]   --> tests/no_into_row.rs:31:24
[INFO] [stdout]    |
[INFO] [stdout]  9 | pub struct User {
[INFO] [stdout]    | --------------- associated function or constant `select_by_ids` not found for this struct
[INFO] [stdout] ...
[INFO] [stdout] 31 |     let by_ids = User::select_by_ids(vec![1], 0, &pool).await.unwrap();
[INFO] [stdout]    |                        ^^^^^^^^^^^^^ associated function or constant not found in `User`
[INFO] [stdout]    |
[INFO] [stdout]    = help: items from traits can only be used if the trait is implemented and in scope
[INFO] [stdout]    = note: the following trait defines an item `select_by_ids`, perhaps you need to implement it:
[INFO] [stdout]            candidate #1: `SelectByIds`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no associated function or constant named `select_all` found for struct `TinyRow` in the current scope
[INFO] [stdout]   --> tests/crudly.rs:73:24
[INFO] [stdout]    |
[INFO] [stdout] 65 |     struct TinyRow {
[INFO] [stdout]    |     -------------- associated function or constant `select_all` not found for this struct
[INFO] [stdout] ...
[INFO] [stdout] 73 |     let all = TinyRow::select_all(&pool).await.unwrap();
[INFO] [stdout]    |                        ^^^^^^^^^^ associated function or constant not found in `TinyRow`
[INFO] [stdout]    |
[INFO] [stdout]    = help: items from traits can only be used if the trait is implemented and in scope
[INFO] [stdout]    = note: the following traits define an item `select_all`, perhaps you need to implement one of them:
[INFO] [stdout]            candidate #1: `SelectAll`
[INFO] [stdout]            candidate #2: `SelectAllNoId`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no associated function or constant named `select_by_id` found for struct `User` in the current scope
[INFO] [stdout]   --> examples/basic.rs:49:30
[INFO] [stdout]    |
[INFO] [stdout] 10 | struct User {
[INFO] [stdout]    | ----------- associated function or constant `select_by_id` not found for this struct
[INFO] [stdout] ...
[INFO] [stdout] 49 |     let updated_user = User::select_by_id(&1, &pool).await.unwrap().unwrap();
[INFO] [stdout]    |                              ^^^^^^^^^^^^ associated function or constant not found in `User`
[INFO] [stdout]    |
[INFO] [stdout]    = help: items from traits can only be used if the trait is implemented and in scope
[INFO] [stdout]    = note: the following trait defines an item `select_by_id`, perhaps you need to implement it:
[INFO] [stdout]            candidate #1: `SelectById`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no associated function or constant named `delete_by_id` found for struct `User` in the current scope
[INFO] [stdout]   --> examples/basic.rs:54:25
[INFO] [stdout]    |
[INFO] [stdout] 10 | struct User {
[INFO] [stdout]    | ----------- associated function or constant `delete_by_id` not found for this struct
[INFO] [stdout] ...
[INFO] [stdout] 54 |     let deleted = User::delete_by_id(&1, &pool).await.unwrap();
[INFO] [stdout]    |                         ^^^^^^^^^^^^ associated function or constant not found in `User`
[INFO] [stdout]    |
[INFO] [stdout]    = help: items from traits can only be used if the trait is implemented and in scope
[INFO] [stdout]    = note: the following trait defines an item `delete_by_id`, perhaps you need to implement it:
[INFO] [stdout]            candidate #1: `DeleteById`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no associated function or constant named `select_all` found for struct `User` in the current scope
[INFO] [stdout]   --> examples/basic.rs:57:34
[INFO] [stdout]    |
[INFO] [stdout] 10 | struct User {
[INFO] [stdout]    | ----------- associated function or constant `select_all` not found for this struct
[INFO] [stdout] ...
[INFO] [stdout] 57 |     let users: Vec<User> = User::select_all(&pool).await.unwrap();
[INFO] [stdout]    |                                  ^^^^^^^^^^ associated function or constant not found in `User`
[INFO] [stdout]    |
[INFO] [stdout]    = help: items from traits can only be used if the trait is implemented and in scope
[INFO] [stdout]    = note: the following traits define an item `select_all`, perhaps you need to implement one of them:
[INFO] [stdout]            candidate #1: `SelectAll`
[INFO] [stdout]            candidate #2: `SelectAllNoId`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `insert` found for struct `TinyRow` in the current scope
[INFO] [stdout]   --> tests/crudly.rs:80:6
[INFO] [stdout]    |
[INFO] [stdout] 65 |     struct TinyRow {
[INFO] [stdout]    |     -------------- method `insert` not found for this struct
[INFO] [stdout] ...
[INFO] [stdout] 76 |     let id = TinyRow {
[INFO] [stdout] 77 |         id: 0,
[INFO] [stdout] 78 |         label: "a".into(),
[INFO] [stdout] 79 |     }
[INFO] [stdout] 80 |     .insert(&pool)
[INFO] [stdout]    |      ^^^^^^ method not found in `TinyRow`
[INFO] [stdout]    |
[INFO] [stdout]    = help: items from traits can only be used if the trait is implemented and in scope
[INFO] [stdout]    = note: the following traits define an item `insert`, perhaps you need to implement one of them:
[INFO] [stdout]            candidate #1: `InsertNoId`
[INFO] [stdout]            candidate #2: `InsertWithoutId`
[INFO] [stdout]            candidate #3: `crudly::Insert`
[INFO] [stdout] help: one of the expressions' fields has a method of the same name
[INFO] [stdout]    |
[INFO] [stdout] 80 |     .label.insert(&pool)
[INFO] [stdout]    |      ++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] For more information about this error, try `rustc --explain E0599`.
[INFO] [stdout] 
[INFO] [stdout] For more information about this error, try `rustc --explain E0599`.
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no associated function or constant named `insert_many` found for struct `TinyRow` in the current scope
[INFO] [stdout]   --> tests/crudly.rs:85:14
[INFO] [stdout]    |
[INFO] [stdout] 65 |     struct TinyRow {
[INFO] [stdout]    |     -------------- associated function or constant `insert_many` not found for this struct
[INFO] [stdout] ...
[INFO] [stdout] 85 |     TinyRow::insert_many(
[INFO] [stdout]    |              ^^^^^^^^^^^ associated function or constant not found in `TinyRow`
[INFO] [stdout]    |
[INFO] [stdout]    = help: items from traits can only be used if the trait is implemented and in scope
[INFO] [stdout]    = note: the following traits define an item `insert_many`, perhaps you need to implement one of them:
[INFO] [stdout]            candidate #1: `InsertMany`
[INFO] [stdout]            candidate #2: `InsertManyNoId`
[INFO] [stdout]            candidate #3: `InsertManyWithoutIds`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `insert` found for struct `User` in the current scope
[INFO] [stdout]   --> examples/external_ids.rs:28:10
[INFO] [stdout]    |
[INFO] [stdout]  6 | struct User {
[INFO] [stdout]    | ----------- method `insert` not found for this struct
[INFO] [stdout] ...
[INFO] [stdout] 28 |     user.insert(&pool).await.unwrap();
[INFO] [stdout]    |          ^^^^^^ method not found in `User`
[INFO] [stdout]    |
[INFO] [stdout]    = help: items from traits can only be used if the trait is implemented and in scope
[INFO] [stdout]    = note: the following traits define an item `insert`, perhaps you need to implement one of them:
[INFO] [stdout]            candidate #1: `InsertNoId`
[INFO] [stdout]            candidate #2: `InsertWithoutId`
[INFO] [stdout]            candidate #3: `crudly::Insert`
[INFO] [stdout] help: one of the expressions' fields has a method of the same name
[INFO] [stdout]    |
[INFO] [stdout] 28 |     user.name.insert(&pool).await.unwrap();
[INFO] [stdout]    |          +++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no associated function or constant named `select_all` found for struct `TinyRow` in the current scope
[INFO] [stdout]    --> tests/crudly.rs:102:25
[INFO] [stdout]     |
[INFO] [stdout]  65 |     struct TinyRow {
[INFO] [stdout]     |     -------------- associated function or constant `select_all` not found for this struct
[INFO] [stdout] ...
[INFO] [stdout] 102 |     assert_eq!(TinyRow::select_all(&pool).await.unwrap().len(), 3);
[INFO] [stdout]     |                         ^^^^^^^^^^ associated function or constant not found in `TinyRow`
[INFO] [stdout]     |
[INFO] [stdout]     = help: items from traits can only be used if the trait is implemented and in scope
[INFO] [stdout]     = note: the following traits define an item `select_all`, perhaps you need to implement one of them:
[INFO] [stdout]             candidate #1: `SelectAll`
[INFO] [stdout]             candidate #2: `SelectAllNoId`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `crudly` (example "basic") due to 5 previous errors
[INFO] [stderr] warning: build failed, waiting for other jobs to finish...
[INFO] [stderr] error: could not compile `crudly` (test "no_into_row") due to 3 previous errors
[INFO] [stdout] error[E0599]: no associated function or constant named `columns` found for struct `JsonField` in the current scope
[INFO] [stdout]    --> tests/into_row.rs:151:27
[INFO] [stdout]     |
[INFO] [stdout] 146 |     struct JsonField {
[INFO] [stdout]     |     ---------------- associated function or constant `columns` not found for this struct
[INFO] [stdout] ...
[INFO] [stdout] 151 |     assert_eq!(JsonField::columns(), vec!["json"]);
[INFO] [stdout]     |                           ^^^^^^^ associated function or constant not found in `JsonField`
[INFO] [stdout]     |
[INFO] [stdout]     = help: items from traits can only be used if the trait is implemented and in scope
[INFO] [stdout]     = note: the following traits define an item `columns`, perhaps you need to implement one of them:
[INFO] [stdout]             candidate #1: `HasColumns`
[INFO] [stdout]             candidate #2: `Row`
[INFO] [stdout]             candidate #3: `Schema`
[INFO] [stdout]             candidate #4: `Statement`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `JsonField: IntoRow<MockDB>` is not satisfied
[INFO] [stdout]    --> tests/into_row.rs:158:15
[INFO] [stdout]     |
[INFO] [stdout] 158 |     bind_mock(JsonField { json }, &mut args).unwrap();
[INFO] [stdout]     |     --------- ^^^^^^^^^^^^^^^^^^ unsatisfied trait bound
[INFO] [stdout]     |     |
[INFO] [stdout]     |     required by a bound introduced by this call
[INFO] [stdout]     |
[INFO] [stdout] help: the trait `IntoRow<MockDB>` is not implemented for `JsonField`
[INFO] [stdout]    --> tests/into_row.rs:146:5
[INFO] [stdout]     |
[INFO] [stdout] 146 |     struct JsonField {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^
[INFO] [stdout]     = help: the following other types implement trait `IntoRow<DB>`:
[INFO] [stdout]               ContainerDefault
[INFO] [stdout]               FieldDefaultAttr
[INFO] [stdout]               InnerFlat
[INFO] [stdout]               OuterFlat
[INFO] [stdout]               RenameAllCamel
[INFO] [stdout]               RenamedField
[INFO] [stdout]               Skipped
[INFO] [stdout]               SplitAttrs
[INFO] [stdout]             and 2 others
[INFO] [stdout] note: required by a bound in `bind_mock`
[INFO] [stdout]    --> tests/into_row.rs:8:17
[INFO] [stdout]     |
[INFO] [stdout]   8 | fn bind_mock<R: IntoRow<MockDB>>(row: R, args: &mut MockArguments) -> sqlx::Result<()> {
[INFO] [stdout]     |                 ^^^^^^^^^^^^^^^ required by this bound in `bind_mock`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `insert` found for struct `User` in the current scope
[INFO] [stdout]   --> tests/async_bug.rs:78:25
[INFO] [stdout]    |
[INFO] [stdout] 53 | pub struct User {
[INFO] [stdout]    | --------------- method `insert` not found for this struct
[INFO] [stdout] ...
[INFO] [stdout] 78 |         User::default().insert(&mut *con).await.unwrap();
[INFO] [stdout]    |                         ^^^^^^ method not found in `User`
[INFO] [stdout]    |
[INFO] [stdout]    = help: items from traits can only be used if the trait is implemented and in scope
[INFO] [stdout]    = note: the following traits define an item `insert`, perhaps you need to implement one of them:
[INFO] [stdout]            candidate #1: `Foo`
[INFO] [stdout]            candidate #2: `InsertNoId`
[INFO] [stdout]            candidate #3: `InsertWithoutId`
[INFO] [stdout]            candidate #4: `crudly::Insert`
[INFO] [stdout] help: one of the expressions' fields has a method of the same name
[INFO] [stdout]    |
[INFO] [stdout] 78 |         User::default().name.insert(&mut *con).await.unwrap();
[INFO] [stdout]    |                         +++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no associated function or constant named `columns` found for struct `JsonNullable` in the current scope
[INFO] [stdout]    --> tests/into_row.rs:170:30
[INFO] [stdout]     |
[INFO] [stdout] 163 | struct JsonNullable {
[INFO] [stdout]     | ------------------- associated function or constant `columns` not found for this struct
[INFO] [stdout] ...
[INFO] [stdout] 170 |     assert_eq!(JsonNullable::columns(), vec!["json"]);
[INFO] [stdout]     |                              ^^^^^^^ associated function or constant not found in `JsonNullable`
[INFO] [stdout]     |
[INFO] [stdout]     = help: items from traits can only be used if the trait is implemented and in scope
[INFO] [stdout]     = note: the following traits define an item `columns`, perhaps you need to implement one of them:
[INFO] [stdout]             candidate #1: `HasColumns`
[INFO] [stdout]             candidate #2: `Row`
[INFO] [stdout]             candidate #3: `Schema`
[INFO] [stdout]             candidate #4: `Statement`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `JsonNullable: IntoRow<MockDB>` is not satisfied
[INFO] [stdout]    --> tests/into_row.rs:172:15
[INFO] [stdout]     |
[INFO] [stdout] 172 |     bind_mock(JsonNullable { json: None }, &mut args).unwrap();
[INFO] [stdout]     |     --------- ^^^^^^^^^^^^^^^^^^^^^^^^^^^ unsatisfied trait bound
[INFO] [stdout]     |     |
[INFO] [stdout]     |     required by a bound introduced by this call
[INFO] [stdout]     |
[INFO] [stdout] help: the trait `IntoRow<MockDB>` is not implemented for `JsonNullable`
[INFO] [stdout]    --> tests/into_row.rs:163:1
[INFO] [stdout]     |
[INFO] [stdout] 163 | struct JsonNullable {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = help: the following other types implement trait `IntoRow<DB>`:
[INFO] [stdout]               ContainerDefault
[INFO] [stdout]               FieldDefaultAttr
[INFO] [stdout]               InnerFlat
[INFO] [stdout]               OuterFlat
[INFO] [stdout]               RenameAllCamel
[INFO] [stdout]               RenamedField
[INFO] [stdout]               Skipped
[INFO] [stdout]               SplitAttrs
[INFO] [stdout]             and 2 others
[INFO] [stdout] note: required by a bound in `bind_mock`
[INFO] [stdout]    --> tests/into_row.rs:8:17
[INFO] [stdout]     |
[INFO] [stdout]   8 | fn bind_mock<R: IntoRow<MockDB>>(row: R, args: &mut MockArguments) -> sqlx::Result<()> {
[INFO] [stdout]     |                 ^^^^^^^^^^^^^^^ required by this bound in `bind_mock`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no associated function or constant named `select_all` found for struct `User` in the current scope
[INFO] [stdout]   --> examples/external_ids.rs:32:34
[INFO] [stdout]    |
[INFO] [stdout]  6 | struct User {
[INFO] [stdout]    | ----------- associated function or constant `select_all` not found for this struct
[INFO] [stdout] ...
[INFO] [stdout] 32 |     let users: Vec<User> = User::select_all(&pool).await.unwrap();
[INFO] [stdout]    |                                  ^^^^^^^^^^ associated function or constant not found in `User`
[INFO] [stdout]    |
[INFO] [stdout]    = help: items from traits can only be used if the trait is implemented and in scope
[INFO] [stdout]    = note: the following traits define an item `select_all`, perhaps you need to implement one of them:
[INFO] [stdout]            candidate #1: `SelectAll`
[INFO] [stdout]            candidate #2: `SelectAllNoId`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `JsonNullable: IntoRow<MockDB>` is not satisfied
[INFO] [stdout]    --> tests/into_row.rs:183:9
[INFO] [stdout]     |
[INFO] [stdout] 182 |       bind_mock(
[INFO] [stdout]     |       --------- required by a bound introduced by this call
[INFO] [stdout] 183 | /         JsonNullable {
[INFO] [stdout] 184 | |             json: Some(json.clone()),
[INFO] [stdout] 185 | |         },
[INFO] [stdout]     | |_________^ unsatisfied trait bound
[INFO] [stdout]     |
[INFO] [stdout] help: the trait `IntoRow<MockDB>` is not implemented for `JsonNullable`
[INFO] [stdout]    --> tests/into_row.rs:163:1
[INFO] [stdout]     |
[INFO] [stdout] 163 | struct JsonNullable {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = help: the following other types implement trait `IntoRow<DB>`:
[INFO] [stdout]               ContainerDefault
[INFO] [stdout]               FieldDefaultAttr
[INFO] [stdout]               InnerFlat
[INFO] [stdout]               OuterFlat
[INFO] [stdout]               RenameAllCamel
[INFO] [stdout]               RenamedField
[INFO] [stdout]               Skipped
[INFO] [stdout]               SplitAttrs
[INFO] [stdout]             and 2 others
[INFO] [stdout] note: required by a bound in `bind_mock`
[INFO] [stdout]    --> tests/into_row.rs:8:17
[INFO] [stdout]     |
[INFO] [stdout]   8 | fn bind_mock<R: IntoRow<MockDB>>(row: R, args: &mut MockArguments) -> sqlx::Result<()> {
[INFO] [stdout]     |                 ^^^^^^^^^^^^^^^ required by this bound in `bind_mock`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `insert` found for struct `PresetIdRow` in the current scope
[INFO] [stdout]    --> tests/crudly.rs:141:6
[INFO] [stdout]     |
[INFO] [stdout] 123 | struct PresetIdRow {
[INFO] [stdout]     | ------------------ method `insert` not found for this struct
[INFO] [stdout] ...
[INFO] [stdout] 137 |     PresetIdRow {
[INFO] [stdout] 138 |         id: 42,
[INFO] [stdout] 139 |         label: "hi".into(),
[INFO] [stdout] 140 |     }
[INFO] [stdout] 141 |     .insert(&pool)
[INFO] [stdout]     |      ^^^^^^ method not found in `PresetIdRow`
[INFO] [stdout]     |
[INFO] [stdout]     = help: items from traits can only be used if the trait is implemented and in scope
[INFO] [stdout]     = note: the following traits define an item `insert`, perhaps you need to implement one of them:
[INFO] [stdout]             candidate #1: `InsertNoId`
[INFO] [stdout]             candidate #2: `InsertWithoutId`
[INFO] [stdout]             candidate #3: `crudly::Insert`
[INFO] [stdout] help: one of the expressions' fields has a method of the same name
[INFO] [stdout]     |
[INFO] [stdout] 141 |     .label.insert(&pool)
[INFO] [stdout]     |      ++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] For more information about this error, try `rustc --explain E0599`.
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `insert` found for struct `UserExternalIds` in the current scope
[INFO] [stdout]   --> tests/async_bug.rs:79:36
[INFO] [stdout]    |
[INFO] [stdout] 63 | pub struct UserExternalIds {
[INFO] [stdout]    | -------------------------- method `insert` not found for this struct
[INFO] [stdout] ...
[INFO] [stdout] 79 |         UserExternalIds::default().insert(&mut *con).await.unwrap();
[INFO] [stdout]    |                                    ^^^^^^ method not found in `UserExternalIds`
[INFO] [stdout]    |
[INFO] [stdout]    = help: items from traits can only be used if the trait is implemented and in scope
[INFO] [stdout]    = note: the following traits define an item `insert`, perhaps you need to implement one of them:
[INFO] [stdout]            candidate #1: `Foo`
[INFO] [stdout]            candidate #2: `InsertNoId`
[INFO] [stdout]            candidate #3: `InsertWithoutId`
[INFO] [stdout]            candidate #4: `crudly::Insert`
[INFO] [stdout] help: one of the expressions' fields has a method of the same name
[INFO] [stdout]    |
[INFO] [stdout] 79 |         UserExternalIds::default().name.insert(&mut *con).await.unwrap();
[INFO] [stdout]    |                                    +++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `crudly` (example "external_ids") due to 2 previous errors
[INFO] [stdout] error[E0599]: no method named `update_by_id` found for struct `User` in the current scope
[INFO] [stdout]   --> tests/async_bug.rs:80:25
[INFO] [stdout]    |
[INFO] [stdout] 53 | pub struct User {
[INFO] [stdout]    | --------------- method `update_by_id` not found for this struct
[INFO] [stdout] ...
[INFO] [stdout] 80 |         User::default().update_by_id(&mut *con).await.unwrap();
[INFO] [stdout]    |                         ^^^^^^^^^^^^ method not found in `User`
[INFO] [stdout]    |
[INFO] [stdout]    = help: items from traits can only be used if the trait is implemented and in scope
[INFO] [stdout]    = note: the following trait defines an item `update_by_id`, perhaps you need to implement it:
[INFO] [stdout]            candidate #1: `UpdateById`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no associated function or constant named `delete_by_id` found for struct `User` in the current scope
[INFO] [stdout]   --> tests/async_bug.rs:81:15
[INFO] [stdout]    |
[INFO] [stdout] 53 | pub struct User {
[INFO] [stdout]    | --------------- associated function or constant `delete_by_id` not found for this struct
[INFO] [stdout] ...
[INFO] [stdout] 81 |         User::delete_by_id(&1, &mut *con).await.unwrap();
[INFO] [stdout]    |               ^^^^^^^^^^^^ associated function or constant not found in `User`
[INFO] [stdout]    |
[INFO] [stdout]    = help: items from traits can only be used if the trait is implemented and in scope
[INFO] [stdout]    = note: the following trait defines an item `delete_by_id`, perhaps you need to implement it:
[INFO] [stdout]            candidate #1: `DeleteById`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no associated function or constant named `id_exists` found for struct `User` in the current scope
[INFO] [stdout]   --> tests/async_bug.rs:82:15
[INFO] [stdout]    |
[INFO] [stdout] 53 | pub struct User {
[INFO] [stdout]    | --------------- associated function or constant `id_exists` not found for this struct
[INFO] [stdout] ...
[INFO] [stdout] 82 |         User::id_exists(&1, &mut *con).await.unwrap();
[INFO] [stdout]    |               ^^^^^^^^^ associated function or constant not found in `User`
[INFO] [stdout]    |
[INFO] [stdout]    = help: items from traits can only be used if the trait is implemented and in scope
[INFO] [stdout]    = note: the following trait defines an item `id_exists`, perhaps you need to implement it:
[INFO] [stdout]            candidate #1: `IdExists`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no associated function or constant named `select_all` found for struct `User` in the current scope
[INFO] [stdout]   --> tests/async_bug.rs:83:15
[INFO] [stdout]    |
[INFO] [stdout] 53 | pub struct User {
[INFO] [stdout]    | --------------- associated function or constant `select_all` not found for this struct
[INFO] [stdout] ...
[INFO] [stdout] 83 |         User::select_all(&mut *con).await.unwrap();
[INFO] [stdout]    |               ^^^^^^^^^^ associated function or constant not found in `User`
[INFO] [stdout]    |
[INFO] [stdout]    = help: items from traits can only be used if the trait is implemented and in scope
[INFO] [stdout]    = note: the following traits define an item `select_all`, perhaps you need to implement one of them:
[INFO] [stdout]            candidate #1: `SelectAll`
[INFO] [stdout]            candidate #2: `SelectAllNoId`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no associated function or constant named `select_by_id` found for struct `User` in the current scope
[INFO] [stdout]   --> tests/async_bug.rs:84:15
[INFO] [stdout]    |
[INFO] [stdout] 53 | pub struct User {
[INFO] [stdout]    | --------------- associated function or constant `select_by_id` not found for this struct
[INFO] [stdout] ...
[INFO] [stdout] 84 |         User::select_by_id(&1, &mut *con).await.unwrap();
[INFO] [stdout]    |               ^^^^^^^^^^^^ associated function or constant not found in `User`
[INFO] [stdout]    |
[INFO] [stdout]    = help: items from traits can only be used if the trait is implemented and in scope
[INFO] [stdout]    = note: the following trait defines an item `select_by_id`, perhaps you need to implement it:
[INFO] [stdout]            candidate #1: `SelectById`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `Sqlite: FormatPlaceholder` is not satisfied
[INFO] [stdout]    --> examples/custom_sql.rs:38:65
[INFO] [stdout]     |
[INFO] [stdout]  38 |             let _inserted_id = generic_insert_returning_id::<T, Sqlite>(executor, self).await?;
[INFO] [stdout]     |                                                                 ^^^^^^ the trait `FormatPlaceholder` is not implemented for `Sqlite`
[INFO] [stdout]     |
[INFO] [stdout] note: required by a bound in `generic_insert_returning_id`
[INFO] [stdout]    --> src/sql/generic.rs:257:20
[INFO] [stdout]     |
[INFO] [stdout] 252 | pub async fn generic_insert_returning_id<S, DB>(
[INFO] [stdout] ...
[INFO] [stdout] 257 |     DB: Database + FormatPlaceholder,
[INFO] [stdout]     |                    ^^^^^^^^^^^^^^^^^ required by this bound in `generic_insert_returning_id`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `SqliteQueryResult: LastInsertedRowId` is not satisfied
[INFO] [stdout]    --> examples/custom_sql.rs:38:65
[INFO] [stdout]     |
[INFO] [stdout]  38 |             let _inserted_id = generic_insert_returning_id::<T, Sqlite>(executor, self).await?;
[INFO] [stdout]     |                                                                 ^^^^^^ the trait `LastInsertedRowId` is not implemented for `SqliteQueryResult`
[INFO] [stdout]     |
[INFO] [stdout] note: required by a bound in `generic_insert_returning_id`
[INFO] [stdout]    --> src/sql/generic.rs:258:22
[INFO] [stdout]     |
[INFO] [stdout] 252 | pub async fn generic_insert_returning_id<S, DB>(
[INFO] [stdout] ...
[INFO] [stdout] 258 |     DB::QueryResult: LastInsertedRowId,
[INFO] [stdout]     |                      ^^^^^^^^^^^^^^^^^ required by this bound in `generic_insert_returning_id`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `Sqlite: FormatPlaceholder` is not satisfied
[INFO] [stdout]    --> examples/custom_sql.rs:38:32
[INFO] [stdout]     |
[INFO] [stdout]  38 |             let _inserted_id = generic_insert_returning_id::<T, Sqlite>(executor, self).await?;
[INFO] [stdout]     |                                ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `FormatPlaceholder` is not implemented for `Sqlite`
[INFO] [stdout]     |
[INFO] [stdout] note: required by a bound in `generic_insert_returning_id`
[INFO] [stdout]    --> src/sql/generic.rs:257:20
[INFO] [stdout]     |
[INFO] [stdout] 252 | pub async fn generic_insert_returning_id<S, DB>(
[INFO] [stdout] ...
[INFO] [stdout] 257 |     DB: Database + FormatPlaceholder,
[INFO] [stdout]     |                    ^^^^^^^^^^^^^^^^^ required by this bound in `generic_insert_returning_id`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `SqliteQueryResult: LastInsertedRowId` is not satisfied
[INFO] [stdout]    --> examples/custom_sql.rs:38:32
[INFO] [stdout]     |
[INFO] [stdout]  38 |             let _inserted_id = generic_insert_returning_id::<T, Sqlite>(executor, self).await?;
[INFO] [stdout]     |                                ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `LastInsertedRowId` is not implemented for `SqliteQueryResult`
[INFO] [stdout]     |
[INFO] [stdout] note: required by a bound in `generic_insert_returning_id`
[INFO] [stdout]    --> src/sql/generic.rs:258:22
[INFO] [stdout]     |
[INFO] [stdout] 252 | pub async fn generic_insert_returning_id<S, DB>(
[INFO] [stdout] ...
[INFO] [stdout] 258 |     DB::QueryResult: LastInsertedRowId,
[INFO] [stdout]     |                      ^^^^^^^^^^^^^^^^^ required by this bound in `generic_insert_returning_id`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `Sqlite: FormatPlaceholder` is not satisfied
[INFO] [stdout]    --> examples/custom_sql.rs:38:89
[INFO] [stdout]     |
[INFO] [stdout]  38 |             let _inserted_id = generic_insert_returning_id::<T, Sqlite>(executor, self).await?;
[INFO] [stdout]     |                                                                                         ^^^^^ the trait `FormatPlaceholder` is not implemented for `Sqlite`
[INFO] [stdout]     |
[INFO] [stdout] note: required by a bound in `generic_insert_returning_id`
[INFO] [stdout]    --> src/sql/generic.rs:257:20
[INFO] [stdout]     |
[INFO] [stdout] 252 | pub async fn generic_insert_returning_id<S, DB>(
[INFO] [stdout] ...
[INFO] [stdout] 257 |     DB: Database + FormatPlaceholder,
[INFO] [stdout]     |                    ^^^^^^^^^^^^^^^^^ required by this bound in `generic_insert_returning_id`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `SqliteQueryResult: LastInsertedRowId` is not satisfied
[INFO] [stdout]    --> examples/custom_sql.rs:38:89
[INFO] [stdout]     |
[INFO] [stdout]  38 |             let _inserted_id = generic_insert_returning_id::<T, Sqlite>(executor, self).await?;
[INFO] [stdout]     |                                                                                         ^^^^^ the trait `LastInsertedRowId` is not implemented for `SqliteQueryResult`
[INFO] [stdout]     |
[INFO] [stdout] note: required by a bound in `generic_insert_returning_id`
[INFO] [stdout]    --> src/sql/generic.rs:258:22
[INFO] [stdout]     |
[INFO] [stdout] 252 | pub async fn generic_insert_returning_id<S, DB>(
[INFO] [stdout] ...
[INFO] [stdout] 258 |     DB::QueryResult: LastInsertedRowId,
[INFO] [stdout]     |                      ^^^^^^^^^^^^^^^^^ required by this bound in `generic_insert_returning_id`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] Some errors have detailed explanations: E0277, E0599.
[INFO] [stdout] 
[INFO] [stdout] For more information about an error, try `rustc --explain E0277`.
[INFO] [stdout] 
[INFO] [stdout] For more information about this error, try `rustc --explain E0599`.
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: the method `insert` exists for struct `Bar`, but its trait bounds were not satisfied
[INFO] [stdout]   --> tests/async_bug.rs:48:13
[INFO] [stdout]    |
[INFO] [stdout] 10 | struct Bar {
[INFO] [stdout]    | ---------- method `insert` not found for this struct because it doesn't satisfy `Bar: Foo<Sqlite>`
[INFO] [stdout] ...
[INFO] [stdout] 48 |         bar.insert(&mut *con).await.unwrap();
[INFO] [stdout]    |             ^^^^^^ method cannot be called on `Bar` due to unsatisfied trait bounds
[INFO] [stdout]    |
[INFO] [stdout]   ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/sqlx-sqlite-0.9.0/src/database.rs:11:1
[INFO] [stdout]    |
[INFO] [stdout] 11 | pub struct Sqlite;
[INFO] [stdout]    | ----------------- doesn't satisfy `Sqlite: FormatPlaceholder`
[INFO] [stdout]    |
[INFO] [stdout]   ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/sqlx-sqlite-0.9.0/src/query_result.rs:4:1
[INFO] [stdout]    |
[INFO] [stdout]  4 | pub struct SqliteQueryResult {
[INFO] [stdout]    | ---------------------------- doesn't satisfy `SqliteQueryResult: LastInsertedRowId`
[INFO] [stdout]    |
[INFO] [stdout] note: the following trait bounds were not satisfied:
[INFO] [stdout]       `Sqlite: FormatPlaceholder`
[INFO] [stdout]       `SqliteQueryResult: LastInsertedRowId`
[INFO] [stdout]   --> tests/async_bug.rs:18:9
[INFO] [stdout]    |
[INFO] [stdout] 16 | impl<DB: Database> Foo<DB> for Bar
[INFO] [stdout]    |                    -------     ---
[INFO] [stdout] 17 | where
[INFO] [stdout] 18 |     DB: FormatPlaceholder,
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^ unsatisfied trait bound introduced here
[INFO] [stdout] 19 |     DB::QueryResult: LastInsertedRowId,
[INFO] [stdout]    |                      ^^^^^^^^^^^^^^^^^ unsatisfied trait bound introduced here
[INFO] [stdout]    = help: items from traits can only be used if the trait is implemented and in scope
[INFO] [stdout]    = note: the following traits define an item `insert`, perhaps you need to implement one of them:
[INFO] [stdout]            candidate #1: `Foo`
[INFO] [stdout]            candidate #2: `InsertNoId`
[INFO] [stdout]            candidate #3: `InsertWithoutId`
[INFO] [stdout]            candidate #4: `crudly::Insert`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `crudly` (test "into_row") due to 7 previous errors
[INFO] [stderr] error: could not compile `crudly` (test "crudly") due to 5 previous errors
[INFO] [stdout] For more information about this error, try `rustc --explain E0599`.
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `crudly` (test "async_bug") due to 8 previous errors
[INFO] [stdout] error[E0277]: the trait bound `Sqlite: FormatPlaceholder` is not satisfied
[INFO] [stdout]    --> src/sql/generic.rs:524:9
[INFO] [stdout]     |
[INFO] [stdout] 524 |         generic_insert_many_without_id(&pool, vec![Dummy], 0)
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `FormatPlaceholder` is not implemented for `Sqlite`
[INFO] [stdout]     |
[INFO] [stdout] help: this trait has no implementations, consider adding one
[INFO] [stdout]    --> src/sql/generic.rs:15:1
[INFO] [stdout]     |
[INFO] [stdout]  15 | pub trait FormatPlaceholder {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: required by a bound in `generic::generic_insert_many_without_id`
[INFO] [stdout]    --> src/sql/generic.rs:277:20
[INFO] [stdout]     |
[INFO] [stdout] 270 | pub async fn generic_insert_many_without_id<S, DB, E>(
[INFO] [stdout] ...
[INFO] [stdout] 277 |     DB: Database + FormatPlaceholder,
[INFO] [stdout]     |                    ^^^^^^^^^^^^^^^^^ required by this bound in `generic_insert_many_without_id`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `Sqlite: FormatPlaceholder` is not satisfied
[INFO] [stdout]    --> src/sql/generic.rs:525:14
[INFO] [stdout]     |
[INFO] [stdout] 525 |             .await
[INFO] [stdout]     |              ^^^^^ the trait `FormatPlaceholder` is not implemented for `Sqlite`
[INFO] [stdout]     |
[INFO] [stdout] help: this trait has no implementations, consider adding one
[INFO] [stdout]    --> src/sql/generic.rs:15:1
[INFO] [stdout]     |
[INFO] [stdout]  15 | pub trait FormatPlaceholder {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: required by a bound in `generic::generic_insert_many_without_id`
[INFO] [stdout]    --> src/sql/generic.rs:277:20
[INFO] [stdout]     |
[INFO] [stdout] 270 | pub async fn generic_insert_many_without_id<S, DB, E>(
[INFO] [stdout] ...
[INFO] [stdout] 277 |     DB: Database + FormatPlaceholder,
[INFO] [stdout]     |                    ^^^^^^^^^^^^^^^^^ required by this bound in `generic_insert_many_without_id`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `Sqlite: FormatPlaceholder` is not satisfied
[INFO] [stdout]    --> src/sql/generic.rs:531:9
[INFO] [stdout]     |
[INFO] [stdout] 531 |         generic_insert_many_without_id(pool, vec![Dummy], 0)
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `FormatPlaceholder` is not implemented for `Sqlite`
[INFO] [stdout]     |
[INFO] [stdout] help: this trait has no implementations, consider adding one
[INFO] [stdout]    --> src/sql/generic.rs:15:1
[INFO] [stdout]     |
[INFO] [stdout]  15 | pub trait FormatPlaceholder {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: required by a bound in `generic::generic_insert_many_without_id`
[INFO] [stdout]    --> src/sql/generic.rs:277:20
[INFO] [stdout]     |
[INFO] [stdout] 270 | pub async fn generic_insert_many_without_id<S, DB, E>(
[INFO] [stdout] ...
[INFO] [stdout] 277 |     DB: Database + FormatPlaceholder,
[INFO] [stdout]     |                    ^^^^^^^^^^^^^^^^^ required by this bound in `generic_insert_many_without_id`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `Sqlite: FormatPlaceholder` is not satisfied
[INFO] [stdout]    --> src/sql/generic.rs:532:14
[INFO] [stdout]     |
[INFO] [stdout] 532 |             .await
[INFO] [stdout]     |              ^^^^^ the trait `FormatPlaceholder` is not implemented for `Sqlite`
[INFO] [stdout]     |
[INFO] [stdout] help: this trait has no implementations, consider adding one
[INFO] [stdout]    --> src/sql/generic.rs:15:1
[INFO] [stdout]     |
[INFO] [stdout]  15 | pub trait FormatPlaceholder {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: required by a bound in `generic::generic_insert_many_without_id`
[INFO] [stdout]    --> src/sql/generic.rs:277:20
[INFO] [stdout]     |
[INFO] [stdout] 270 | pub async fn generic_insert_many_without_id<S, DB, E>(
[INFO] [stdout] ...
[INFO] [stdout] 277 |     DB: Database + FormatPlaceholder,
[INFO] [stdout]     |                    ^^^^^^^^^^^^^^^^^ required by this bound in `generic_insert_many_without_id`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `Sqlite: FormatPlaceholder` is not satisfied
[INFO] [stdout]    --> src/sql/generic.rs:535:9
[INFO] [stdout]     |
[INFO] [stdout] 535 |         generic_insert_many_without_id(pool, vec![Dummy], 0)
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `FormatPlaceholder` is not implemented for `Sqlite`
[INFO] [stdout]     |
[INFO] [stdout] help: this trait has no implementations, consider adding one
[INFO] [stdout]    --> src/sql/generic.rs:15:1
[INFO] [stdout]     |
[INFO] [stdout]  15 | pub trait FormatPlaceholder {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: required by a bound in `generic::generic_insert_many_without_id`
[INFO] [stdout]    --> src/sql/generic.rs:277:20
[INFO] [stdout]     |
[INFO] [stdout] 270 | pub async fn generic_insert_many_without_id<S, DB, E>(
[INFO] [stdout] ...
[INFO] [stdout] 277 |     DB: Database + FormatPlaceholder,
[INFO] [stdout]     |                    ^^^^^^^^^^^^^^^^^ required by this bound in `generic_insert_many_without_id`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `Sqlite: FormatPlaceholder` is not satisfied
[INFO] [stdout]    --> src/sql/generic.rs:536:14
[INFO] [stdout]     |
[INFO] [stdout] 536 |             .await
[INFO] [stdout]     |              ^^^^^ the trait `FormatPlaceholder` is not implemented for `Sqlite`
[INFO] [stdout]     |
[INFO] [stdout] help: this trait has no implementations, consider adding one
[INFO] [stdout]    --> src/sql/generic.rs:15:1
[INFO] [stdout]     |
[INFO] [stdout]  15 | pub trait FormatPlaceholder {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: required by a bound in `generic::generic_insert_many_without_id`
[INFO] [stdout]    --> src/sql/generic.rs:277:20
[INFO] [stdout]     |
[INFO] [stdout] 270 | pub async fn generic_insert_many_without_id<S, DB, E>(
[INFO] [stdout] ...
[INFO] [stdout] 277 |     DB: Database + FormatPlaceholder,
[INFO] [stdout]     |                    ^^^^^^^^^^^^^^^^^ required by this bound in `generic_insert_many_without_id`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `Sqlite: FormatPlaceholder` is not satisfied
[INFO] [stdout]    --> src/sql/generic.rs:542:9
[INFO] [stdout]     |
[INFO] [stdout] 542 |         generic_insert_many_without_id(&mut *pool, vec![Dummy], 0)
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `FormatPlaceholder` is not implemented for `Sqlite`
[INFO] [stdout]     |
[INFO] [stdout] help: this trait has no implementations, consider adding one
[INFO] [stdout]    --> src/sql/generic.rs:15:1
[INFO] [stdout]     |
[INFO] [stdout]  15 | pub trait FormatPlaceholder {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: required by a bound in `generic::generic_insert_many_without_id`
[INFO] [stdout]    --> src/sql/generic.rs:277:20
[INFO] [stdout]     |
[INFO] [stdout] 270 | pub async fn generic_insert_many_without_id<S, DB, E>(
[INFO] [stdout] ...
[INFO] [stdout] 277 |     DB: Database + FormatPlaceholder,
[INFO] [stdout]     |                    ^^^^^^^^^^^^^^^^^ required by this bound in `generic_insert_many_without_id`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `Sqlite: FormatPlaceholder` is not satisfied
[INFO] [stdout]    --> src/sql/generic.rs:543:14
[INFO] [stdout]     |
[INFO] [stdout] 543 |             .await
[INFO] [stdout]     |              ^^^^^ the trait `FormatPlaceholder` is not implemented for `Sqlite`
[INFO] [stdout]     |
[INFO] [stdout] help: this trait has no implementations, consider adding one
[INFO] [stdout]    --> src/sql/generic.rs:15:1
[INFO] [stdout]     |
[INFO] [stdout]  15 | pub trait FormatPlaceholder {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: required by a bound in `generic::generic_insert_many_without_id`
[INFO] [stdout]    --> src/sql/generic.rs:277:20
[INFO] [stdout]     |
[INFO] [stdout] 270 | pub async fn generic_insert_many_without_id<S, DB, E>(
[INFO] [stdout] ...
[INFO] [stdout] 277 |     DB: Database + FormatPlaceholder,
[INFO] [stdout]     |                    ^^^^^^^^^^^^^^^^^ required by this bound in `generic_insert_many_without_id`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `Sqlite: FormatPlaceholder` is not satisfied
[INFO] [stdout]    --> src/sql/generic.rs:546:9
[INFO] [stdout]     |
[INFO] [stdout] 546 |         generic_insert_many_without_id(&mut *pool, vec![Dummy], 0)
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `FormatPlaceholder` is not implemented for `Sqlite`
[INFO] [stdout]     |
[INFO] [stdout] help: this trait has no implementations, consider adding one
[INFO] [stdout]    --> src/sql/generic.rs:15:1
[INFO] [stdout]     |
[INFO] [stdout]  15 | pub trait FormatPlaceholder {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: required by a bound in `generic::generic_insert_many_without_id`
[INFO] [stdout]    --> src/sql/generic.rs:277:20
[INFO] [stdout]     |
[INFO] [stdout] 270 | pub async fn generic_insert_many_without_id<S, DB, E>(
[INFO] [stdout] ...
[INFO] [stdout] 277 |     DB: Database + FormatPlaceholder,
[INFO] [stdout]     |                    ^^^^^^^^^^^^^^^^^ required by this bound in `generic_insert_many_without_id`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `Sqlite: FormatPlaceholder` is not satisfied
[INFO] [stdout]    --> src/sql/generic.rs:547:14
[INFO] [stdout]     |
[INFO] [stdout] 547 |             .await
[INFO] [stdout]     |              ^^^^^ the trait `FormatPlaceholder` is not implemented for `Sqlite`
[INFO] [stdout]     |
[INFO] [stdout] help: this trait has no implementations, consider adding one
[INFO] [stdout]    --> src/sql/generic.rs:15:1
[INFO] [stdout]     |
[INFO] [stdout]  15 | pub trait FormatPlaceholder {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: required by a bound in `generic::generic_insert_many_without_id`
[INFO] [stdout]    --> src/sql/generic.rs:277:20
[INFO] [stdout]     |
[INFO] [stdout] 270 | pub async fn generic_insert_many_without_id<S, DB, E>(
[INFO] [stdout] ...
[INFO] [stdout] 277 |     DB: Database + FormatPlaceholder,
[INFO] [stdout]     |                    ^^^^^^^^^^^^^^^^^ required by this bound in `generic_insert_many_without_id`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `&mut SqliteConnection: ReusableExecutor<_>` is not satisfied
[INFO] [stdout]    --> src/sql/generic.rs:553:40
[INFO] [stdout]     |
[INFO] [stdout] 553 |         generic_insert_many_without_id(&mut *con, vec![Dummy], 100)
[INFO] [stdout]     |         ------------------------------ ^^^^^^^^^ the trait `ReusableExecutor<_>` is not implemented for `&mut SqliteConnection`
[INFO] [stdout]     |         |
[INFO] [stdout]     |         required by a bound introduced by this call
[INFO] [stdout]     |
[INFO] [stdout] help: the following other types implement trait `ReusableExecutor<DB>`
[INFO] [stdout]    --> src/sql/reusable_executor.rs:62:1
[INFO] [stdout]     |
[INFO] [stdout]  62 | / impl<DB: Database> ReusableExecutor<DB> for Pool<DB>
[INFO] [stdout]  63 | | where
[INFO] [stdout]  64 | |     <DB as Database>::Arguments: IntoArguments<DB>,
[INFO] [stdout]  65 | |     for<'e> &'e mut DB::Connection: Executor<'e, Database = DB>,
[INFO] [stdout]     | |________________________________________________________________^ `Pool<DB>`
[INFO] [stdout] ...
[INFO] [stdout]  79 | / impl<DB: Database> ReusableExecutor<DB> for &Pool<DB>
[INFO] [stdout]  80 | | where
[INFO] [stdout]  81 | |     <DB as Database>::Arguments: IntoArguments<DB>,
[INFO] [stdout]  82 | |     for<'e> &'e mut DB::Connection: Executor<'e, Database = DB>,
[INFO] [stdout]     | |________________________________________________________________^ `&Pool<DB>`
[INFO] [stdout] ...
[INFO] [stdout]  96 | / impl<DB: Database> ReusableExecutor<DB> for &mut Pool<DB>
[INFO] [stdout]  97 | | where
[INFO] [stdout]  98 | |     <DB as Database>::Arguments: IntoArguments<DB>,
[INFO] [stdout]  99 | |     for<'e> &'e mut DB::Connection: Executor<'e, Database = DB>,
[INFO] [stdout]     | |________________________________________________________________^ `&mut Pool<DB>`
[INFO] [stdout] note: required by a bound in `generic::generic_insert_many_without_id`
[INFO] [stdout]    --> src/sql/generic.rs:276:8
[INFO] [stdout]     |
[INFO] [stdout] 270 | pub async fn generic_insert_many_without_id<S, DB, E>(
[INFO] [stdout] ...
[INFO] [stdout] 276 |     E: ReusableExecutor<DB>,
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^ required by this bound in `generic_insert_many_without_id`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `Sqlite: FormatPlaceholder` is not satisfied
[INFO] [stdout]    --> src/sql/generic.rs:553:9
[INFO] [stdout]     |
[INFO] [stdout] 553 |         generic_insert_many_without_id(&mut *con, vec![Dummy], 100)
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `FormatPlaceholder` is not implemented for `Sqlite`
[INFO] [stdout]     |
[INFO] [stdout] help: this trait has no implementations, consider adding one
[INFO] [stdout]    --> src/sql/generic.rs:15:1
[INFO] [stdout]     |
[INFO] [stdout]  15 | pub trait FormatPlaceholder {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: required by a bound in `generic::generic_insert_many_without_id`
[INFO] [stdout]    --> src/sql/generic.rs:277:20
[INFO] [stdout]     |
[INFO] [stdout] 270 | pub async fn generic_insert_many_without_id<S, DB, E>(
[INFO] [stdout] ...
[INFO] [stdout] 277 |     DB: Database + FormatPlaceholder,
[INFO] [stdout]     |                    ^^^^^^^^^^^^^^^^^ required by this bound in `generic_insert_many_without_id`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `&mut SqliteConnection: ReusableExecutor<Sqlite>` is not satisfied
[INFO] [stdout]    --> src/sql/generic.rs:553:9
[INFO] [stdout]     |
[INFO] [stdout] 553 |         generic_insert_many_without_id(&mut *con, vec![Dummy], 100)
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `ReusableExecutor<Sqlite>` is not implemented for `&mut SqliteConnection`
[INFO] [stdout]     |
[INFO] [stdout] help: the following other types implement trait `ReusableExecutor<DB>`
[INFO] [stdout]    --> src/sql/reusable_executor.rs:62:1
[INFO] [stdout]     |
[INFO] [stdout]  62 | / impl<DB: Database> ReusableExecutor<DB> for Pool<DB>
[INFO] [stdout]  63 | | where
[INFO] [stdout]  64 | |     <DB as Database>::Arguments: IntoArguments<DB>,
[INFO] [stdout]  65 | |     for<'e> &'e mut DB::Connection: Executor<'e, Database = DB>,
[INFO] [stdout]     | |________________________________________________________________^ `Pool<DB>`
[INFO] [stdout] ...
[INFO] [stdout]  79 | / impl<DB: Database> ReusableExecutor<DB> for &Pool<DB>
[INFO] [stdout]  80 | | where
[INFO] [stdout]  81 | |     <DB as Database>::Arguments: IntoArguments<DB>,
[INFO] [stdout]  82 | |     for<'e> &'e mut DB::Connection: Executor<'e, Database = DB>,
[INFO] [stdout]     | |________________________________________________________________^ `&Pool<DB>`
[INFO] [stdout] ...
[INFO] [stdout]  96 | / impl<DB: Database> ReusableExecutor<DB> for &mut Pool<DB>
[INFO] [stdout]  97 | | where
[INFO] [stdout]  98 | |     <DB as Database>::Arguments: IntoArguments<DB>,
[INFO] [stdout]  99 | |     for<'e> &'e mut DB::Connection: Executor<'e, Database = DB>,
[INFO] [stdout]     | |________________________________________________________________^ `&mut Pool<DB>`
[INFO] [stdout] note: required by a bound in `generic::generic_insert_many_without_id`
[INFO] [stdout]    --> src/sql/generic.rs:276:8
[INFO] [stdout]     |
[INFO] [stdout] 270 | pub async fn generic_insert_many_without_id<S, DB, E>(
[INFO] [stdout] ...
[INFO] [stdout] 276 |     E: ReusableExecutor<DB>,
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^ required by this bound in `generic_insert_many_without_id`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `&mut SqliteConnection: ReusableExecutor<Sqlite>` is not satisfied
[INFO] [stdout]    --> src/sql/generic.rs:554:14
[INFO] [stdout]     |
[INFO] [stdout] 554 |             .await
[INFO] [stdout]     |              ^^^^^ the trait `ReusableExecutor<Sqlite>` is not implemented for `&mut SqliteConnection`
[INFO] [stdout]     |
[INFO] [stdout] help: the following other types implement trait `ReusableExecutor<DB>`
[INFO] [stdout]    --> src/sql/reusable_executor.rs:62:1
[INFO] [stdout]     |
[INFO] [stdout]  62 | / impl<DB: Database> ReusableExecutor<DB> for Pool<DB>
[INFO] [stdout]  63 | | where
[INFO] [stdout]  64 | |     <DB as Database>::Arguments: IntoArguments<DB>,
[INFO] [stdout]  65 | |     for<'e> &'e mut DB::Connection: Executor<'e, Database = DB>,
[INFO] [stdout]     | |________________________________________________________________^ `Pool<DB>`
[INFO] [stdout] ...
[INFO] [stdout]  79 | / impl<DB: Database> ReusableExecutor<DB> for &Pool<DB>
[INFO] [stdout]  80 | | where
[INFO] [stdout]  81 | |     <DB as Database>::Arguments: IntoArguments<DB>,
[INFO] [stdout]  82 | |     for<'e> &'e mut DB::Connection: Executor<'e, Database = DB>,
[INFO] [stdout]     | |________________________________________________________________^ `&Pool<DB>`
[INFO] [stdout] ...
[INFO] [stdout]  96 | / impl<DB: Database> ReusableExecutor<DB> for &mut Pool<DB>
[INFO] [stdout]  97 | | where
[INFO] [stdout]  98 | |     <DB as Database>::Arguments: IntoArguments<DB>,
[INFO] [stdout]  99 | |     for<'e> &'e mut DB::Connection: Executor<'e, Database = DB>,
[INFO] [stdout]     | |________________________________________________________________^ `&mut Pool<DB>`
[INFO] [stdout] note: required by a bound in `generic::generic_insert_many_without_id`
[INFO] [stdout]    --> src/sql/generic.rs:276:8
[INFO] [stdout]     |
[INFO] [stdout] 270 | pub async fn generic_insert_many_without_id<S, DB, E>(
[INFO] [stdout] ...
[INFO] [stdout] 276 |     E: ReusableExecutor<DB>,
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^ required by this bound in `generic_insert_many_without_id`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `Sqlite: FormatPlaceholder` is not satisfied
[INFO] [stdout]    --> src/sql/generic.rs:554:14
[INFO] [stdout]     |
[INFO] [stdout] 554 |             .await
[INFO] [stdout]     |              ^^^^^ the trait `FormatPlaceholder` is not implemented for `Sqlite`
[INFO] [stdout]     |
[INFO] [stdout] help: this trait has no implementations, consider adding one
[INFO] [stdout]    --> src/sql/generic.rs:15:1
[INFO] [stdout]     |
[INFO] [stdout]  15 | pub trait FormatPlaceholder {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: required by a bound in `generic::generic_insert_many_without_id`
[INFO] [stdout]    --> src/sql/generic.rs:277:20
[INFO] [stdout]     |
[INFO] [stdout] 270 | pub async fn generic_insert_many_without_id<S, DB, E>(
[INFO] [stdout] ...
[INFO] [stdout] 277 |     DB: Database + FormatPlaceholder,
[INFO] [stdout]     |                    ^^^^^^^^^^^^^^^^^ required by this bound in `generic_insert_many_without_id`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] For more information about this error, try `rustc --explain E0277`.
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `crudly` (example "custom_sql") due to 6 previous errors
[INFO] [stdout] error[E0277]: the trait bound `&mut SqliteConnection: ReusableExecutor<_>` is not satisfied
[INFO] [stdout]    --> src/sql/generic.rs:557:40
[INFO] [stdout]     |
[INFO] [stdout] 557 |         generic_insert_many_without_id(&mut *con, vec![Dummy], 100)
[INFO] [stdout]     |         ------------------------------ ^^^^^^^^^ the trait `ReusableExecutor<_>` is not implemented for `&mut SqliteConnection`
[INFO] [stdout]     |         |
[INFO] [stdout]     |         required by a bound introduced by this call
[INFO] [stdout]     |
[INFO] [stdout] help: the following other types implement trait `ReusableExecutor<DB>`
[INFO] [stdout]    --> src/sql/reusable_executor.rs:62:1
[INFO] [stdout]     |
[INFO] [stdout]  62 | / impl<DB: Database> ReusableExecutor<DB> for Pool<DB>
[INFO] [stdout]  63 | | where
[INFO] [stdout]  64 | |     <DB as Database>::Arguments: IntoArguments<DB>,
[INFO] [stdout]  65 | |     for<'e> &'e mut DB::Connection: Executor<'e, Database = DB>,
[INFO] [stdout]     | |________________________________________________________________^ `Pool<DB>`
[INFO] [stdout] ...
[INFO] [stdout]  79 | / impl<DB: Database> ReusableExecutor<DB> for &Pool<DB>
[INFO] [stdout]  80 | | where
[INFO] [stdout]  81 | |     <DB as Database>::Arguments: IntoArguments<DB>,
[INFO] [stdout]  82 | |     for<'e> &'e mut DB::Connection: Executor<'e, Database = DB>,
[INFO] [stdout]     | |________________________________________________________________^ `&Pool<DB>`
[INFO] [stdout] ...
[INFO] [stdout]  96 | / impl<DB: Database> ReusableExecutor<DB> for &mut Pool<DB>
[INFO] [stdout]  97 | | where
[INFO] [stdout]  98 | |     <DB as Database>::Arguments: IntoArguments<DB>,
[INFO] [stdout]  99 | |     for<'e> &'e mut DB::Connection: Executor<'e, Database = DB>,
[INFO] [stdout]     | |________________________________________________________________^ `&mut Pool<DB>`
[INFO] [stdout] note: required by a bound in `generic::generic_insert_many_without_id`
[INFO] [stdout]    --> src/sql/generic.rs:276:8
[INFO] [stdout]     |
[INFO] [stdout] 270 | pub async fn generic_insert_many_without_id<S, DB, E>(
[INFO] [stdout] ...
[INFO] [stdout] 276 |     E: ReusableExecutor<DB>,
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^ required by this bound in `generic_insert_many_without_id`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `Sqlite: FormatPlaceholder` is not satisfied
[INFO] [stdout]    --> src/sql/generic.rs:557:9
[INFO] [stdout]     |
[INFO] [stdout] 557 |         generic_insert_many_without_id(&mut *con, vec![Dummy], 100)
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `FormatPlaceholder` is not implemented for `Sqlite`
[INFO] [stdout]     |
[INFO] [stdout] help: this trait has no implementations, consider adding one
[INFO] [stdout]    --> src/sql/generic.rs:15:1
[INFO] [stdout]     |
[INFO] [stdout]  15 | pub trait FormatPlaceholder {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: required by a bound in `generic::generic_insert_many_without_id`
[INFO] [stdout]    --> src/sql/generic.rs:277:20
[INFO] [stdout]     |
[INFO] [stdout] 270 | pub async fn generic_insert_many_without_id<S, DB, E>(
[INFO] [stdout] ...
[INFO] [stdout] 277 |     DB: Database + FormatPlaceholder,
[INFO] [stdout]     |                    ^^^^^^^^^^^^^^^^^ required by this bound in `generic_insert_many_without_id`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `&mut SqliteConnection: ReusableExecutor<Sqlite>` is not satisfied
[INFO] [stdout]    --> src/sql/generic.rs:557:9
[INFO] [stdout]     |
[INFO] [stdout] 557 |         generic_insert_many_without_id(&mut *con, vec![Dummy], 100)
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `ReusableExecutor<Sqlite>` is not implemented for `&mut SqliteConnection`
[INFO] [stdout]     |
[INFO] [stdout] help: the following other types implement trait `ReusableExecutor<DB>`
[INFO] [stdout]    --> src/sql/reusable_executor.rs:62:1
[INFO] [stdout]     |
[INFO] [stdout]  62 | / impl<DB: Database> ReusableExecutor<DB> for Pool<DB>
[INFO] [stdout]  63 | | where
[INFO] [stdout]  64 | |     <DB as Database>::Arguments: IntoArguments<DB>,
[INFO] [stdout]  65 | |     for<'e> &'e mut DB::Connection: Executor<'e, Database = DB>,
[INFO] [stdout]     | |________________________________________________________________^ `Pool<DB>`
[INFO] [stdout] ...
[INFO] [stdout]  79 | / impl<DB: Database> ReusableExecutor<DB> for &Pool<DB>
[INFO] [stdout]  80 | | where
[INFO] [stdout]  81 | |     <DB as Database>::Arguments: IntoArguments<DB>,
[INFO] [stdout]  82 | |     for<'e> &'e mut DB::Connection: Executor<'e, Database = DB>,
[INFO] [stdout]     | |________________________________________________________________^ `&Pool<DB>`
[INFO] [stdout] ...
[INFO] [stdout]  96 | / impl<DB: Database> ReusableExecutor<DB> for &mut Pool<DB>
[INFO] [stdout]  97 | | where
[INFO] [stdout]  98 | |     <DB as Database>::Arguments: IntoArguments<DB>,
[INFO] [stdout]  99 | |     for<'e> &'e mut DB::Connection: Executor<'e, Database = DB>,
[INFO] [stdout]     | |________________________________________________________________^ `&mut Pool<DB>`
[INFO] [stdout] note: required by a bound in `generic::generic_insert_many_without_id`
[INFO] [stdout]    --> src/sql/generic.rs:276:8
[INFO] [stdout]     |
[INFO] [stdout] 270 | pub async fn generic_insert_many_without_id<S, DB, E>(
[INFO] [stdout] ...
[INFO] [stdout] 276 |     E: ReusableExecutor<DB>,
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^ required by this bound in `generic_insert_many_without_id`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `&mut SqliteConnection: ReusableExecutor<Sqlite>` is not satisfied
[INFO] [stdout]    --> src/sql/generic.rs:558:14
[INFO] [stdout]     |
[INFO] [stdout] 558 |             .await
[INFO] [stdout]     |              ^^^^^ the trait `ReusableExecutor<Sqlite>` is not implemented for `&mut SqliteConnection`
[INFO] [stdout]     |
[INFO] [stdout] help: the following other types implement trait `ReusableExecutor<DB>`
[INFO] [stdout]    --> src/sql/reusable_executor.rs:62:1
[INFO] [stdout]     |
[INFO] [stdout]  62 | / impl<DB: Database> ReusableExecutor<DB> for Pool<DB>
[INFO] [stdout]  63 | | where
[INFO] [stdout]  64 | |     <DB as Database>::Arguments: IntoArguments<DB>,
[INFO] [stdout]  65 | |     for<'e> &'e mut DB::Connection: Executor<'e, Database = DB>,
[INFO] [stdout]     | |________________________________________________________________^ `Pool<DB>`
[INFO] [stdout] ...
[INFO] [stdout]  79 | / impl<DB: Database> ReusableExecutor<DB> for &Pool<DB>
[INFO] [stdout]  80 | | where
[INFO] [stdout]  81 | |     <DB as Database>::Arguments: IntoArguments<DB>,
[INFO] [stdout]  82 | |     for<'e> &'e mut DB::Connection: Executor<'e, Database = DB>,
[INFO] [stdout]     | |________________________________________________________________^ `&Pool<DB>`
[INFO] [stdout] ...
[INFO] [stdout]  96 | / impl<DB: Database> ReusableExecutor<DB> for &mut Pool<DB>
[INFO] [stdout]  97 | | where
[INFO] [stdout]  98 | |     <DB as Database>::Arguments: IntoArguments<DB>,
[INFO] [stdout]  99 | |     for<'e> &'e mut DB::Connection: Executor<'e, Database = DB>,
[INFO] [stdout]     | |________________________________________________________________^ `&mut Pool<DB>`
[INFO] [stdout] note: required by a bound in `generic::generic_insert_many_without_id`
[INFO] [stdout]    --> src/sql/generic.rs:276:8
[INFO] [stdout]     |
[INFO] [stdout] 270 | pub async fn generic_insert_many_without_id<S, DB, E>(
[INFO] [stdout] ...
[INFO] [stdout] 276 |     E: ReusableExecutor<DB>,
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^ required by this bound in `generic_insert_many_without_id`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `Sqlite: FormatPlaceholder` is not satisfied
[INFO] [stdout]    --> src/sql/generic.rs:558:14
[INFO] [stdout]     |
[INFO] [stdout] 558 |             .await
[INFO] [stdout]     |              ^^^^^ the trait `FormatPlaceholder` is not implemented for `Sqlite`
[INFO] [stdout]     |
[INFO] [stdout] help: this trait has no implementations, consider adding one
[INFO] [stdout]    --> src/sql/generic.rs:15:1
[INFO] [stdout]     |
[INFO] [stdout]  15 | pub trait FormatPlaceholder {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: required by a bound in `generic::generic_insert_many_without_id`
[INFO] [stdout]    --> src/sql/generic.rs:277:20
[INFO] [stdout]     |
[INFO] [stdout] 270 | pub async fn generic_insert_many_without_id<S, DB, E>(
[INFO] [stdout] ...
[INFO] [stdout] 277 |     DB: Database + FormatPlaceholder,
[INFO] [stdout]     |                    ^^^^^^^^^^^^^^^^^ required by this bound in `generic_insert_many_without_id`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] For more information about this error, try `rustc --explain E0277`.
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `crudly` (lib test) due to 20 previous errors
[INFO] running `Command { std: "docker" "inspect" "0adf385b2edeb9a4ec6524b43758bcd0614e1037f4a4665deb47fef7a5d73380", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "0adf385b2edeb9a4ec6524b43758bcd0614e1037f4a4665deb47fef7a5d73380", kill_on_drop: false }`
[INFO] [stdout] 0adf385b2edeb9a4ec6524b43758bcd0614e1037f4a4665deb47fef7a5d73380
