client-api: Move the sync v4 bump_event_types field to the list request

… as it's now per-list.

Signed-off-by: Benjamin Bouvier <public@benj.me>
This commit is contained in:
Benjamin Bouvier 2023-06-01 19:24:05 +02:00 committed by GitHub
parent 3b722c7faa
commit e3282d8bfe
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23

View File

@ -88,16 +88,6 @@ pub struct Request {
#[serde(default, skip_serializing_if = "BTreeMap::is_empty")] #[serde(default, skip_serializing_if = "BTreeMap::is_empty")]
pub lists: BTreeMap<String, SyncRequestList>, pub lists: BTreeMap<String, SyncRequestList>,
/// An allow-list of event types which should be considered recent activity when sorting
/// `by_recency`. By omitting event types from this field, clients can ensure that
/// uninteresting events (e.g. a profil rename) do not cause a room to jump to the top of its
/// list(s). Empty or omitted `bump_event_types` have no effect; all events in a room will be
/// considered recent activity.
///
/// This is currently per-connection, not per-list. Sticky.
#[serde(default, skip_serializing_if = "Vec::is_empty")]
pub bump_event_types: Vec<TimelineEventType>,
/// Specific rooms and event types that we want to receive events from. /// Specific rooms and event types that we want to receive events from.
#[serde(default, skip_serializing_if = "BTreeMap::is_empty")] #[serde(default, skip_serializing_if = "BTreeMap::is_empty")]
pub room_subscriptions: BTreeMap<OwnedRoomId, RoomSubscription>, pub room_subscriptions: BTreeMap<OwnedRoomId, RoomSubscription>,
@ -309,6 +299,19 @@ pub struct SyncRequestList {
/// Filters to apply to the list before sorting. Sticky. /// Filters to apply to the list before sorting. Sticky.
#[serde(skip_serializing_if = "Option::is_none")] #[serde(skip_serializing_if = "Option::is_none")]
pub filters: Option<SyncRequestListFilters>, pub filters: Option<SyncRequestListFilters>,
/// An allow-list of event types which should be considered recent activity when sorting
/// `by_recency`. By omitting event types from this field, clients can ensure that
/// uninteresting events (e.g. a profil rename) do not cause a room to jump to the top of its
/// list(s). Empty or omitted `bump_event_types` have no effect; all events in a room will be
/// considered recent activity.
///
/// NB. Changes to bump_event_types will NOT cause the room list to be reordered;
/// it will only affect the ordering of rooms due to future updates.
///
/// Sticky.
#[serde(default, skip_serializing_if = "Vec::is_empty")]
pub bump_event_types: Vec<TimelineEventType>,
} }
/// Configuration for requesting room details. /// Configuration for requesting room details.