[INFO] cloning repository https://github.com/tndd/datadoggo
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/tndd/datadoggo" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Ftndd%2Fdatadoggo", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Ftndd%2Fdatadoggo'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] efeb90a46ff3c2f2860c9838782cecde2011104b
[INFO] checking tndd/datadoggo/efeb90a46ff3c2f2860c9838782cecde2011104b against master#f5e2df741b4a9820a7579f0c8eccc951706a8782 for pr-147995
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Ftndd%2Fdatadoggo" "/workspace/builds/worker-3-tc1/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-3-tc1/source'...
[INFO] [stderr] done.
[INFO] started tweaking git repo https://github.com/tndd/datadoggo
[INFO] finished tweaking git repo https://github.com/tndd/datadoggo
[INFO] tweaked toml for git repo https://github.com/tndd/datadoggo written to /workspace/builds/worker-3-tc1/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/tndd/datadoggo on toolchain f5e2df741b4a9820a7579f0c8eccc951706a8782
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+f5e2df741b4a9820a7579f0c8eccc951706a8782" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate git repo https://github.com/tndd/datadoggo 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" "+f5e2df741b4a9820a7579f0c8eccc951706a8782" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Updating crates.io index
[INFO] [stderr]  Downloading crates ...
[INFO] [stderr]   Downloaded never v0.1.0
[INFO] [stderr]   Downloaded rustls-webpki v0.103.5
[INFO] [stderr]   Downloaded diligent-date-parser v0.1.5
[INFO] [stderr]   Downloaded firecrawl-sdk v0.3.1
[INFO] [stderr]   Downloaded dateparser v0.2.1
[INFO] [stderr]   Downloaded rss v2.0.12
[INFO] [stderr]   Downloaded atom_syndication v0.12.7
[INFO] [stderr]   Downloaded wasm-bindgen-futures v0.4.51
[INFO] [stderr]   Downloaded indexmap v2.11.1
[INFO] [stderr]   Downloaded web-sys v0.3.78
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc1/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:e90291280db7d1fac5b66fc6dad9f9662629e7365a55743daf9bdf73ebc4ea79" "/opt/rustwide/cargo-home/bin/cargo" "+f5e2df741b4a9820a7579f0c8eccc951706a8782" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] d94f898bf0cff9b6d7609dd328082a7c9b0cfcfa7c3ffb6d8465d27a51791b96
[INFO] running `Command { std: "docker" "start" "-a" "d94f898bf0cff9b6d7609dd328082a7c9b0cfcfa7c3ffb6d8465d27a51791b96", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "d94f898bf0cff9b6d7609dd328082a7c9b0cfcfa7c3ffb6d8465d27a51791b96", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "d94f898bf0cff9b6d7609dd328082a7c9b0cfcfa7c3ffb6d8465d27a51791b96", kill_on_drop: false }`
[INFO] [stdout] d94f898bf0cff9b6d7609dd328082a7c9b0cfcfa7c3ffb6d8465d27a51791b96
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:e90291280db7d1fac5b66fc6dad9f9662629e7365a55743daf9bdf73ebc4ea79" "/opt/rustwide/cargo-home/bin/cargo" "+f5e2df741b4a9820a7579f0c8eccc951706a8782" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 43bd632ae743a19595b0d49453a9e98f515eefa24b487005aefccd0684f6def9
[INFO] running `Command { std: "docker" "start" "-a" "43bd632ae743a19595b0d49453a9e98f515eefa24b487005aefccd0684f6def9", kill_on_drop: false }`
[INFO] [stderr]    Compiling serde_core v1.0.223
[INFO] [stderr]    Compiling serde v1.0.223
[INFO] [stderr]    Compiling find-msvc-tools v0.1.1
[INFO] [stderr]    Compiling syn v2.0.106
[INFO] [stderr]    Compiling serde_json v1.0.145
[INFO] [stderr]     Checking indexmap v2.11.1
[INFO] [stderr]     Checking futures-util v0.3.31
[INFO] [stderr]    Compiling zerocopy v0.8.27
[INFO] [stderr]    Compiling cc v1.2.37
[INFO] [stderr]    Compiling log v0.4.28
[INFO] [stderr]    Compiling chrono v0.4.42
[INFO] [stderr]    Compiling ring v0.17.14
[INFO] [stderr]    Compiling openssl-sys v0.9.109
[INFO] [stderr]     Checking encoding_rs v0.8.35
[INFO] [stderr]    Compiling ppv-lite86 v0.2.21
[INFO] [stderr]    Compiling openssl v0.10.73
[INFO] [stderr]    Compiling native-tls v0.2.14
[INFO] [stderr]    Compiling bitflags v2.9.4
[INFO] [stderr]     Checking compression-codecs v0.4.30
[INFO] [stderr]    Compiling rand_chacha v0.3.1
[INFO] [stderr]     Checking rand v0.8.5
[INFO] [stderr]     Checking quick-xml v0.37.5
[INFO] [stderr]     Checking never v0.1.0
[INFO] [stderr]    Compiling rustls v0.23.31
[INFO] [stderr]     Checking rustls-webpki v0.103.5
[INFO] [stderr]    Compiling synstructure v0.13.2
[INFO] [stderr]    Compiling darling_core v0.20.11
[INFO] [stderr]    Compiling serde_derive v1.0.223
[INFO] [stderr]    Compiling zerofrom-derive v0.1.6
[INFO] [stderr]    Compiling yoke-derive v0.8.0
[INFO] [stderr]    Compiling zerovec-derive v0.11.1
[INFO] [stderr]    Compiling displaydoc v0.2.5
[INFO] [stderr]    Compiling tokio-macros v2.5.0
[INFO] [stderr]    Compiling tracing-attributes v0.1.30
[INFO] [stderr]    Compiling thiserror-impl v2.0.16
[INFO] [stderr]    Compiling openssl-macros v0.1.1
[INFO] [stderr]     Checking zerofrom v0.1.6
[INFO] [stderr]    Compiling yoke v0.8.0
[INFO] [stderr]    Compiling zerovec v0.11.4
[INFO] [stderr]    Compiling zerotrie v0.2.2
[INFO] [stderr]     Checking tracing v0.1.41
[INFO] [stderr]    Compiling darling_macro v0.20.11
[INFO] [stderr]    Compiling thiserror v2.0.16
[INFO] [stderr]    Compiling darling v0.20.11
[INFO] [stderr]    Compiling derive_builder_core v0.20.2
[INFO] [stderr]    Compiling serde_with_macros v3.14.0
[INFO] [stderr]    Compiling async-trait v0.1.89
[INFO] [stderr]    Compiling tinystr v0.8.1
[INFO] [stderr]     Checking icu_locale_core v2.0.0
[INFO] [stderr]     Checking potential_utf v0.1.3
[INFO] [stderr]     Checking icu_collections v2.0.0
[INFO] [stderr]     Checking icu_provider v2.0.0
[INFO] [stderr]     Checking smallvec v1.15.1
[INFO] [stderr]     Checking icu_properties v2.0.1
[INFO] [stderr]     Checking parking_lot_core v0.9.11
[INFO] [stderr]     Checking icu_normalizer v2.0.0
[INFO] [stderr]     Checking parking_lot v0.12.4
[INFO] [stderr]    Compiling either v1.15.0
[INFO] [stderr]     Checking tokio v1.47.1
[INFO] [stderr]     Checking futures-intrusive v0.5.0
[INFO] [stderr]    Compiling derive_builder_macro v0.20.2
[INFO] [stderr]     Checking diligent-date-parser v0.1.5
[INFO] [stderr]     Checking serde_urlencoded v0.7.1
[INFO] [stderr]     Checking idna_adapter v1.2.1
[INFO] [stderr]     Checking derive_builder v0.20.2
[INFO] [stderr]     Checking atom_syndication v0.12.7
[INFO] [stderr]     Checking idna v1.1.0
[INFO] [stderr]     Checking serde_with v3.14.0
[INFO] [stderr]     Checking dateparser v0.2.1
[INFO] [stderr]     Checking url v2.5.7
[INFO] [stderr]     Checking serde_yaml v0.9.34+deprecated
[INFO] [stderr]     Checking rss v2.0.12
[INFO] [stderr]    Compiling sqlx-core v0.8.6
[INFO] [stderr]     Checking tokio-util v0.7.16
[INFO] [stderr]     Checking tokio-stream v0.1.17
[INFO] [stderr]     Checking tokio-native-tls v0.3.1
[INFO] [stderr]     Checking tokio-rustls v0.26.2
[INFO] [stderr]     Checking tower v0.5.2
[INFO] [stderr]     Checking async-compression v0.4.30
[INFO] [stderr]     Checking tower-http v0.6.6
[INFO] [stderr]     Checking h2 v0.4.12
[INFO] [stderr]    Compiling sqlx-postgres v0.8.6
[INFO] [stderr]     Checking hyper v1.7.0
[INFO] [stderr]    Compiling sqlx-macros-core v0.8.6
[INFO] [stderr]     Checking hyper-util v0.1.16
[INFO] [stderr]    Compiling sqlx-macros v0.8.6
[INFO] [stderr]     Checking sqlx v0.8.6
[INFO] [stderr]     Checking hyper-rustls v0.27.7
[INFO] [stderr]     Checking hyper-tls v0.6.0
[INFO] [stderr]     Checking reqwest v0.12.23
[INFO] [stderr]     Checking firecrawl-sdk v0.3.1
[INFO] [stderr]     Checking datadoggo v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] error: set `DATABASE_URL` to use query macros online, or run `cargo sqlx prepare` to update the query cache
[INFO] [stdout]   --> src/core/article/command.rs:10:5
[INFO] [stdout]    |
[INFO] [stdout] 10 | /     sqlx::query!(
[INFO] [stdout] 11 | |         r#"
[INFO] [stdout] 12 | |         INSERT INTO articles (url, status_code, content)
[INFO] [stdout] 13 | |         VALUES ($1, $2, $3)
[INFO] [stdout] ...  |
[INFO] [stdout] 23 | |         article.content
[INFO] [stdout] 24 | |     )
[INFO] [stdout]    | |_____^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this error originates in the macro `$crate::sqlx_macros::expand_query` which comes from the expansion of the macro `sqlx::query` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: set `DATABASE_URL` to use query macros online, or run `cargo sqlx prepare` to update the query cache
[INFO] [stdout]   --> src/core/article/command.rs:66:23
[INFO] [stdout]    |
[INFO] [stdout] 66 |               let row = sqlx::query!(
[INFO] [stdout]    |  _______________________^
[INFO] [stdout] 67 | |                 "SELECT url, status_code, content FROM articles WHERE url = $1",
[INFO] [stdout] 68 | |                 article.url
[INFO] [stdout] 69 | |             )
[INFO] [stdout]    | |_____________^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this error originates in the macro `$crate::sqlx_macros::expand_query` which comes from the expansion of the macro `sqlx::query` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: set `DATABASE_URL` to use query macros online, or run `cargo sqlx prepare` to update the query cache
[INFO] [stdout]   --> src/core/article/command.rs:92:30
[INFO] [stdout]    |
[INFO] [stdout] 92 |               let before_row = sqlx::query!(
[INFO] [stdout]    |  ______________________________^
[INFO] [stdout] 93 | |                 "SELECT timestamp FROM articles WHERE url = $1",
[INFO] [stdout] 94 | |                 updated_article.url
[INFO] [stdout] 95 | |             )
[INFO] [stdout]    | |_____________^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this error originates in the macro `$crate::sqlx_macros::expand_query` which comes from the expansion of the macro `sqlx::query` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: set `DATABASE_URL` to use query macros online, or run `cargo sqlx prepare` to update the query cache
[INFO] [stdout]    --> src/core/article/command.rs:102:29
[INFO] [stdout]     |
[INFO] [stdout] 102 |               let after_row = sqlx::query!(
[INFO] [stdout]     |  _____________________________^
[INFO] [stdout] 103 | |                 "SELECT status_code, content, timestamp FROM articles WHERE url = $1",
[INFO] [stdout] 104 | |                 updated_article.url
[INFO] [stdout] 105 | |             )
[INFO] [stdout]     | |_____________^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `$crate::sqlx_macros::expand_query` which comes from the expansion of the macro `sqlx::query` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: set `DATABASE_URL` to use query macros online, or run `cargo sqlx prepare` to update the query cache
[INFO] [stdout]    --> src/core/article/command.rs:133:30
[INFO] [stdout]     |
[INFO] [stdout] 133 |               let before_row = sqlx::query!(
[INFO] [stdout]     |  ______________________________^
[INFO] [stdout] 134 | |                 "SELECT timestamp FROM articles WHERE url = $1",
[INFO] [stdout] 135 | |                 same_article.url
[INFO] [stdout] 136 | |             )
[INFO] [stdout]     | |_____________^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `$crate::sqlx_macros::expand_query` which comes from the expansion of the macro `sqlx::query` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: set `DATABASE_URL` to use query macros online, or run `cargo sqlx prepare` to update the query cache
[INFO] [stdout]    --> src/core/article/command.rs:143:29
[INFO] [stdout]     |
[INFO] [stdout] 143 |               let after_row = sqlx::query!(
[INFO] [stdout]     |  _____________________________^
[INFO] [stdout] 144 | |                 "SELECT timestamp FROM articles WHERE url = $1",
[INFO] [stdout] 145 | |                 same_article.url
[INFO] [stdout] 146 | |             )
[INFO] [stdout]     | |_____________^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `$crate::sqlx_macros::expand_query` which comes from the expansion of the macro `sqlx::query` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: set `DATABASE_URL` to use query macros online, or run `cargo sqlx prepare` to update the query cache
[INFO] [stdout]    --> src/core/article/command.rs:168:30
[INFO] [stdout]     |
[INFO] [stdout] 168 |               let before_row = sqlx::query!(
[INFO] [stdout]     |  ______________________________^
[INFO] [stdout] 169 | |                 "SELECT timestamp FROM articles WHERE url = $1",
[INFO] [stdout] 170 | |                 status_changed_article.url
[INFO] [stdout] 171 | |             )
[INFO] [stdout]     | |_____________^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `$crate::sqlx_macros::expand_query` which comes from the expansion of the macro `sqlx::query` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: set `DATABASE_URL` to use query macros online, or run `cargo sqlx prepare` to update the query cache
[INFO] [stdout]    --> src/core/article/command.rs:178:29
[INFO] [stdout]     |
[INFO] [stdout] 178 |               let after_row = sqlx::query!(
[INFO] [stdout]     |  _____________________________^
[INFO] [stdout] 179 | |                 "SELECT status_code, timestamp FROM articles WHERE url = $1",
[INFO] [stdout] 180 | |                 status_changed_article.url
[INFO] [stdout] 181 | |             )
[INFO] [stdout]     | |_____________^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `$crate::sqlx_macros::expand_query` which comes from the expansion of the macro `sqlx::query` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: set `DATABASE_URL` to use query macros online, or run `cargo sqlx prepare` to update the query cache
[INFO] [stdout]    --> src/core/article/command.rs:216:25
[INFO] [stdout]     |
[INFO] [stdout] 216 |             let count = sqlx::query!("SELECT COUNT(*) as count FROM articles")
[INFO] [stdout]     |                         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `$crate::sqlx_macros::expand_query` which comes from the expansion of the macro `sqlx::query` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: set `DATABASE_URL` to use query macros online, or run `cargo sqlx prepare` to update the query cache
[INFO] [stdout]    --> src/core/article/command.rs:246:23
[INFO] [stdout]     |
[INFO] [stdout] 246 |               let row = sqlx::query!(
[INFO] [stdout]     |  _______________________^
[INFO] [stdout] 247 | |                 "SELECT url, status_code, content FROM articles WHERE url = $1",
[INFO] [stdout] 248 | |                 url
[INFO] [stdout] 249 | |             )
[INFO] [stdout]     | |_____________^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `$crate::sqlx_macros::expand_query` which comes from the expansion of the macro `sqlx::query` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: set `DATABASE_URL` to use query macros online, or run `cargo sqlx prepare` to update the query cache
[INFO] [stdout]    --> src/core/article/command.rs:275:23
[INFO] [stdout]     |
[INFO] [stdout] 275 |               let row = sqlx::query!(
[INFO] [stdout]     |  _______________________^
[INFO] [stdout] 276 | |                 "SELECT url, status_code, content FROM articles WHERE url = $1",
[INFO] [stdout] 277 | |                 url
[INFO] [stdout] 278 | |             )
[INFO] [stdout]     | |_____________^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `$crate::sqlx_macros::expand_query` which comes from the expansion of the macro `sqlx::query` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: set `DATABASE_URL` to use query macros online, or run `cargo sqlx prepare` to update the query cache
[INFO] [stdout]    --> src/core/article/command.rs:307:25
[INFO] [stdout]     |
[INFO] [stdout] 307 |             let count = sqlx::query!("SELECT COUNT(*) as count FROM articles")
[INFO] [stdout]     |                         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `$crate::sqlx_macros::expand_query` which comes from the expansion of the macro `sqlx::query` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: set `DATABASE_URL` to use query macros online, or run `cargo sqlx prepare` to update the query cache
[INFO] [stdout]    --> src/core/article/command.rs:314:31
[INFO] [stdout]     |
[INFO] [stdout] 314 |               let success_row = sqlx::query!(
[INFO] [stdout]     |  _______________________________^
[INFO] [stdout] 315 | |                 "SELECT status_code FROM articles WHERE url = $1",
[INFO] [stdout] 316 | |                 "https://multi1.com/article"
[INFO] [stdout] 317 | |             )
[INFO] [stdout]     | |_____________^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `$crate::sqlx_macros::expand_query` which comes from the expansion of the macro `sqlx::query` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: set `DATABASE_URL` to use query macros online, or run `cargo sqlx prepare` to update the query cache
[INFO] [stdout]    --> src/core/article/command.rs:322:29
[INFO] [stdout]     |
[INFO] [stdout] 322 |               let error_row = sqlx::query!(
[INFO] [stdout]     |  _____________________________^
[INFO] [stdout] 323 | |                 "SELECT status_code FROM articles WHERE url = $1",
[INFO] [stdout] 324 | |                 "https://multi2.com/article"
[INFO] [stdout] 325 | |             )
[INFO] [stdout]     | |_____________^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `$crate::sqlx_macros::expand_query` which comes from the expansion of the macro `sqlx::query` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: set `DATABASE_URL` to use query macros online, or run `cargo sqlx prepare` to update the query cache
[INFO] [stdout]   --> src/core/article/command.rs:10:5
[INFO] [stdout]    |
[INFO] [stdout] 10 | /     sqlx::query!(
[INFO] [stdout] 11 | |         r#"
[INFO] [stdout] 12 | |         INSERT INTO articles (url, status_code, content)
[INFO] [stdout] 13 | |         VALUES ($1, $2, $3)
[INFO] [stdout] ...  |
[INFO] [stdout] 23 | |         article.content
[INFO] [stdout] 24 | |     )
[INFO] [stdout]    | |_____^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this error originates in the macro `$crate::sqlx_macros::expand_query` which comes from the expansion of the macro `sqlx::query` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: set `DATABASE_URL` to use query macros online, or run `cargo sqlx prepare` to update the query cache
[INFO] [stdout]    --> src/core/article/search.rs:437:13
[INFO] [stdout]     |
[INFO] [stdout] 437 | /             sqlx::query!(
[INFO] [stdout] 438 | |                 r#"
[INFO] [stdout] 439 | |                 INSERT INTO articles (url, timestamp, status_code, content)
[INFO] [stdout] 440 | |                 SELECT url, NOW(), 200, 'テスト成功内容'
[INFO] [stdout] ...   |
[INFO] [stdout] 443 | |             "#
[INFO] [stdout] 444 | |             )
[INFO] [stdout]     | |_____________^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `$crate::sqlx_macros::expand_query` which comes from the expansion of the macro `sqlx::query` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: set `DATABASE_URL` to use query macros online, or run `cargo sqlx prepare` to update the query cache
[INFO] [stdout]    --> src/core/article/search.rs:448:13
[INFO] [stdout]     |
[INFO] [stdout] 448 |             sqlx::query!("UPDATE articles SET status_code = 200 WHERE status_code != 200")
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `$crate::sqlx_macros::expand_query` which comes from the expansion of the macro `sqlx::query` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: set `DATABASE_URL` to use query macros online, or run `cargo sqlx prepare` to update the query cache
[INFO] [stdout]    --> src/core/article/search.rs:462:13
[INFO] [stdout]     |
[INFO] [stdout] 462 |             sqlx::query!("DELETE FROM articles").execute(&pool).await?;
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `$crate::sqlx_macros::expand_query` which comes from the expansion of the macro `sqlx::query` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: set `DATABASE_URL` to use query macros online, or run `cargo sqlx prepare` to update the query cache
[INFO] [stdout]   --> src/core/link/command.rs:24:5
[INFO] [stdout]    |
[INFO] [stdout] 24 | /     sqlx::query!(
[INFO] [stdout] 25 | |         r#"
[INFO] [stdout] 26 | |         INSERT INTO article_links (url, title, pub_date, source)
[INFO] [stdout] 27 | |         SELECT * FROM UNNEST($1::text[], $2::text[], $3::timestamptz[], $4::text[])
[INFO] [stdout] ...  |
[INFO] [stdout] 38 | |         &sources
[INFO] [stdout] 39 | |     )
[INFO] [stdout]    | |_____^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this error originates in the macro `$crate::sqlx_macros::expand_query` which comes from the expansion of the macro `sqlx::query` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: set `DATABASE_URL` to use query macros online, or run `cargo sqlx prepare` to update the query cache
[INFO] [stdout]   --> src/core/link/command.rs:83:25
[INFO] [stdout]    |
[INFO] [stdout] 83 |             let count = sqlx::query_scalar!("SELECT COUNT(*) FROM article_links")
[INFO] [stdout]    |                         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this error originates in the macro `$crate::sqlx_macros::expand_query` which comes from the expansion of the macro `sqlx::query_scalar` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: set `DATABASE_URL` to use query macros online, or run `cargo sqlx prepare` to update the query cache
[INFO] [stdout]    --> src/core/link/command.rs:109:25
[INFO] [stdout]     |
[INFO] [stdout] 109 |             let count = sqlx::query_scalar!("SELECT COUNT(*) FROM article_links")
[INFO] [stdout]     |                         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `$crate::sqlx_macros::expand_query` which comes from the expansion of the macro `sqlx::query_scalar` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: set `DATABASE_URL` to use query macros online, or run `cargo sqlx prepare` to update the query cache
[INFO] [stdout]    --> src/core/link/command.rs:152:25
[INFO] [stdout]     |
[INFO] [stdout] 152 |             let count = sqlx::query_scalar!("SELECT COUNT(*) FROM article_links")
[INFO] [stdout]     |                         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `$crate::sqlx_macros::expand_query` which comes from the expansion of the macro `sqlx::query_scalar` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: set `DATABASE_URL` to use query macros online, or run `cargo sqlx prepare` to update the query cache
[INFO] [stdout]    --> src/core/link/command.rs:172:33
[INFO] [stdout]     |
[INFO] [stdout] 172 |             let initial_count = sqlx::query_scalar!("SELECT COUNT(*) FROM article_links")
[INFO] [stdout]     |                                 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `$crate::sqlx_macros::expand_query` which comes from the expansion of the macro `sqlx::query_scalar` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: set `DATABASE_URL` to use query macros online, or run `cargo sqlx prepare` to update the query cache
[INFO] [stdout]    --> src/core/link/command.rs:201:31
[INFO] [stdout]     |
[INFO] [stdout] 201 |             let final_count = sqlx::query_scalar!("SELECT COUNT(*) FROM article_links")
[INFO] [stdout]     |                               ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `$crate::sqlx_macros::expand_query` which comes from the expansion of the macro `sqlx::query_scalar` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: set `DATABASE_URL` to use query macros online, or run `cargo sqlx prepare` to update the query cache
[INFO] [stdout]    --> src/core/link/command.rs:211:49
[INFO] [stdout]     |
[INFO] [stdout] 211 |               let saved_article: Option<String> = sqlx::query_scalar!(
[INFO] [stdout]     |  _________________________________________________^
[INFO] [stdout] 212 | |                 "SELECT title FROM article_links WHERE url = $1",
[INFO] [stdout] 213 | |                 "https://security-test.example.com/sql-injection-attempt"
[INFO] [stdout] 214 | |             )
[INFO] [stdout]     | |_____________^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `$crate::sqlx_macros::expand_query` which comes from the expansion of the macro `sqlx::query_scalar` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: set `DATABASE_URL` to use query macros online, or run `cargo sqlx prepare` to update the query cache
[INFO] [stdout]    --> src/core/link/command.rs:258:48
[INFO] [stdout]     |
[INFO] [stdout] 258 |               let first_save: (String, String) = sqlx::query_as!(
[INFO] [stdout]     |  ________________________________________________^
[INFO] [stdout] 259 | |                 ArticleLink,
[INFO] [stdout] 260 | |                 "SELECT url, title, pub_date, source FROM article_links WHERE url = $1",
[INFO] [stdout] 261 | |                 duplicate_url
[INFO] [stdout] 262 | |             )
[INFO] [stdout]     | |_____________^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `$crate::sqlx_macros::expand_query` which comes from the expansion of the macro `sqlx::query_as` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: set `DATABASE_URL` to use query macros online, or run `cargo sqlx prepare` to update the query cache
[INFO] [stdout]   --> src/core/link/command.rs:24:5
[INFO] [stdout]    |
[INFO] [stdout] 24 | /     sqlx::query!(
[INFO] [stdout] 25 | |         r#"
[INFO] [stdout] 26 | |         INSERT INTO article_links (url, title, pub_date, source)
[INFO] [stdout] 27 | |         SELECT * FROM UNNEST($1::text[], $2::text[], $3::timestamptz[], $4::text[])
[INFO] [stdout] ...  |
[INFO] [stdout] 38 | |         &sources
[INFO] [stdout] 39 | |     )
[INFO] [stdout]    | |_____^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this error originates in the macro `$crate::sqlx_macros::expand_query` which comes from the expansion of the macro `sqlx::query` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: set `DATABASE_URL` to use query macros online, or run `cargo sqlx prepare` to update the query cache
[INFO] [stdout]    --> src/core/link/command.rs:273:50
[INFO] [stdout]     |
[INFO] [stdout] 273 |               let updated_save: (String, String) = sqlx::query_as!(
[INFO] [stdout]     |  __________________________________________________^
[INFO] [stdout] 274 | |                 ArticleLink,
[INFO] [stdout] 275 | |                 "SELECT url, title, pub_date, source FROM article_links WHERE url = $1",
[INFO] [stdout] 276 | |                 duplicate_url
[INFO] [stdout] 277 | |             )
[INFO] [stdout]     | |_____________^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `$crate::sqlx_macros::expand_query` which comes from the expansion of the macro `sqlx::query_as` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: set `DATABASE_URL` to use query macros online, or run `cargo sqlx prepare` to update the query cache
[INFO] [stdout]    --> src/core/link/command.rs:286:30
[INFO] [stdout]     |
[INFO] [stdout] 286 |               let count: i64 = sqlx::query_scalar!(
[INFO] [stdout]     |  ______________________________^
[INFO] [stdout] 287 | |                 "SELECT COUNT(*) FROM article_links WHERE url = $1",
[INFO] [stdout] 288 | |                 duplicate_url
[INFO] [stdout] 289 | |             )
[INFO] [stdout]     | |_____________^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `$crate::sqlx_macros::expand_query` which comes from the expansion of the macro `sqlx::query_scalar` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: set `DATABASE_URL` to use query macros online, or run `cargo sqlx prepare` to update the query cache
[INFO] [stdout]   --> src/core/link/search.rs:15:25
[INFO] [stdout]    |
[INFO] [stdout] 15 |       let article_links = sqlx::query_as!(
[INFO] [stdout]    |  _________________________^
[INFO] [stdout] 16 | |         ArticleLink,
[INFO] [stdout] 17 | |         r#"
[INFO] [stdout] 18 | |         SELECT url, title, pub_date, source
[INFO] [stdout] ...  |
[INFO] [stdout] 28 | |         query.pub_date_to
[INFO] [stdout] 29 | |     )
[INFO] [stdout]    | |_____^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this error originates in the macro `$crate::sqlx_macros::expand_query` which comes from the expansion of the macro `sqlx::query_as` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: set `DATABASE_URL` to use query macros online, or run `cargo sqlx prepare` to update the query cache
[INFO] [stdout]   --> src/core/link/search.rs:15:25
[INFO] [stdout]    |
[INFO] [stdout] 15 |       let article_links = sqlx::query_as!(
[INFO] [stdout]    |  _________________________^
[INFO] [stdout] 16 | |         ArticleLink,
[INFO] [stdout] 17 | |         r#"
[INFO] [stdout] 18 | |         SELECT url, title, pub_date, source
[INFO] [stdout] ...  |
[INFO] [stdout] 28 | |         query.pub_date_to
[INFO] [stdout] 29 | |     )
[INFO] [stdout]    | |_____^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this error originates in the macro `$crate::sqlx_macros::expand_query` which comes from the expansion of the macro `sqlx::query_as` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: set `DATABASE_URL` to use query macros online, or run `cargo sqlx prepare` to update the query cache
[INFO] [stdout]   --> src/workflow/news/article.rs:82:34
[INFO] [stdout]    |
[INFO] [stdout] 82 |             let total_articles = sqlx::query_scalar!("SELECT COUNT(*) FROM articles")
[INFO] [stdout]    |                                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this error originates in the macro `$crate::sqlx_macros::expand_query` which comes from the expansion of the macro `sqlx::query_scalar` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: set `DATABASE_URL` to use query macros online, or run `cargo sqlx prepare` to update the query cache
[INFO] [stdout]   --> src/workflow/news/article.rs:92:17
[INFO] [stdout]    |
[INFO] [stdout] 92 |                 sqlx::query_scalar!("SELECT COUNT(*) FROM articles WHERE status_code = 200")
[INFO] [stdout]    |                 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this error originates in the macro `$crate::sqlx_macros::expand_query` which comes from the expansion of the macro `sqlx::query_scalar` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: set `DATABASE_URL` to use query macros online, or run `cargo sqlx prepare` to update the query cache
[INFO] [stdout]    --> src/workflow/news/article.rs:102:17
[INFO] [stdout]     |
[INFO] [stdout] 102 |                 sqlx::query_scalar!("SELECT COUNT(*) FROM articles WHERE status_code = 500")
[INFO] [stdout]     |                 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `$crate::sqlx_macros::expand_query` which comes from the expansion of the macro `sqlx::query_scalar` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: set `DATABASE_URL` to use query macros online, or run `cargo sqlx prepare` to update the query cache
[INFO] [stdout]    --> src/workflow/news/article.rs:111:43
[INFO] [stdout]     |
[INFO] [stdout] 111 |               let article_content: String = sqlx::query_scalar!(
[INFO] [stdout]     |  ___________________________________________^
[INFO] [stdout] 112 | |                 "SELECT content FROM articles WHERE url = $1",
[INFO] [stdout] 113 | |                 "https://news.example.com/article1"
[INFO] [stdout] 114 | |             )
[INFO] [stdout]     | |_____________^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `$crate::sqlx_macros::expand_query` which comes from the expansion of the macro `sqlx::query_scalar` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: set `DATABASE_URL` to use query macros online, or run `cargo sqlx prepare` to update the query cache
[INFO] [stdout]    --> src/workflow/news/article.rs:140:34
[INFO] [stdout]     |
[INFO] [stdout] 140 |             let total_articles = sqlx::query_scalar!("SELECT COUNT(*) FROM articles")
[INFO] [stdout]     |                                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `$crate::sqlx_macros::expand_query` which comes from the expansion of the macro `sqlx::query_scalar` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: set `DATABASE_URL` to use query macros online, or run `cargo sqlx prepare` to update the query cache
[INFO] [stdout]    --> src/workflow/news/article.rs:150:17
[INFO] [stdout]     |
[INFO] [stdout] 150 |                 sqlx::query_scalar!("SELECT COUNT(*) FROM articles WHERE status_code = 200")
[INFO] [stdout]     |                 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `$crate::sqlx_macros::expand_query` which comes from the expansion of the macro `sqlx::query_scalar` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: set `DATABASE_URL` to use query macros online, or run `cargo sqlx prepare` to update the query cache
[INFO] [stdout]    --> src/workflow/news/article.rs:160:17
[INFO] [stdout]     |
[INFO] [stdout] 160 |                 sqlx::query_scalar!("SELECT COUNT(*) FROM articles WHERE status_code = 500")
[INFO] [stdout]     |                 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `$crate::sqlx_macros::expand_query` which comes from the expansion of the macro `sqlx::query_scalar` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: set `DATABASE_URL` to use query macros online, or run `cargo sqlx prepare` to update the query cache
[INFO] [stdout]    --> src/workflow/news/article.rs:169:43
[INFO] [stdout]     |
[INFO] [stdout] 169 |               let success_content: String = sqlx::query_scalar!(
[INFO] [stdout]     |  ___________________________________________^
[INFO] [stdout] 170 | |                 "SELECT content FROM articles WHERE url = $1",
[INFO] [stdout] 171 | |                 "https://success.example.com/news1"
[INFO] [stdout] 172 | |             )
[INFO] [stdout]     | |_____________^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `$crate::sqlx_macros::expand_query` which comes from the expansion of the macro `sqlx::query_scalar` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: set `DATABASE_URL` to use query macros online, or run `cargo sqlx prepare` to update the query cache
[INFO] [stdout]    --> src/workflow/news/article.rs:195:21
[INFO] [stdout]     |
[INFO] [stdout] 195 |                     sqlx::query_scalar!("SELECT COUNT(*) FROM articles WHERE status_code != 200")
[INFO] [stdout]     |                     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `$crate::sqlx_macros::expand_query` which comes from the expansion of the macro `sqlx::query_scalar` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: set `DATABASE_URL` to use query macros online, or run `cargo sqlx prepare` to update the query cache
[INFO] [stdout]    --> src/workflow/news/article.rs:204:46
[INFO] [stdout]     |
[INFO] [stdout] 204 |                   let _initial_backlog_count = sqlx::query_scalar!(
[INFO] [stdout]     |  ______________________________________________^
[INFO] [stdout] 205 | |                     "SELECT COUNT(*) FROM article_links al 
[INFO] [stdout] 206 | |                  LEFT JOIN articles a ON al.url = a.url 
[INFO] [stdout] 207 | |                  WHERE a.url IS NULL OR a.status_code != 200"
[INFO] [stdout] 208 | |                 )
[INFO] [stdout]     | |_________________^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `$crate::sqlx_macros::expand_query` which comes from the expansion of the macro `sqlx::query_scalar` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: set `DATABASE_URL` to use query macros online, or run `cargo sqlx prepare` to update the query cache
[INFO] [stdout]    --> src/workflow/news/article.rs:222:21
[INFO] [stdout]     |
[INFO] [stdout] 222 |                     sqlx::query_scalar!("SELECT COUNT(*) FROM articles WHERE status_code = 200")
[INFO] [stdout]     |                     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `$crate::sqlx_macros::expand_query` which comes from the expansion of the macro `sqlx::query_scalar` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: set `DATABASE_URL` to use query macros online, or run `cargo sqlx prepare` to update the query cache
[INFO] [stdout]    --> src/workflow/news/article.rs:227:21
[INFO] [stdout]     |
[INFO] [stdout] 227 |                     sqlx::query_scalar!("SELECT COUNT(*) FROM articles WHERE status_code != 200")
[INFO] [stdout]     |                     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `$crate::sqlx_macros::expand_query` which comes from the expansion of the macro `sqlx::query_scalar` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: set `DATABASE_URL` to use query macros online, or run `cargo sqlx prepare` to update the query cache
[INFO] [stdout]    --> src/workflow/news/article.rs:238:43
[INFO] [stdout]     |
[INFO] [stdout] 238 |                   let final_backlog_count = sqlx::query_scalar!(
[INFO] [stdout]     |  ___________________________________________^
[INFO] [stdout] 239 | |                     "SELECT COUNT(*) FROM article_links al 
[INFO] [stdout] 240 | |                  LEFT JOIN articles a ON al.url = a.url 
[INFO] [stdout] 241 | |                  WHERE a.url IS NULL OR a.status_code != 200"
[INFO] [stdout] 242 | |                 )
[INFO] [stdout]     | |_________________^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `$crate::sqlx_macros::expand_query` which comes from the expansion of the macro `sqlx::query_scalar` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: set `DATABASE_URL` to use query macros online, or run `cargo sqlx prepare` to update the query cache
[INFO] [stdout]    --> src/workflow/news/article.rs:253:59
[INFO] [stdout]     |
[INFO] [stdout] 253 |                   let reprocessed_content: Option<String> = sqlx::query_scalar!(
[INFO] [stdout]     |  ___________________________________________________________^
[INFO] [stdout] 254 | |                     "SELECT content FROM articles WHERE content = $1 LIMIT 1",
[INFO] [stdout] 255 | |                     "再処理成功内容"
[INFO] [stdout] 256 | |                 )
[INFO] [stdout]     | |_________________^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `$crate::sqlx_macros::expand_query` which comes from the expansion of the macro `sqlx::query_scalar` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: set `DATABASE_URL` to use query macros online, or run `cargo sqlx prepare` to update the query cache
[INFO] [stdout]    --> src/workflow/news/article.rs:296:21
[INFO] [stdout]     |
[INFO] [stdout] 296 |                     sqlx::query_scalar!("SELECT COUNT(*) FROM articles WHERE status_code = 500")
[INFO] [stdout]     |                     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `$crate::sqlx_macros::expand_query` which comes from the expansion of the macro `sqlx::query_scalar` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: set `DATABASE_URL` to use query macros online, or run `cargo sqlx prepare` to update the query cache
[INFO] [stdout]    --> src/workflow/news/article.rs:306:53
[INFO] [stdout]     |
[INFO] [stdout] 306 |                   let error_content: Option<String> = sqlx::query_scalar!(
[INFO] [stdout]     |  _____________________________________________________^
[INFO] [stdout] 307 | |                     "SELECT content FROM articles WHERE status_code = 500 LIMIT 1"
[INFO] [stdout] 308 | |                 )
[INFO] [stdout]     | |_________________^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `$crate::sqlx_macros::expand_query` which comes from the expansion of the macro `sqlx::query_scalar` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: set `DATABASE_URL` to use query macros online, or run `cargo sqlx prepare` to update the query cache
[INFO] [stdout]    --> src/workflow/news/article.rs:347:21
[INFO] [stdout]     |
[INFO] [stdout] 347 |                     sqlx::query_scalar!("SELECT COUNT(*) FROM articles WHERE status_code = 200")
[INFO] [stdout]     |                     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `$crate::sqlx_macros::expand_query` which comes from the expansion of the macro `sqlx::query_scalar` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: set `DATABASE_URL` to use query macros online, or run `cargo sqlx prepare` to update the query cache
[INFO] [stdout]    --> src/workflow/news/article.rs:352:21
[INFO] [stdout]     |
[INFO] [stdout] 352 |                     sqlx::query_scalar!("SELECT COUNT(*) FROM articles WHERE status_code != 200")
[INFO] [stdout]     |                     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `$crate::sqlx_macros::expand_query` which comes from the expansion of the macro `sqlx::query_scalar` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: set `DATABASE_URL` to use query macros online, or run `cargo sqlx prepare` to update the query cache
[INFO] [stdout]    --> src/workflow/news/article.rs:366:21
[INFO] [stdout]     |
[INFO] [stdout] 366 |                     sqlx::query_scalar!("SELECT COUNT(*) FROM articles WHERE status_code = 200")
[INFO] [stdout]     |                     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `$crate::sqlx_macros::expand_query` which comes from the expansion of the macro `sqlx::query_scalar` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: set `DATABASE_URL` to use query macros online, or run `cargo sqlx prepare` to update the query cache
[INFO] [stdout]    --> src/workflow/news/article.rs:371:21
[INFO] [stdout]     |
[INFO] [stdout] 371 |                     sqlx::query_scalar!("SELECT COUNT(*) FROM articles WHERE status_code != 200")
[INFO] [stdout]     |                     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `$crate::sqlx_macros::expand_query` which comes from the expansion of the macro `sqlx::query_scalar` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: set `DATABASE_URL` to use query macros online, or run `cargo sqlx prepare` to update the query cache
[INFO] [stdout]    --> src/workflow/news/article.rs:397:59
[INFO] [stdout]     |
[INFO] [stdout] 397 |                   let new_success_content: Option<String> = sqlx::query_scalar!(
[INFO] [stdout]     |  ___________________________________________________________^
[INFO] [stdout] 398 | |                     "SELECT content FROM articles WHERE content = $1 LIMIT 1",
[INFO] [stdout] 399 | |                     "成功記事内容"
[INFO] [stdout] 400 | |                 )
[INFO] [stdout]     | |_________________^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `$crate::sqlx_macros::expand_query` which comes from the expansion of the macro `sqlx::query_scalar` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: set `DATABASE_URL` to use query macros online, or run `cargo sqlx prepare` to update the query cache
[INFO] [stdout]   --> src/workflow/news/rss.rs:81:33
[INFO] [stdout]    |
[INFO] [stdout] 81 |             let initial_count = sqlx::query_scalar!("SELECT COUNT(*) FROM article_links")
[INFO] [stdout]    |                                 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this error originates in the macro `$crate::sqlx_macros::expand_query` which comes from the expansion of the macro `sqlx::query_scalar` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: set `DATABASE_URL` to use query macros online, or run `cargo sqlx prepare` to update the query cache
[INFO] [stdout]   --> src/workflow/news/rss.rs:92:31
[INFO] [stdout]    |
[INFO] [stdout] 92 |             let final_count = sqlx::query_scalar!("SELECT COUNT(*) FROM article_links")
[INFO] [stdout]    |                               ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this error originates in the macro `$crate::sqlx_macros::expand_query` which comes from the expansion of the macro `sqlx::query_scalar` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: set `DATABASE_URL` to use query macros online, or run `cargo sqlx prepare` to update the query cache
[INFO] [stdout]    --> src/workflow/news/rss.rs:101:39
[INFO] [stdout]     |
[INFO] [stdout] 101 |                   let feed_link_count = sqlx::query_scalar!(
[INFO] [stdout]     |  _______________________________________^
[INFO] [stdout] 102 | |                     "SELECT COUNT(*) FROM article_links WHERE url LIKE $1",
[INFO] [stdout] 103 | |                     format!("https://{}.example.com/%", hash)
[INFO] [stdout] 104 | |                 )
[INFO] [stdout]     | |_________________^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `$crate::sqlx_macros::expand_query` which comes from the expansion of the macro `sqlx::query_scalar` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: set `DATABASE_URL` to use query macros online, or run `cargo sqlx prepare` to update the query cache
[INFO] [stdout]    --> src/workflow/news/rss.rs:143:33
[INFO] [stdout]     |
[INFO] [stdout] 143 |             let success_count = sqlx::query_scalar!("SELECT COUNT(*) FROM article_links")
[INFO] [stdout]     |                                 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `$crate::sqlx_macros::expand_query` which comes from the expansion of the macro `sqlx::query_scalar` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: set `DATABASE_URL` to use query macros online, or run `cargo sqlx prepare` to update the query cache
[INFO] [stdout]    --> src/workflow/news/rss.rs:153:31
[INFO] [stdout]     |
[INFO] [stdout] 153 |             let final_count = sqlx::query_scalar!("SELECT COUNT(*) FROM article_links")
[INFO] [stdout]     |                               ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `$crate::sqlx_macros::expand_query` which comes from the expansion of the macro `sqlx::query_scalar` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: set `DATABASE_URL` to use query macros online, or run `cargo sqlx prepare` to update the query cache
[INFO] [stdout]    --> src/workflow/news/rss.rs:188:33
[INFO] [stdout]     |
[INFO] [stdout] 188 |             let initial_count = sqlx::query_scalar!("SELECT COUNT(*) FROM article_links")
[INFO] [stdout]     |                                 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `$crate::sqlx_macros::expand_query` which comes from the expansion of the macro `sqlx::query_scalar` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: set `DATABASE_URL` to use query macros online, or run `cargo sqlx prepare` to update the query cache
[INFO] [stdout]    --> src/workflow/news/rss.rs:198:37
[INFO] [stdout]     |
[INFO] [stdout] 198 |             let after_first_count = sqlx::query_scalar!("SELECT COUNT(*) FROM article_links")
[INFO] [stdout]     |                                     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `$crate::sqlx_macros::expand_query` which comes from the expansion of the macro `sqlx::query_scalar` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: set `DATABASE_URL` to use query macros online, or run `cargo sqlx prepare` to update the query cache
[INFO] [stdout]    --> src/workflow/news/rss.rs:205:17
[INFO] [stdout]     |
[INFO] [stdout] 205 |                 sqlx::query_scalar!("SELECT pub_date FROM article_links ORDER BY url")
[INFO] [stdout]     |                 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `$crate::sqlx_macros::expand_query` which comes from the expansion of the macro `sqlx::query_scalar` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: set `DATABASE_URL` to use query macros online, or run `cargo sqlx prepare` to update the query cache
[INFO] [stdout]    --> src/workflow/news/rss.rs:224:38
[INFO] [stdout]     |
[INFO] [stdout] 224 |             let after_second_count = sqlx::query_scalar!("SELECT COUNT(*) FROM article_links")
[INFO] [stdout]     |                                      ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `$crate::sqlx_macros::expand_query` which comes from the expansion of the macro `sqlx::query_scalar` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: set `DATABASE_URL` to use query macros online, or run `cargo sqlx prepare` to update the query cache
[INFO] [stdout]    --> src/workflow/news/rss.rs:235:17
[INFO] [stdout]     |
[INFO] [stdout] 235 |                 sqlx::query_scalar!("SELECT pub_date FROM article_links ORDER BY url")
[INFO] [stdout]     |                 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `$crate::sqlx_macros::expand_query` which comes from the expansion of the macro `sqlx::query_scalar` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: set `DATABASE_URL` to use query macros online, or run `cargo sqlx prepare` to update the query cache
[INFO] [stdout]    --> src/workflow/news/rss.rs:273:31
[INFO] [stdout]     |
[INFO] [stdout] 273 |             let final_count = sqlx::query_scalar!("SELECT COUNT(*) FROM article_links")
[INFO] [stdout]     |                               ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `$crate::sqlx_macros::expand_query` which comes from the expansion of the macro `sqlx::query_scalar` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: set `DATABASE_URL` to use query macros online, or run `cargo sqlx prepare` to update the query cache
[INFO] [stdout]    --> src/workflow/news/rss.rs:291:35
[INFO] [stdout]     |
[INFO] [stdout] 291 |                   let link_exists = sqlx::query_scalar!(
[INFO] [stdout]     |  ___________________________________^
[INFO] [stdout] 292 | |                     "SELECT COUNT(*) FROM article_links WHERE title = $1 AND url = $2",
[INFO] [stdout] 293 | |                     expected_title,
[INFO] [stdout] 294 | |                     expected_link
[INFO] [stdout] 295 | |                 )
[INFO] [stdout]     | |_________________^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `$crate::sqlx_macros::expand_query` which comes from the expansion of the macro `sqlx::query_scalar` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: set `DATABASE_URL` to use query macros online, or run `cargo sqlx prepare` to update the query cache
[INFO] [stdout]    --> src/workflow/news/rss.rs:322:38
[INFO] [stdout]     |
[INFO] [stdout] 322 |             let final_unique_count = sqlx::query_scalar!("SELECT COUNT(*) FROM article_links")
[INFO] [stdout]     |                                      ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `$crate::sqlx_macros::expand_query` which comes from the expansion of the macro `sqlx::query_scalar` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: set `DATABASE_URL` to use query macros online, or run `cargo sqlx prepare` to update the query cache
[INFO] [stdout]    --> src/workflow/news/rss.rs:367:33
[INFO] [stdout]     |
[INFO] [stdout] 367 |             let initial_count = sqlx::query_scalar!("SELECT COUNT(*) FROM article_links")
[INFO] [stdout]     |                                 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `$crate::sqlx_macros::expand_query` which comes from the expansion of the macro `sqlx::query_scalar` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: set `DATABASE_URL` to use query macros online, or run `cargo sqlx prepare` to update the query cache
[INFO] [stdout]    --> src/workflow/news/rss.rs:376:37
[INFO] [stdout]     |
[INFO] [stdout] 376 |             let _after_tech_count = sqlx::query_scalar!("SELECT COUNT(*) FROM article_links")
[INFO] [stdout]     |                                     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `$crate::sqlx_macros::expand_query` which comes from the expansion of the macro `sqlx::query_scalar` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: set `DATABASE_URL` to use query macros online, or run `cargo sqlx prepare` to update the query cache
[INFO] [stdout]    --> src/workflow/news/rss.rs:385:40
[INFO] [stdout]     |
[INFO] [stdout] 385 |             let after_business_count = sqlx::query_scalar!("SELECT COUNT(*) FROM article_links")
[INFO] [stdout]     |                                        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `$crate::sqlx_macros::expand_query` which comes from the expansion of the macro `sqlx::query_scalar` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: set `DATABASE_URL` to use query macros online, or run `cargo sqlx prepare` to update the query cache
[INFO] [stdout]    --> src/workflow/news/rss.rs:402:30
[INFO] [stdout]     |
[INFO] [stdout] 402 |               let tech_count = sqlx::query_scalar!(
[INFO] [stdout]     |  ______________________________^
[INFO] [stdout] 403 | |                 "SELECT COUNT(*) FROM article_links WHERE url LIKE $1",
[INFO] [stdout] 404 | |                 format!("https://{}.example.com/%", tech_hash)
[INFO] [stdout] 405 | |             )
[INFO] [stdout]     | |_____________^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `$crate::sqlx_macros::expand_query` which comes from the expansion of the macro `sqlx::query_scalar` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: set `DATABASE_URL` to use query macros online, or run `cargo sqlx prepare` to update the query cache
[INFO] [stdout]    --> src/workflow/news/rss.rs:409:34
[INFO] [stdout]     |
[INFO] [stdout] 409 |               let business_count = sqlx::query_scalar!(
[INFO] [stdout]     |  __________________________________^
[INFO] [stdout] 410 | |                 "SELECT COUNT(*) FROM article_links WHERE url LIKE $1",
[INFO] [stdout] 411 | |                 format!("https://{}.example.com/%", business_hash)
[INFO] [stdout] 412 | |             )
[INFO] [stdout]     | |_____________^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `$crate::sqlx_macros::expand_query` which comes from the expansion of the macro `sqlx::query_scalar` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: set `DATABASE_URL` to use query macros online, or run `cargo sqlx prepare` to update the query cache
[INFO] [stdout]    --> src/workflow/news/rss.rs:461:31
[INFO] [stdout]     |
[INFO] [stdout] 461 |             let first_count = sqlx::query_scalar!("SELECT COUNT(*) FROM article_links")
[INFO] [stdout]     |                               ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `$crate::sqlx_macros::expand_query` which comes from the expansion of the macro `sqlx::query_scalar` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: set `DATABASE_URL` to use query macros online, or run `cargo sqlx prepare` to update the query cache
[INFO] [stdout]    --> src/workflow/news/rss.rs:469:80
[INFO] [stdout]     |
[INFO] [stdout] 469 |               let first_articles: Vec<(String, chrono::DateTime<chrono::Utc>)> = sqlx::query!(
[INFO] [stdout]     |  ________________________________________________________________________________^
[INFO] [stdout] 470 | |                 "SELECT title, pub_date FROM article_links WHERE url LIKE $1 ORDER BY url",
[INFO] [stdout] 471 | |                 format!("https://{}.example.com/%", expected_hash)
[INFO] [stdout] 472 | |             )
[INFO] [stdout]     | |_____________^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `$crate::sqlx_macros::expand_query` which comes from the expansion of the macro `sqlx::query` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: set `DATABASE_URL` to use query macros online, or run `cargo sqlx prepare` to update the query cache
[INFO] [stdout]    --> src/workflow/news/rss.rs:488:32
[INFO] [stdout]     |
[INFO] [stdout] 488 |             let second_count = sqlx::query_scalar!("SELECT COUNT(*) FROM article_links")
[INFO] [stdout]     |                                ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `$crate::sqlx_macros::expand_query` which comes from the expansion of the macro `sqlx::query_scalar` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: set `DATABASE_URL` to use query macros online, or run `cargo sqlx prepare` to update the query cache
[INFO] [stdout]    --> src/workflow/news/rss.rs:500:81
[INFO] [stdout]     |
[INFO] [stdout] 500 |               let second_articles: Vec<(String, chrono::DateTime<chrono::Utc>)> = sqlx::query!(
[INFO] [stdout]     |  _________________________________________________________________________________^
[INFO] [stdout] 501 | |                 "SELECT title, pub_date FROM article_links WHERE url LIKE $1 ORDER BY url",
[INFO] [stdout] 502 | |                 format!("https://{}.example.com/%", expected_hash)
[INFO] [stdout] 503 | |             )
[INFO] [stdout]     | |_____________^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `$crate::sqlx_macros::expand_query` which comes from the expansion of the macro `sqlx::query` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: set `DATABASE_URL` to use query macros online, or run `cargo sqlx prepare` to update the query cache
[INFO] [stdout]    --> src/workflow/news/rss.rs:566:33
[INFO] [stdout]     |
[INFO] [stdout] 566 |             let initial_count = sqlx::query_scalar!("SELECT COUNT(*) FROM article_links")
[INFO] [stdout]     |                                 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `$crate::sqlx_macros::expand_query` which comes from the expansion of the macro `sqlx::query_scalar` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: set `DATABASE_URL` to use query macros online, or run `cargo sqlx prepare` to update the query cache
[INFO] [stdout]    --> src/workflow/news/rss.rs:575:39
[INFO] [stdout]     |
[INFO] [stdout] 575 |             let after_success_count = sqlx::query_scalar!("SELECT COUNT(*) FROM article_links")
[INFO] [stdout]     |                                       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `$crate::sqlx_macros::expand_query` which comes from the expansion of the macro `sqlx::query_scalar` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: set `DATABASE_URL` to use query macros online, or run `cargo sqlx prepare` to update the query cache
[INFO] [stdout]    --> src/workflow/news/rss.rs:593:37
[INFO] [stdout]     |
[INFO] [stdout] 593 |             let after_error_count = sqlx::query_scalar!("SELECT COUNT(*) FROM article_links")
[INFO] [stdout]     |                                     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `$crate::sqlx_macros::expand_query` which comes from the expansion of the macro `sqlx::query_scalar` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: set `DATABASE_URL` to use query macros online, or run `cargo sqlx prepare` to update the query cache
[INFO] [stdout]    --> src/workflow/news/rss.rs:622:33
[INFO] [stdout]     |
[INFO] [stdout] 622 |             let initial_count = sqlx::query_scalar!("SELECT COUNT(*) FROM article_links")
[INFO] [stdout]     |                                 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `$crate::sqlx_macros::expand_query` which comes from the expansion of the macro `sqlx::query_scalar` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: set `DATABASE_URL` to use query macros online, or run `cargo sqlx prepare` to update the query cache
[INFO] [stdout]    --> src/workflow/news/rss.rs:630:37
[INFO] [stdout]     |
[INFO] [stdout] 630 |             let after_batch_count = sqlx::query_scalar!("SELECT COUNT(*) FROM article_links")
[INFO] [stdout]     |                                     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `$crate::sqlx_macros::expand_query` which comes from the expansion of the macro `sqlx::query_scalar` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: set `DATABASE_URL` to use query macros online, or run `cargo sqlx prepare` to update the query cache
[INFO] [stdout]    --> src/workflow/news/rss.rs:644:34
[INFO] [stdout]     |
[INFO] [stdout] 644 |               let batch_articles = sqlx::query_scalar!(
[INFO] [stdout]     |  __________________________________^
[INFO] [stdout] 645 | |                 "SELECT COUNT(*) FROM article_links WHERE url LIKE $1",
[INFO] [stdout] 646 | |                 format!("https://{}.example.com/%", hash)
[INFO] [stdout] 647 | |             )
[INFO] [stdout]     | |_____________^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `$crate::sqlx_macros::expand_query` which comes from the expansion of the macro `sqlx::query_scalar` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: set `DATABASE_URL` to use query macros online, or run `cargo sqlx prepare` to update the query cache
[INFO] [stdout]   --> src/workflow/news.rs:84:37
[INFO] [stdout]    |
[INFO] [stdout] 84 |             let initial_rss_count = sqlx::query_scalar!("SELECT COUNT(*) FROM article_links")
[INFO] [stdout]    |                                     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this error originates in the macro `$crate::sqlx_macros::expand_query` which comes from the expansion of the macro `sqlx::query_scalar` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: set `DATABASE_URL` to use query macros online, or run `cargo sqlx prepare` to update the query cache
[INFO] [stdout]   --> src/workflow/news.rs:87:41
[INFO] [stdout]    |
[INFO] [stdout] 87 |             let initial_article_count = sqlx::query_scalar!("SELECT COUNT(*) FROM articles")
[INFO] [stdout]    |                                         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this error originates in the macro `$crate::sqlx_macros::expand_query` which comes from the expansion of the macro `sqlx::query_scalar` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: set `DATABASE_URL` to use query macros online, or run `cargo sqlx prepare` to update the query cache
[INFO] [stdout]    --> src/workflow/news.rs:118:35
[INFO] [stdout]     |
[INFO] [stdout] 118 |             let final_rss_count = sqlx::query_scalar!("SELECT COUNT(*) FROM article_links")
[INFO] [stdout]     |                                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `$crate::sqlx_macros::expand_query` which comes from the expansion of the macro `sqlx::query_scalar` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: set `DATABASE_URL` to use query macros online, or run `cargo sqlx prepare` to update the query cache
[INFO] [stdout]    --> src/workflow/news.rs:129:39
[INFO] [stdout]     |
[INFO] [stdout] 129 |             let final_article_count = sqlx::query_scalar!("SELECT COUNT(*) FROM articles")
[INFO] [stdout]     |                                       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `$crate::sqlx_macros::expand_query` which comes from the expansion of the macro `sqlx::query_scalar` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: set `DATABASE_URL` to use query macros online, or run `cargo sqlx prepare` to update the query cache
[INFO] [stdout]    --> src/workflow/news.rs:140:17
[INFO] [stdout]     |
[INFO] [stdout] 140 |                 sqlx::query_scalar!("SELECT COUNT(*) FROM articles WHERE status_code = 200")
[INFO] [stdout]     |                 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `$crate::sqlx_macros::expand_query` which comes from the expansion of the macro `sqlx::query_scalar` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: set `DATABASE_URL` to use query macros online, or run `cargo sqlx prepare` to update the query cache
[INFO] [stdout]    --> src/workflow/news.rs:151:17
[INFO] [stdout]     |
[INFO] [stdout] 151 |                 sqlx::query_scalar!("SELECT content FROM articles LIMIT 1")
[INFO] [stdout]     |                 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `$crate::sqlx_macros::expand_query` which comes from the expansion of the macro `sqlx::query_scalar` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: set `DATABASE_URL` to use query macros online, or run `cargo sqlx prepare` to update the query cache
[INFO] [stdout]    --> src/workflow/news.rs:196:17
[INFO] [stdout]     |
[INFO] [stdout] 196 |                 sqlx::query_scalar!("SELECT COUNT(*) FROM article_links")
[INFO] [stdout]     |                 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `$crate::sqlx_macros::expand_query` which comes from the expansion of the macro `sqlx::query_scalar` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: set `DATABASE_URL` to use query macros online, or run `cargo sqlx prepare` to update the query cache
[INFO] [stdout]    --> src/workflow/news.rs:207:17
[INFO] [stdout]     |
[INFO] [stdout] 207 |                 sqlx::query_scalar!("SELECT COUNT(*) FROM articles")
[INFO] [stdout]     |                 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `$crate::sqlx_macros::expand_query` which comes from the expansion of the macro `sqlx::query_scalar` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: set `DATABASE_URL` to use query macros online, or run `cargo sqlx prepare` to update the query cache
[INFO] [stdout]    --> src/workflow/news.rs:250:17
[INFO] [stdout]     |
[INFO] [stdout] 250 |                 sqlx::query_scalar!("SELECT COUNT(*) FROM article_links")
[INFO] [stdout]     |                 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `$crate::sqlx_macros::expand_query` which comes from the expansion of the macro `sqlx::query_scalar` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: set `DATABASE_URL` to use query macros online, or run `cargo sqlx prepare` to update the query cache
[INFO] [stdout]    --> src/workflow/news.rs:263:17
[INFO] [stdout]     |
[INFO] [stdout] 263 |                 sqlx::query_scalar!("SELECT COUNT(*) FROM articles")
[INFO] [stdout]     |                 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `$crate::sqlx_macros::expand_query` which comes from the expansion of the macro `sqlx::query_scalar` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: set `DATABASE_URL` to use query macros online, or run `cargo sqlx prepare` to update the query cache
[INFO] [stdout]    --> src/workflow/news.rs:274:17
[INFO] [stdout]     |
[INFO] [stdout] 274 |                 sqlx::query_scalar!("SELECT COUNT(*) FROM articles WHERE status_code = 500")
[INFO] [stdout]     |                 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `$crate::sqlx_macros::expand_query` which comes from the expansion of the macro `sqlx::query_scalar` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: set `DATABASE_URL` to use query macros online, or run `cargo sqlx prepare` to update the query cache
[INFO] [stdout]    --> src/workflow/news.rs:285:17
[INFO] [stdout]     |
[INFO] [stdout] 285 |                 sqlx::query_scalar!("SELECT content FROM articles LIMIT 1")
[INFO] [stdout]     |                 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `$crate::sqlx_macros::expand_query` which comes from the expansion of the macro `sqlx::query_scalar` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0282]: type annotations needed
[INFO] [stdout]   --> src/core/link/command.rs:24:5
[INFO] [stdout]    |
[INFO] [stdout] 24 | /     sqlx::query!(
[INFO] [stdout] 25 | |         r#"
[INFO] [stdout] 26 | |         INSERT INTO article_links (url, title, pub_date, source)
[INFO] [stdout] 27 | |         SELECT * FROM UNNEST($1::text[], $2::text[], $3::timestamptz[], $4::text[])
[INFO] [stdout] ...  |
[INFO] [stdout] 40 | |     .execute(pool)
[INFO] [stdout] 41 | |     .await
[INFO] [stdout]    | |__________^ cannot infer type
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0282]: type annotations needed
[INFO] [stdout]   --> src/core/link/command.rs:24:5
[INFO] [stdout]    |
[INFO] [stdout] 24 | /     sqlx::query!(
[INFO] [stdout] 25 | |         r#"
[INFO] [stdout] 26 | |         INSERT INTO article_links (url, title, pub_date, source)
[INFO] [stdout] 27 | |         SELECT * FROM UNNEST($1::text[], $2::text[], $3::timestamptz[], $4::text[])
[INFO] [stdout] ...  |
[INFO] [stdout] 40 | |     .execute(pool)
[INFO] [stdout] 41 | |     .await
[INFO] [stdout]    | |__________^ cannot infer type
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0282]: type annotations needed
[INFO] [stdout]    --> src/core/link/command.rs:201:17
[INFO] [stdout]     |
[INFO] [stdout] 201 |             let final_count = sqlx::query_scalar!("SELECT COUNT(*) FROM article_links")
[INFO] [stdout]     |                 ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 205 |                 final_count.unwrap_or(0),
[INFO] [stdout]     |                 ----------- type must be known at this point
[INFO] [stdout]     |
[INFO] [stdout] help: consider giving `final_count` an explicit type
[INFO] [stdout]     |
[INFO] [stdout] 201 |             let final_count: /* Type */ = sqlx::query_scalar!("SELECT COUNT(*) FROM article_links")
[INFO] [stdout]     |                            ++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0282]: type annotations needed
[INFO] [stdout]    --> src/core/link/command.rs:172:17
[INFO] [stdout]     |
[INFO] [stdout] 172 |             let initial_count = sqlx::query_scalar!("SELECT COUNT(*) FROM article_links")
[INFO] [stdout]     |                 ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 206 |                 initial_count.unwrap_or(0) + 2,
[INFO] [stdout]     |                 ------------- type must be known at this point
[INFO] [stdout]     |
[INFO] [stdout] help: consider giving `initial_count` an explicit type
[INFO] [stdout]     |
[INFO] [stdout] 172 |             let initial_count: /* Type */ = sqlx::query_scalar!("SELECT COUNT(*) FROM article_links")
[INFO] [stdout]     |                              ++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0282]: type annotations needed
[INFO] [stdout]    --> src/core/link/command.rs:258:48
[INFO] [stdout]     |
[INFO] [stdout] 258 |               let first_save: (String, String) = sqlx::query_as!(
[INFO] [stdout]     |  ________________________________________________^
[INFO] [stdout] 259 | |                 ArticleLink,
[INFO] [stdout] 260 | |                 "SELECT url, title, pub_date, source FROM article_links WHERE url = $1",
[INFO] [stdout] 261 | |                 duplicate_url
[INFO] [stdout] 262 | |             )
[INFO] [stdout] 263 | |             .fetch_one(&pool)
[INFO] [stdout] 264 | |             .await
[INFO] [stdout]     | |__________________^ cannot infer type
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0282]: type annotations needed
[INFO] [stdout]    --> src/core/link/command.rs:273:50
[INFO] [stdout]     |
[INFO] [stdout] 273 |               let updated_save: (String, String) = sqlx::query_as!(
[INFO] [stdout]     |  __________________________________________________^
[INFO] [stdout] 274 | |                 ArticleLink,
[INFO] [stdout] 275 | |                 "SELECT url, title, pub_date, source FROM article_links WHERE url = $1",
[INFO] [stdout] 276 | |                 duplicate_url
[INFO] [stdout] 277 | |             )
[INFO] [stdout] 278 | |             .fetch_one(&pool)
[INFO] [stdout] 279 | |             .await
[INFO] [stdout]     | |__________________^ cannot infer type
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0282]: type annotations needed
[INFO] [stdout]    --> src/core/link/command.rs:286:30
[INFO] [stdout]     |
[INFO] [stdout] 286 |               let count: i64 = sqlx::query_scalar!(
[INFO] [stdout]     |  ______________________________^
[INFO] [stdout] 287 | |                 "SELECT COUNT(*) FROM article_links WHERE url = $1",
[INFO] [stdout] 288 | |                 duplicate_url
[INFO] [stdout] ...   |
[INFO] [stdout] 291 | |             .await?
[INFO] [stdout]     | |___________________^ cannot infer type
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0282]: type annotations needed
[INFO] [stdout]   --> src/workflow/news/article.rs:82:17
[INFO] [stdout]    |
[INFO] [stdout] 82 |             let total_articles = sqlx::query_scalar!("SELECT COUNT(*) FROM articles")
[INFO] [stdout]    |                 ^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 86 |                 total_articles.unwrap_or(0),
[INFO] [stdout]    |                 -------------- type must be known at this point
[INFO] [stdout]    |
[INFO] [stdout] help: consider giving `total_articles` an explicit type
[INFO] [stdout]    |
[INFO] [stdout] 82 |             let total_articles: /* Type */ = sqlx::query_scalar!("SELECT COUNT(*) FROM articles")
[INFO] [stdout]    |                               ++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0282]: type annotations needed
[INFO] [stdout]   --> src/workflow/news/article.rs:91:17
[INFO] [stdout]    |
[INFO] [stdout] 91 |             let new_success_articles =
[INFO] [stdout]    |                 ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 96 |                 new_success_articles.unwrap_or(0),
[INFO] [stdout]    |                 -------------------- type must be known at this point
[INFO] [stdout]    |
[INFO] [stdout] help: consider giving `new_success_articles` an explicit type
[INFO] [stdout]    |
[INFO] [stdout] 91 |             let new_success_articles: /* Type */ =
[INFO] [stdout]    |                                     ++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0282]: type annotations needed
[INFO] [stdout]    --> src/workflow/news/article.rs:101:17
[INFO] [stdout]     |
[INFO] [stdout] 101 |             let error_articles =
[INFO] [stdout]     |                 ^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 106 |                 error_articles.unwrap_or(0),
[INFO] [stdout]     |                 -------------- type must be known at this point
[INFO] [stdout]     |
[INFO] [stdout] help: consider giving `error_articles` an explicit type
[INFO] [stdout]     |
[INFO] [stdout] 101 |             let error_articles: /* Type */ =
[INFO] [stdout]     |                               ++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0282]: type annotations needed
[INFO] [stdout]    --> src/workflow/news/article.rs:140:17
[INFO] [stdout]     |
[INFO] [stdout] 140 |             let total_articles = sqlx::query_scalar!("SELECT COUNT(*) FROM articles")
[INFO] [stdout]     |                 ^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 144 |                 total_articles.unwrap_or(0),
[INFO] [stdout]     |                 -------------- type must be known at this point
[INFO] [stdout]     |
[INFO] [stdout] help: consider giving `total_articles` an explicit type
[INFO] [stdout]     |
[INFO] [stdout] 140 |             let total_articles: /* Type */ = sqlx::query_scalar!("SELECT COUNT(*) FROM articles")
[INFO] [stdout]     |                               ++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0282]: type annotations needed
[INFO] [stdout]    --> src/workflow/news/article.rs:149:17
[INFO] [stdout]     |
[INFO] [stdout] 149 |             let success_articles =
[INFO] [stdout]     |                 ^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 154 |                 success_articles.unwrap_or(0),
[INFO] [stdout]     |                 ---------------- type must be known at this point
[INFO] [stdout]     |
[INFO] [stdout] help: consider giving `success_articles` an explicit type
[INFO] [stdout]     |
[INFO] [stdout] 149 |             let success_articles: /* Type */ =
[INFO] [stdout]     |                                 ++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0282]: type annotations needed
[INFO] [stdout]    --> src/workflow/news/article.rs:159:17
[INFO] [stdout]     |
[INFO] [stdout] 159 |             let error_articles =
[INFO] [stdout]     |                 ^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 164 |                 error_articles.unwrap_or(0),
[INFO] [stdout]     |                 -------------- type must be known at this point
[INFO] [stdout]     |
[INFO] [stdout] help: consider giving `error_articles` an explicit type
[INFO] [stdout]     |
[INFO] [stdout] 159 |             let error_articles: /* Type */ =
[INFO] [stdout]     |                               ++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0282]: type annotations needed
[INFO] [stdout]    --> src/workflow/news/article.rs:194:21
[INFO] [stdout]     |
[INFO] [stdout] 194 |                 let initial_error_count =
[INFO] [stdout]     |                     ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 200 |                     initial_error_count.unwrap_or(0) > 0,
[INFO] [stdout]     |                     ------------------- type must be known at this point
[INFO] [stdout]     |
[INFO] [stdout] help: consider giving `initial_error_count` an explicit type
[INFO] [stdout]     |
[INFO] [stdout] 194 |                 let initial_error_count: /* Type */ =
[INFO] [stdout]     |                                        ++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0282]: type annotations needed
[INFO] [stdout]    --> src/workflow/news/article.rs:226:21
[INFO] [stdout]     |
[INFO] [stdout] 226 |                 let final_error_count =
[INFO] [stdout]     |                     ^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 232 |                     final_error_count.unwrap_or(0),
[INFO] [stdout]     |                     ----------------- type must be known at this point
[INFO] [stdout]     |
[INFO] [stdout] help: consider giving `final_error_count` an explicit type
[INFO] [stdout]     |
[INFO] [stdout] 226 |                 let final_error_count: /* Type */ =
[INFO] [stdout]     |                                      ++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0282]: type annotations needed
[INFO] [stdout]    --> src/workflow/news/article.rs:238:21
[INFO] [stdout]     |
[INFO] [stdout] 238 |                 let final_backlog_count = sqlx::query_scalar!(
[INFO] [stdout]     |                     ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 247 |                     final_backlog_count.unwrap_or(0),
[INFO] [stdout]     |                     ------------------- type must be known at this point
[INFO] [stdout]     |
[INFO] [stdout] help: consider giving `final_backlog_count` an explicit type
[INFO] [stdout]     |
[INFO] [stdout] 238 |                 let final_backlog_count: /* Type */ = sqlx::query_scalar!(
[INFO] [stdout]     |                                        ++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0282]: type annotations needed
[INFO] [stdout]    --> src/workflow/news/article.rs:221:21
[INFO] [stdout]     |
[INFO] [stdout] 221 |                 let final_success_count =
[INFO] [stdout]     |                     ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 267 |                 println!("  再処理後成功記事数: {}", final_success_count.unwrap_or(0));
[INFO] [stdout]     |                                                      ------------------- type must be known at this point
[INFO] [stdout]     |
[INFO] [stdout] help: consider giving `final_success_count` an explicit type
[INFO] [stdout]     |
[INFO] [stdout] 221 |                 let final_success_count: /* Type */ =
[INFO] [stdout]     |                                        ++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0282]: type annotations needed
[INFO] [stdout]    --> src/workflow/news/article.rs:295:21
[INFO] [stdout]     |
[INFO] [stdout] 295 |                 let error_articles =
[INFO] [stdout]     |                     ^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 301 |                     error_articles.unwrap_or(0) > 0,
[INFO] [stdout]     |                     -------------- type must be known at this point
[INFO] [stdout]     |
[INFO] [stdout] help: consider giving `error_articles` an explicit type
[INFO] [stdout]     |
[INFO] [stdout] 295 |                 let error_articles: /* Type */ =
[INFO] [stdout]     |                                   ++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0282]: type annotations needed
[INFO] [stdout]    --> src/workflow/news/article.rs:365:21
[INFO] [stdout]     |
[INFO] [stdout] 365 |                 let final_success_count =
[INFO] [stdout]     |                     ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 385 |                     final_success_count.unwrap_or(0) > initial_success_count.unwrap_or(0),
[INFO] [stdout]     |                     ------------------- type must be known at this point
[INFO] [stdout]     |
[INFO] [stdout] help: consider giving `final_success_count` an explicit type
[INFO] [stdout]     |
[INFO] [stdout] 365 |                 let final_success_count: /* Type */ =
[INFO] [stdout]     |                                        ++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0282]: type annotations needed
[INFO] [stdout]    --> src/workflow/news/article.rs:346:21
[INFO] [stdout]     |
[INFO] [stdout] 346 |                 let initial_success_count =
[INFO] [stdout]     |                     ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 385 |                     final_success_count.unwrap_or(0) > initial_success_count.unwrap_or(0),
[INFO] [stdout]     |                                                        --------------------- type must be known at this point
[INFO] [stdout]     |
[INFO] [stdout] help: consider giving `initial_success_count` an explicit type
[INFO] [stdout]     |
[INFO] [stdout] 346 |                 let initial_success_count: /* Type */ =
[INFO] [stdout]     |                                          ++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0282]: type annotations needed
[INFO] [stdout]    --> src/workflow/news/article.rs:370:21
[INFO] [stdout]     |
[INFO] [stdout] 370 |                 let final_error_count =
[INFO] [stdout]     |                     ^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 391 |                     final_error_count.unwrap_or(0),
[INFO] [stdout]     |                     ----------------- type must be known at this point
[INFO] [stdout]     |
[INFO] [stdout] help: consider giving `final_error_count` an explicit type
[INFO] [stdout]     |
[INFO] [stdout] 370 |                 let final_error_count: /* Type */ =
[INFO] [stdout]     |                                      ++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0282]: type annotations needed
[INFO] [stdout]    --> src/workflow/news/article.rs:351:21
[INFO] [stdout]     |
[INFO] [stdout] 351 |                 let initial_error_count =
[INFO] [stdout]     |                     ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 412 |                 println!("  初期エラー記事数: {}", initial_error_count.unwrap_or(0));
[INFO] [stdout]     |                                                    ------------------- type must be known at this point
[INFO] [stdout]     |
[INFO] [stdout] help: consider giving `initial_error_count` an explicit type
[INFO] [stdout]     |
[INFO] [stdout] 351 |                 let initial_error_count: /* Type */ =
[INFO] [stdout]     |                                        ++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0282]: type annotations needed
[INFO] [stdout]   --> src/workflow/news/rss.rs:81:17
[INFO] [stdout]    |
[INFO] [stdout] 81 |             let initial_count = sqlx::query_scalar!("SELECT COUNT(*) FROM article_links")
[INFO] [stdout]    |                 ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 84 |             assert_eq!(initial_count.unwrap_or(0), 0);
[INFO] [stdout]    |                        ------------- type must be known at this point
[INFO] [stdout]    |
[INFO] [stdout] help: consider giving `initial_count` an explicit type
[INFO] [stdout]    |
[INFO] [stdout] 81 |             let initial_count: /* Type */ = sqlx::query_scalar!("SELECT COUNT(*) FROM article_links")
[INFO] [stdout]    |                              ++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0282]: type annotations needed
[INFO] [stdout]   --> src/workflow/news/rss.rs:92:17
[INFO] [stdout]    |
[INFO] [stdout] 92 |             let final_count = sqlx::query_scalar!("SELECT COUNT(*) FROM article_links")
[INFO] [stdout]    |                 ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 95 |             assert_eq!(final_count.unwrap_or(0), 9);
[INFO] [stdout]    |                        ----------- type must be known at this point
[INFO] [stdout]    |
[INFO] [stdout] help: consider giving `final_count` an explicit type
[INFO] [stdout]    |
[INFO] [stdout] 92 |             let final_count: /* Type */ = sqlx::query_scalar!("SELECT COUNT(*) FROM article_links")
[INFO] [stdout]    |                            ++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0282]: type annotations needed
[INFO] [stdout]    --> src/workflow/news/rss.rs:101:21
[INFO] [stdout]     |
[INFO] [stdout] 101 |                 let feed_link_count = sqlx::query_scalar!(
[INFO] [stdout]     |                     ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 107 |                 assert_eq!(feed_link_count.unwrap_or(0), 3);
[INFO] [stdout]     |                            --------------- type must be known at this point
[INFO] [stdout]     |
[INFO] [stdout] help: consider giving `feed_link_count` an explicit type
[INFO] [stdout]     |
[INFO] [stdout] 101 |                 let feed_link_count: /* Type */ = sqlx::query_scalar!(
[INFO] [stdout]     |                                    ++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0282]: type annotations needed
[INFO] [stdout]    --> src/workflow/news/rss.rs:143:17
[INFO] [stdout]     |
[INFO] [stdout] 143 |             let success_count = sqlx::query_scalar!("SELECT COUNT(*) FROM article_links")
[INFO] [stdout]     |                 ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 146 |             assert_eq!(success_count.unwrap_or(0), 3);
[INFO] [stdout]     |                        ------------- type must be known at this point
[INFO] [stdout]     |
[INFO] [stdout] help: consider giving `success_count` an explicit type
[INFO] [stdout]     |
[INFO] [stdout] 143 |             let success_count: /* Type */ = sqlx::query_scalar!("SELECT COUNT(*) FROM article_links")
[INFO] [stdout]     |                              ++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0282]: type annotations needed
[INFO] [stdout]    --> src/workflow/news/rss.rs:153:17
[INFO] [stdout]     |
[INFO] [stdout] 153 |             let final_count = sqlx::query_scalar!("SELECT COUNT(*) FROM article_links")
[INFO] [stdout]     |                 ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 156 |             assert_eq!(final_count.unwrap_or(0), 3);
[INFO] [stdout]     |                        ----------- type must be known at this point
[INFO] [stdout]     |
[INFO] [stdout] help: consider giving `final_count` an explicit type
[INFO] [stdout]     |
[INFO] [stdout] 153 |             let final_count: /* Type */ = sqlx::query_scalar!("SELECT COUNT(*) FROM article_links")
[INFO] [stdout]     |                            ++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0282]: type annotations needed
[INFO] [stdout]    --> src/workflow/news/rss.rs:188:17
[INFO] [stdout]     |
[INFO] [stdout] 188 |             let initial_count = sqlx::query_scalar!("SELECT COUNT(*) FROM article_links")
[INFO] [stdout]     |                 ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 191 |             assert_eq!(initial_count.unwrap_or(0), 0);
[INFO] [stdout]     |                        ------------- type must be known at this point
[INFO] [stdout]     |
[INFO] [stdout] help: consider giving `initial_count` an explicit type
[INFO] [stdout]     |
[INFO] [stdout] 188 |             let initial_count: /* Type */ = sqlx::query_scalar!("SELECT COUNT(*) FROM article_links")
[INFO] [stdout]     |                              ++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0282]: type annotations needed
[INFO] [stdout]    --> src/workflow/news/rss.rs:198:17
[INFO] [stdout]     |
[INFO] [stdout] 198 |             let after_first_count = sqlx::query_scalar!("SELECT COUNT(*) FROM article_links")
[INFO] [stdout]     |                 ^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 201 |             assert_eq!(after_first_count.unwrap_or(0), 3);
[INFO] [stdout]     |                        ----------------- type must be known at this point
[INFO] [stdout]     |
[INFO] [stdout] help: consider giving `after_first_count` an explicit type
[INFO] [stdout]     |
[INFO] [stdout] 198 |             let after_first_count: /* Type */ = sqlx::query_scalar!("SELECT COUNT(*) FROM article_links")
[INFO] [stdout]     |                                  ++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0282]: type annotations needed
[INFO] [stdout]    --> src/workflow/news/rss.rs:224:17
[INFO] [stdout]     |
[INFO] [stdout] 224 |             let after_second_count = sqlx::query_scalar!("SELECT COUNT(*) FROM article_links")
[INFO] [stdout]     |                 ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 228 |                 after_second_count.unwrap_or(0),
[INFO] [stdout]     |                 ------------------ type must be known at this point
[INFO] [stdout]     |
[INFO] [stdout] help: consider giving `after_second_count` an explicit type
[INFO] [stdout]     |
[INFO] [stdout] 224 |             let after_second_count: /* Type */ = sqlx::query_scalar!("SELECT COUNT(*) FROM article_links")
[INFO] [stdout]     |                                   ++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0282]: type annotations needed
[INFO] [stdout]    --> src/workflow/news/rss.rs:273:17
[INFO] [stdout]     |
[INFO] [stdout] 273 |             let final_count = sqlx::query_scalar!("SELECT COUNT(*) FROM article_links")
[INFO] [stdout]     |                 ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 277 |                 final_count.unwrap_or(0),
[INFO] [stdout]     |                 ----------- type must be known at this point
[INFO] [stdout]     |
[INFO] [stdout] help: consider giving `final_count` an explicit type
[INFO] [stdout]     |
[INFO] [stdout] 273 |             let final_count: /* Type */ = sqlx::query_scalar!("SELECT COUNT(*) FROM article_links")
[INFO] [stdout]     |                            ++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0282]: type annotations needed
[INFO] [stdout]    --> src/workflow/news/rss.rs:291:21
[INFO] [stdout]     |
[INFO] [stdout] 291 |                 let link_exists = sqlx::query_scalar!(
[INFO] [stdout]     |                     ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 300 |                     link_exists.unwrap_or(0),
[INFO] [stdout]     |                     ----------- type must be known at this point
[INFO] [stdout]     |
[INFO] [stdout] help: consider giving `link_exists` an explicit type
[INFO] [stdout]     |
[INFO] [stdout] 291 |                 let link_exists: /* Type */ = sqlx::query_scalar!(
[INFO] [stdout]     |                                ++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0282]: type annotations needed
[INFO] [stdout]    --> src/workflow/news/rss.rs:322:17
[INFO] [stdout]     |
[INFO] [stdout] 322 |             let final_unique_count = sqlx::query_scalar!("SELECT COUNT(*) FROM article_links")
[INFO] [stdout]     |                 ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 326 |                 final_unique_count.unwrap_or(0),
[INFO] [stdout]     |                 ------------------ type must be known at this point
[INFO] [stdout]     |
[INFO] [stdout] help: consider giving `final_unique_count` an explicit type
[INFO] [stdout]     |
[INFO] [stdout] 322 |             let final_unique_count: /* Type */ = sqlx::query_scalar!("SELECT COUNT(*) FROM article_links")
[INFO] [stdout]     |                                   ++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0282]: type annotations needed
[INFO] [stdout]    --> src/workflow/news/rss.rs:385:17
[INFO] [stdout]     |
[INFO] [stdout] 385 |             let after_business_count = sqlx::query_scalar!("SELECT COUNT(*) FROM article_links")
[INFO] [stdout]     |                 ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 391 |                 after_business_count.unwrap_or(0),
[INFO] [stdout]     |                 -------------------- type must be known at this point
[INFO] [stdout]     |
[INFO] [stdout] help: consider giving `after_business_count` an explicit type
[INFO] [stdout]     |
[INFO] [stdout] 385 |             let after_business_count: /* Type */ = sqlx::query_scalar!("SELECT COUNT(*) FROM article_links")
[INFO] [stdout]     |                                     ++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0282]: type annotations needed
[INFO] [stdout]    --> src/workflow/news/rss.rs:367:17
[INFO] [stdout]     |
[INFO] [stdout] 367 |             let initial_count = sqlx::query_scalar!("SELECT COUNT(*) FROM article_links")
[INFO] [stdout]     |                 ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 392 |                 initial_count.unwrap_or(0) + 6,
[INFO] [stdout]     |                 ------------- type must be known at this point
[INFO] [stdout]     |
[INFO] [stdout] help: consider giving `initial_count` an explicit type
[INFO] [stdout]     |
[INFO] [stdout] 367 |             let initial_count: /* Type */ = sqlx::query_scalar!("SELECT COUNT(*) FROM article_links")
[INFO] [stdout]     |                              ++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0282]: type annotations needed
[INFO] [stdout]    --> src/workflow/news/rss.rs:402:17
[INFO] [stdout]     |
[INFO] [stdout] 402 |             let tech_count = sqlx::query_scalar!(
[INFO] [stdout]     |                 ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 417 |                 tech_count.unwrap_or(0),
[INFO] [stdout]     |                 ---------- type must be known at this point
[INFO] [stdout]     |
[INFO] [stdout] help: consider giving `tech_count` an explicit type
[INFO] [stdout]     |
[INFO] [stdout] 402 |             let tech_count: /* Type */ = sqlx::query_scalar!(
[INFO] [stdout]     |                           ++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0282]: type annotations needed
[INFO] [stdout]    --> src/workflow/news/rss.rs:409:17
[INFO] [stdout]     |
[INFO] [stdout] 409 |             let business_count = sqlx::query_scalar!(
[INFO] [stdout]     |                 ^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 422 |                 business_count.unwrap_or(0),
[INFO] [stdout]     |                 -------------- type must be known at this point
[INFO] [stdout]     |
[INFO] [stdout] help: consider giving `business_count` an explicit type
[INFO] [stdout]     |
[INFO] [stdout] 409 |             let business_count: /* Type */ = sqlx::query_scalar!(
[INFO] [stdout]     |                               ++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0282]: type annotations needed
[INFO] [stdout]    --> src/workflow/news/rss.rs:469:80
[INFO] [stdout]     |
[INFO] [stdout] 469 |               let first_articles: Vec<(String, chrono::DateTime<chrono::Utc>)> = sqlx::query!(
[INFO] [stdout]     |  ________________________________________________________________________________^
[INFO] [stdout] 470 | |                 "SELECT title, pub_date FROM article_links WHERE url LIKE $1 ORDER BY url",
[INFO] [stdout] 471 | |                 format!("https://{}.example.com/%", expected_hash)
[INFO] [stdout] ...   |
[INFO] [stdout] 474 | |             .await?
[INFO] [stdout]     | |___________________^ cannot infer type
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0282]: type annotations needed
[INFO] [stdout]    --> src/workflow/news/rss.rs:488:17
[INFO] [stdout]     |
[INFO] [stdout] 488 |             let second_count = sqlx::query_scalar!("SELECT COUNT(*) FROM article_links")
[INFO] [stdout]     |                 ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 494 |                 second_count.unwrap_or(0),
[INFO] [stdout]     |                 ------------ type must be known at this point
[INFO] [stdout]     |
[INFO] [stdout] help: consider giving `second_count` an explicit type
[INFO] [stdout]     |
[INFO] [stdout] 488 |             let second_count: /* Type */ = sqlx::query_scalar!("SELECT COUNT(*) FROM article_links")
[INFO] [stdout]     |                             ++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0282]: type annotations needed
[INFO] [stdout]    --> src/workflow/news/rss.rs:461:17
[INFO] [stdout]     |
[INFO] [stdout] 461 |             let first_count = sqlx::query_scalar!("SELECT COUNT(*) FROM article_links")
[INFO] [stdout]     |                 ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 495 |                 first_count.unwrap_or(0),
[INFO] [stdout]     |                 ----------- type must be known at this point
[INFO] [stdout]     |
[INFO] [stdout] help: consider giving `first_count` an explicit type
[INFO] [stdout]     |
[INFO] [stdout] 461 |             let first_count: /* Type */ = sqlx::query_scalar!("SELECT COUNT(*) FROM article_links")
[INFO] [stdout]     |                            ++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0282]: type annotations needed
[INFO] [stdout]    --> src/workflow/news/rss.rs:500:81
[INFO] [stdout]     |
[INFO] [stdout] 500 |               let second_articles: Vec<(String, chrono::DateTime<chrono::Utc>)> = sqlx::query!(
[INFO] [stdout]     |  _________________________________________________________________________________^
[INFO] [stdout] 501 | |                 "SELECT title, pub_date FROM article_links WHERE url LIKE $1 ORDER BY url",
[INFO] [stdout] 502 | |                 format!("https://{}.example.com/%", expected_hash)
[INFO] [stdout] ...   |
[INFO] [stdout] 505 | |             .await?
[INFO] [stdout]     | |___________________^ cannot infer type
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0282]: type annotations needed
[INFO] [stdout]    --> src/workflow/news/rss.rs:575:17
[INFO] [stdout]     |
[INFO] [stdout] 575 |             let after_success_count = sqlx::query_scalar!("SELECT COUNT(*) FROM article_links")
[INFO] [stdout]     |                 ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 579 |                 after_success_count.unwrap_or(0),
[INFO] [stdout]     |                 ------------------- type must be known at this point
[INFO] [stdout]     |
[INFO] [stdout] help: consider giving `after_success_count` an explicit type
[INFO] [stdout]     |
[INFO] [stdout] 575 |             let after_success_count: /* Type */ = sqlx::query_scalar!("SELECT COUNT(*) FROM article_links")
[INFO] [stdout]     |                                    ++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0282]: type annotations needed
[INFO] [stdout]    --> src/workflow/news/rss.rs:566:17
[INFO] [stdout]     |
[INFO] [stdout] 566 |             let initial_count = sqlx::query_scalar!("SELECT COUNT(*) FROM article_links")
[INFO] [stdout]     |                 ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 580 |                 initial_count.unwrap_or(0) + 3,
[INFO] [stdout]     |                 ------------- type must be known at this point
[INFO] [stdout]     |
[INFO] [stdout] help: consider giving `initial_count` an explicit type
[INFO] [stdout]     |
[INFO] [stdout] 566 |             let initial_count: /* Type */ = sqlx::query_scalar!("SELECT COUNT(*) FROM article_links")
[INFO] [stdout]     |                              ++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0282]: type annotations needed
[INFO] [stdout]    --> src/workflow/news/rss.rs:593:17
[INFO] [stdout]     |
[INFO] [stdout] 593 |             let after_error_count = sqlx::query_scalar!("SELECT COUNT(*) FROM article_links")
[INFO] [stdout]     |                 ^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 597 |                 after_error_count.unwrap_or(0),
[INFO] [stdout]     |                 ----------------- type must be known at this point
[INFO] [stdout]     |
[INFO] [stdout] help: consider giving `after_error_count` an explicit type
[INFO] [stdout]     |
[INFO] [stdout] 593 |             let after_error_count: /* Type */ = sqlx::query_scalar!("SELECT COUNT(*) FROM article_links")
[INFO] [stdout]     |                                  ++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0282]: type annotations needed
[INFO] [stdout]    --> src/workflow/news/rss.rs:630:17
[INFO] [stdout]     |
[INFO] [stdout] 630 |             let after_batch_count = sqlx::query_scalar!("SELECT COUNT(*) FROM article_links")
[INFO] [stdout]     |                 ^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 636 |                 after_batch_count.unwrap_or(0),
[INFO] [stdout]     |                 ----------------- type must be known at this point
[INFO] [stdout]     |
[INFO] [stdout] help: consider giving `after_batch_count` an explicit type
[INFO] [stdout]     |
[INFO] [stdout] 630 |             let after_batch_count: /* Type */ = sqlx::query_scalar!("SELECT COUNT(*) FROM article_links")
[INFO] [stdout]     |                                  ++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0282]: type annotations needed
[INFO] [stdout]    --> src/workflow/news/rss.rs:622:17
[INFO] [stdout]     |
[INFO] [stdout] 622 |             let initial_count = sqlx::query_scalar!("SELECT COUNT(*) FROM article_links")
[INFO] [stdout]     |                 ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 637 |                 initial_count.unwrap_or(0) + 3,
[INFO] [stdout]     |                 ------------- type must be known at this point
[INFO] [stdout]     |
[INFO] [stdout] help: consider giving `initial_count` an explicit type
[INFO] [stdout]     |
[INFO] [stdout] 622 |             let initial_count: /* Type */ = sqlx::query_scalar!("SELECT COUNT(*) FROM article_links")
[INFO] [stdout]     |                              ++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0282]: type annotations needed
[INFO] [stdout]    --> src/workflow/news/rss.rs:644:17
[INFO] [stdout]     |
[INFO] [stdout] 644 |             let batch_articles = sqlx::query_scalar!(
[INFO] [stdout]     |                 ^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 652 |                 batch_articles.unwrap_or(0),
[INFO] [stdout]     |                 -------------- type must be known at this point
[INFO] [stdout]     |
[INFO] [stdout] help: consider giving `batch_articles` an explicit type
[INFO] [stdout]     |
[INFO] [stdout] 644 |             let batch_articles: /* Type */ = sqlx::query_scalar!(
[INFO] [stdout]     |                               ++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0282]: type annotations needed
[INFO] [stdout]   --> src/workflow/news.rs:84:17
[INFO] [stdout]    |
[INFO] [stdout] 84 |             let initial_rss_count = sqlx::query_scalar!("SELECT COUNT(*) FROM article_links")
[INFO] [stdout]    |                 ^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 92 |                 initial_rss_count.unwrap_or(0),
[INFO] [stdout]    |                 ----------------- type must be known at this point
[INFO] [stdout]    |
[INFO] [stdout] help: consider giving `initial_rss_count` an explicit type
[INFO] [stdout]    |
[INFO] [stdout] 84 |             let initial_rss_count: /* Type */ = sqlx::query_scalar!("SELECT COUNT(*) FROM article_links")
[INFO] [stdout]    |                                  ++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0282]: type annotations needed
[INFO] [stdout]   --> src/workflow/news.rs:87:17
[INFO] [stdout]    |
[INFO] [stdout] 87 |             let initial_article_count = sqlx::query_scalar!("SELECT COUNT(*) FROM articles")
[INFO] [stdout]    |                 ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 97 |                 initial_article_count.unwrap_or(0),
[INFO] [stdout]    |                 --------------------- type must be known at this point
[INFO] [stdout]    |
[INFO] [stdout] help: consider giving `initial_article_count` an explicit type
[INFO] [stdout]    |
[INFO] [stdout] 87 |             let initial_article_count: /* Type */ = sqlx::query_scalar!("SELECT COUNT(*) FROM articles")
[INFO] [stdout]    |                                      ++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0282]: type annotations needed
[INFO] [stdout]    --> src/workflow/news.rs:118:17
[INFO] [stdout]     |
[INFO] [stdout] 118 |             let final_rss_count = sqlx::query_scalar!("SELECT COUNT(*) FROM article_links")
[INFO] [stdout]     |                 ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 123 |                 final_rss_count.unwrap_or(0),
[INFO] [stdout]     |                 --------------- type must be known at this point
[INFO] [stdout]     |
[INFO] [stdout] help: consider giving `final_rss_count` an explicit type
[INFO] [stdout]     |
[INFO] [stdout] 118 |             let final_rss_count: /* Type */ = sqlx::query_scalar!("SELECT COUNT(*) FROM article_links")
[INFO] [stdout]     |                                ++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0282]: type annotations needed
[INFO] [stdout]    --> src/workflow/news.rs:129:17
[INFO] [stdout]     |
[INFO] [stdout] 129 |             let final_article_count = sqlx::query_scalar!("SELECT COUNT(*) FROM articles")
[INFO] [stdout]     |                 ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 133 |                 final_article_count.unwrap_or(0),
[INFO] [stdout]     |                 ------------------- type must be known at this point
[INFO] [stdout]     |
[INFO] [stdout] help: consider giving `final_article_count` an explicit type
[INFO] [stdout]     |
[INFO] [stdout] 129 |             let final_article_count: /* Type */ = sqlx::query_scalar!("SELECT COUNT(*) FROM articles")
[INFO] [stdout]     |                                    ++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0282]: type annotations needed
[INFO] [stdout]    --> src/workflow/news.rs:139:17
[INFO] [stdout]     |
[INFO] [stdout] 139 |             let success_articles =
[INFO] [stdout]     |                 ^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 144 |                 success_articles.unwrap_or(0),
[INFO] [stdout]     |                 ---------------- type must be known at this point
[INFO] [stdout]     |
[INFO] [stdout] help: consider giving `success_articles` an explicit type
[INFO] [stdout]     |
[INFO] [stdout] 139 |             let success_articles: /* Type */ =
[INFO] [stdout]     |                                 ++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0282]: type annotations needed
[INFO] [stdout]    --> src/workflow/news.rs:195:17
[INFO] [stdout]     |
[INFO] [stdout] 195 |             let rss_count_after_http_error =
[INFO] [stdout]     |                 ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 200 |                 rss_count_after_http_error.unwrap_or(0),
[INFO] [stdout]     |                 -------------------------- type must be known at this point
[INFO] [stdout]     |
[INFO] [stdout] help: consider giving `rss_count_after_http_error` an explicit type
[INFO] [stdout]     |
[INFO] [stdout] 195 |             let rss_count_after_http_error: /* Type */ =
[INFO] [stdout]     |                                           ++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0282]: type annotations needed
[INFO] [stdout]    --> src/workflow/news.rs:206:17
[INFO] [stdout]     |
[INFO] [stdout] 206 |             let article_count_after_http_error =
[INFO] [stdout]     |                 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 211 |                 article_count_after_http_error.unwrap_or(0),
[INFO] [stdout]     |                 ------------------------------ type must be known at this point
[INFO] [stdout]     |
[INFO] [stdout] help: consider giving `article_count_after_http_error` an explicit type
[INFO] [stdout]     |
[INFO] [stdout] 206 |             let article_count_after_http_error: /* Type */ =
[INFO] [stdout]     |                                               ++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0282]: type annotations needed
[INFO] [stdout]    --> src/workflow/news.rs:249:17
[INFO] [stdout]     |
[INFO] [stdout] 249 |             let rss_count_after_firecrawl_error =
[INFO] [stdout]     |                 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 255 |                 rss_count_after_firecrawl_error.unwrap_or(0),
[INFO] [stdout]     |                 ------------------------------- type must be known at this point
[INFO] [stdout]     |
[INFO] [stdout] help: consider giving `rss_count_after_firecrawl_error` an explicit type
[INFO] [stdout]     |
[INFO] [stdout] 249 |             let rss_count_after_firecrawl_error: /* Type */ =
[INFO] [stdout]     |                                                ++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0282]: type annotations needed
[INFO] [stdout]    --> src/workflow/news.rs:262:17
[INFO] [stdout]     |
[INFO] [stdout] 262 |             let article_count_after_firecrawl_error =
[INFO] [stdout]     |                 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 267 |                 article_count_after_firecrawl_error.unwrap_or(0),
[INFO] [stdout]     |                 ----------------------------------- type must be known at this point
[INFO] [stdout]     |
[INFO] [stdout] help: consider giving `article_count_after_firecrawl_error` an explicit type
[INFO] [stdout]     |
[INFO] [stdout] 262 |             let article_count_after_firecrawl_error: /* Type */ =
[INFO] [stdout]     |                                                    ++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0282]: type annotations needed
[INFO] [stdout]    --> src/workflow/news.rs:273:17
[INFO] [stdout]     |
[INFO] [stdout] 273 |             let error_articles =
[INFO] [stdout]     |                 ^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 278 |                 error_articles.unwrap_or(0),
[INFO] [stdout]     |                 -------------- type must be known at this point
[INFO] [stdout]     |
[INFO] [stdout] help: consider giving `error_articles` an explicit type
[INFO] [stdout]     |
[INFO] [stdout] 273 |             let error_articles: /* Type */ =
[INFO] [stdout]     |                               ++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] For more information about this error, try `rustc --explain E0282`.
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `datadoggo` (lib) due to 4 previous errors
[INFO] [stderr] warning: build failed, waiting for other jobs to finish...
[INFO] [stdout] For more information about this error, try `rustc --explain E0282`.
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `datadoggo` (lib test) due to 145 previous errors
[INFO] running `Command { std: "docker" "inspect" "43bd632ae743a19595b0d49453a9e98f515eefa24b487005aefccd0684f6def9", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "43bd632ae743a19595b0d49453a9e98f515eefa24b487005aefccd0684f6def9", kill_on_drop: false }`
[INFO] [stdout] 43bd632ae743a19595b0d49453a9e98f515eefa24b487005aefccd0684f6def9
