mirror of
https://github.com/Novaloop-AG/element-x-ios.git
synced 2026-11-04 01:20:12 +00:00
Bump the RustSDK, adopt latest sliding sync changes and fixes
This commit is contained in:
committed by
Stefan Ceriu
parent
2a58b115e3
commit
f792aafe8d
@@ -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> {
|
||||||
|
|||||||
@@ -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
@@ -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
|
||||||
|
|||||||
Reference in New Issue
Block a user