Releases: matrix-org/matrix-ios-sdk
v0.19.3
✨ Features
*
🙌 Improvements
- MXDehydrationService: Support full rehydration feature (element-hq/element-ios/issues/1117).
- MXSDKOptions: Add wellknownDomainUrl to customise the domain for wellknown (vector-im/element-ios/issues/#4489).
- MXSession: Refresh homeserverWellknown on every start.
- MXRoom: Added support for posting
m.image
s with BlurHash (MSC 2448). - VoIP: Implement bridged version for call transfers.
- VoIP: Implement MXiOSAudioOutputRouter.
🐛 Bugfix
*
- MXCall:
audioToSpeaker
property removed. UseaudioOutputRouter
instead. - MXCallStackCall:
audioToSpeaker
property removed. Audio routing should be handled high-level.
🗣 Translations
*
🧱 Build
*
Others
*
Improvements:
v0.19.2
v0.19.1
✨ Features
*
🙌 Improvements
- MXRoomLastMessage: Use MXKeyProvider methods to encrypt/decrypt last message dictionary.
- VoIP: Change hold direction to send-only.
- Encrypted Media: Remove redundant and undocumented mimetype fields from encrypted attachments (element-hq/element-ios/issues/4303).
- MXRecoveryService: Expose checkPrivateKey to validate a private key (element-hq/element-ios/issues/4430).
- VoIP: Use headphones and Bluetooth devices when available for calls.
🐛 Bugfix
- MXSession: Fix app that can fail to resume (element-hq/element-ios/issues/4417).
- MXRealmCryptoStore: Run migration once before opening read-only Realms (element-hq/element-ios/issues/4418).
- VoIP: Handle offers when peer connection is stable (element-hq/element-ios/issues/4421).
- MXEventTimeline: Fix regression on clear cache where the last message of an encrypted room is not encrypted.
- MXBackgroundSyncService: Make credentials public (element-hq/element-ios/issues/3695).
- MXCredentials: Implement equatable & hashable methods (element-hq/element-ios/issues/3695).
- MXRoomSummary:
lastMessageEvent
property removed for performance reasons (element-hq/element-ios/issues/4360). - MXRoomSummary: All properties about lastMessage are moved into
lastMessage
property. - MXSession: Does not compute anymore last events for every room summaries by default. Use -[MXSession eventWithEventId:inRoom:success:failure:] method to load the last event for a room summary.
- MXRoom: Added method for seding voice messages (element-hq/element-ios/issues/4090).
- MXMediaManager: Added
mimeType
param to download encrypted media methods (element-hq/element-ios/issues/4303). - MXEncryptedContentFile:
mimetype
parameter removed (element-hq/element-ios/issues/4303). - MXEncryptedAttachments:
mimetype
parameters removed from encrypt attachment methods (element-hq/element-ios/issues/4303).
🗣 Translations
*
🧱 Build
- build.sh: Include debug symbols when building XCFramework
Others
*
Improvements:
v0.19.0
✨ Features
- Spaces: Support Space room type (element-hq/element-ios/issues/4069).
🙌 Improvements
- MXSession: Cache initial sync response until it is fully handled (element-hq/element-ios/issues/4317).
- MXStore: New commit method accepting a completion block.
- MXCrypto: Decrypt events asynchronously and no more on the main thread )(element-hq/element-ios/issues/4306).
- MXSession: Add the decryptEvents method to decypt a bunch of events asynchronously.
- MXSession: Make the eventWithEventId method decrypt the event if needed.
- MXEventTimeline: Add NSCopying implementation so that another pagination can be done on the same set of data.
- MXCrypto: eventDeviceInfo: Do not synchronise anymore the operation with the decryption queue.
- MXRoomSummary: Improve reset resetLastMessage to avoid pagination loop and to limit number of decryptions.
- MXSession: Limit the number of decryptions when processing an initial sync (element-hq/element-ios/issues/4307).
- Adapt sync response models to new sync API (element-hq/element-ios/issues/4309).
- MXKeyBackup: Do not reset the backup if forceRefresh() is called too early.
- Pod: Update Realm to 10.7.6.
- Pod: Update Jitsi to 3.5.0.
- Pod: Update OLMKit to 3.2.4.
- MXRealmCryptoStore: Use Realm instances as read-only in background store (element-hq/element-ios/issues/4352).
- MXLog: centralised logging facility, use everywhere instead of NSLog (element-hq/element-ios/issues/4351).
🐛 Bugfix
- MXRoomSummary: Fix decryption of the last message when it is edited (element-hq/element-ios/issues/4322).
- MXCall: Check remote partyId for select_answer events (element-hq/element-ios/issues/4337).
- MXSession: Fix used initial sync cache.
- MXRoom: MXRoom.outgoingMessages does not decrypt messages anymore. Use MXSession.decryptEvents to get decrypted events.
- MXSession: [MXSession decryptEvent:inTimeline:] is deprecated, use [MXSession decryptEvents:inTimeline:onComplete:] instead.
- MXCrypto: [MXCrypto decryptEvent:inTimeline:] is deprecated, use [MXCrypto decryptEvents:inTimeline:onComplete:] instead.
- MXCrypto: [MXCrypto hasKeysToDecryptEvent:] is now asynchronous.
🗣 Translations
*
🧱 Build
*
Others
*
Improvements:
v0.18.12
✨ Features
*
🙌 Improvements
- MXPushGatewayRestClient: Add timeout param to the HTTP method.
🐛 Bugfix
- MXRoomCreateContent: Fix room type JSON key.
*
🗣 Translations
*
🧱 Build
*
Others
*
Improvements:
v0.18.11
✨ Features
*
🙌 Improvements
- MXCallKitAdapter: Update incoming calls if answered from application UI.
- MXFileStore: Logs all files when a data corruption is detected (to track element-hq/element-ios/issues/4921).
- MXCallManager: Fix call transfers flow for all types of transfers.
🐛 Bugfix
- MXTools: Fix bad linkification of matrix alias and URL (element-hq/element-ios/issues/4258).
- MXRoomSummary: Fix roomType property deserialization issue.
- MXCall: Disable call transferee capability & fix call transfer feature check.
- Spaces and room type: Remove all MSC1772 JSON key prefixes and use stable ones.
🗣 Translations
*
🧱 Build
- Tests: Use UnitTests suffix for unit tests classes.
- Tests: Cut some existing tests to separate unit tests and integration tests.
- Tests: Create 4 test plans for the macOS target: AllTests, AllTestsWithSanitizers, UnitTests and UnitTestsWithSanitizers.
- GH Actions: Run unit tests on every PR and develop branch update.
- GH Actions: Run integration tests nightly on develop using last Synapse release.
Others
*
Improvements:
v0.18.10
✨ Features
*
🙌 Improvements
- MXHTTPOperation: Expose the HTTP response (element-hq/element-ios/issues/4206).
🐛 Bugfix
- MXCrypto: Disable optimisation on room members list to make sure we share keys to all (element-hq/element-ios/issues/3807).
*
🗣 Translations
*
🧱 Build
*
Others
*
Improvements:
v0.18.9
v0.18.8
✨ Features
*
🙌 Improvements
*
🐛 Bugfix
- MXSession: Fix deadlock regression in resume() (element-hq/element-ios/issues/4202).
- MXRoomMembers: Fix wrong view of room members when paginating (element-hq/element-ios/issues/4204).
*
🗣 Translations
*
🧱 Build
*
Others
*
Improvements:
v0.18.7
✨ Features
*
🙌 Improvements
- Create secret storage with a given private key (element-hq/element-ios/issues/4189).
- MXAsyncTaskQueue: New tool to run asynchronous tasks one at a time.
- MXRestClient: Add the dehydratedDevice() method to get the dehydrated device data (element-hq/element-ios/issues/4194).
🐛 Bugfix
- Notifications: Fix background sync out of memory (element-hq/element-ios#3957).
- Notifications: MXBackgroundService: Keep all cached sync responses until there are processed by MXSession (element-hq/element-ios#4074).
- Remove padding from base64 encoded
iv
value (element-hq/element-ios/issues/4172). - Check for null before changing a user's displayname or avatar URL based on an m.room.member event.
*
🗣 Translations
*
🧱 Build
*
Others
*
Improvements: