Bump the RustSDK, adopt latest sliding sync changes and fixes

This commit is contained in:
Stefan Ceriu
2023-05-31 18:33:46 +03:00
committed by Stefan Ceriu
parent 2a58b115e3
commit f792aafe8d
5 changed files with 12 additions and 18 deletions
+1 -1
View File
@@ -4778,7 +4778,7 @@
repositoryURL = "https://github.com/matrix-org/matrix-rust-components-swift"; repositoryURL = "https://github.com/matrix-org/matrix-rust-components-swift";
requirement = { requirement = {
kind = exactVersion; kind = exactVersion;
version = "1.0.71-alpha"; version = "1.0.72-alpha";
}; };
}; };
96495DD8554E2F39D3954354 /* XCRemoteSwiftPackageReference "posthog-ios" */ = { 96495DD8554E2F39D3954354 /* XCRemoteSwiftPackageReference "posthog-ios" */ = {
@@ -102,8 +102,8 @@
"kind" : "remoteSourceControl", "kind" : "remoteSourceControl",
"location" : "https://github.com/matrix-org/matrix-rust-components-swift", "location" : "https://github.com/matrix-org/matrix-rust-components-swift",
"state" : { "state" : {
"revision" : "3cd19bf79bd89b71477642a1d2172f3ee48b44ef", "revision" : "d0533a4ba40ff1d9ea9c6473a07639fa9b9c5079",
"version" : "1.0.71-alpha" "version" : "1.0.72-alpha"
} }
}, },
{ {
@@ -168,8 +168,13 @@ class ClientProxy: ClientProxyProtocol {
func stopSync() { func stopSync() {
MXLog.info("Stopping sync") MXLog.info("Stopping sync")
slidingSync?.stopSync()
slidingSyncObserverToken = nil slidingSyncObserverToken = nil
do {
try slidingSync?.stopSync()
} catch {
MXLog.error("Failed stopping sync with error: \(error). Ignore this error if ran just before the app being suspended")
}
} }
func directRoomForUserID(_ userID: String) async -> Result<String?, ClientProxyError> { func directRoomForUserID(_ userID: String) async -> Result<String?, ClientProxyError> {
+2 -13
View File
@@ -33,8 +33,6 @@ class RoomProxy: RoomProxyProtocol {
private(set) var displayName: String? private(set) var displayName: String?
private var roomSubscriptionObservationToken: TaskHandle?
private var roomUnsubscriptionObservationToken: TaskHandle?
private var roomTimelineObservationToken: TaskHandle? private var roomTimelineObservationToken: TaskHandle?
private let membersSubject = CurrentValueSubject<[RoomMemberProxyProtocol], Never>([]) private let membersSubject = CurrentValueSubject<[RoomMemberProxyProtocol], Never>([])
@@ -51,16 +49,7 @@ class RoomProxy: RoomProxyProtocol {
deinit { deinit {
Task { @MainActor [roomTimelineObservationToken, slidingSyncRoom] in Task { @MainActor [roomTimelineObservationToken, slidingSyncRoom] in
roomTimelineObservationToken?.cancel() roomTimelineObservationToken?.cancel()
slidingSyncRoom.unsubscribeFromRoom()
let task = ExpiringTaskRunner {
let unsubscribeTask = slidingSyncRoom.unsubscribeFromRoom()
while !unsubscribeTask.isFinished() {
try await Task.sleep(for: .seconds(2))
}
}
try? await task.run(timeout: .seconds(30))
} }
} }
@@ -184,7 +173,7 @@ class RoomProxy: RoomProxyProtocol {
RequiredState(key: "m.room.canonical_alias", value: ""), RequiredState(key: "m.room.canonical_alias", value: ""),
RequiredState(key: "m.room.join_rules", value: "")], RequiredState(key: "m.room.join_rules", value: "")],
timelineLimit: UInt32(SlidingSyncConstants.timelinePrecachingTimelineLimit)) timelineLimit: UInt32(SlidingSyncConstants.timelinePrecachingTimelineLimit))
roomSubscriptionObservationToken = slidingSyncRoom.subscribeToRoom(settings: settings) slidingSyncRoom.subscribeToRoom(settings: settings)
let timelineListener = RoomTimelineListener { [weak self] timelineDiff in let timelineListener = RoomTimelineListener { [weak self] timelineDiff in
self?.updatesSubject.send(timelineDiff) self?.updatesSubject.send(timelineDiff)
+1 -1
View File
@@ -43,7 +43,7 @@ include:
packages: packages:
MatrixRustSDK: MatrixRustSDK:
url: https://github.com/matrix-org/matrix-rust-components-swift url: https://github.com/matrix-org/matrix-rust-components-swift
exactVersion: 1.0.71-alpha exactVersion: 1.0.72-alpha
# path: ../matrix-rust-sdk # path: ../matrix-rust-sdk
DesignKit: DesignKit:
path: DesignKit path: DesignKit