[INFO] cloning repository https://github.com/RhiBee003/whiskerWatch
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/RhiBee003/whiskerWatch" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FRhiBee003%2FwhiskerWatch", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FRhiBee003%2FwhiskerWatch'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] e84cc8ed84b1ac8a10ce5037c9c44aaeaa439388
[INFO] checking RhiBee003/whiskerWatch against master#c290daa1e5274a52e54a0f49e31bd70192abc606 for pr-133502-23
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FRhiBee003%2FwhiskerWatch" "/workspace/builds/worker-7-tc1/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-7-tc1/source'...
[INFO] [stderr] done.
[INFO] removed /workspace/builds/worker-7-tc1/source/rust-toolchain
[INFO] started tweaking git repo https://github.com/RhiBee003/whiskerWatch
[INFO] finished tweaking git repo https://github.com/RhiBee003/whiskerWatch
[INFO] tweaked toml for git repo https://github.com/RhiBee003/whiskerWatch written to /workspace/builds/worker-7-tc1/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/RhiBee003/whiskerWatch on toolchain c290daa1e5274a52e54a0f49e31bd70192abc606
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+c290daa1e5274a52e54a0f49e31bd70192abc606" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate git repo https://github.com/RhiBee003/whiskerWatch 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" "+c290daa1e5274a52e54a0f49e31bd70192abc606" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Updating crates.io index
[INFO] [stderr]  Downloading crates ...
[INFO] [stderr]   Downloaded web-push v0.10.4
[INFO] [stderr]   Downloaded der v0.4.5
[INFO] [stderr]   Downloaded sec1_decode v0.1.0
[INFO] [stderr]   Downloaded der_derive v0.4.1
[INFO] [stderr]   Downloaded const-oid v0.6.2
[INFO] [stderr]   Downloaded jwt-simple v0.11.9
[INFO] [stderr]   Downloaded rsa v0.7.2
[INFO] [stderr]   Downloaded zerocopy-derive v0.8.49
[INFO] [stderr]   Downloaded zerocopy v0.8.49
[INFO] [stderr]   Downloaded hmac-sha1-compact v1.1.7
[INFO] [stderr]   Downloaded hmac-sha512 v1.1.12
[INFO] [stderr]   Downloaded ed25519-compact v2.3.0
[INFO] [stderr]   Downloaded coarsetime v0.1.37
[INFO] [stderr]   Downloaded ct-codecs v1.1.7
[INFO] [stderr]   Downloaded isahc v1.8.2
[INFO] [stderr]   Downloaded binstring v0.1.7
[INFO] [stderr]   Downloaded wasix v0.13.1
[INFO] [stderr]   Downloaded sluice v0.6.0
[INFO] [stderr]   Downloaded ece v2.3.1
[INFO] [stderr]   Downloaded curl v0.4.49
[INFO] [stderr]   Downloaded curl-sys v0.4.87+curl-8.19.0
[INFO] [stderr]   Downloaded libnghttp2-sys v0.1.13+1.68.1
[INFO] [stderr]   Downloaded hyper v1.10.0
[INFO] [stderr]   Downloaded bcrypt v0.16.0
[INFO] [stderr]   Downloaded axum-extra v0.10.3
[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:3d5ced03c013a94a2f102a4510f48a6e9184255caf5fd8244f58017bde7f5210" "sleep" "infinity", kill_on_drop: false }`
[INFO] [stdout] 4bb3b13187c86db202cff6f2f6c227d0c9dd92012c5304cd0e36adecea7e5eea
[INFO] running `Command { std: "docker" "start" "4bb3b13187c86db202cff6f2f6c227d0c9dd92012c5304cd0e36adecea7e5eea", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "4bb3b13187c86db202cff6f2f6c227d0c9dd92012c5304cd0e36adecea7e5eea", 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" "4bb3b13187c86db202cff6f2f6c227d0c9dd92012c5304cd0e36adecea7e5eea" "/opt/rustwide/cargo-home/bin/cargo" "+c290daa1e5274a52e54a0f49e31bd70192abc606" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "4bb3b13187c86db202cff6f2f6c227d0c9dd92012c5304cd0e36adecea7e5eea", 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" "4bb3b13187c86db202cff6f2f6c227d0c9dd92012c5304cd0e36adecea7e5eea" "/opt/rustwide/cargo-home/bin/cargo" "+c290daa1e5274a52e54a0f49e31bd70192abc606" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stderr]     Checking log v0.4.30
[INFO] [stderr]    Compiling zerocopy v0.8.49
[INFO] [stderr]    Compiling openssl-sys v0.9.116
[INFO] [stderr]     Checking generic-array v0.14.7
[INFO] [stderr]     Checking der v0.7.10
[INFO] [stderr]     Checking http v1.4.1
[INFO] [stderr]     Checking tokio v1.52.3
[INFO] [stderr]     Checking futures-util v0.3.32
[INFO] [stderr]    Compiling num-traits v0.2.19
[INFO] [stderr]    Compiling libz-sys v1.1.29
[INFO] [stderr]    Compiling libnghttp2-sys v0.1.13+1.68.1
[INFO] [stderr]     Checking zerotrie v0.2.4
[INFO] [stderr]     Checking tinystr v0.8.3
[INFO] [stderr]     Checking icu_collections v2.2.0
[INFO] [stderr]     Checking pem-rfc7468 v0.6.0
[INFO] [stderr]    Compiling curl-sys v0.4.87+curl-8.19.0
[INFO] [stderr]     Checking tracing v0.1.44
[INFO] [stderr]     Checking concurrent-queue v2.5.0
[INFO] [stderr]     Checking icu_locale_core v2.2.0
[INFO] [stderr]    Compiling rustix v1.1.4
[INFO] [stderr]     Checking der v0.6.1
[INFO] [stderr]    Compiling rustls v0.23.40
[INFO] [stderr]    Compiling syn v1.0.109
[INFO] [stderr]     Checking lazy_static v1.5.0
[INFO] [stderr]     Checking linux-raw-sys v0.12.1
[INFO] [stderr]    Compiling unicase v2.9.0
[INFO] [stderr]     Checking event-listener v5.4.1
[INFO] [stderr]    Compiling num-bigint-dig v0.8.6
[INFO] [stderr]     Checking regex-automata v0.4.14
[INFO] [stderr]    Compiling mime_guess v2.0.5
[INFO] [stderr]     Checking event-listener-strategy v0.5.4
[INFO] [stderr]     Checking crypto-common v0.1.7
[INFO] [stderr]     Checking block-buffer v0.10.4
[INFO] [stderr]     Checking icu_provider v2.2.0
[INFO] [stderr]     Checking digest v0.10.7
[INFO] [stderr]     Checking crypto-bigint v0.5.5
[INFO] [stderr]     Checking http-body v1.0.1
[INFO] [stderr]     Checking num-integer v0.1.46
[INFO] [stderr]     Checking hmac v0.12.1
[INFO] [stderr]     Checking signature v2.2.0
[INFO] [stderr]     Checking icu_properties v2.2.0
[INFO] [stderr]     Checking spki v0.7.3
[INFO] [stderr]     Checking hkdf v0.12.4
[INFO] [stderr]     Checking icu_normalizer v2.2.0
[INFO] [stderr]     Checking rfc6979 v0.4.0
[INFO] [stderr]     Checking pkcs8 v0.10.2
[INFO] [stderr]     Checking sha2 v0.10.9
[INFO] [stderr]     Checking http-body-util v0.1.3
[INFO] [stderr]     Checking num-iter v0.1.45
[INFO] [stderr]     Checking spki v0.6.0
[INFO] [stderr]     Checking sec1 v0.7.3
[INFO] [stderr]     Checking serde_json v1.0.150
[INFO] [stderr]    Compiling pin-project-internal v1.1.13
[INFO] [stderr]    Compiling time-core v0.1.8
[INFO] [stderr]    Compiling curl v0.4.49
[INFO] [stderr]    Compiling num-conv v0.2.2
[INFO] [stderr]     Checking pkcs8 v0.9.0
[INFO] [stderr]     Checking deranged v0.5.8
[INFO] [stderr]    Compiling openssl v0.10.80
[INFO] [stderr]     Checking signature v1.6.4
[INFO] [stderr]     Checking pkcs1 v0.4.1
[INFO] [stderr]     Checking inout v0.1.4
[INFO] [stderr]    Compiling time-macros v0.2.27
[INFO] [stderr]     Checking async-channel v2.5.0
[INFO] [stderr]    Compiling libsqlite3-sys v0.30.1
[INFO] [stderr]    Compiling cookie v0.18.1
[INFO] [stderr]    Compiling isahc v1.8.2
[INFO] [stderr]     Checking const-oid v0.6.2
[INFO] [stderr]     Checking regex v1.12.3
[INFO] [stderr]     Checking ct-codecs v1.1.7
[INFO] [stderr]     Checking elliptic-curve v0.13.8
[INFO] [stderr]     Checking http v0.2.12
[INFO] [stderr]     Checking idna_adapter v1.2.2
[INFO] [stderr]     Checking ed25519-compact v2.3.0
[INFO] [stderr]     Checking idna v1.1.0
[INFO] [stderr]     Checking multer v3.1.0
[INFO] [stderr]     Checking ecdsa v0.16.9
[INFO] [stderr]     Checking primeorder v0.13.6
[INFO] [stderr]    Compiling synstructure v0.12.6
[INFO] [stderr]     Checking url v2.5.8
[INFO] [stderr]     Checking pin-project v1.1.13
[INFO] [stderr]     Checking tracing-futures v0.2.5
[INFO] [stderr]     Checking pem v0.8.3
[INFO] [stderr]     Checking sluice v0.6.0
[INFO] [stderr]     Checking time v0.3.47
[INFO] [stderr]     Checking k256 v0.13.4
[INFO] [stderr]     Checking p256 v0.13.2
[INFO] [stderr]     Checking p384 v0.13.1
[INFO] [stderr]     Checking cipher v0.4.4
[INFO] [stderr]     Checking axum-core v0.5.6
[INFO] [stderr]     Checking castaway v0.2.4
[INFO] [stderr]     Checking hmac-sha256 v1.1.14
[INFO] [stderr]     Checking hmac-sha512 v1.1.12
[INFO] [stderr]     Checking futures-lite v2.6.1
[INFO] [stderr]     Checking coarsetime v0.1.37
[INFO] [stderr]     Checking hmac-sha1-compact v1.1.7
[INFO] [stderr]     Checking http-range-header v0.4.2
[INFO] [stderr]     Checking binstring v0.1.7
[INFO] [stderr]     Checking chrono v0.4.44
[INFO] [stderr]     Checking blowfish v0.9.1
[INFO] [stderr]     Checking email-encoding v0.4.1
[INFO] [stderr]     Checking pem v3.0.6
[INFO] [stderr]     Checking nom v8.0.0
[INFO] [stderr]     Checking quoted_printable v0.5.2
[INFO] [stderr]     Checking email_address v0.2.9
[INFO] [stderr]     Checking ppv-lite86 v0.2.21
[INFO] [stderr]     Checking ahash v0.8.12
[INFO] [stderr]     Checking bcrypt v0.16.0
[INFO] [stderr]     Checking uuid v1.23.1
[INFO] [stderr]     Checking urlencoding v2.1.3
[INFO] [stderr]     Checking polling v3.11.0
[INFO] [stderr]     Checking hashbrown v0.14.5
[INFO] [stderr]    Compiling der_derive v0.4.1
[INFO] [stderr]     Checking tempfile v3.27.0
[INFO] [stderr]     Checking rand_chacha v0.3.1
[INFO] [stderr]     Checking hyper v1.10.0
[INFO] [stderr]     Checking tower v0.5.3
[INFO] [stderr]     Checking tokio-rustls v0.26.4
[INFO] [stderr]     Checking tokio-util v0.7.18
[INFO] [stderr]     Checking rand v0.8.6
[INFO] [stderr]     Checking der v0.4.5
[INFO] [stderr]     Checking hashlink v0.9.1
[INFO] [stderr]     Checking tower-http v0.6.11
[INFO] [stderr]     Checking sec1_decode v0.1.0
[INFO] [stderr]     Checking hyper-util v0.1.20
[INFO] [stderr]     Checking ece v2.3.1
[INFO] [stderr]     Checking rsa v0.7.2
[INFO] [stderr]     Checking lettre v0.11.22
[INFO] [stderr]     Checking jwt-simple v0.11.9
[INFO] [stderr]     Checking hyper-rustls v0.27.9
[INFO] [stderr]     Checking axum v0.8.9
[INFO] [stderr]     Checking reqwest v0.12.28
[INFO] [stderr]     Checking axum-extra v0.10.3
[INFO] [stderr]     Checking rusqlite v0.32.1
[INFO] [stderr]     Checking web-push v0.10.4
[INFO] [stderr]     Checking whiskerWatchWeb v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unused variable: `pet_name`
[INFO] [stdout]     --> src/main.rs:8096:5
[INFO] [stdout]      |
[INFO] [stdout] 8096 |     pet_name: &str,
[INFO] [stdout]      |     ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_pet_name`
[INFO] [stdout]      |
[INFO] [stdout]      = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `feeding_plan_for_profile` is never used
[INFO] [stdout]    --> src/main.rs:251:4
[INFO] [stdout]     |
[INFO] [stdout] 251 | fn feeding_plan_for_profile(profile: &UserProfile, today: NaiveDate) -> FeedingPlan {
[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 `tasks_for_pet` is never used
[INFO] [stdout]     --> src/main.rs:1088:4
[INFO] [stdout]      |
[INFO] [stdout] 1088 | fn tasks_for_pet<'a>(profile: &'a UserProfile, pet_id: &str) -> Vec<&'a UserTask> {
[INFO] [stdout]      |    ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `render_pet_switcher` is never used
[INFO] [stdout]     --> src/main.rs:1148:4
[INFO] [stdout]      |
[INFO] [stdout] 1148 | fn render_pet_switcher(profile: &UserProfile) -> String {
[INFO] [stdout]      |    ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `add_cat` is never read
[INFO] [stdout]     --> src/main.rs:1331:5
[INFO] [stdout]      |
[INFO] [stdout] 1317 | struct DashboardQuery {
[INFO] [stdout]      |        -------------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 1331 |     add_cat: Option<String>,
[INFO] [stdout]      |     ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `pet_name`, `pet_breed`, and `pet_color` are never read
[INFO] [stdout]     --> src/main.rs:1380:5
[INFO] [stdout]      |
[INFO] [stdout] 1379 | struct AddPetForm {
[INFO] [stdout]      |        ---------- fields in this struct
[INFO] [stdout] 1380 |     pet_name: String,
[INFO] [stdout]      |     ^^^^^^^^
[INFO] [stdout] 1381 |     pet_breed: String,
[INFO] [stdout]      |     ^^^^^^^^^
[INFO] [stdout] 1382 |     #[serde(default)]
[INFO] [stdout] 1383 |     pet_color: String,
[INFO] [stdout]      |     ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `escape_js_string` is never used
[INFO] [stdout]     --> src/main.rs:2046:4
[INFO] [stdout]      |
[INFO] [stdout] 2046 | fn escape_js_string(value: &str) -> String {
[INFO] [stdout]      |    ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `vaccines_due_or_overdue` is never used
[INFO] [stdout]     --> src/main.rs:3593:4
[INFO] [stdout]      |
[INFO] [stdout] 3593 | fn vaccines_due_or_overdue(profile: &UserProfile, today: NaiveDate) -> bool {
[INFO] [stdout]      |    ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `vaccines_due_or_overdue_for_snapshot` is never used
[INFO] [stdout]     --> src/main.rs:3674:4
[INFO] [stdout]      |
[INFO] [stdout] 3674 | fn vaccines_due_or_overdue_for_snapshot(snapshot: &PetSnapshot, today: NaiveDate) -> bool {
[INFO] [stdout]      |    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `pet_ids_for_breed_name` is never used
[INFO] [stdout]     --> src/main.rs:3837:15
[INFO] [stdout]      |
[INFO] [stdout] 3837 | pub(crate) fn pet_ids_for_breed_name(profile: &UserProfile, breed_name: &str) -> Vec<String> {
[INFO] [stdout]      |               ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `vet_reminder_interval` is never used
[INFO] [stdout]     --> src/main.rs:4428:4
[INFO] [stdout]      |
[INFO] [stdout] 4428 | fn vet_reminder_interval(profile: &UserProfile) -> Duration {
[INFO] [stdout]      |    ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `pet_birth_date` is never used
[INFO] [stdout]     --> src/main.rs:4592:4
[INFO] [stdout]      |
[INFO] [stdout] 4592 | fn pet_birth_date(profile: &UserProfile, reference: NaiveDate) -> Option<NaiveDate> {
[INFO] [stdout]      |    ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `generate_birthday_calendar_events` is never used
[INFO] [stdout]     --> src/main.rs:4615:4
[INFO] [stdout]      |
[INFO] [stdout] 4615 | fn generate_birthday_calendar_events(
[INFO] [stdout]      |    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `is_outdoor_cat` is never used
[INFO] [stdout]     --> src/main.rs:4656:4
[INFO] [stdout]      |
[INFO] [stdout] 4656 | fn is_outdoor_cat(profile: &UserProfile) -> bool {
[INFO] [stdout]      |    ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `generate_vaccine_calendar_events` is never used
[INFO] [stdout]     --> src/main.rs:4820:4
[INFO] [stdout]      |
[INFO] [stdout] 4820 | fn generate_vaccine_calendar_events(
[INFO] [stdout]      |    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `generate_vet_calendar_events` is never used
[INFO] [stdout]     --> src/main.rs:5004:4
[INFO] [stdout]      |
[INFO] [stdout] 5004 | fn generate_vet_calendar_events(
[INFO] [stdout]      |    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `label` and `emoji` are never read
[INFO] [stdout]   --> src/cat_bonds.rs:15:9
[INFO] [stdout]    |
[INFO] [stdout] 13 | pub struct BondActionDef {
[INFO] [stdout]    |            ------------- fields in this struct
[INFO] [stdout] 14 |     pub id: &'static str,
[INFO] [stdout] 15 |     pub label: &'static str,
[INFO] [stdout]    |         ^^^^^
[INFO] [stdout] 16 |     pub emoji: &'static str,
[INFO] [stdout]    |         ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `BondActionDef` 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 `category` is never read
[INFO] [stdout]  --> src/breed_health.rs:7:9
[INFO] [stdout]   |
[INFO] [stdout] 4 | pub struct ResolvedBreed {
[INFO] [stdout]   |            ------------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 7 |     pub category: String,
[INFO] [stdout]   |         ^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `ResolvedBreed` 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: function `render_angel_cat_home_scene` is never used
[INFO] [stdout]    --> src/memorial.rs:562:8
[INFO] [stdout]     |
[INFO] [stdout] 562 | pub fn render_angel_cat_home_scene(profile: &UserProfile) -> String {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `memorial_status_message` is never used
[INFO] [stdout]    --> src/memorial.rs:584:8
[INFO] [stdout]     |
[INFO] [stdout] 584 | pub fn memorial_status_message(status: Option<&str>, pet_name: &str) -> Option<String> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `render_add_cat_modal` is never used
[INFO] [stdout]    --> src/entitlements.rs:185:8
[INFO] [stdout]     |
[INFO] [stdout] 185 | pub fn render_add_cat_modal() -> String {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `label` and `emoji` are never read
[INFO] [stdout]   --> src/playdates.rs:26:9
[INFO] [stdout]    |
[INFO] [stdout] 24 | pub struct PlaydateActionDef {
[INFO] [stdout]    |            ----------------- fields in this struct
[INFO] [stdout] 25 |     pub id: &'static str,
[INFO] [stdout] 26 |     pub label: &'static str,
[INFO] [stdout]    |         ^^^^^
[INFO] [stdout] 27 |     pub emoji: &'static str,
[INFO] [stdout]    |         ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `PlaydateActionDef` 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: function `friendship_progress_percent` is never used
[INFO] [stdout]    --> src/playdates.rs:144:8
[INFO] [stdout]     |
[INFO] [stdout] 144 | pub fn friendship_progress_percent(score: i32) -> u32 {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `LevelUp` is never constructed
[INFO] [stdout]   --> src/share_cards.rs:14:5
[INFO] [stdout]    |
[INFO] [stdout] 13 | pub enum ShareCardKind {
[INFO] [stdout]    |          ------------- variant in this enum
[INFO] [stdout] 14 |     LevelUp(u32),
[INFO] [stdout]    |     ^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `ShareCardKind` 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: constant `FRIEND_STATUS_PENDING` is never used
[INFO] [stdout]   --> src/sharing.rs:14:11
[INFO] [stdout]    |
[INFO] [stdout] 14 | pub const FRIEND_STATUS_PENDING: &str = "pending";
[INFO] [stdout]    |           ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `FRIEND_STATUS_ACCEPTED` is never used
[INFO] [stdout]   --> src/sharing.rs:15:11
[INFO] [stdout]    |
[INFO] [stdout] 15 | pub const FRIEND_STATUS_ACCEPTED: &str = "accepted";
[INFO] [stdout]    |           ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `FRIEND_STATUS_DECLINED` is never used
[INFO] [stdout]   --> src/sharing.rs:16:11
[INFO] [stdout]    |
[INFO] [stdout] 16 | pub const FRIEND_STATUS_DECLINED: &str = "declined";
[INFO] [stdout]    |           ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `SHARE_STATUS_ACCEPTED` is never used
[INFO] [stdout]   --> src/sharing.rs:19:11
[INFO] [stdout]    |
[INFO] [stdout] 19 | pub const SHARE_STATUS_ACCEPTED: &str = "accepted";
[INFO] [stdout]    |           ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `SHARE_STATUS_DECLINED` is never used
[INFO] [stdout]   --> src/sharing.rs:20:11
[INFO] [stdout]    |
[INFO] [stdout] 20 | pub const SHARE_STATUS_DECLINED: &str = "declined";
[INFO] [stdout]    |           ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `FriendMessageSendForm` is never constructed
[INFO] [stdout]    --> src/sharing.rs:192:12
[INFO] [stdout]     |
[INFO] [stdout] 192 | pub struct FriendMessageSendForm {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait `ToRadians` is never used
[INFO] [stdout]    --> src/shelter_locator.rs:529:7
[INFO] [stdout]     |
[INFO] [stdout] 529 | trait ToRadians {
[INFO] [stdout]     |       ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `list_feedback_comments` and `get_feedback_comment` are never used
[INFO] [stdout]     --> src/storage.rs:1754:12
[INFO] [stdout]      |
[INFO] [stdout]  351 | impl Storage {
[INFO] [stdout]      | ------------ methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 1754 |     pub fn list_feedback_comments(
[INFO] [stdout]      |            ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 1762 |     pub fn get_feedback_comment(
[INFO] [stdout]      |            ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `flags` is never read
[INFO] [stdout]   --> src/home_health_check.rs:68:9
[INFO] [stdout]    |
[INFO] [stdout] 64 | pub struct HomeHealthCheckResult {
[INFO] [stdout]    |            --------------------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 68 |     pub flags: Vec<String>,
[INFO] [stdout]    |         ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `HomeHealthCheckResult` 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: function `should_offer_check` is never used
[INFO] [stdout]    --> src/home_health_check.rs:127:8
[INFO] [stdout]     |
[INFO] [stdout] 127 | pub fn should_offer_check(snapshot: &PetSnapshot, profile: &UserProfile, today: NaiveDate) -> bool {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `css_class` is never used
[INFO] [stdout]   --> src/symptom_checker.rs:26:12
[INFO] [stdout]    |
[INFO] [stdout] 15 | impl Urgency {
[INFO] [stdout]    | ------------ method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 26 |     pub fn css_class(self) -> &'static str {
[INFO] [stdout]    |            ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `wellness_interval_label` is never read
[INFO] [stdout]   --> src/vet_care.rs:41:9
[INFO] [stdout]    |
[INFO] [stdout] 32 | pub struct VetCarePlan {
[INFO] [stdout]    |            ----------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 41 |     pub wellness_interval_label: String,
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `VetCarePlan` 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: unused variable: `pet_name`
[INFO] [stdout]     --> src/main.rs:8096:5
[INFO] [stdout]      |
[INFO] [stdout] 8096 |     pet_name: &str,
[INFO] [stdout]      |     ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_pet_name`
[INFO] [stdout]      |
[INFO] [stdout]      = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `tasks_for_pet` is never used
[INFO] [stdout]     --> src/main.rs:1088:4
[INFO] [stdout]      |
[INFO] [stdout] 1088 | fn tasks_for_pet<'a>(profile: &'a UserProfile, pet_id: &str) -> Vec<&'a UserTask> {
[INFO] [stdout]      |    ^^^^^^^^^^^^^
[INFO] [stdout]      |
[INFO] [stdout]      = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `add_cat` is never read
[INFO] [stdout]     --> src/main.rs:1331:5
[INFO] [stdout]      |
[INFO] [stdout] 1317 | struct DashboardQuery {
[INFO] [stdout]      |        -------------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 1331 |     add_cat: Option<String>,
[INFO] [stdout]      |     ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `pet_name`, `pet_breed`, and `pet_color` are never read
[INFO] [stdout]     --> src/main.rs:1380:5
[INFO] [stdout]      |
[INFO] [stdout] 1379 | struct AddPetForm {
[INFO] [stdout]      |        ---------- fields in this struct
[INFO] [stdout] 1380 |     pet_name: String,
[INFO] [stdout]      |     ^^^^^^^^
[INFO] [stdout] 1381 |     pet_breed: String,
[INFO] [stdout]      |     ^^^^^^^^^
[INFO] [stdout] 1382 |     #[serde(default)]
[INFO] [stdout] 1383 |     pet_color: String,
[INFO] [stdout]      |     ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `escape_js_string` is never used
[INFO] [stdout]     --> src/main.rs:2046:4
[INFO] [stdout]      |
[INFO] [stdout] 2046 | fn escape_js_string(value: &str) -> String {
[INFO] [stdout]      |    ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `vaccines_due_or_overdue_for_snapshot` is never used
[INFO] [stdout]     --> src/main.rs:3674:4
[INFO] [stdout]      |
[INFO] [stdout] 3674 | fn vaccines_due_or_overdue_for_snapshot(snapshot: &PetSnapshot, today: NaiveDate) -> bool {
[INFO] [stdout]      |    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `pet_ids_for_breed_name` is never used
[INFO] [stdout]     --> src/main.rs:3837:15
[INFO] [stdout]      |
[INFO] [stdout] 3837 | pub(crate) fn pet_ids_for_breed_name(profile: &UserProfile, breed_name: &str) -> Vec<String> {
[INFO] [stdout]      |               ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `vet_reminder_interval` is never used
[INFO] [stdout]     --> src/main.rs:4428:4
[INFO] [stdout]      |
[INFO] [stdout] 4428 | fn vet_reminder_interval(profile: &UserProfile) -> Duration {
[INFO] [stdout]      |    ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `label` and `emoji` are never read
[INFO] [stdout]   --> src/cat_bonds.rs:15:9
[INFO] [stdout]    |
[INFO] [stdout] 13 | pub struct BondActionDef {
[INFO] [stdout]    |            ------------- fields in this struct
[INFO] [stdout] 14 |     pub id: &'static str,
[INFO] [stdout] 15 |     pub label: &'static str,
[INFO] [stdout]    |         ^^^^^
[INFO] [stdout] 16 |     pub emoji: &'static str,
[INFO] [stdout]    |         ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `BondActionDef` 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 `category` is never read
[INFO] [stdout]  --> src/breed_health.rs:7:9
[INFO] [stdout]   |
[INFO] [stdout] 4 | pub struct ResolvedBreed {
[INFO] [stdout]   |            ------------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 7 |     pub category: String,
[INFO] [stdout]   |         ^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `ResolvedBreed` 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: function `render_angel_cat_home_scene` is never used
[INFO] [stdout]    --> src/memorial.rs:562:8
[INFO] [stdout]     |
[INFO] [stdout] 562 | pub fn render_angel_cat_home_scene(profile: &UserProfile) -> String {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `memorial_status_message` is never used
[INFO] [stdout]    --> src/memorial.rs:584:8
[INFO] [stdout]     |
[INFO] [stdout] 584 | pub fn memorial_status_message(status: Option<&str>, pet_name: &str) -> Option<String> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `render_add_cat_modal` is never used
[INFO] [stdout]    --> src/entitlements.rs:185:8
[INFO] [stdout]     |
[INFO] [stdout] 185 | pub fn render_add_cat_modal() -> String {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `label` and `emoji` are never read
[INFO] [stdout]   --> src/playdates.rs:26:9
[INFO] [stdout]    |
[INFO] [stdout] 24 | pub struct PlaydateActionDef {
[INFO] [stdout]    |            ----------------- fields in this struct
[INFO] [stdout] 25 |     pub id: &'static str,
[INFO] [stdout] 26 |     pub label: &'static str,
[INFO] [stdout]    |         ^^^^^
[INFO] [stdout] 27 |     pub emoji: &'static str,
[INFO] [stdout]    |         ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `PlaydateActionDef` 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: constant `FRIEND_STATUS_PENDING` is never used
[INFO] [stdout]   --> src/sharing.rs:14:11
[INFO] [stdout]    |
[INFO] [stdout] 14 | pub const FRIEND_STATUS_PENDING: &str = "pending";
[INFO] [stdout]    |           ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `FRIEND_STATUS_ACCEPTED` is never used
[INFO] [stdout]   --> src/sharing.rs:15:11
[INFO] [stdout]    |
[INFO] [stdout] 15 | pub const FRIEND_STATUS_ACCEPTED: &str = "accepted";
[INFO] [stdout]    |           ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `FRIEND_STATUS_DECLINED` is never used
[INFO] [stdout]   --> src/sharing.rs:16:11
[INFO] [stdout]    |
[INFO] [stdout] 16 | pub const FRIEND_STATUS_DECLINED: &str = "declined";
[INFO] [stdout]    |           ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `SHARE_STATUS_ACCEPTED` is never used
[INFO] [stdout]   --> src/sharing.rs:19:11
[INFO] [stdout]    |
[INFO] [stdout] 19 | pub const SHARE_STATUS_ACCEPTED: &str = "accepted";
[INFO] [stdout]    |           ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `SHARE_STATUS_DECLINED` is never used
[INFO] [stdout]   --> src/sharing.rs:20:11
[INFO] [stdout]    |
[INFO] [stdout] 20 | pub const SHARE_STATUS_DECLINED: &str = "declined";
[INFO] [stdout]    |           ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `FriendMessageSendForm` is never constructed
[INFO] [stdout]    --> src/sharing.rs:192:12
[INFO] [stdout]     |
[INFO] [stdout] 192 | pub struct FriendMessageSendForm {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait `ToRadians` is never used
[INFO] [stdout]    --> src/shelter_locator.rs:529:7
[INFO] [stdout]     |
[INFO] [stdout] 529 | trait ToRadians {
[INFO] [stdout]     |       ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `get_feedback_comment` is never used
[INFO] [stdout]     --> src/storage.rs:1762:12
[INFO] [stdout]      |
[INFO] [stdout]  351 | impl Storage {
[INFO] [stdout]      | ------------ method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 1762 |     pub fn get_feedback_comment(
[INFO] [stdout]      |            ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `flags` is never read
[INFO] [stdout]   --> src/home_health_check.rs:68:9
[INFO] [stdout]    |
[INFO] [stdout] 64 | pub struct HomeHealthCheckResult {
[INFO] [stdout]    |            --------------------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 68 |     pub flags: Vec<String>,
[INFO] [stdout]    |         ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `HomeHealthCheckResult` 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: function `should_offer_check` is never used
[INFO] [stdout]    --> src/home_health_check.rs:127:8
[INFO] [stdout]     |
[INFO] [stdout] 127 | pub fn should_offer_check(snapshot: &PetSnapshot, profile: &UserProfile, today: NaiveDate) -> bool {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `css_class` is never used
[INFO] [stdout]   --> src/symptom_checker.rs:26:12
[INFO] [stdout]    |
[INFO] [stdout] 15 | impl Urgency {
[INFO] [stdout]    | ------------ method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 26 |     pub fn css_class(self) -> &'static str {
[INFO] [stdout]    |            ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `wellness_interval_label` is never read
[INFO] [stdout]   --> src/vet_care.rs:41:9
[INFO] [stdout]    |
[INFO] [stdout] 32 | pub struct VetCarePlan {
[INFO] [stdout]    |            ----------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 41 |     pub wellness_interval_label: String,
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `VetCarePlan` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 1m 17s
[INFO] running `Command { std: "docker" "inspect" "4bb3b13187c86db202cff6f2f6c227d0c9dd92012c5304cd0e36adecea7e5eea", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "4bb3b13187c86db202cff6f2f6c227d0c9dd92012c5304cd0e36adecea7e5eea", kill_on_drop: false }`
[INFO] [stdout] 4bb3b13187c86db202cff6f2f6c227d0c9dd92012c5304cd0e36adecea7e5eea
