Skip to content

Commit 1e0e815

Browse files
zecakehbnjbvr
authored andcommitted
base: Remove deprecated StateStore APIs
Signed-off-by: Kévin Commaille <[email protected]>
1 parent 99fe49b commit 1e0e815

File tree

5 files changed

+8
-167
lines changed

5 files changed

+8
-167
lines changed

crates/matrix-sdk-base/src/store/integration_tests.rs

Lines changed: 0 additions & 36 deletions
Original file line numberDiff line numberDiff line change
@@ -71,8 +71,6 @@ pub trait StateStoreIntegrationTests {
7171
async fn test_receipts_saving(&self);
7272
/// Test custom storage.
7373
async fn test_custom_storage(&self) -> Result<()>;
74-
/// Test invited room saving.
75-
async fn test_persist_invited_room(&self) -> Result<()>;
7674
/// Test stripped and non-stripped room member saving.
7775
async fn test_stripped_non_stripped(&self) -> Result<()>;
7876
/// Test room removal.
@@ -259,9 +257,6 @@ impl StateStoreIntegrationTests for DynStateStore {
259257
assert!(self.get_kv_data(StateStoreDataKey::SyncToken).await?.is_some());
260258
assert!(self.get_presence_event(user_id).await?.is_some());
261259
assert_eq!(self.get_room_infos().await?.len(), 2, "Expected to find 2 room infos");
262-
#[allow(deprecated)]
263-
let stripped_rooms = self.get_stripped_room_infos().await?;
264-
assert_eq!(stripped_rooms.len(), 1, "Expected to find 1 stripped room info");
265260
assert!(self
266261
.get_account_data_event(GlobalAccountDataEventType::PushRules)
267262
.await?
@@ -918,25 +913,12 @@ impl StateStoreIntegrationTests for DynStateStore {
918913
Ok(())
919914
}
920915

921-
async fn test_persist_invited_room(&self) -> Result<()> {
922-
self.populate().await?;
923-
924-
#[allow(deprecated)]
925-
let stripped_rooms = self.get_stripped_room_infos().await?;
926-
assert_eq!(stripped_rooms.len(), 1);
927-
928-
Ok(())
929-
}
930-
931916
async fn test_stripped_non_stripped(&self) -> Result<()> {
932917
let room_id = room_id!("!test_stripped_non_stripped:localhost");
933918
let user_id = user_id();
934919

935920
assert!(self.get_member_event(room_id, user_id).await.unwrap().is_none());
936921
assert_eq!(self.get_room_infos().await.unwrap().len(), 0);
937-
#[allow(deprecated)]
938-
let stripped_rooms = self.get_stripped_room_infos().await?;
939-
assert_eq!(stripped_rooms.len(), 0);
940922

941923
let mut changes = StateChanges::default();
942924
changes
@@ -953,9 +935,6 @@ impl StateStoreIntegrationTests for DynStateStore {
953935
self.get_member_event(room_id, user_id).await.unwrap().unwrap().deserialize().unwrap();
954936
assert!(matches!(member_event, MemberEvent::Sync(_)));
955937
assert_eq!(self.get_room_infos().await.unwrap().len(), 1);
956-
#[allow(deprecated)]
957-
let stripped_rooms = self.get_stripped_room_infos().await?;
958-
assert_eq!(stripped_rooms.len(), 0);
959938

960939
let members = self.get_user_ids(room_id, RoomMemberships::empty()).await.unwrap();
961940
assert_eq!(members, vec![user_id.to_owned()]);
@@ -969,9 +948,6 @@ impl StateStoreIntegrationTests for DynStateStore {
969948
self.get_member_event(room_id, user_id).await.unwrap().unwrap().deserialize().unwrap();
970949
assert!(matches!(member_event, MemberEvent::Stripped(_)));
971950
assert_eq!(self.get_room_infos().await.unwrap().len(), 1);
972-
#[allow(deprecated)]
973-
let stripped_rooms = self.get_stripped_room_infos().await?;
974-
assert_eq!(stripped_rooms.len(), 1);
975951

976952
let members = self.get_user_ids(room_id, RoomMemberships::empty()).await.unwrap();
977953
assert_eq!(members, vec![user_id.to_owned()]);
@@ -989,9 +965,6 @@ impl StateStoreIntegrationTests for DynStateStore {
989965
self.remove_room(room_id).await?;
990966

991967
assert_eq!(self.get_room_infos().await?.len(), 1, "room is still there");
992-
#[allow(deprecated)]
993-
let stripped_rooms = self.get_stripped_room_infos().await?;
994-
assert_eq!(stripped_rooms.len(), 1);
995968

996969
assert!(self.get_state_event(room_id, StateEventType::RoomName, "").await?.is_none());
997970
assert!(
@@ -1044,9 +1017,6 @@ impl StateStoreIntegrationTests for DynStateStore {
10441017
self.remove_room(stripped_room_id).await?;
10451018

10461019
assert!(self.get_room_infos().await?.is_empty(), "still room info found");
1047-
#[allow(deprecated)]
1048-
let stripped_rooms = self.get_stripped_room_infos().await?;
1049-
assert!(stripped_rooms.is_empty(), "still stripped room info found");
10501020
Ok(())
10511021
}
10521022

@@ -1584,12 +1554,6 @@ macro_rules! statestore_integration_tests {
15841554
store.test_custom_storage().await
15851555
}
15861556

1587-
#[async_test]
1588-
async fn test_persist_invited_room() -> StoreResult<()> {
1589-
let store = get_store().await?.into_state_store();
1590-
store.test_persist_invited_room().await
1591-
}
1592-
15931557
#[async_test]
15941558
async fn test_stripped_non_stripped() -> StoreResult<()> {
15951559
let store = get_store().await.unwrap().into_state_store();

crates/matrix-sdk-base/src/store/memory_store.rs

Lines changed: 1 addition & 20 deletions
Original file line numberDiff line numberDiff line change
@@ -45,7 +45,7 @@ use super::{
4545
};
4646
use crate::{
4747
deserialized_responses::RawAnySyncOrStrippedState, MinimalRoomMemberEvent, RoomMemberships,
48-
RoomState, StateStoreDataKey, StateStoreDataValue,
48+
StateStoreDataKey, StateStoreDataValue,
4949
};
5050

5151
/// In-memory, non-persistent implementation of the `StateStore`.
@@ -696,29 +696,10 @@ impl StateStore for MemoryStore {
696696
Ok(get_user_ids_inner(&self.members.read().unwrap(), room_id, memberships))
697697
}
698698

699-
async fn get_invited_user_ids(&self, room_id: &RoomId) -> Result<Vec<OwnedUserId>> {
700-
StateStore::get_user_ids(self, room_id, RoomMemberships::INVITE).await
701-
}
702-
703-
async fn get_joined_user_ids(&self, room_id: &RoomId) -> Result<Vec<OwnedUserId>> {
704-
StateStore::get_user_ids(self, room_id, RoomMemberships::JOIN).await
705-
}
706-
707699
async fn get_room_infos(&self) -> Result<Vec<RoomInfo>> {
708700
Ok(self.room_info.read().unwrap().values().cloned().collect())
709701
}
710702

711-
async fn get_stripped_room_infos(&self) -> Result<Vec<RoomInfo>> {
712-
Ok(self
713-
.room_info
714-
.read()
715-
.unwrap()
716-
.values()
717-
.filter(|r| matches!(r.state(), RoomState::Invited))
718-
.cloned()
719-
.collect())
720-
}
721-
722703
async fn get_users_with_display_name(
723704
&self,
724705
room_id: &RoomId,

crates/matrix-sdk-base/src/store/traits.rs

Lines changed: 0 additions & 31 deletions
Original file line numberDiff line numberDiff line change
@@ -190,24 +190,9 @@ pub trait StateStore: AsyncTraitDeps {
190190
memberships: RoomMemberships,
191191
) -> Result<Vec<OwnedUserId>, Self::Error>;
192192

193-
/// Get all the user ids of members that are in the invited state for a
194-
/// given room, for stripped and regular rooms alike.
195-
#[deprecated = "Use get_user_ids with RoomMemberships::INVITE instead."]
196-
async fn get_invited_user_ids(&self, room_id: &RoomId)
197-
-> Result<Vec<OwnedUserId>, Self::Error>;
198-
199-
/// Get all the user ids of members that are in the joined state for a
200-
/// given room, for stripped and regular rooms alike.
201-
#[deprecated = "Use get_user_ids with RoomMemberships::JOIN instead."]
202-
async fn get_joined_user_ids(&self, room_id: &RoomId) -> Result<Vec<OwnedUserId>, Self::Error>;
203-
204193
/// Get all the pure `RoomInfo`s the store knows about.
205194
async fn get_room_infos(&self) -> Result<Vec<RoomInfo>, Self::Error>;
206195

207-
/// Get all the pure `RoomInfo`s the store knows about.
208-
#[deprecated = "Use get_room_infos instead and filter by RoomState"]
209-
async fn get_stripped_room_infos(&self) -> Result<Vec<RoomInfo>, Self::Error>;
210-
211196
/// Get all the users that use the given display name in the given room.
212197
///
213198
/// # Arguments
@@ -559,26 +544,10 @@ impl<T: StateStore> StateStore for EraseStateStoreError<T> {
559544
self.0.get_user_ids(room_id, memberships).await.map_err(Into::into)
560545
}
561546

562-
async fn get_invited_user_ids(
563-
&self,
564-
room_id: &RoomId,
565-
) -> Result<Vec<OwnedUserId>, Self::Error> {
566-
self.0.get_user_ids(room_id, RoomMemberships::INVITE).await.map_err(Into::into)
567-
}
568-
569-
async fn get_joined_user_ids(&self, room_id: &RoomId) -> Result<Vec<OwnedUserId>, Self::Error> {
570-
self.0.get_user_ids(room_id, RoomMemberships::JOIN).await.map_err(Into::into)
571-
}
572-
573547
async fn get_room_infos(&self) -> Result<Vec<RoomInfo>, Self::Error> {
574548
self.0.get_room_infos().await.map_err(Into::into)
575549
}
576550

577-
#[allow(deprecated)]
578-
async fn get_stripped_room_infos(&self) -> Result<Vec<RoomInfo>, Self::Error> {
579-
self.0.get_stripped_room_infos().await.map_err(Into::into)
580-
}
581-
582551
async fn get_users_with_display_name(
583552
&self,
584553
room_id: &RoomId,

crates/matrix-sdk-indexeddb/src/state_store/mod.rs

Lines changed: 1 addition & 37 deletions
Original file line numberDiff line numberDiff line change
@@ -29,8 +29,7 @@ use matrix_sdk_base::{
2929
QueuedEvent, SerializableEventContent, ServerCapabilities, StateChanges, StateStore,
3030
StoreError,
3131
},
32-
MinimalRoomMemberEvent, RoomInfo, RoomMemberships, RoomState, StateStoreDataKey,
33-
StateStoreDataValue,
32+
MinimalRoomMemberEvent, RoomInfo, RoomMemberships, StateStoreDataKey, StateStoreDataValue,
3433
};
3534
use matrix_sdk_store_encryption::{Error as EncryptionError, StoreCipher};
3635
use ruma::{
@@ -1087,33 +1086,6 @@ impl_state_store!({
10871086
Ok(entries)
10881087
}
10891088

1090-
async fn get_stripped_room_infos(&self) -> Result<Vec<RoomInfo>> {
1091-
let txn = self
1092-
.inner
1093-
.transaction_on_one_with_mode(keys::ROOM_INFOS, IdbTransactionMode::Readonly)?;
1094-
let store = txn.object_store(keys::ROOM_INFOS)?;
1095-
1096-
let mut infos = Vec::new();
1097-
let cursor = store.open_cursor()?.await?;
1098-
1099-
if let Some(cursor) = cursor {
1100-
loop {
1101-
let value = cursor.value();
1102-
let info = self.deserialize_value::<RoomInfo>(&value)?;
1103-
1104-
if info.state() == RoomState::Invited {
1105-
infos.push(info);
1106-
}
1107-
1108-
if !cursor.continue_cursor()?.await? {
1109-
break;
1110-
}
1111-
}
1112-
}
1113-
1114-
Ok(infos)
1115-
}
1116-
11171089
async fn get_users_with_display_name(
11181090
&self,
11191091
room_id: &RoomId,
@@ -1324,14 +1296,6 @@ impl_state_store!({
13241296
self.get_user_ids_inner(room_id, memberships, false).await
13251297
}
13261298

1327-
async fn get_invited_user_ids(&self, room_id: &RoomId) -> Result<Vec<OwnedUserId>> {
1328-
self.get_user_ids(room_id, RoomMemberships::INVITE).await
1329-
}
1330-
1331-
async fn get_joined_user_ids(&self, room_id: &RoomId) -> Result<Vec<OwnedUserId>> {
1332-
self.get_user_ids(room_id, RoomMemberships::JOIN).await
1333-
}
1334-
13351299
async fn save_send_queue_event(
13361300
&self,
13371301
room_id: &RoomId,

crates/matrix-sdk-sqlite/src/state_store.rs

Lines changed: 6 additions & 43 deletions
Original file line numberDiff line numberDiff line change
@@ -699,26 +699,12 @@ trait SqliteObjectStateStoreExt: SqliteAsyncConnExt {
699699
Ok(())
700700
}
701701

702-
async fn get_room_infos(&self, states: Vec<Key>) -> Result<Vec<Vec<u8>>> {
703-
if states.is_empty() {
704-
Ok(self
705-
.prepare("SELECT data FROM room_info", move |mut stmt| {
706-
stmt.query_map((), |row| row.get(0))?.collect()
707-
})
708-
.await?)
709-
} else {
710-
self.chunk_large_query_over(states, None, |txn, states| {
711-
let sql_params = repeat_vars(states.len());
712-
let sql = format!("SELECT data FROM room_info WHERE state IN ({sql_params})");
713-
714-
Ok(txn
715-
.prepare(&sql)?
716-
.query(rusqlite::params_from_iter(states))?
717-
.mapped(|row| row.get(0))
718-
.collect::<Result<_, _>>()?)
702+
async fn get_room_infos(&self) -> Result<Vec<Vec<u8>>> {
703+
Ok(self
704+
.prepare("SELECT data FROM room_info", move |mut stmt| {
705+
stmt.query_map((), |row| row.get(0))?.collect()
719706
})
720-
.await
721-
}
707+
.await?)
722708
}
723709

724710
async fn get_maybe_stripped_state_events_for_keys(
@@ -1444,30 +1430,10 @@ impl StateStore for SqliteStateStore {
14441430
.collect()
14451431
}
14461432

1447-
async fn get_invited_user_ids(&self, room_id: &RoomId) -> Result<Vec<OwnedUserId>> {
1448-
self.get_user_ids(room_id, RoomMemberships::INVITE).await
1449-
}
1450-
1451-
async fn get_joined_user_ids(&self, room_id: &RoomId) -> Result<Vec<OwnedUserId>> {
1452-
self.get_user_ids(room_id, RoomMemberships::JOIN).await
1453-
}
1454-
14551433
async fn get_room_infos(&self) -> Result<Vec<RoomInfo>> {
14561434
self.acquire()
14571435
.await?
1458-
.get_room_infos(Vec::new())
1459-
.await?
1460-
.into_iter()
1461-
.map(|data| self.deserialize_json(&data))
1462-
.collect()
1463-
}
1464-
1465-
async fn get_stripped_room_infos(&self) -> Result<Vec<RoomInfo>> {
1466-
let states =
1467-
vec![self.encode_key(keys::ROOM_INFO, serde_json::to_string(&RoomState::Invited)?)];
1468-
self.acquire()
1469-
.await?
1470-
.get_room_infos(states)
1436+
.get_room_infos()
14711437
.await?
14721438
.into_iter()
14731439
.map(|data| self.deserialize_json(&data))
@@ -2115,9 +2081,6 @@ mod migration_tests {
21152081

21162082
// Check all room infos are there.
21172083
assert_eq!(store.get_room_infos().await.unwrap().len(), 5);
2118-
#[allow(deprecated)]
2119-
let stripped_rooms = store.get_stripped_room_infos().await.unwrap();
2120-
assert_eq!(stripped_rooms.len(), 2);
21212084
}
21222085

21232086
// Add a room in version 2 format of the state store.

0 commit comments

Comments
 (0)