Skip to content

Releases: matrix-org/matrix-ios-sdk

v0.11.0

10 Aug 15:27
Compare
Choose a tag to compare
v0.11.0 Pre-release
Pre-release

Changes in Matrix iOS SDK in 0.11.0 (2018-08-10)

Improvements:

  • MXSession: Add the option to use a Matrix filter in /sync requests ([MXSession startWithSyncFilter:]).
  • MXSession: Add API to manage Matrix filters.
  • MXRestClient: Add Matrix filter API.
  • MXRoom: Add send reply with text message (element-hq/element-ios#1911).
  • MXRoom: Add an asynchronous methods for liveTimeline, state and members.
  • MXRoom: Add methods to manage the room liveTimeline listeners synchronously.
  • MXRoomState: Add a membersCount property to store members stats independently from MXRoomMember objects.
  • MXRoomSummary: Add a membersCount property to cache MXRoomState one.
  • MXRoomSummary: Add a membership property to cache MXRoomState one.
  • MXRoomSummary: add isConferenceUserRoom.
  • MXStore: Add Obj-C annotations.
  • MXFileStore: Add a setting to set which data to preload ([MXFileStore setPreloadOptions:]).
  • Manage the new summary API from the homeserver( MSC: https://docs.google.com/document/d/11i14UI1cUz-OJ0knD5BFu7fmT6Fo327zvMYqfSAR7xs/edit#).
  • MXRoom: Add send reply with text message (element-hq/element-ios#1911).
  • Support room versioning (element-hq/element-ios#1938).

Bug fix:

API break:

  • MXSession: [MXSession startWithMessagesLimit] has been removed. Use the more generic [MXSession startWithSyncFilter:].
  • MXRoom: liveTimeline and state accesses are now asynchronous.
  • MXCall: callee access is now asynchronous.
  • MXRoomState: Remove displayName property. Use MXRoomSummary.displayName instead.
  • MXRoomState: Create a MXRoomMembers property. All members getter methods has been to the new class.
  • MXStore: Make the stateOfRoom method asynchronous.
  • MXRestClient: contextOfEvent: Add a filter parameter.

v0.10.12

03 Jul 12:48
Compare
Choose a tag to compare
v0.10.12 Pre-release
Pre-release

Improvements:

  • MXCrypto: Add reRequestRoomKeyForEvent to re-request encryption keys to decrypt an event (element-hq/element-ios/issues/1879).
  • Matrix filters: Create or update models for them: MXFilter, MXRoomFilter & MXRoomEventFilter.
  • MXRestClient: Factorise processing and completion blocks handling.
  • Read Receipts: Notify the app for implicit read receipts.
  • Replace all current __weak typeof(self) weakSelf = self;... dances by MXWeakify / MXStrongifyAndReturnIfNil.
  • Doc: Update instructions to install Synapse used in SDK integration tests

Bug fix:

  • MXRoomSummary: Fix a memory leak
  • MXRoom: A message (or a media) can be sent whereas the user cancelled it. This can make the app crash.
  • MXCrypto: Fix code that went into a dead-end.
  • MXMegolmDecryption: Fix unused overridden var.
  • Analytics: Do not report rooms count on every sync.

API break:

  • Analytics: Rename all kMXGoogleAnalyticsXxx constant values to kMXAnalyticsXxx.

v0.10.9

23 Apr 16:20
Compare
Choose a tag to compare
v0.10.9 Pre-release
Pre-release

Bug fixes:

  • Regression: Sending a photo from the photo library causes a crash.

v0.10.8

20 Apr 14:00
Compare
Choose a tag to compare
v0.10.8 Pre-release
Pre-release

Improvements:

Bug fixes:

v0.10.7

30 Mar 10:16
Compare
Choose a tag to compare

Improvements:

Bug fixes:

v0.10.6

13 Mar 14:54
Compare
Choose a tag to compare

Improvements:

  • SwiftMatrixSDK is now compatible with Swift 4, thanks to @johnflanagan-spok (PR #463).
  • Crypto: Make sure we request keys for only valid matrix user ids.
  • MXRoom: We should retry messages with same txn id when hitting 'resend' (element-hq/element-ios#1731).
  • MXTools: Make isMatrixUserIdentifier support historical user ids (element-hq/element-ios#1743).
  • MXRestClient: Add [MXRestClient eventWithEventId:] and [MXRestClient eventWithEventId:inRoom:].
  • Improve server load on event redaction (element-hq/element-ios#1730).
  • Make tests pass again.

Bug fixes:

  • Push: Missing push notifications after answering a call (element-hq/element-ios#1757).
  • Direct Chat: a room was marked as direct by mistake when I joined it.
  • MXRoom: Canceled message can be sent if there is only one in the message sending queue.
  • MXTools: Fix the regex part for the HS domain part in all isMatrixXxxxIdentifier methods.
  • MXFileStore: commits can stay pending after [MXFileStore close].
  • MXFileStore: Make sure data is flushed to files on [MXFileStore close].
  • MXFileStore: The metadata (containing eventStremToken) can be not stored in files.
  • MXOutgoingRoomKeyRequestManager: Fix crash reported by app store.
  • MXCallKitAdapter: Clean better when releasing an instance.

API breaks:

  • MXCrypto: Remove deviceWithDeviceId and devicesForUser methods because they return local values that may be out of sync. Use downloadKeys instead (element-hq/element-ios#1782).
  • MXRestClient: Add a txnId parameter to the sendEventToRoom method to better follow the matrix spec.

v0.10.5

10 Feb 15:14
Compare
Choose a tag to compare

Improvements:

  • Groups: Handle the user's groups and their data (element-hq/riot-meta#114).
  • Groups: Add methods to accept group invite and leave it (element-hq/riot-meta#114).
  • MXSession - Groups Flair: Handle the publicised groups for the matrix users (element-hq/riot-meta#118).
  • MXRoomState - Groups Flair: Support the new state event type m.room.related_groups(element-hq/riot-meta#118).
  • Create SDK extensions: JingleCallStack and Google Analytics are now separated from the core sdk code (PR #432).
  • MXFileStore: Run only one background task for [MXFileStore commit] (PR #436).
  • MXTools - Groups: add isMatrixGroupIdentifier method.
  • Bumped SwiftMatrixSDK.podspec dependency to GZIP 1.2.1, thanks to @nrakochy.
  • MXSDKOptions: Remove enableGoogleAnalytics. It is no more used (PR #448).
  • Crypto: The crypto is now built by default in matrix-ios-sdk (PR #449).

Bug fixes:

  • Room Summary Notification Count is not computed correctly until entering a room with at least one message (#409).
  • Crypto: Fix crash when we try to generate a negative number of one time keys (PR #445).
  • Medias not loading with an optional client certificate (#446), thanks to @r2d2leboss.
  • Crypto: Fix crash when sharing keys on broken network (PR #451).

v0.10.4

30 Nov 09:46
Compare
Choose a tag to compare

Improvements:

  • Crypto: Support the room key sharing (element-hq/riot-meta#113).
  • Crypto: Store permanently incoming room key requests (element-hq/riot-meta#121).
  • Crypto: use device_one_time_keys_count transmitted by /sync.
  • MXCrypto: Add a proper onSyncCompleted method (PR #410).
  • MXCrypto: Start it before syncing with the HS.
  • MXCrypto: Add deviceWithDeviceId.
  • MXCrypto: add ignoreKeyRequest & ignoreAllPendingKeyRequestsFromUser methods.
  • Remove the support of the new_device event (PR #421).
  • Remove AssetsLibrary framework use (deprecated since iOS 9).
  • MXSession: kMXSessionDidSyncNotification now comes with MXSyncResponse object result returned by the homeserver.

Bug fixes:

  • Fix many warnings regarding strict prototypes, thanks to @beatrupp.

API breaks:

  • Remove CoreData implementation of MXStore (It was not used).
  • MXCrypto: Make decryptEvent return decryption results (PR #426).

v0.10.3

13 Nov 17:01
Compare
Choose a tag to compare

Bug fixes:

  • A 1:1 invite is not displayed as a direct chat after clearing the cache.

v0.10.1

27 Oct 14:54
Compare
Choose a tag to compare

Improvements:

  • Notifications: implement @room notifications (element-hq/riot-meta#119).
  • MXTools: Add a reusable generateTransactionId method.
  • MXRoom: Prevent multiple occurrences of the room id in the direct chats dictionary of the account data.

Bug fixes:

  • CallKit - When I reject or answer a call on one device, it should stop ringing on all other iOS devices (element-hq/element-ios#1618).

API breaks:

  • Crypto: Remove MXFileCryptoStore (We stopped to maintain it one year ago).