Bump the RustSDK to v1.0.79; add a feature flag for the new rust side ClientBuilder::useEventCachePersistentStorage

This commit is contained in:
Stefan Ceriu
2024-12-10 17:43:16 +02:00
committed by Stefan Ceriu
parent e59a705459
commit df3e5976ce
15 changed files with 232 additions and 38 deletions
@@ -78,7 +78,8 @@ struct AuthenticationClientBuilder: AuthenticationClientBuilderProtocol {
slidingSync: slidingSync,
sessionDelegate: clientSessionDelegate,
appHooks: appHooks,
enableOnlySignedDeviceIsolationMode: appSettings.enableOnlySignedDeviceIsolationMode)
enableOnlySignedDeviceIsolationMode: appSettings.enableOnlySignedDeviceIsolationMode,
eventCacheEnabled: appSettings.eventCacheEnabled)
.sessionPaths(dataPath: sessionDirectories.dataPath,
cachePath: sessionDirectories.cachePath)
.passphrase(passphrase: passphrase)
@@ -168,7 +168,9 @@ class JoinedRoomProxy: JoinedRoomProxyProtocol {
func messageFilteredTimeline(allowedMessageTypes: [RoomMessageEventMessageType]) async -> Result<any TimelineProxyProtocol, RoomProxyError> {
do {
let timeline = try await TimelineProxy(timeline: room.messageFilteredTimeline(internalIdPrefix: nil, allowedMessageTypes: allowedMessageTypes),
let timeline = try await TimelineProxy(timeline: room.messageFilteredTimeline(internalIdPrefix: nil,
allowedMessageTypes: allowedMessageTypes,
dateDividerMode: .monthly),
kind: .media)
await timeline.subscribeForUpdates()
@@ -203,7 +203,7 @@ private extension TimelineItemProxy {
private extension VirtualTimelineItem {
var description: String {
switch self {
case .dayDivider(let timestamp):
case .dateDivider(let timestamp):
return "DayDiviver(\(timestamp))"
case .readMarker:
return "ReadMarker"
@@ -470,7 +470,7 @@ class RoomTimelineController: RoomTimelineControllerProtocol {
return timelineItem
case .virtual(let virtualItem, let uniqueID):
switch virtualItem {
case .dayDivider(let timestamp):
case .dateDivider(let timestamp):
let date = Date(timeIntervalSince1970: TimeInterval(timestamp / 1000))
let dateString = date.formatted(date: .complete, time: .omitted)
@@ -130,7 +130,8 @@ class UserSessionStore: UserSessionStoreProtocol {
slidingSync: .restored,
sessionDelegate: keychainController,
appHooks: appHooks,
enableOnlySignedDeviceIsolationMode: appSettings.enableOnlySignedDeviceIsolationMode)
enableOnlySignedDeviceIsolationMode: appSettings.enableOnlySignedDeviceIsolationMode,
eventCacheEnabled: appSettings.eventCacheEnabled)
.sessionPaths(dataPath: credentials.restorationToken.sessionDirectories.dataPath,
cachePath: credentials.restorationToken.sessionDirectories.cachePath)
.username(username: credentials.userID)