[INFO] cloning repository https://github.com/schweller/rust-discord-notion
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/schweller/rust-discord-notion" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fschweller%2Frust-discord-notion", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fschweller%2Frust-discord-notion'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] b3a0cca08557a6b24e2edc92abce514bfed6d846
[INFO] checking schweller/rust-discord-notion/b3a0cca08557a6b24e2edc92abce514bfed6d846 against 67854e511de21d881bb16426996cd4259d44aa2e for pr-161154
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fschweller%2Frust-discord-notion" "/workspace/builds/worker-7-tc1/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-7-tc1/source'...
[INFO] [stderr] done.
[INFO] started tweaking git repo https://github.com/schweller/rust-discord-notion
[INFO] finished tweaking git repo https://github.com/schweller/rust-discord-notion
[INFO] tweaked toml for git repo https://github.com/schweller/rust-discord-notion written to /workspace/builds/worker-7-tc1/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/schweller/rust-discord-notion on toolchain 67854e511de21d881bb16426996cd4259d44aa2e
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+67854e511de21d881bb16426996cd4259d44aa2e" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate git repo https://github.com/schweller/rust-discord-notion 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" "+67854e511de21d881bb16426996cd4259d44aa2e" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Updating crates.io index
[INFO] [stderr]  Downloading crates ...
[INFO] [stderr]   Downloaded wiremock v0.6.5
[INFO] [stderr]   Downloaded bytes v1.11.0
[INFO] [stderr]   Downloaded zmij v1.0.19
[INFO] [stderr]   Downloaded hyper-util v0.1.19
[INFO] [stderr]   Downloaded deadpool-runtime v0.1.4
[INFO] [stderr]   Downloaded assert-json-diff v2.0.2
[INFO] [stderr]   Downloaded deadpool v0.12.3
[INFO] [stderr]   Downloaded cmake v0.1.57
[INFO] [stderr]   Downloaded cc v1.2.55
[INFO] [stderr]   Downloaded aws-lc-rs v1.15.4
[INFO] [stderr]   Downloaded rstest_macros v0.23.0
[INFO] [stderr]   Downloaded futures-timer v3.0.3
[INFO] [stderr]   Downloaded rstest v0.23.0
[INFO] [stderr]   Downloaded relative-path v1.9.3
[INFO] [stderr]   Downloaded ryu v1.0.22
[INFO] [stderr]   Downloaded reserve-port v2.3.0
[INFO] [stderr]   Downloaded rust-multipart-rfc7578_2 v0.8.0
[INFO] [stderr]   Downloaded time-macros v0.2.26
[INFO] [stderr]   Downloaded deranged v0.5.5
[INFO] [stderr]   Downloaded bytesize v2.3.1
[INFO] [stderr]   Downloaded fs-err v3.2.2
[INFO] [stderr]   Downloaded hmac v0.12.1
[INFO] [stderr]   Downloaded axum-server v0.8.0
[INFO] [stderr]   Downloaded auto-future v1.0.0
[INFO] [stderr]   Downloaded axum-test v17.3.0
[INFO] [stderr]   Downloaded zerocopy-derive v0.8.37
[INFO] [stderr]   Downloaded arc-swap v1.8.1
[INFO] [stderr]   Downloaded time v0.3.46
[INFO] [stderr]   Downloaded zerocopy v0.8.37
[INFO] [stderr]   Downloaded aws-lc-sys v0.37.0
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-m" "1610612736" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:8683fc1fc2eb5c9ac98e0d076ab094b2ffac7f99da555d2b6a2e27f346de2ec7" "sleep" "infinity", kill_on_drop: false }`
[INFO] [stdout] d480322c652a230becd2e82e54493ec8deb1b88dafe85bfd185f56c548cb4ff0
[INFO] running `Command { std: "docker" "start" "d480322c652a230becd2e82e54493ec8deb1b88dafe85bfd185f56c548cb4ff0", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "d480322c652a230becd2e82e54493ec8deb1b88dafe85bfd185f56c548cb4ff0", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "exec" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-w" "/opt/rustwide/workdir" "--user" "0:0" "d480322c652a230becd2e82e54493ec8deb1b88dafe85bfd185f56c548cb4ff0" "/opt/rustwide/cargo-home/bin/cargo" "+67854e511de21d881bb16426996cd4259d44aa2e" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "d480322c652a230becd2e82e54493ec8deb1b88dafe85bfd185f56c548cb4ff0", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "exec" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-w" "/opt/rustwide/workdir" "--user" "0:0" "d480322c652a230becd2e82e54493ec8deb1b88dafe85bfd185f56c548cb4ff0" "/opt/rustwide/cargo-home/bin/cargo" "+67854e511de21d881bb16426996cd4259d44aa2e" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stderr]    Compiling shlex v1.3.0
[INFO] [stderr]     Checking bytes v1.11.0
[INFO] [stderr]    Compiling find-msvc-tools v0.1.9
[INFO] [stderr]     Checking itoa v1.0.17
[INFO] [stderr]     Checking slab v0.4.12
[INFO] [stderr]     Checking futures-channel v0.3.31
[INFO] [stderr]     Checking tracing-core v0.1.36
[INFO] [stderr]     Checking futures-io v0.3.31
[INFO] [stderr]     Checking smallvec v1.15.1
[INFO] [stderr]    Compiling version_check v0.9.5
[INFO] [stderr]    Compiling libc v0.2.180
[INFO] [stderr]     Checking tower-service v0.3.3
[INFO] [stderr]    Compiling syn v2.0.114
[INFO] [stderr]     Checking errno v0.3.14
[INFO] [stderr]     Checking socket2 v0.6.2
[INFO] [stderr]     Checking mio v1.1.1
[INFO] [stderr]     Checking equivalent v1.0.2
[INFO] [stderr]    Compiling vcpkg v0.2.15
[INFO] [stderr]    Compiling dunce v1.0.5
[INFO] [stderr]     Checking signal-hook-registry v1.4.8
[INFO] [stderr]     Checking percent-encoding v2.3.2
[INFO] [stderr]    Compiling fs_extra v1.3.0
[INFO] [stderr]    Compiling httparse v1.10.1
[INFO] [stderr]     Checking hashbrown v0.16.1
[INFO] [stderr]     Checking atomic-waker v1.1.2
[INFO] [stderr]     Checking try-lock v0.2.5
[INFO] [stderr]    Compiling typenum v1.19.0
[INFO] [stderr]    Compiling zmij v1.0.19
[INFO] [stderr]     Checking httpdate v1.0.3
[INFO] [stderr]    Compiling serde v1.0.228
[INFO] [stderr]    Compiling generic-array v0.14.7
[INFO] [stderr]     Checking want v0.3.1
[INFO] [stderr]    Compiling serde_json v1.0.149
[INFO] [stderr]    Compiling aws-lc-rs v1.15.4
[INFO] [stderr]     Checking ipnet v2.11.0
[INFO] [stderr]     Checking zeroize v1.8.2
[INFO] [stderr]     Checking base64 v0.22.1
[INFO] [stderr]     Checking form_urlencoded v1.2.2
[INFO] [stderr]     Checking sync_wrapper v1.0.2
[INFO] [stderr]    Compiling zerocopy v0.8.37
[INFO] [stderr]    Compiling getrandom v0.3.4
[INFO] [stderr]     Checking bitflags v2.10.0
[INFO] [stderr]    Compiling openssl v0.10.75
[INFO] [stderr]     Checking foreign-types-shared v0.1.1
[INFO] [stderr]     Checking tower-layer v0.3.3
[INFO] [stderr]     Checking subtle v2.6.1
[INFO] [stderr]     Checking rustls-pki-types v1.14.0
[INFO] [stderr]     Checking foreign-types v0.3.2
[INFO] [stderr]    Compiling native-tls v0.2.14
[INFO] [stderr]     Checking http v1.4.0
[INFO] [stderr]    Compiling rustls v0.23.36
[INFO] [stderr]    Compiling memchr v2.7.6
[INFO] [stderr]    Compiling semver v1.0.27
[INFO] [stderr]     Checking openssl-probe v0.1.6
[INFO] [stderr]     Checking ryu v1.0.22
[INFO] [stderr]     Checking untrusted v0.9.0
[INFO] [stderr]    Compiling rustversion v1.0.22
[INFO] [stderr]     Checking rand_core v0.9.5
[INFO] [stderr]    Compiling fs-err v3.2.2
[INFO] [stderr]    Compiling toml_parser v1.0.6+spec-1.1.0
[INFO] [stderr]    Compiling rustc_version v0.4.1
[INFO] [stderr]    Compiling regex-syntax v0.8.8
[INFO] [stderr]    Compiling num-conv v0.2.0
[INFO] [stderr]     Checking powerfmt v0.2.0
[INFO] [stderr]    Compiling time-core v0.1.8
[INFO] [stderr]    Compiling cookie v0.18.1
[INFO] [stderr]     Checking serde_path_to_error v0.1.20
[INFO] [stderr]    Compiling anyhow v1.0.100
[INFO] [stderr]     Checking deranged v0.5.5
[INFO] [stderr]     Checking iri-string v0.7.10
[INFO] [stderr]    Compiling jobserver v0.1.34
[INFO] [stderr]    Compiling rstest_macros v0.23.0
[INFO] [stderr]    Compiling time-macros v0.2.26
[INFO] [stderr]     Checking matchit v0.8.4
[INFO] [stderr]    Compiling cc v1.2.55
[INFO] [stderr]     Checking http-body v1.0.1
[INFO] [stderr]     Checking indexmap v2.13.0
[INFO] [stderr]     Checking http-body-util v0.1.3
[INFO] [stderr]    Compiling aho-corasick v1.1.4
[INFO] [stderr]     Checking arc-swap v1.8.1
[INFO] [stderr]     Checking sharded-slab v0.1.7
[INFO] [stderr]     Checking tracing-log v0.2.0
[INFO] [stderr]     Checking num_cpus v1.17.0
[INFO] [stderr]     Checking thread_local v1.1.9
[INFO] [stderr]     Checking encoding_rs v0.8.35
[INFO] [stderr]    Compiling toml_edit v0.23.10+spec-1.0.0
[INFO] [stderr]     Checking yansi v1.0.1
[INFO] [stderr]     Checking crypto-common v0.1.7
[INFO] [stderr]     Checking block-buffer v0.10.4
[INFO] [stderr]     Checking cpufeatures v0.2.17
[INFO] [stderr]     Checking diff v0.1.13
[INFO] [stderr]     Checking digest v0.10.7
[INFO] [stderr]    Compiling cfg-if v1.0.4
[INFO] [stderr]    Compiling glob v0.3.3
[INFO] [stderr]     Checking nu-ansi-term v0.50.3
[INFO] [stderr]     Checking either v1.15.0
[INFO] [stderr]    Compiling cmake v0.1.57
[INFO] [stderr]    Compiling relative-path v1.9.3
[INFO] [stderr]     Checking deadpool-runtime v0.1.4
[INFO] [stderr]     Checking tracing-subscriber v0.3.22
[INFO] [stderr]     Checking sha2 v0.10.9
[INFO] [stderr]     Checking hmac v0.12.1
[INFO] [stderr]     Checking pretty_assertions v1.4.1
[INFO] [stderr]     Checking hex v0.4.3
[INFO] [stderr]     Checking futures-timer v3.0.3
[INFO] [stderr]    Compiling proc-macro-crate v3.4.0
[INFO] [stderr]    Compiling aws-lc-sys v0.37.0
[INFO] [stderr]    Compiling openssl-sys v0.9.111
[INFO] [stderr]     Checking auto-future v1.0.0
[INFO] [stderr]     Checking time v0.3.46
[INFO] [stderr]     Checking bytesize v2.3.1
[INFO] [stderr]     Checking regex-automata v0.4.13
[INFO] [stderr]    Compiling synstructure v0.13.2
[INFO] [stderr]    Compiling tokio-macros v2.6.0
[INFO] [stderr]    Compiling futures-macro v0.3.31
[INFO] [stderr]    Compiling zerovec-derive v0.11.2
[INFO] [stderr]    Compiling displaydoc v0.2.5
[INFO] [stderr]    Compiling tracing-attributes v0.1.31
[INFO] [stderr]    Compiling zerofrom-derive v0.1.6
[INFO] [stderr]    Compiling yoke-derive v0.8.1
[INFO] [stderr]    Compiling serde_derive v1.0.228
[INFO] [stderr]    Compiling openssl-macros v0.1.1
[INFO] [stderr]     Checking tokio v1.49.0
[INFO] [stderr]    Compiling thiserror-impl v2.0.18
[INFO] [stderr]     Checking regex v1.12.2
[INFO] [stderr]     Checking futures-util v0.3.31
[INFO] [stderr]     Checking zerofrom v0.1.6
[INFO] [stderr]     Checking tracing v0.1.44
[INFO] [stderr]     Checking yoke v0.8.1
[INFO] [stderr]     Checking zerovec v0.11.5
[INFO] [stderr]     Checking zerotrie v0.2.3
[INFO] [stderr]     Checking ppv-lite86 v0.2.21
[INFO] [stderr]     Checking axum-core v0.5.6
[INFO] [stderr]     Checking thiserror v2.0.18
[INFO] [stderr]     Checking reserve-port v2.3.0
[INFO] [stderr]     Checking rand_chacha v0.9.0
[INFO] [stderr]     Checking tinystr v0.8.2
[INFO] [stderr]     Checking potential_utf v0.1.4
[INFO] [stderr]     Checking icu_collections v2.1.1
[INFO] [stderr]     Checking rand v0.9.2
[INFO] [stderr]     Checking icu_locale_core v2.1.1
[INFO] [stderr]     Checking icu_provider v2.1.1
[INFO] [stderr]     Checking icu_normalizer v2.1.1
[INFO] [stderr]     Checking icu_properties v2.1.2
[INFO] [stderr]     Checking futures-executor v0.3.31
[INFO] [stderr]     Checking rust-multipart-rfc7578_2 v0.8.0
[INFO] [stderr]     Checking futures v0.3.31
[INFO] [stderr]     Checking serde_urlencoded v0.7.1
[INFO] [stderr]     Checking assert-json-diff v2.0.2
[INFO] [stderr]     Checking idna_adapter v1.2.1
[INFO] [stderr]     Checking idna v1.1.0
[INFO] [stderr]     Checking url v2.5.8
[INFO] [stderr]     Checking rstest v0.23.0
[INFO] [stderr]     Checking tokio-util v0.7.18
[INFO] [stderr]     Checking tower v0.5.3
[INFO] [stderr]     Checking tokio-native-tls v0.3.1
[INFO] [stderr]     Checking deadpool v0.12.3
[INFO] [stderr]     Checking h2 v0.4.13
[INFO] [stderr]     Checking tower-http v0.6.8
[INFO] [stderr]     Checking hyper v1.8.1
[INFO] [stderr]     Checking hyper-util v0.1.19
[INFO] [stderr]     Checking rustls-webpki v0.103.9
[INFO] [stderr]     Checking hyper-tls v0.6.0
[INFO] [stderr]     Checking axum v0.8.8
[INFO] [stderr]     Checking wiremock v0.6.5
[INFO] [stderr]     Checking reqwest v0.12.28
[INFO] [stderr]     Checking tokio-rustls v0.26.4
[INFO] [stderr]     Checking axum-server v0.8.0
[INFO] [stderr]     Checking axum-test v17.3.0
[INFO] [stderr]     Checking rust-disconotion v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unused import: `path::PathBuf`
[INFO] [stdout]  --> src/main.rs:5:28
[INFO] [stdout]   |
[INFO] [stdout] 5 | use std::{net::SocketAddr, path::PathBuf};
[INFO] [stdout]   |                            ^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `error`
[INFO] [stdout]  --> src/main.rs:7:15
[INFO] [stdout]   |
[INFO] [stdout] 7 | use tracing::{error, info, level_filters::LevelFilter};
[INFO] [stdout]   |               ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `verify_signature`
[INFO] [stdout]  --> src/handlers/notion.rs:3:49
[INFO] [stdout]   |
[INFO] [stdout] 3 | use crate::services::{format_notion_to_discord, verify_signature};
[INFO] [stdout]   |                                                 ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `DiscordError`
[INFO] [stdout]  --> src/handlers/mod.rs:4:34
[INFO] [stdout]   |
[INFO] [stdout] 4 | pub use discord::{DiscordClient, DiscordError};
[INFO] [stdout]   |                                  ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `DiscordApiResponse`
[INFO] [stdout]  --> src/models/mod.rs:4:19
[INFO] [stdout]   |
[INFO] [stdout] 4 | pub use discord::{DiscordApiResponse, DiscordWebhookPayload};
[INFO] [stdout]   |                   ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `SignatureError`
[INFO] [stdout]  --> src/services/mod.rs:5:21
[INFO] [stdout]   |
[INFO] [stdout] 5 | pub use signature::{SignatureError, verify_signature};
[INFO] [stdout]   |                     ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `HTTPS_PORT`
[INFO] [stdout]   --> src/main.rs:16:17
[INFO] [stdout]    |
[INFO] [stdout] 16 | use constants::{HTTPS_PORT, SERVER_HOST, SERVER_PORT};
[INFO] [stdout]    |                 ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `headers`
[INFO] [stdout]   --> src/handlers/notion.rs:18:5
[INFO] [stdout]    |
[INFO] [stdout] 18 |     headers: HeaderMap,
[INFO] [stdout]    |     ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_headers`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `payload`
[INFO] [stdout]   --> src/handlers/notion.rs:29:9
[INFO] [stdout]    |
[INFO] [stdout] 29 |     let payload: NotionWebhookPayload = match serde_json::from_str(&body) {
[INFO] [stdout]    |         ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_payload`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Ports` is never constructed
[INFO] [stdout]   --> src/main.rs:20:8
[INFO] [stdout]    |
[INFO] [stdout] 20 | struct Ports {
[INFO] [stdout]    |        ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `shutdown_signal` is never used
[INFO] [stdout]   --> src/main.rs:70:10
[INFO] [stdout]    |
[INFO] [stdout] 70 | async fn shutdown_signal() {
[INFO] [stdout]    |          ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `NOTION_VERIFICATION_TOKEN` is never used
[INFO] [stdout]  --> src/constants.rs:4:11
[INFO] [stdout]   |
[INFO] [stdout] 4 | pub const NOTION_VERIFICATION_TOKEN: &str = "your_verification_token_here";
[INFO] [stdout]   |           ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `CERT_PATH` is never used
[INFO] [stdout]  --> src/constants.rs:6:11
[INFO] [stdout]   |
[INFO] [stdout] 6 | pub const CERT_PATH: &str = "certs/cert.pem";
[INFO] [stdout]   |           ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `KEY_PATH` is never used
[INFO] [stdout]  --> src/constants.rs:7:11
[INFO] [stdout]   |
[INFO] [stdout] 7 | pub const KEY_PATH: &str = "certs/key.pem";
[INFO] [stdout]   |           ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `HTTPS_ENABLED` is never used
[INFO] [stdout]  --> src/constants.rs:8:11
[INFO] [stdout]   |
[INFO] [stdout] 8 | pub const HTTPS_ENABLED: bool = false;
[INFO] [stdout]   |           ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `HTTPS_PORT` is never used
[INFO] [stdout]   --> src/constants.rs:11:11
[INFO] [stdout]    |
[INFO] [stdout] 11 | pub const HTTPS_PORT: u16 = 3443;
[INFO] [stdout]    |           ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `with_webhook_url` is never used
[INFO] [stdout]   --> src/handlers/discord.rs:26:12
[INFO] [stdout]    |
[INFO] [stdout] 18 | impl DiscordClient {
[INFO] [stdout]    | ------------------ associated function in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 26 |     pub fn with_webhook_url(webhook_url: String) -> Self {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `with_username` and `with_avatar_url` are never used
[INFO] [stdout]   --> src/models/discord.rs:21:12
[INFO] [stdout]    |
[INFO] [stdout] 12 | impl DiscordWebhookPayload {
[INFO] [stdout]    | -------------------------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 21 |     pub fn with_username(mut self, username: String) -> Self {
[INFO] [stdout]    |            ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 26 |     pub fn with_avatar_url(mut self, avatar_url: String) -> Self {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `DiscordApiResponse` is never constructed
[INFO] [stdout]   --> src/models/discord.rs:33:12
[INFO] [stdout]    |
[INFO] [stdout] 33 | pub struct DiscordApiResponse {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple fields are never read
[INFO] [stdout]   --> src/models/notion.rs:5:9
[INFO] [stdout]    |
[INFO] [stdout]  4 | pub struct NotionWebhookPayload {
[INFO] [stdout]    |            -------------------- fields in this struct
[INFO] [stdout]  5 |     pub id: String,
[INFO] [stdout]    |         ^^
[INFO] [stdout]  6 |     pub timestamp: String,
[INFO] [stdout]    |         ^^^^^^^^^
[INFO] [stdout]  7 |     pub workspace_id: String,
[INFO] [stdout]    |         ^^^^^^^^^^^^
[INFO] [stdout]  8 |     pub workspace_name: String,
[INFO] [stdout]  9 |     pub subscription_id: String,
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^
[INFO] [stdout] 10 |     pub integration_id: String,
[INFO] [stdout]    |         ^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 14 |     pub accessible_by: Option<Vec<AccessibleBy>>,
[INFO] [stdout]    |         ^^^^^^^^^^^^^
[INFO] [stdout] 15 |     pub attempt_number: i32,
[INFO] [stdout]    |         ^^^^^^^^^^^^^^
[INFO] [stdout] 16 |     pub entity: EntityInfo,
[INFO] [stdout]    |         ^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `NotionWebhookPayload` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `id` and `author_type` are never read
[INFO] [stdout]   --> src/models/notion.rs:22:9
[INFO] [stdout]    |
[INFO] [stdout] 21 | pub struct Author {
[INFO] [stdout]    |            ------ fields in this struct
[INFO] [stdout] 22 |     pub id: String,
[INFO] [stdout]    |         ^^
[INFO] [stdout] 23 |     #[serde(rename = "type")]
[INFO] [stdout] 24 |     pub author_type: String,
[INFO] [stdout]    |         ^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `Author` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `id`, `access_type`, and `name` are never read
[INFO] [stdout]   --> src/models/notion.rs:36:9
[INFO] [stdout]    |
[INFO] [stdout] 35 | pub struct AccessibleBy {
[INFO] [stdout]    |            ------------ fields in this struct
[INFO] [stdout] 36 |     pub id: String,
[INFO] [stdout]    |         ^^
[INFO] [stdout] 37 |     #[serde(rename = "type")]
[INFO] [stdout] 38 |     pub access_type: String,
[INFO] [stdout]    |         ^^^^^^^^^^^
[INFO] [stdout] 39 |     pub name: Option<String>,
[INFO] [stdout]    |         ^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `AccessibleBy` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `id` and `entity_type` are never read
[INFO] [stdout]   --> src/models/notion.rs:44:9
[INFO] [stdout]    |
[INFO] [stdout] 43 | pub struct EntityInfo {
[INFO] [stdout]    |            ---------- fields in this struct
[INFO] [stdout] 44 |     pub id: String,
[INFO] [stdout]    |         ^^
[INFO] [stdout] 45 |     #[serde(rename = "type")]
[INFO] [stdout] 46 |     pub entity_type: String,
[INFO] [stdout]    |         ^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `EntityInfo` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `parent_type` is never read
[INFO] [stdout]   --> src/models/notion.rs:59:9
[INFO] [stdout]    |
[INFO] [stdout] 56 | pub struct ParentInfo {
[INFO] [stdout]    |            ---------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 59 |     pub parent_type: String,
[INFO] [stdout]    |         ^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `ParentInfo` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `id` is never read
[INFO] [stdout]   --> src/models/notion.rs:64:9
[INFO] [stdout]    |
[INFO] [stdout] 63 | pub struct UpdatedProperty {
[INFO] [stdout]    |            --------------- field in this struct
[INFO] [stdout] 64 |     pub id: String,
[INFO] [stdout]    |         ^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `UpdatedProperty` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `get_page_url` is never used
[INFO] [stdout]   --> src/models/notion.rs:71:12
[INFO] [stdout]    |
[INFO] [stdout] 70 | impl NotionWebhookPayload {
[INFO] [stdout]    | ------------------------- method in this implementation
[INFO] [stdout] 71 |     pub fn get_page_url(&self) -> Option<String> {
[INFO] [stdout]    |            ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type alias `HmacSha256` is never used
[INFO] [stdout]  --> src/services/signature.rs:5:6
[INFO] [stdout]   |
[INFO] [stdout] 5 | type HmacSha256 = Hmac<Sha256>;
[INFO] [stdout]   |      ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `SignatureError` is never used
[INFO] [stdout]  --> src/services/signature.rs:8:10
[INFO] [stdout]   |
[INFO] [stdout] 8 | pub enum SignatureError {
[INFO] [stdout]   |          ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `verify_signature` is never used
[INFO] [stdout]   --> src/services/signature.rs:17:8
[INFO] [stdout]    |
[INFO] [stdout] 17 | pub fn verify_signature(body: &str, signature: &str) -> Result<bool, SignatureError> {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `path::PathBuf`
[INFO] [stdout]  --> src/main.rs:5:28
[INFO] [stdout]   |
[INFO] [stdout] 5 | use std::{net::SocketAddr, path::PathBuf};
[INFO] [stdout]   |                            ^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `error`
[INFO] [stdout]  --> src/main.rs:7:15
[INFO] [stdout]   |
[INFO] [stdout] 7 | use tracing::{error, info, level_filters::LevelFilter};
[INFO] [stdout]   |               ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `verify_signature`
[INFO] [stdout]  --> src/handlers/notion.rs:3:49
[INFO] [stdout]   |
[INFO] [stdout] 3 | use crate::services::{format_notion_to_discord, verify_signature};
[INFO] [stdout]   |                                                 ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `header`
[INFO] [stdout]   --> src/handlers/notion.rs:74:30
[INFO] [stdout]    |
[INFO] [stdout] 74 |     use wiremock::matchers::{header, method, path};
[INFO] [stdout]    |                              ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `DiscordError`
[INFO] [stdout]  --> src/handlers/mod.rs:4:34
[INFO] [stdout]   |
[INFO] [stdout] 4 | pub use discord::{DiscordClient, DiscordError};
[INFO] [stdout]   |                                  ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `DiscordApiResponse`
[INFO] [stdout]  --> src/models/mod.rs:4:19
[INFO] [stdout]   |
[INFO] [stdout] 4 | pub use discord::{DiscordApiResponse, DiscordWebhookPayload};
[INFO] [stdout]   |                   ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `SignatureError`
[INFO] [stdout]  --> src/services/mod.rs:5:21
[INFO] [stdout]   |
[INFO] [stdout] 5 | pub use signature::{SignatureError, verify_signature};
[INFO] [stdout]   |                     ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `HTTPS_PORT`
[INFO] [stdout]   --> src/main.rs:16:17
[INFO] [stdout]    |
[INFO] [stdout] 16 | use constants::{HTTPS_PORT, SERVER_HOST, SERVER_PORT};
[INFO] [stdout]    |                 ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `headers`
[INFO] [stdout]   --> src/handlers/notion.rs:18:5
[INFO] [stdout]    |
[INFO] [stdout] 18 |     headers: HeaderMap,
[INFO] [stdout]    |     ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_headers`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `payload`
[INFO] [stdout]   --> src/handlers/notion.rs:29:9
[INFO] [stdout]    |
[INFO] [stdout] 29 |     let payload: NotionWebhookPayload = match serde_json::from_str(&body) {
[INFO] [stdout]    |         ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_payload`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Ports` is never constructed
[INFO] [stdout]   --> src/main.rs:20:8
[INFO] [stdout]    |
[INFO] [stdout] 20 | struct Ports {
[INFO] [stdout]    |        ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `shutdown_signal` is never used
[INFO] [stdout]   --> src/main.rs:70:10
[INFO] [stdout]    |
[INFO] [stdout] 70 | async fn shutdown_signal() {
[INFO] [stdout]    |          ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `CERT_PATH` is never used
[INFO] [stdout]  --> src/constants.rs:6:11
[INFO] [stdout]   |
[INFO] [stdout] 6 | pub const CERT_PATH: &str = "certs/cert.pem";
[INFO] [stdout]   |           ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `KEY_PATH` is never used
[INFO] [stdout]  --> src/constants.rs:7:11
[INFO] [stdout]   |
[INFO] [stdout] 7 | pub const KEY_PATH: &str = "certs/key.pem";
[INFO] [stdout]   |           ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `HTTPS_ENABLED` is never used
[INFO] [stdout]  --> src/constants.rs:8:11
[INFO] [stdout]   |
[INFO] [stdout] 8 | pub const HTTPS_ENABLED: bool = false;
[INFO] [stdout]   |           ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `HTTPS_PORT` is never used
[INFO] [stdout]   --> src/constants.rs:11:11
[INFO] [stdout]    |
[INFO] [stdout] 11 | pub const HTTPS_PORT: u16 = 3443;
[INFO] [stdout]    |           ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `create_test_app` is never used
[INFO] [stdout]   --> src/handlers/notion.rs:77:8
[INFO] [stdout]    |
[INFO] [stdout] 77 |     fn create_test_app() -> Router {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `with_username` and `with_avatar_url` are never used
[INFO] [stdout]   --> src/models/discord.rs:21:12
[INFO] [stdout]    |
[INFO] [stdout] 12 | impl DiscordWebhookPayload {
[INFO] [stdout]    | -------------------------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 21 |     pub fn with_username(mut self, username: String) -> Self {
[INFO] [stdout]    |            ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 26 |     pub fn with_avatar_url(mut self, avatar_url: String) -> Self {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `DiscordApiResponse` is never constructed
[INFO] [stdout]   --> src/models/discord.rs:33:12
[INFO] [stdout]    |
[INFO] [stdout] 33 | pub struct DiscordApiResponse {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple fields are never read
[INFO] [stdout]   --> src/models/notion.rs:5:9
[INFO] [stdout]    |
[INFO] [stdout]  4 | pub struct NotionWebhookPayload {
[INFO] [stdout]    |            -------------------- fields in this struct
[INFO] [stdout]  5 |     pub id: String,
[INFO] [stdout]    |         ^^
[INFO] [stdout]  6 |     pub timestamp: String,
[INFO] [stdout]    |         ^^^^^^^^^
[INFO] [stdout]  7 |     pub workspace_id: String,
[INFO] [stdout]    |         ^^^^^^^^^^^^
[INFO] [stdout]  8 |     pub workspace_name: String,
[INFO] [stdout]  9 |     pub subscription_id: String,
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^
[INFO] [stdout] 10 |     pub integration_id: String,
[INFO] [stdout]    |         ^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 14 |     pub accessible_by: Option<Vec<AccessibleBy>>,
[INFO] [stdout]    |         ^^^^^^^^^^^^^
[INFO] [stdout] 15 |     pub attempt_number: i32,
[INFO] [stdout]    |         ^^^^^^^^^^^^^^
[INFO] [stdout] 16 |     pub entity: EntityInfo,
[INFO] [stdout]    |         ^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `NotionWebhookPayload` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `id` and `author_type` are never read
[INFO] [stdout]   --> src/models/notion.rs:22:9
[INFO] [stdout]    |
[INFO] [stdout] 21 | pub struct Author {
[INFO] [stdout]    |            ------ fields in this struct
[INFO] [stdout] 22 |     pub id: String,
[INFO] [stdout]    |         ^^
[INFO] [stdout] 23 |     #[serde(rename = "type")]
[INFO] [stdout] 24 |     pub author_type: String,
[INFO] [stdout]    |         ^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `Author` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `id`, `access_type`, and `name` are never read
[INFO] [stdout]   --> src/models/notion.rs:36:9
[INFO] [stdout]    |
[INFO] [stdout] 35 | pub struct AccessibleBy {
[INFO] [stdout]    |            ------------ fields in this struct
[INFO] [stdout] 36 |     pub id: String,
[INFO] [stdout]    |         ^^
[INFO] [stdout] 37 |     #[serde(rename = "type")]
[INFO] [stdout] 38 |     pub access_type: String,
[INFO] [stdout]    |         ^^^^^^^^^^^
[INFO] [stdout] 39 |     pub name: Option<String>,
[INFO] [stdout]    |         ^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `AccessibleBy` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `id` and `entity_type` are never read
[INFO] [stdout]   --> src/models/notion.rs:44:9
[INFO] [stdout]    |
[INFO] [stdout] 43 | pub struct EntityInfo {
[INFO] [stdout]    |            ---------- fields in this struct
[INFO] [stdout] 44 |     pub id: String,
[INFO] [stdout]    |         ^^
[INFO] [stdout] 45 |     #[serde(rename = "type")]
[INFO] [stdout] 46 |     pub entity_type: String,
[INFO] [stdout]    |         ^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `EntityInfo` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `parent_type` is never read
[INFO] [stdout]   --> src/models/notion.rs:59:9
[INFO] [stdout]    |
[INFO] [stdout] 56 | pub struct ParentInfo {
[INFO] [stdout]    |            ---------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 59 |     pub parent_type: String,
[INFO] [stdout]    |         ^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `ParentInfo` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `id` is never read
[INFO] [stdout]   --> src/models/notion.rs:64:9
[INFO] [stdout]    |
[INFO] [stdout] 63 | pub struct UpdatedProperty {
[INFO] [stdout]    |            --------------- field in this struct
[INFO] [stdout] 64 |     pub id: String,
[INFO] [stdout]    |         ^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `UpdatedProperty` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `get_page_url` is never used
[INFO] [stdout]   --> src/models/notion.rs:71:12
[INFO] [stdout]    |
[INFO] [stdout] 70 | impl NotionWebhookPayload {
[INFO] [stdout]    | ------------------------- method in this implementation
[INFO] [stdout] 71 |     pub fn get_page_url(&self) -> Option<String> {
[INFO] [stdout]    |            ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 1m 25s
[INFO] running `Command { std: "docker" "inspect" "d480322c652a230becd2e82e54493ec8deb1b88dafe85bfd185f56c548cb4ff0", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "d480322c652a230becd2e82e54493ec8deb1b88dafe85bfd185f56c548cb4ff0", kill_on_drop: false }`
[INFO] [stdout] d480322c652a230becd2e82e54493ec8deb1b88dafe85bfd185f56c548cb4ff0
