[INFO] fetching crate cal-redis 0.1.80...
[INFO] testing cal-redis-0.1.80 against master#c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38 for pr-146098-7
[INFO] extracting crate cal-redis 0.1.80 into /workspace/builds/worker-3-tc1/source
[INFO] started tweaking crates.io crate cal-redis 0.1.80
[INFO] finished tweaking crates.io crate cal-redis 0.1.80
[INFO] tweaked toml for crates.io crate cal-redis 0.1.80 written to /workspace/builds/worker-3-tc1/source/Cargo.toml
[INFO] validating manifest of crates.io crate cal-redis 0.1.80 on toolchain c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate crates.io crate cal-redis 0.1.80 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" "+c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Updating crates.io index
[INFO] [stderr]  Downloading crates ...
[INFO] [stderr]   Downloaded generator v0.8.4
[INFO] [stderr]   Downloaded oncemutex v0.1.1
[INFO] [stderr]   Downloaded regex-cache v0.2.1
[INFO] [stderr]   Downloaded tempfile v3.19.1
[INFO] [stderr]   Downloaded once_cell v1.21.2
[INFO] [stderr]   Downloaded cal-jambonz v0.1.72
[INFO] [stderr]   Downloaded iana-time-zone v0.1.62
[INFO] [stderr]   Downloaded openssl-sys v0.9.107
[INFO] [stderr]   Downloaded moka v0.12.10
[INFO] [stderr]   Downloaded cc v1.2.17
[INFO] [stderr]   Downloaded bson v2.14.0
[INFO] [stderr]   Downloaded quick-xml v0.37.3
[INFO] [stderr]   Downloaded openssl v0.10.72
[INFO] [stderr]   Downloaded redis v0.29.5
[INFO] [stderr]   Downloaded phonenumber v0.3.7+8.13.52
[INFO] [stderr]   Downloaded cal-core v0.2.144
[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:4848fb76d95f26979359cc7e45710b1dbc8f3acb7aeedee7c460d7702230f228" "/opt/rustwide/cargo-home/bin/cargo" "+c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] 909e8a721c5958fb8cc3be1b789b511396a66afb3e5fada10aee2650560a15bc
[INFO] running `Command { std: "docker" "start" "-a" "909e8a721c5958fb8cc3be1b789b511396a66afb3e5fada10aee2650560a15bc", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "909e8a721c5958fb8cc3be1b789b511396a66afb3e5fada10aee2650560a15bc", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "909e8a721c5958fb8cc3be1b789b511396a66afb3e5fada10aee2650560a15bc", kill_on_drop: false }`
[INFO] [stdout] 909e8a721c5958fb8cc3be1b789b511396a66afb3e5fada10aee2650560a15bc
[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:4848fb76d95f26979359cc7e45710b1dbc8f3acb7aeedee7c460d7702230f228" "/opt/rustwide/cargo-home/bin/cargo" "+c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38" "build" "--frozen" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 70c6adad08c72e81c698b9d843d3a7ff033cf608de7e54b72701c5f33f9c99f8
[INFO] running `Command { std: "docker" "start" "-a" "70c6adad08c72e81c698b9d843d3a7ff033cf608de7e54b72701c5f33f9c99f8", kill_on_drop: false }`
[INFO] [stderr]    Compiling proc-macro2 v1.0.94
[INFO] [stderr]    Compiling libc v0.2.171
[INFO] [stderr]    Compiling smallvec v1.14.0
[INFO] [stderr]    Compiling serde v1.0.219
[INFO] [stderr]    Compiling icu_locid_transform_data v1.5.1
[INFO] [stderr]    Compiling litemap v0.7.5
[INFO] [stderr]    Compiling once_cell v1.21.2
[INFO] [stderr]    Compiling icu_properties_data v1.5.1
[INFO] [stderr]    Compiling cc v1.2.17
[INFO] [stderr]    Compiling icu_normalizer_data v1.5.1
[INFO] [stderr]    Compiling num-traits v0.2.19
[INFO] [stderr]    Compiling serde_json v1.0.140
[INFO] [stderr]    Compiling syn v1.0.109
[INFO] [stderr]    Compiling indexmap v2.9.0
[INFO] [stderr]    Compiling openssl v0.10.72
[INFO] [stderr]    Compiling radium v0.7.0
[INFO] [stderr]    Compiling form_urlencoded v1.2.1
[INFO] [stderr]    Compiling tinyvec v1.9.0
[INFO] [stderr]    Compiling quick-xml v0.37.3
[INFO] [stderr]    Compiling bitflags v2.9.0
[INFO] [stderr]    Compiling linked-hash-map v0.5.6
[INFO] [stderr]    Compiling tap v1.0.1
[INFO] [stderr]    Compiling time-core v0.1.4
[INFO] [stderr]    Compiling deranged v0.4.0
[INFO] [stderr]    Compiling zerocopy v0.7.35
[INFO] [stderr]    Compiling funty v2.0.0
[INFO] [stderr]    Compiling wyz v0.5.1
[INFO] [stderr]    Compiling iana-time-zone v0.1.62
[INFO] [stderr]    Compiling time-macros v0.2.22
[INFO] [stderr]    Compiling oncemutex v0.1.1
[INFO] [stderr]    Compiling portable-atomic v1.11.0
[INFO] [stderr]    Compiling netaddr2 v0.7.1
[INFO] [stderr]    Compiling lru-cache v0.1.2
[INFO] [stderr]    Compiling ip-in-subnet v0.1.4
[INFO] [stderr]    Compiling quote v1.0.40
[INFO] [stderr]    Compiling bitvec v1.0.1
[INFO] [stderr]    Compiling regex-cache v0.2.1
[INFO] [stderr]    Compiling num-integer v0.1.46
[INFO] [stderr]    Compiling unicode-normalization v0.1.24
[INFO] [stderr]    Compiling nom v7.1.3
[INFO] [stderr]    Compiling syn v2.0.100
[INFO] [stderr]    Compiling proc-macro-error-attr v1.0.4
[INFO] [stderr]    Compiling either v1.15.0
[INFO] [stderr]    Compiling moka v0.12.10
[INFO] [stderr]    Compiling futures-util v0.3.31
[INFO] [stderr]    Compiling idna v0.5.0
[INFO] [stderr]    Compiling num-bigint v0.4.6
[INFO] [stderr]    Compiling sha1_smol v1.0.1
[INFO] [stderr]    Compiling tagptr v0.2.0
[INFO] [stderr]    Compiling proc-macro-error v1.0.4
[INFO] [stderr]    Compiling getrandom v0.3.2
[INFO] [stderr]    Compiling parking_lot_core v0.9.10
[INFO] [stderr]    Compiling signal-hook-registry v1.4.2
[INFO] [stderr]    Compiling rand_core v0.9.3
[INFO] [stderr]    Compiling socket2 v0.5.8
[INFO] [stderr]    Compiling mio v1.0.3
[INFO] [stderr]    Compiling rand_chacha v0.9.0
[INFO] [stderr]    Compiling openssl-sys v0.9.107
[INFO] [stderr]    Compiling parking_lot v0.12.3
[INFO] [stderr]    Compiling getrandom v0.2.15
[INFO] [stderr]    Compiling time v0.3.41
[INFO] [stderr]    Compiling rand v0.9.0
[INFO] [stderr]    Compiling ahash v0.8.11
[INFO] [stderr]    Compiling native-tls v0.2.14
[INFO] [stderr]    Compiling bincode v1.3.3
[INFO] [stderr]    Compiling synstructure v0.13.1
[INFO] [stderr]    Compiling darling_core v0.20.11
[INFO] [stderr]    Compiling serde_derive v1.0.219
[INFO] [stderr]    Compiling zerovec-derive v0.10.3
[INFO] [stderr]    Compiling displaydoc v0.2.5
[INFO] [stderr]    Compiling icu_provider_macros v1.5.0
[INFO] [stderr]    Compiling thiserror-impl v1.0.69
[INFO] [stderr]    Compiling tokio-macros v2.5.0
[INFO] [stderr]    Compiling openssl-macros v0.1.1
[INFO] [stderr]    Compiling strum_macros v0.26.4
[INFO] [stderr]    Compiling serde_repr v0.1.20
[INFO] [stderr]    Compiling async-trait v0.1.88
[INFO] [stderr]    Compiling zerofrom-derive v0.1.6
[INFO] [stderr]    Compiling yoke-derive v0.7.5
[INFO] [stderr]    Compiling tokio v1.44.2
[INFO] [stderr]    Compiling thiserror v1.0.69
[INFO] [stderr]    Compiling zerofrom v0.1.6
[INFO] [stderr]    Compiling yoke v0.7.5
[INFO] [stderr]    Compiling zerovec v0.10.4
[INFO] [stderr]    Compiling strum v0.26.3
[INFO] [stderr]    Compiling darling_macro v0.20.11
[INFO] [stderr]    Compiling tinystr v0.7.6
[INFO] [stderr]    Compiling icu_collections v1.5.0
[INFO] [stderr]    Compiling darling v0.20.11
[INFO] [stderr]    Compiling icu_locid v1.5.0
[INFO] [stderr]    Compiling validator_derive v0.18.2
[INFO] [stderr]    Compiling phonenumber v0.3.7+8.13.52
[INFO] [stderr]    Compiling icu_provider v1.5.0
[INFO] [stderr]    Compiling icu_locid_transform v1.5.0
[INFO] [stderr]    Compiling icu_properties v1.5.1
[INFO] [stderr]    Compiling uuid v1.16.0
[INFO] [stderr]    Compiling serde_bytes v0.11.17
[INFO] [stderr]    Compiling chrono v0.4.40
[INFO] [stderr]    Compiling icu_normalizer v1.5.0
[INFO] [stderr]    Compiling tokio-util v0.7.14
[INFO] [stderr]    Compiling tokio-native-tls v0.3.1
[INFO] [stderr]    Compiling idna_adapter v1.2.0
[INFO] [stderr]    Compiling idna v1.0.3
[INFO] [stderr]    Compiling combine v4.6.7
[INFO] [stderr]    Compiling cal-jambonz v0.1.72
[INFO] [stderr]    Compiling url v2.5.4
[INFO] [stderr]    Compiling bson v2.14.0
[INFO] [stderr]    Compiling validator v0.18.1
[INFO] [stderr]    Compiling redis v0.29.5
[INFO] [stderr]    Compiling cal-core v0.2.144
[INFO] [stderr]    Compiling cal-redis v0.1.80 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unused import: `deserialize_from_json`
[INFO] [stdout]  --> src/account.rs:5:5
[INFO] [stdout]   |
[INFO] [stdout] 5 |     deserialize_from_json, get_hash_item, get_items, insert_items, serialize_to_json,
[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: `Serialize`
[INFO] [stdout]   --> src/account.rs:16:35
[INFO] [stdout]    |
[INFO] [stdout] 16 | use serde::{de::DeserializeOwned, Serialize};
[INFO] [stdout]    |                                   ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `UserLite`
[INFO] [stdout]  --> src/local_cache.rs:2:81
[INFO] [stdout]   |
[INFO] [stdout] 2 | use cal_core::{AccountLite, Asset, FlowState, Hook, Proxy, Region, Trunk, User, UserLite, DDI};
[INFO] [stdout]   |                                                                                 ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: this function depends on never type fallback being `()`
[INFO] [stdout]   --> src/cache/agent.rs:10:5
[INFO] [stdout]    |
[INFO] [stdout] 10 | /     pub async fn agent_status_set(
[INFO] [stdout] 11 | |         &self,
[INFO] [stdout] 12 | |         account_id: &str,
[INFO] [stdout] 13 | |         status: &AgentStatus,
[INFO] [stdout] 14 | |     ) -> Result<(), RedisError> {
[INFO] [stdout]    | |_______________________________^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in Rust 2024 and in a future release in all editions!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/never-type-fallback.html>
[INFO] [stdout]    = help: specify the types explicitly
[INFO] [stdout] note: in edition 2024, the requirement `!: FromRedisValue` will fail
[INFO] [stdout]   --> src/cache/agent.rs:21:13
[INFO] [stdout]    |
[INFO] [stdout] 21 |         con.set(&key, json).await?;
[INFO] [stdout]    |             ^^^
[INFO] [stdout]    = note: `#[deny(dependency_on_unit_never_type_fallback)]` (part of `#[deny(rust_2024_compatibility)]`) on by default
[INFO] [stdout] help: use `()` annotations to avoid fallback changes
[INFO] [stdout]    |
[INFO] [stdout] 21 ~         con.set::<_, _, ()>(&key, json).await?;
[INFO] [stdout] 22 |
[INFO] [stdout] 23 |         // Update indexes
[INFO] [stdout] 24 ~         con.hset::<_, _, _, ()>(
[INFO] [stdout] 25 |             &AgentKeys::by_user(account_id),
[INFO] [stdout] ...
[INFO] [stdout] 33 |             println!("[CallableCache::agent_status_set] Agent is registered, adding to registered set");
[INFO] [stdout] 34 ~             con.sadd::<_, _, ()>(&AgentKeys::registered(account_id), &status.user_id)
[INFO] [stdout] 35 |                 .await?;
[INFO] [stdout] 36 |         } else {
[INFO] [stdout] 37 |             println!("[CallableCache::agent_status_set] Agent is not registered, removing from registered set");
[INFO] [stdout] 38 ~             con.srem::<_, _, ()>(&AgentKeys::registered(account_id), &status.user_id)
[INFO] [stdout] 39 |                 .await?;
[INFO] [stdout] ...
[INFO] [stdout] 44 |             println!("[CallableCache::agent_status_set] Agent is available, adding to available set");
[INFO] [stdout] 45 ~             con.sadd::<_, _, ()>(&AgentKeys::available(account_id), &status.user_id)
[INFO] [stdout] 46 |                 .await?;
[INFO] [stdout] 47 |         } else {
[INFO] [stdout] 48 |             println!("[CallableCache::agent_status_set] Agent is not available, removing from available set");
[INFO] [stdout] 49 ~             con.srem::<_, _, ()>(&AgentKeys::available(account_id), &status.user_id)
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: this function depends on never type fallback being `()`
[INFO] [stdout]    --> src/cache/agent.rs:87:5
[INFO] [stdout]     |
[INFO] [stdout]  87 | /     pub async fn add_connected_agent(
[INFO] [stdout]  88 | |         &self,
[INFO] [stdout]  89 | |         account_id: &str,
[INFO] [stdout]  90 | |         user_id: &str,
[INFO] [stdout]  91 | |         agent_id: &str,
[INFO] [stdout]  92 | |         ws_connection_id: &str,
[INFO] [stdout]  93 | |     ) -> Result<(), RedisError> {
[INFO] [stdout]     | |_______________________________^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in Rust 2024 and in a future release in all editions!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/never-type-fallback.html>
[INFO] [stdout]     = help: specify the types explicitly
[INFO] [stdout] note: in edition 2024, the requirement `!: FromRedisValue` will fail
[INFO] [stdout]    --> src/cache/agent.rs:100:13
[INFO] [stdout]     |
[INFO] [stdout] 100 |         con.sadd(&AgentKeys::connected(account_id), &member).await?;
[INFO] [stdout]     |             ^^^^
[INFO] [stdout] help: use `()` annotations to avoid fallback changes
[INFO] [stdout]     |
[INFO] [stdout] 100 ~         con.sadd::<_, _, ()>(&AgentKeys::connected(account_id), &member).await?;
[INFO] [stdout] 101 |
[INFO] [stdout] 102 |         // Map WebSocket connection to account for routing
[INFO] [stdout] 103 ~         con.hset::<_, _, _, ()>(WS_CONNECTIONS_KEY, ws_connection_id, account_id)
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: this function depends on never type fallback being `()`
[INFO] [stdout]    --> src/cache/agent.rs:109:5
[INFO] [stdout]     |
[INFO] [stdout] 109 | /     pub async fn remove_connected_agent(
[INFO] [stdout] 110 | |         &self,
[INFO] [stdout] 111 | |         account_id: &str,
[INFO] [stdout] 112 | |         user_id: &str,
[INFO] [stdout] 113 | |         agent_id: &str,
[INFO] [stdout] 114 | |         ws_connection_id: &str,
[INFO] [stdout] 115 | |     ) -> Result<(), RedisError> {
[INFO] [stdout]     | |_______________________________^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in Rust 2024 and in a future release in all editions!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/never-type-fallback.html>
[INFO] [stdout]     = help: specify the types explicitly
[INFO] [stdout] note: in edition 2024, the requirement `!: FromRedisValue` will fail
[INFO] [stdout]    --> src/cache/agent.rs:121:13
[INFO] [stdout]     |
[INFO] [stdout] 121 |         con.srem(&AgentKeys::connected(account_id), &member).await?;
[INFO] [stdout]     |             ^^^^
[INFO] [stdout] help: use `()` annotations to avoid fallback changes
[INFO] [stdout]     |
[INFO] [stdout] 121 ~         con.srem::<_, _, ()>(&AgentKeys::connected(account_id), &member).await?;
[INFO] [stdout] 122 |
[INFO] [stdout] 123 |         // Remove WebSocket mapping
[INFO] [stdout] 124 ~         con.hdel::<_, _, ()>(WS_CONNECTIONS_KEY, ws_connection_id).await?;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: this function depends on never type fallback being `()`
[INFO] [stdout]   --> src/cache/queue.rs:9:5
[INFO] [stdout]    |
[INFO] [stdout]  9 |     pub async fn queue_group_set(&self, queue: &QueueGroup) -> Result<(), RedisError> {
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in Rust 2024 and in a future release in all editions!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/never-type-fallback.html>
[INFO] [stdout]    = help: specify the types explicitly
[INFO] [stdout] note: in edition 2024, the requirement `!: FromRedisValue` will fail
[INFO] [stdout]   --> src/cache/queue.rs:17:13
[INFO] [stdout]    |
[INFO] [stdout] 17 |         con.set(&key, json).await?;
[INFO] [stdout]    |             ^^^
[INFO] [stdout] help: use `()` annotations to avoid fallback changes
[INFO] [stdout]    |
[INFO] [stdout] 17 ~         con.set::<_, _, ()>(&key, json).await?;
[INFO] [stdout] 18 |
[INFO] [stdout] 19 |         // Track in active queues
[INFO] [stdout] 20 ~         con.sadd::<_, _, ()>(&crate::constants::QueueKeys::active(&queue.account_id), &queue.name).await?;
[INFO] [stdout] 21 |
[INFO] [stdout] ...
[INFO] [stdout] 29 |         });
[INFO] [stdout] 30 ~         con.hset::<_, _, _, ()>(&meta_key, &queue.name, meta.to_string()).await?;
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: this function depends on never type fallback being `()`
[INFO] [stdout]   --> src/cache/queue.rs:62:5
[INFO] [stdout]    |
[INFO] [stdout] 62 |     pub async fn queue_group_delete(&self, account_id: &str, queue_name: &str) -> Result<(), RedisError> {
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in Rust 2024 and in a future release in all editions!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/never-type-fallback.html>
[INFO] [stdout]    = help: specify the types explicitly
[INFO] [stdout] note: in edition 2024, the requirement `!: FromRedisValue` will fail
[INFO] [stdout]   --> src/cache/queue.rs:68:13
[INFO] [stdout]    |
[INFO] [stdout] 68 |         con.del(&key).await?;
[INFO] [stdout]    |             ^^^
[INFO] [stdout] help: use `()` annotations to avoid fallback changes
[INFO] [stdout]    |
[INFO] [stdout] 68 ~         con.del::<_, ()>(&key).await?;
[INFO] [stdout] 69 |
[INFO] [stdout] 70 |         // Remove from active set
[INFO] [stdout] 71 ~         con.srem::<_, _, ()>(&crate::constants::QueueKeys::active(account_id), queue_name).await?;
[INFO] [stdout] 72 |
[INFO] [stdout] 73 |         // Remove metadata
[INFO] [stdout] 74 |         let meta_key = crate::constants::QueueKeys::metadata(account_id);
[INFO] [stdout] 75 ~         con.hdel::<_, _, ()>(&meta_key, queue_name).await?;
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: this function depends on never type fallback being `()`
[INFO] [stdout]   --> src/cache/session.rs:10:5
[INFO] [stdout]    |
[INFO] [stdout] 10 | /     pub async fn session_set(
[INFO] [stdout] 11 | |         &self,
[INFO] [stdout] 12 | |         account_id: &str,
[INFO] [stdout] 13 | |         session_data: &SessionData,
[INFO] [stdout] 14 | |     ) -> Result<(), RedisError> {
[INFO] [stdout]    | |_______________________________^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in Rust 2024 and in a future release in all editions!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/never-type-fallback.html>
[INFO] [stdout]    = help: specify the types explicitly
[INFO] [stdout] note: in edition 2024, the requirement `!: FromRedisValue` will fail
[INFO] [stdout]   --> src/cache/session.rs:29:17
[INFO] [stdout]    |
[INFO] [stdout] 29 |             con.set_ex(&key, session_json, ttl).await?;
[INFO] [stdout]    |                 ^^^^^^
[INFO] [stdout] help: use `()` annotations to avoid fallback changes
[INFO] [stdout]    |
[INFO] [stdout] 29 ~             con.set_ex::<_, _, ()>(&key, session_json, ttl).await?;
[INFO] [stdout] 30 |
[INFO] [stdout] 31 |             // Track active sessions
[INFO] [stdout] 32 ~             con.sadd::<_, _, ()>(&SessionKeys::active(account_id), &session_data.session_id)
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: this function depends on never type fallback being `()`
[INFO] [stdout]    --> src/cache/session.rs:130:5
[INFO] [stdout]     |
[INFO] [stdout] 130 | /     pub async fn session_delete(
[INFO] [stdout] 131 | |         &self,
[INFO] [stdout] 132 | |         account_id: &str,
[INFO] [stdout] 133 | |         session_id: &str,
[INFO] [stdout] 134 | |     ) -> Result<(), RedisError> {
[INFO] [stdout]     | |_______________________________^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in Rust 2024 and in a future release in all editions!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/never-type-fallback.html>
[INFO] [stdout]     = help: specify the types explicitly
[INFO] [stdout] note: in edition 2024, the requirement `!: FromRedisValue` will fail
[INFO] [stdout]    --> src/cache/session.rs:138:13
[INFO] [stdout]     |
[INFO] [stdout] 138 |         con.del(&key).await?;
[INFO] [stdout]     |             ^^^
[INFO] [stdout] help: use `()` annotations to avoid fallback changes
[INFO] [stdout]     |
[INFO] [stdout] 138 ~         con.del::<_, ()>(&key).await?;
[INFO] [stdout] 139 ~         con.srem::<_, _, ()>(&SessionKeys::active(account_id), session_id)
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: this function depends on never type fallback being `()`
[INFO] [stdout]   --> src/cache/websocket.rs:46:5
[INFO] [stdout]    |
[INFO] [stdout] 46 | /     pub async fn publish_account_event(
[INFO] [stdout] 47 | |         &self,
[INFO] [stdout] 48 | |         account_id: &str,
[INFO] [stdout] 49 | |         event: &RedisEvent,
[INFO] [stdout] 50 | |     ) -> Result<(), RedisError> {
[INFO] [stdout]    | |_______________________________^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in Rust 2024 and in a future release in all editions!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/never-type-fallback.html>
[INFO] [stdout]    = help: specify the types explicitly
[INFO] [stdout] note: in edition 2024, the requirement `!: FromRedisValue` will fail
[INFO] [stdout]   --> src/cache/websocket.rs:57:13
[INFO] [stdout]    |
[INFO] [stdout] 57 |         con.publish(&channel, event_json).await?;
[INFO] [stdout]    |             ^^^^^^^
[INFO] [stdout] help: use `()` annotations to avoid fallback changes
[INFO] [stdout]    |
[INFO] [stdout] 57 |         con.publish::<_, _, ()>(&channel, event_json).await?;
[INFO] [stdout]    |                    ++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: this function depends on never type fallback being `()`
[INFO] [stdout]    --> src/cache/helpers.rs:145:1
[INFO] [stdout]     |
[INFO] [stdout] 145 | / pub async fn publish_event(
[INFO] [stdout] 146 | |     con: &mut MultiplexedConnection,
[INFO] [stdout] 147 | |     event: RedisEvent,
[INFO] [stdout] 148 | | ) -> Result<(), RedisError> {
[INFO] [stdout]     | |___________________________^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in Rust 2024 and in a future release in all editions!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/never-type-fallback.html>
[INFO] [stdout]     = help: specify the types explicitly
[INFO] [stdout] note: in edition 2024, the requirement `!: FromRedisValue` will fail
[INFO] [stdout]    --> src/cache/helpers.rs:158:9
[INFO] [stdout]     |
[INFO] [stdout] 158 |     con.publish(GLOBAL_EVENTS_CHANNEL, event_json).await?;
[INFO] [stdout]     |         ^^^^^^^
[INFO] [stdout] help: use `()` annotations to avoid fallback changes
[INFO] [stdout]     |
[INFO] [stdout] 158 |     con.publish::<_, _, ()>(GLOBAL_EVENTS_CHANNEL, event_json).await?;
[INFO] [stdout]     |                ++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: this function depends on never type fallback being `()`
[INFO] [stdout]   --> src/cache/jambonz.rs:18:5
[INFO] [stdout]    |
[INFO] [stdout] 18 |     pub async fn insert_jambonz_entry(&self, entry: JambonzEntry) -> Result<(), RedisError> {
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in Rust 2024 and in a future release in all editions!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/never-type-fallback.html>
[INFO] [stdout]    = help: specify the types explicitly
[INFO] [stdout] note: in edition 2024, the requirement `!: FromRedisValue` will fail
[INFO] [stdout]   --> src/cache/jambonz.rs:28:13
[INFO] [stdout]    |
[INFO] [stdout] 28 |         con.hset(JAMBONZ_KEY, &entry.sip_realm, value).await?;
[INFO] [stdout]    |             ^^^^
[INFO] [stdout] help: use `()` annotations to avoid fallback changes
[INFO] [stdout]    |
[INFO] [stdout] 28 |         con.hset::<_, _, _, ()>(JAMBONZ_KEY, &entry.sip_realm, value).await?;
[INFO] [stdout]    |                 +++++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: this function depends on never type fallback being `()`
[INFO] [stdout]    --> src/cache/jambonz.rs:133:5
[INFO] [stdout]     |
[INFO] [stdout] 133 |     pub async fn insert_jambonz_entries(&self, entries: Vec<JambonzEntry>) -> Result<(), RedisError> {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in Rust 2024 and in a future release in all editions!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/never-type-fallback.html>
[INFO] [stdout]     = help: specify the types explicitly
[INFO] [stdout] note: in edition 2024, the requirement `!: FromRedisValue` will fail
[INFO] [stdout]    --> src/cache/jambonz.rs:151:14
[INFO] [stdout]     |
[INFO] [stdout] 151 |         pipe.query_async(&mut con).await?;
[INFO] [stdout]     |              ^^^^^^^^^^^
[INFO] [stdout] help: use `()` annotations to avoid fallback changes
[INFO] [stdout]     |
[INFO] [stdout] 151 |         pipe.query_async::<()>(&mut con).await?;
[INFO] [stdout]     |                         ++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: this function depends on never type fallback being `()`
[INFO] [stdout]   --> src/cache/contact.rs:18:5
[INFO] [stdout]    |
[INFO] [stdout] 18 |     pub async fn insert_contact(&self, contact: Contact) -> Result<(), RedisError> {
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in Rust 2024 and in a future release in all editions!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/never-type-fallback.html>
[INFO] [stdout]    = help: specify the types explicitly
[INFO] [stdout] note: in edition 2024, the requirement `!: FromRedisValue` will fail
[INFO] [stdout]   --> src/cache/contact.rs:29:13
[INFO] [stdout]    |
[INFO] [stdout] 29 |         con.hset(&hash_key, &contact.id, value).await?;
[INFO] [stdout]    |             ^^^^
[INFO] [stdout] help: use `()` annotations to avoid fallback changes
[INFO] [stdout]    |
[INFO] [stdout] 29 ~         con.hset::<_, _, _, ()>(&hash_key, &contact.id, value).await?;
[INFO] [stdout] 30 |
[INFO] [stdout] ...
[INFO] [stdout] 34 |         // Map primary phone to contact ID
[INFO] [stdout] 35 ~         con.hset::<_, _, _, ()>(&idents_key, &contact.primary, &contact.id).await?;
[INFO] [stdout] 36 |
[INFO] [stdout] 37 |         // Map secondary phone if exists
[INFO] [stdout] 38 |         if let Some(ref secondary) = contact.secondary {
[INFO] [stdout] 39 ~             con.hset::<_, _, _, ()>(&idents_key, secondary, &contact.id).await?;
[INFO] [stdout] 40 |         }
[INFO] [stdout] ...
[INFO] [stdout] 43 |         if let Some(ref tertiary) = contact.tertiary {
[INFO] [stdout] 44 ~             con.hset::<_, _, _, ()>(&idents_key, tertiary, &contact.id).await?;
[INFO] [stdout] 45 |         }
[INFO] [stdout] ...
[INFO] [stdout] 48 |         if let Some(ref email) = contact.email {
[INFO] [stdout] 49 ~             con.hset::<_, _, _, ()>(&idents_key, email, &contact.id).await?;
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: this function depends on never type fallback being `()`
[INFO] [stdout]    --> src/cache/contact.rs:197:5
[INFO] [stdout]     |
[INFO] [stdout] 197 | /     pub async fn delete_contact(
[INFO] [stdout] 198 | |         &self,
[INFO] [stdout] 199 | |         account_id: &str,
[INFO] [stdout] 200 | |         contact_id: &str,
[INFO] [stdout] 201 | |     ) -> Result<bool, RedisError> {
[INFO] [stdout]     | |_________________________________^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in Rust 2024 and in a future release in all editions!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/never-type-fallback.html>
[INFO] [stdout]     = help: specify the types explicitly
[INFO] [stdout] note: in edition 2024, the requirement `!: FromRedisValue` will fail
[INFO] [stdout]    --> src/cache/contact.rs:213:17
[INFO] [stdout]     |
[INFO] [stdout] 213 |             con.hdel(&idents_key, &contact.primary).await?;
[INFO] [stdout]     |                 ^^^^
[INFO] [stdout] help: use `()` annotations to avoid fallback changes
[INFO] [stdout]     |
[INFO] [stdout] 213 ~             con.hdel::<_, _, ()>(&idents_key, &contact.primary).await?;
[INFO] [stdout] 214 |
[INFO] [stdout] 215 |             if let Some(ref secondary) = contact.secondary {
[INFO] [stdout] 216 ~                 con.hdel::<_, _, ()>(&idents_key, secondary).await?;
[INFO] [stdout] 217 |             }
[INFO] [stdout] 218 |
[INFO] [stdout] 219 |             if let Some(ref tertiary) = contact.tertiary {
[INFO] [stdout] 220 ~                 con.hdel::<_, _, ()>(&idents_key, tertiary).await?;
[INFO] [stdout] 221 |             }
[INFO] [stdout] 222 |
[INFO] [stdout] 223 |             if let Some(ref email) = contact.email {
[INFO] [stdout] 224 ~                 con.hdel::<_, _, ()>(&idents_key, email).await?;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: this function depends on never type fallback being `()`
[INFO] [stdout]    --> src/cache/contact.rs:249:5
[INFO] [stdout]     |
[INFO] [stdout] 249 |     pub async fn insert_contacts(&self, contacts: Vec<Contact>) -> Result<(), RedisError> {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in Rust 2024 and in a future release in all editions!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/never-type-fallback.html>
[INFO] [stdout]     = help: specify the types explicitly
[INFO] [stdout] note: in edition 2024, the requirement `!: FromRedisValue` will fail
[INFO] [stdout]    --> src/cache/contact.rs:298:14
[INFO] [stdout]     |
[INFO] [stdout] 298 |         pipe.query_async(&mut con).await?;
[INFO] [stdout]     |              ^^^^^^^^^^^
[INFO] [stdout] help: use `()` annotations to avoid fallback changes
[INFO] [stdout]     |
[INFO] [stdout] 298 |         pipe.query_async::<()>(&mut con).await?;
[INFO] [stdout]     |                         ++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `insert_addresses` is never used
[INFO] [stdout]    --> src/account.rs:407:10
[INFO] [stdout]     |
[INFO] [stdout] 407 | async fn insert_addresses(
[INFO] [stdout]     |          ^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `cal-redis` (lib) due to 28 previous errors; 4 warnings emitted
[INFO] running `Command { std: "docker" "inspect" "70c6adad08c72e81c698b9d843d3a7ff033cf608de7e54b72701c5f33f9c99f8", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "70c6adad08c72e81c698b9d843d3a7ff033cf608de7e54b72701c5f33f9c99f8", kill_on_drop: false }`
[INFO] [stdout] 70c6adad08c72e81c698b9d843d3a7ff033cf608de7e54b72701c5f33f9c99f8
