Fix missing read receipts in the timeline and edits in the room list. (#4807)

* Update the enterprise submodule.

* Update the SDK.
This commit is contained in:
Doug
2025-12-02 15:49:23 +00:00
committed by GitHub
parent bf7df1ec0a
commit d545a2b904
6 changed files with 130 additions and 25 deletions
+1 -1
View File
@@ -9498,7 +9498,7 @@
repositoryURL = "https://github.com/element-hq/matrix-rust-components-swift";
requirement = {
kind = exactVersion;
version = 25.11.27;
version = 25.12.02;
};
};
701C7BEF8F70F7A83E852DCC /* XCRemoteSwiftPackageReference "GZIP" */ = {
@@ -158,8 +158,8 @@
"kind" : "remoteSourceControl",
"location" : "https://github.com/element-hq/matrix-rust-components-swift",
"state" : {
"revision" : "1490877fdef3a870f5008eda68486edbd280d16c",
"version" : "25.11.27"
"revision" : "059bf9db4cfcace1cee9d1d8d4ff21a8a1297557",
"version" : "25.12.2"
}
},
{
@@ -3732,18 +3732,18 @@ open class ClientSDKMock: MatrixRustSDK.Client, @unchecked Sendable {
try await removeAvatarClosure?()
}
//MARK: - resetServerInfo
//MARK: - resetSupportedVersions
open var resetServerInfoThrowableError: Error?
var resetServerInfoUnderlyingCallsCount = 0
open var resetServerInfoCallsCount: Int {
open var resetSupportedVersionsThrowableError: Error?
var resetSupportedVersionsUnderlyingCallsCount = 0
open var resetSupportedVersionsCallsCount: Int {
get {
if Thread.isMainThread {
return resetServerInfoUnderlyingCallsCount
return resetSupportedVersionsUnderlyingCallsCount
} else {
var returnValue: Int? = nil
DispatchQueue.main.sync {
returnValue = resetServerInfoUnderlyingCallsCount
returnValue = resetSupportedVersionsUnderlyingCallsCount
}
return returnValue!
@@ -3751,25 +3751,65 @@ open class ClientSDKMock: MatrixRustSDK.Client, @unchecked Sendable {
}
set {
if Thread.isMainThread {
resetServerInfoUnderlyingCallsCount = newValue
resetSupportedVersionsUnderlyingCallsCount = newValue
} else {
DispatchQueue.main.sync {
resetServerInfoUnderlyingCallsCount = newValue
resetSupportedVersionsUnderlyingCallsCount = newValue
}
}
}
}
open var resetServerInfoCalled: Bool {
return resetServerInfoCallsCount > 0
open var resetSupportedVersionsCalled: Bool {
return resetSupportedVersionsCallsCount > 0
}
open var resetServerInfoClosure: (() async throws -> Void)?
open var resetSupportedVersionsClosure: (() async throws -> Void)?
open override func resetServerInfo() async throws {
if let error = resetServerInfoThrowableError {
open override func resetSupportedVersions() async throws {
if let error = resetSupportedVersionsThrowableError {
throw error
}
resetServerInfoCallsCount += 1
try await resetServerInfoClosure?()
resetSupportedVersionsCallsCount += 1
try await resetSupportedVersionsClosure?()
}
//MARK: - resetWellKnown
open var resetWellKnownThrowableError: Error?
var resetWellKnownUnderlyingCallsCount = 0
open var resetWellKnownCallsCount: Int {
get {
if Thread.isMainThread {
return resetWellKnownUnderlyingCallsCount
} else {
var returnValue: Int? = nil
DispatchQueue.main.sync {
returnValue = resetWellKnownUnderlyingCallsCount
}
return returnValue!
}
}
set {
if Thread.isMainThread {
resetWellKnownUnderlyingCallsCount = newValue
} else {
DispatchQueue.main.sync {
resetWellKnownUnderlyingCallsCount = newValue
}
}
}
}
open var resetWellKnownCalled: Bool {
return resetWellKnownCallsCount > 0
}
open var resetWellKnownClosure: (() async throws -> Void)?
open override func resetWellKnown() async throws {
if let error = resetWellKnownThrowableError {
throw error
}
resetWellKnownCallsCount += 1
try await resetWellKnownClosure?()
}
//MARK: - resolveRoomAlias
@@ -22982,6 +23022,71 @@ open class SpaceServiceSDKMock: MatrixRustSDK.SpaceService, @unchecked Sendable
try await addChildToSpaceChildIdSpaceIdClosure?(childId, spaceId)
}
//MARK: - editableSpaces
var editableSpacesUnderlyingCallsCount = 0
open var editableSpacesCallsCount: Int {
get {
if Thread.isMainThread {
return editableSpacesUnderlyingCallsCount
} else {
var returnValue: Int? = nil
DispatchQueue.main.sync {
returnValue = editableSpacesUnderlyingCallsCount
}
return returnValue!
}
}
set {
if Thread.isMainThread {
editableSpacesUnderlyingCallsCount = newValue
} else {
DispatchQueue.main.sync {
editableSpacesUnderlyingCallsCount = newValue
}
}
}
}
open var editableSpacesCalled: Bool {
return editableSpacesCallsCount > 0
}
var editableSpacesUnderlyingReturnValue: [SpaceRoom]!
open var editableSpacesReturnValue: [SpaceRoom]! {
get {
if Thread.isMainThread {
return editableSpacesUnderlyingReturnValue
} else {
var returnValue: [SpaceRoom]? = nil
DispatchQueue.main.sync {
returnValue = editableSpacesUnderlyingReturnValue
}
return returnValue!
}
}
set {
if Thread.isMainThread {
editableSpacesUnderlyingReturnValue = newValue
} else {
DispatchQueue.main.sync {
editableSpacesUnderlyingReturnValue = newValue
}
}
}
}
open var editableSpacesClosure: (() async -> [SpaceRoom])?
open override func editableSpaces() async -> [SpaceRoom] {
editableSpacesCallsCount += 1
if let editableSpacesClosure = editableSpacesClosure {
return await editableSpacesClosure()
} else {
return editableSpacesReturnValue
}
}
//MARK: - joinedParentsOfChild
open var joinedParentsOfChildChildIdThrowableError: Error?
@@ -85,7 +85,7 @@ class JoinedRoomProxy: JoinedRoomProxyProtocol {
filter: .eventTypeFilter(filter: excludedEventsFilter),
internalIdPrefix: nil,
dateDividerMode: .daily,
trackReadReceipts: true,
trackReadReceipts: .messageLikeEvents,
reportUtds: true)),
kind: .live)
@@ -150,7 +150,7 @@ class JoinedRoomProxy: JoinedRoomProxyProtocol {
filter: .all,
internalIdPrefix: UUID().uuidString,
dateDividerMode: .daily,
trackReadReceipts: false,
trackReadReceipts: .disabled,
reportUtds: true))
return .success(TimelineProxy(timeline: sdkTimeline, kind: .detached))
@@ -178,7 +178,7 @@ class JoinedRoomProxy: JoinedRoomProxyProtocol {
filter: .all,
internalIdPrefix: UUID().uuidString,
dateDividerMode: .daily,
trackReadReceipts: true,
trackReadReceipts: .messageLikeEvents,
reportUtds: true))
let timeline = TimelineProxy(timeline: sdkTimeline, kind: .thread(rootEventID: eventID))
@@ -225,7 +225,7 @@ class JoinedRoomProxy: JoinedRoomProxyProtocol {
filter: .onlyMessage(types: rustMessageTypes),
internalIdPrefix: nil,
dateDividerMode: .monthly,
trackReadReceipts: false,
trackReadReceipts: .disabled,
reportUtds: true))
let timeline = TimelineProxy(timeline: sdkTimeline, kind: .media(presentation))
@@ -256,7 +256,7 @@ class JoinedRoomProxy: JoinedRoomProxyProtocol {
filter: .all,
internalIdPrefix: nil,
dateDividerMode: .daily,
trackReadReceipts: false,
trackReadReceipts: .disabled,
reportUtds: true))
let timeline = TimelineProxy(timeline: sdkTimeline, kind: .pinned)
+1 -1
View File
@@ -71,7 +71,7 @@ packages:
# Element/Matrix dependencies
MatrixRustSDK:
url: https://github.com/element-hq/matrix-rust-components-swift
exactVersion: 25.11.27
exactVersion: 25.12.02
# path: ../matrix-rust-sdk
Compound:
path: compound-ios