refactor: Fix errors in api/server/send.rs

This commit is contained in:
Ginger
2026-04-13 12:59:08 -04:00
parent 0eee63f7a1
commit 962a4aedc6
+32 -22
View File
@@ -25,10 +25,10 @@
use http::StatusCode;
use itertools::Itertools;
use ruma::{
CanonicalJsonObject, MilliSecondsSinceUnixEpoch, OwnedEventId, OwnedRoomId, OwnedUserId,
RoomId, ServerName, UInt, UserId,
CanonicalJsonObject, EventId, MilliSecondsSinceUnixEpoch, OwnedEventId, OwnedRoomId,
OwnedUserId, RoomId, ServerName, UInt, UserId,
api::{
client::error::{ErrorKind, ErrorKind::LimitExceeded},
error::{ErrorKind, LimitExceededErrorData},
federation::transactions::{
edu::{
DeviceListUpdateContent, DirectDeviceContent, Edu, PresenceContent,
@@ -116,7 +116,7 @@ async fn wait_for_result(
{
// Took too long, return 429 to encourage the sender to try again
return Err(Error::BadRequest(
LimitExceeded { retry_after: None },
ErrorKind::LimitExceeded(LimitExceededErrorData::new()),
"Transaction is being still being processed. Please try again later.",
));
}
@@ -187,12 +187,12 @@ async fn process_inbound_transaction(
"Finished processing transaction"
);
let response = send_transaction_message::v1::Response {
pdus: results
let response = send_transaction_message::v1::Response::new(
results
.into_iter()
.map(|(e, r)| (e, r.map_err(error::sanitized_message)))
.collect(),
};
);
services
.transactions
@@ -298,7 +298,7 @@ async fn build_local_dag(
.as_array()
.unwrap()
.iter()
.map(|v| OwnedEventId::parse(v.as_str().unwrap()).unwrap())
.map(|v| EventId::parse(v.as_str().unwrap()).unwrap())
.filter(|id| pdu_map.contains_key(id))
.collect();
@@ -348,7 +348,7 @@ async fn handle_room(
.rooms
.event_handler
.mutex_federation
.lock(&room_id)
.lock(room_id.as_str())
.await;
let room_id = &room_id;
@@ -544,10 +544,14 @@ async fn handle_edu_receipt_room_user(
services
.rooms
.read_receipt
.readreceipt_update(user_id, room_id, &ReceiptEvent {
content: ReceiptEventContent(content.into()),
room_id: room_id.to_owned(),
})
.readreceipt_update(
user_id,
room_id,
&ReceiptEvent::new(
room_id.to_owned(),
ReceiptEventContent::from_iter(content),
),
)
.await;
})
.await;
@@ -646,6 +650,7 @@ async fn handle_edu_direct_to_device(
ref ev_type,
ref message_id,
messages,
..
} = content;
if sender.server_name() != origin {
@@ -729,14 +734,17 @@ async fn handle_edu_direct_to_device_event(
services
.users
.all_device_ids(target_user_id)
.for_each(|target_device_id| {
services.users.add_to_device_event(
sender,
target_user_id,
target_device_id,
ev_type,
event.clone(),
)
.for_each(async |target_device_id| {
services
.users
.add_to_device_event(
sender,
target_user_id,
&target_device_id,
ev_type,
event.clone(),
)
.await
})
.await;
},
@@ -749,7 +757,9 @@ async fn handle_edu_signing_key_update(
origin: &ServerName,
content: SigningKeyUpdateContent,
) {
let SigningKeyUpdateContent { user_id, master_key, self_signing_key } = content;
let SigningKeyUpdateContent {
user_id, master_key, self_signing_key, ..
} = content;
if user_id.server_name() != origin {
debug_warn!(