diff --git a/.github/PULL_REQUEST_TEMPLATE.md b/.github/PULL_REQUEST_TEMPLATE.md
index 02c97590bb..a576ac54d4 100644
--- a/.github/PULL_REQUEST_TEMPLATE.md
+++ b/.github/PULL_REQUEST_TEMPLATE.md
@@ -1,7 +1,7 @@
### Pull Request Checklist
-
+
* [ ] Pull request is based on the develop branch
-* [ ] Pull request updates [CHANGES.rst](https://github.com/matrix-org/matrix-ios-sdk/blob/develop/CHANGES.rst)
-* [ ] Pull request includes a [sign off](https://github.com/matrix-org/synapse/blob/master/CONTRIBUTING.rst#sign-off)
+* [ ] Pull request contains a changelog file in ./changelog.d. See https://github.com/matrix-org/matrix-ios-sdk/blob/develop/CONTRIBUTING.md#changelog
+* [ ] Pull request includes a [sign off](https://github.com/matrix-org/matrix-ios-sdk/blob/develop/CONTRIBUTING.md#sign-off)
diff --git a/CHANGES.rst b/CHANGES.md
similarity index 84%
rename from CHANGES.rst
rename to CHANGES.md
index ca9c96e5f6..58d70a7ea5 100644
--- a/CHANGES.rst
+++ b/CHANGES.md
@@ -1,127 +1,54 @@
-Changes to be released in next version
-=================================================
-
-✨ Features
- *
-
-🙌 Improvements
- *
-
-🐛 Bugfix
- * Tests: Fix a crash in various tests from a missing `storeMaxUploadSize` method (#1175).
-
-⚠️ API Changes
- *
-
-🗣 Translations
- *
-
-🧱 Build
- *
-
-Others
- *
-
-Changes in 0.19.6 (2021-07-29)
-=================================================
-
-✨ Features
- *
-
-🙌 Improvements
- *
+## Changes in 0.19.6 (2021-07-29)
🐛 Bugfix
- * MXCryptoStore: Keep current store version after resetting data to avoid dead state on an initial sync (vector-im/element-ios/issues/4594).
- * Prevent session pause until reject/hangup event is sent (vector-im/element-ios/issues/4612).
+ * MXCryptoStore: Keep current store version after resetting data to avoid dead state on an initial sync ([#4594](https://github.com/vector-im/element-ios/issues/4594)).
+ * Prevent session pause until reject/hangup event is sent ([#4612](https://github.com/vector-im/element-ios/issues/4612)).
* Only post identity server changed notification if the server actually changed.
- * Fix audio routing issues for Bluetooth devices (vector-im/element-ios/issues/4622).
-
-⚠️ API Changes
- *
-
-🗣 Translations
- *
-
-🧱 Build
- *
+ * Fix audio routing issues for Bluetooth devices ([#4622](https://github.com/vector-im/element-ios/issues/4622)).
Others
- * Separated CI jobs into individual actions
-
-Improvements:
-
-Changes in 0.19.5 (2021-07-22)
-=================================================
+ * Separated CI jobs into individual actions
-✨ Features
- *
+## Changes in 0.19.5 (2021-07-22)
🙌 Improvements
- * MXRoomSummary: Cache local unread event count (vector-im/element-ios/issues/4585).
-
-🐛 Bugfix
- * MXCryptoStore: Use UI background task to make sure that write operations complete (vector-im/element-ios/issues/4579).
-
-⚠️ API Changes
- *
-
-🗣 Translations
- *
-
-🧱 Build
- *
-Others
- *
-
-Improvements:
+ * MXRoomSummary: Cache local unread event count ([#4585](https://github.com/vector-im/element-ios/issues/4585)).
+🐛 Bugfix
+ * MXCryptoStore: Use UI background task to make sure that write operations complete ([#4579](https://github.com/vector-im/element-ios/issues/4579)).
-Changes in 0.19.4 (2021-07-15)
-=================================================
-
-✨ Features
- *
+## Changes in 0.19.4 (2021-07-15)
🙌 Improvements
- * MXTools: Default to 1080p when converting a video (vector-im/element-ios/issues/4478).
+
+ * MXTools: Default to 1080p when converting a video ([#4478](https://github.com/vector-im/element-ios/issues/4478)).
* MXEvent: add support for voice messages
- * MXRoom: Add support for sending slow motion videos using AVAsset (vector-im/element-ios/issues/4483).
+ * MXRoom: Add support for sending slow motion videos using AVAsset ([#4483](https://github.com/vector-im/element-ios/issues/4483)).
* MXSendReplyEventStringsLocalizable: Added senderSentAVoiceMessage property
🐛 Bugfix
* Fix QR self verification with QR code (#1147)
* VoIP: Check for virtual users on attended call transfers.
- * MXBackgroundCryptoStore: Remove read-only Realm and try again if Olm account not found in crypto store (vector-im/element-ios/issues/4534).
+ * MXBackgroundCryptoStore: Remove read-only Realm and try again if Olm account not found in crypto store ([#4534](https://github.com/vector-im/element-ios/issues/4534)).
⚠️ API Changes
- * MXSDKOptions: Add videoConversionPresetName to customise video conversion quality.
- * MXRoom: Added duration and sample parameters on the sendVoiceMessage method (vector-im/element-ios/issues/4090)
-🗣 Translations
- *
-
-🧱 Build
- *
+ * MXSDKOptions: Add videoConversionPresetName to customise video conversion quality.
+ * MXRoom: Added duration and sample parameters on the sendVoiceMessage method ([#4090](https://github.com/vector-im/element-ios/issues/4090))
Others
- * Fixed a nullability warning and some header warnings.
-
-
-Improvements:
+ * Fixed a nullability warning and some header warnings.
-Changes in 0.19.3 (2021-06-30)
-=================================================
-✨ Features
- *
+## Changes in 0.19.3 (2021-06-30)
🙌 Improvements
- * MXDehydrationService: Support full rehydration feature (vector-im/element-ios/issues/1117).
- * MXSDKOptions: Add wellknownDomainUrl to customise the domain for wellknown (vector-im/element-ios/issues/#4489).
+
+ * MXDehydrationService: Support full rehydration feature ([#1117](https://github.com/vector-im/element-ios/issues/1117)).
+ * MXSDKOptions: Add wellknownDomainUrl to customise the domain for wellknown ([##4489](https://github.com/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.
@@ -131,854 +58,382 @@ Changes in 0.19.3 (2021-06-30)
*
⚠️ API Changes
+
* MXCall: `audioToSpeaker` property removed. Use `audioOutputRouter` instead.
* MXCallStackCall: `audioToSpeaker` property removed. Audio routing should be handled high-level.
-🗣 Translations
- *
-
-🧱 Build
- *
-
-Others
- *
-
-Improvements:
-
-
-Changes in 0.19.2 (2021-06-24)
-=================================================
-
-✨ Features
- *
+## Changes in 0.19.2 (2021-06-24)
🙌 Improvements
+
* MXSDKOptions: Introduce an option to auto-accept room invites.
🐛 Bugfix
* MXSession.homeserverWellknown was no more computed since 0.19.0.
-⚠️ API Changes
- *
-
-🗣 Translations
- *
-
-🧱 Build
- *
-
-Others
- *
-
-Improvements:
-
-
-Changes in 0.19.1 (2021-06-21)
-=================================================
-
-✨ Features
- *
+## Changes in 0.19.1 (2021-06-21)
🙌 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 (vector-im/element-ios/issues/4303).
- * MXRecoveryService: Expose checkPrivateKey to validate a private key (vector-im/element-ios/issues/4430).
+ * Encrypted Media: Remove redundant and undocumented mimetype fields from encrypted attachments ([#4303](https://github.com/vector-im/element-ios/issues/4303)).
+ * MXRecoveryService: Expose checkPrivateKey to validate a private key ([#4430](https://github.com/vector-im/element-ios/issues/4430)).
* VoIP: Use headphones and Bluetooth devices when available for calls.
🐛 Bugfix
- * MXSession: Fix app that can fail to resume (vector-im/element-ios/issues/4417).
- * MXRealmCryptoStore: Run migration once before opening read-only Realms (vector-im/element-ios/issues/4418).
- * VoIP: Handle offers when peer connection is stable (vector-im/element-ios/issues/4421).
+ * MXSession: Fix app that can fail to resume ([#4417](https://github.com/vector-im/element-ios/issues/4417)).
+ * MXRealmCryptoStore: Run migration once before opening read-only Realms ([#4418](https://github.com/vector-im/element-ios/issues/4418)).
+ * VoIP: Handle offers when peer connection is stable ([#4421](https://github.com/vector-im/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 (vector-im/element-ios/issues/3695).
- * MXCredentials: Implement equatable & hashable methods (vector-im/element-ios/issues/3695).
+ * MXBackgroundSyncService: Make credentials public ([#3695](https://github.com/vector-im/element-ios/issues/3695)).
+ * MXCredentials: Implement equatable & hashable methods ([#3695](https://github.com/vector-im/element-ios/issues/3695)).
⚠️ API Changes
- * MXRoomSummary: `lastMessageEvent` property removed for performance reasons (vector-im/element-ios/issues/4360).
+
+ * MXRoomSummary: `lastMessageEvent` property removed for performance reasons ([#4360](https://github.com/vector-im/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 (vector-im/element-ios/issues/4090).
- * MXMediaManager: Added `mimeType` param to download encrypted media methods (vector-im/element-ios/issues/4303).
- * MXEncryptedContentFile: `mimetype` parameter removed (vector-im/element-ios/issues/4303).
- * MXEncryptedAttachments: `mimetype` parameters removed from encrypt attachment methods (vector-im/element-ios/issues/4303).
+ * MXRoom: Added method for seding voice messages ([#4090](https://github.com/vector-im/element-ios/issues/4090)).
+ * MXMediaManager: Added `mimeType` param to download encrypted media methods ([#4303](https://github.com/vector-im/element-ios/issues/4303)).
+ * MXEncryptedContentFile: `mimetype` parameter removed ([#4303](https://github.com/vector-im/element-ios/issues/4303)).
+ * MXEncryptedAttachments: `mimetype` parameters removed from encrypt attachment methods ([#4303](https://github.com/vector-im/element-ios/issues/4303)).
-🗣 Translations
- *
-
🧱 Build
- * build.sh: Include debug symbols when building XCFramework
-
-Others
- *
-
-Improvements:
+ * build.sh: Include debug symbols when building XCFramework
-Changes in 0.19.0 (2021-06-02)
-=================================================
+## Changes in 0.19.0 (2021-06-02)
✨ Features
- * Spaces: Support Space room type (vector-im/element-ios/issues/4069).
+
+ * Spaces: Support Space room type ([#4069](https://github.com/vector-im/element-ios/issues/4069)).
🙌 Improvements
- * MXSession: Cache initial sync response until it is fully handled (vector-im/element-ios/issues/4317).
+
+ * MXSession: Cache initial sync response until it is fully handled ([#4317](https://github.com/vector-im/element-ios/issues/4317)).
* MXStore: New commit method accepting a completion block.
- * MXCrypto: Decrypt events asynchronously and no more on the main thread )(vector-im/element-ios/issues/4306).
+ * MXCrypto: Decrypt events asynchronously and no more on the main thread )([#4306](https://github.com/vector-im/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 (vector-im/element-ios/issues/4307).
- * Adapt sync response models to new sync API (vector-im/element-ios/issues/4309).
+ * MXSession: Limit the number of decryptions when processing an initial sync ([#4307](https://github.com/vector-im/element-ios/issues/4307)).
+ * Adapt sync response models to new sync API ([#4309](https://github.com/vector-im/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 (vector-im/element-ios/issues/4352).
- * MXLog: centralised logging facility, use everywhere instead of NSLog (vector-im/element-ios/issues/4351).
+ * MXRealmCryptoStore: Use Realm instances as read-only in background store ([#4352](https://github.com/vector-im/element-ios/issues/4352)).
+ * MXLog: centralised logging facility, use everywhere instead of NSLog ([#4351](https://github.com/vector-im/element-ios/issues/4351)).
🐛 Bugfix
- * MXRoomSummary: Fix decryption of the last message when it is edited (vector-im/element-ios/issues/4322).
- * MXCall: Check remote partyId for select_answer events (vector-im/element-ios/issues/4337).
+ * MXRoomSummary: Fix decryption of the last message when it is edited ([#4322](https://github.com/vector-im/element-ios/issues/4322)).
+ * MXCall: Check remote partyId for select_answer events ([#4337](https://github.com/vector-im/element-ios/issues/4337)).
* MXSession: Fix used initial sync cache.
⚠️ API Changes
+
* 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:
-
-
-Changes in 0.18.12 (2021-05-12)
-=================================================
-
-✨ Features
- *
+## Changes in 0.18.12 (2021-05-12)
🙌 Improvements
+
* MXPushGatewayRestClient: Add timeout param to the HTTP method.
🐛 Bugfix
* MXRoomCreateContent: Fix room type JSON key.
-⚠️ API Changes
- *
-
-🗣 Translations
- *
-
-🧱 Build
- *
-
-Others
- *
-
-Improvements:
-
-
-Changes in 0.18.11 (2021-05-07)
-=================================================
-
-✨ Features
- *
+## Changes in 0.18.11 (2021-05-07)
🙌 Improvements
+
* MXCallKitAdapter: Update incoming calls if answered from application UI.
* MXFileStore: Logs all files when a data corruption is detected (to track vector-im/element-ios/issues/4921).
* MXCallManager: Fix call transfers flow for all types of transfers.
* VoIP: Implement asserted identity for calls: MSC3086 (matrix-org/matrix-doc/pull/3086).
🐛 Bugfix
- * MXTools: Fix bad linkification of matrix alias and URL (vector-im/element-ios/issues/4258).
+ * MXTools: Fix bad linkification of matrix alias and URL ([#4258](https://github.com/vector-im/element-ios/issues/4258)).
* MXRoomSummary: Fix roomType property deserialization issue.
* MXCall: Disable call transferee capability & fix call transfer feature check.
⚠️ API Changes
+
* 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:
-
-
-Changes in 0.18.10 (2021-04-22)
-=================================================
-
-✨ Features
- *
+## Changes in 0.18.10 (2021-04-22)
🙌 Improvements
- * MXHTTPOperation: Expose the HTTP response (vector-im/element-ios/issues/4206).
+
+ * MXHTTPOperation: Expose the HTTP response ([#4206](https://github.com/vector-im/element-ios/issues/4206)).
* MXRoomPowerLevels: Handle undefined values and add init with default spec values.
* MXRoomCreationParameters: Add roomType and powerLevelContentOverride properties. Add initial state events update method.
* MXResponse: Add convenient uncurry method to convert a Swift method into Objective-C.
* Add MXRoomInitialStateEventBuilder that enables to build initial state events.
🐛 Bugfix
- * MXCrypto: Disable optimisation on room members list to make sure we share keys to all (vector-im/element-ios/issues/3807).
+ * MXCrypto: Disable optimisation on room members list to make sure we share keys to all ([#3807](https://github.com/vector-im/element-ios/issues/3807)).
-⚠️ API Changes
- *
+## Changes in 0.18.9 (2021-04-16)
-🗣 Translations
- *
-
-🧱 Build
- *
+🐛 Bugfix
+* Notifications: Fix sender display name that can miss ([##4222](https://github.com/vector-im/element-ios/issues/#4222)).
-Others
- *
+## Changes in 0.18.8 (2021-04-14)
-Improvements:
+🐛 Bugfix
+ * MXSession: Fix deadlock regression in resume() ([#4202](https://github.com/vector-im/element-ios/issues/4202)).
+ * MXRoomMembers: Fix wrong view of room members when paginating ([#4204](https://github.com/vector-im/element-ios/issues/4204)).
+## Changes in 0.18.7 (2021-04-09)
-Changes in 0.18.9 (2021-04-16)
-=================================================
+🙌 Improvements
-✨ Features
- *
+ * Create secret storage with a given private key ([#4189](https://github.com/vector-im/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 ([#4194](https://github.com/vector-im/element-ios/issues/4194)).
+
+🐛 Bugfix
+ * Notifications: Fix background sync out of memory (vector-im/element-ios#3957).
+ * Notifications: MXBackgroundService: Keep all cached sync responses until there are processed by MXSession (vector-im/element-ios#4074).
+ * Remove padding from base64 encoded `iv` value ([#4172](https://github.com/vector-im/element-ios/issues/4172)).
+ * Check for null before changing a user's displayname or avatar URL based on an m.room.member event.
+
+## Changes in 0.18.6 (2021-03-24)
🙌 Improvements
- *
-🐛 Bugfix
-* Notifications: Fix sender display name that can miss (vector-im/element-ios/issues/#4222).
+ * Support room type as described in MSC1840 ([#4050](https://github.com/vector-im/element-ios/issues/4050)).
+ * Pods: Update JitsiMeetSDK, OHHTTPStubs, Realm ([#4120](https://github.com/vector-im/element-ios/issues/4120)).
+ * MXCrypto: Do not load room members in e2e rooms after an initial sync.
+ * MXRoomSummary: Add enableTrustTracking() to compute and maintain trust value for the given room ([#4115](https://github.com/vector-im/element-ios/issues/4115)).
+ * VoIP: Virtual rooms implementation.
+ * MXCrypto: Split network request `/keys/query` into smaller requests (250 users max) ([#4123](https://github.com/vector-im/element-ios/issues/4123)).
-⚠️ API Changes
- *
+🐛 Bugfix
+ * MXDeviceList: Fix memory leak.
+ * MXDeviceListOperation: Fix memory leak.
+ * MXRoomState/MXRoomMembers: Fix memory leak and copying.
+ * MXKeyBackup: Add sanity checks to avoid crashes ([#4113](https://github.com/vector-im/element-ios/issues/4113)).
+ * MXTools: Avoid releasing null pointer to fix crash on M1 simulator ([#4140](https://github.com/vector-im/element-ios/issues/4140))
-🗣 Translations
- *
-
🧱 Build
- *
+
+ * build.sh: Support passing CFBundleShortVersionString and CFBundleVersion when building an xcframework.
+ * build.sh: When building an xcframework, zip the binary ready for distribution.
Others
- *
-Improvements:
+ * GitHub Actions: Run pod lib lint
+## Changes in 0.18.5 (2021-03-11)
-Changes in 0.18.8 (2021-04-14)
-=================================================
+🐛 Bugfix
+ * VoIP: Fix too quick call answer failure ([#4109](https://github.com/vector-im/element-ios/issues/4109)).
+ * Crypto: Duplicate message index after using the share extension (vector-im/element-ios#4104)
-✨ Features
- *
+Others
-🙌 Improvements
- *
+ * Ignore event editors other than the original sender.
+
+## Changes in 0.18.4 (2021-03-03)
🐛 Bugfix
- * MXSession: Fix deadlock regression in resume() (vector-im/element-ios/issues/4202).
- * MXRoomMembers: Fix wrong view of room members when paginating (vector-im/element-ios/issues/4204).
+ * MXCrossSigning: Fix setupWithPassword method crash when a grace period is enabled (Fix vector-im/element-ios#4099).
-⚠️ API Changes
- *
+## Changes in 0.18.3 (2021-02-26)
-🗣 Translations
- *
-
-🧱 Build
- *
+🐛 Bugfix
+ * Fix connection state & ice connection failures ([#4039](https://github.com/vector-im/element-ios/issues/4039)).
-Others
- *
+## Changes in 0.18.2 (2021-02-24)
-Improvements:
+🙌 Improvements
+ * MXRoomState: Add creator user id property.
+ * MXRoomSummary: Add creator user id property.
+ * MXCrypto: Encrypt cached e2ee data using an external pickle key (vector-im/element-ios#3867).
+ * Crypto: Upgrade OLMKit(3.2.2).
-Changes in 0.18.7 (2021-04-09)
-=================================================
+🐛 Bugfix
+ * Fix calls from my own users ([#4031](https://github.com/vector-im/element-ios/issues/4031)).
-✨ Features
- *
+🧱 Build
+
+ * build.sh: Add xcframework argument to build a universal MatrixSDK.xcframework
+ * MatrixSDKTests-macOS: Remove tests from macOS profile and archive builds to match iOS.
+
+## Changes in 0.18.1 (2021-02-12)
🙌 Improvements
- * Create secret storage with a given private key (vector-im/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 (vector-im/element-ios/issues/4194).
+
+ * MXCredentials: Expose additional server login response data ([#4024](https://github.com/vector-im/element-ios/issues/4024)).
🐛 Bugfix
- * Notifications: Fix background sync out of memory (vector-im/element-ios#3957).
- * Notifications: MXBackgroundService: Keep all cached sync responses until there are processed by MXSession (vector-im/element-ios#4074).
- * Remove padding from base64 encoded `iv` value (vector-im/element-ios/issues/4172).
- * Check for null before changing a user's displayname or avatar URL based on an m.room.member event.
+ * Support VP8/VP9 codecs in video calls ([#4026](https://github.com/vector-im/element-ios/issues/4026)).
+ * Handle call rejects from other devices ([#4030](https://github.com/vector-im/element-ios/issues/4030)).
-⚠️ API Changes
- *
+## Changes in 0.18.0 (2021-02-11)
-🗣 Translations
- *
-
-🧱 Build
- *
+🙌 Improvements
-Others
- *
+ * Pods: Update JitsiMeetSDK to 3.1.0.
+ * Send VoIP analytics events ([#3855](https://github.com/vector-im/element-ios/issues/3855)).
+ * Add hold support for CallKit calls ([#3834](https://github.com/vector-im/element-ios/issues/3834)).
+ * Fix video call with web ([#3862](https://github.com/vector-im/element-ios/issues/3862)).
+ * VoIP: Call transfers initiation ([#3872](https://github.com/vector-im/element-ios/issues/3872)).
+ * VoIP: DTMF support in calls ([#3929](https://github.com/vector-im/element-ios/issues/3929)).
-Improvements:
+🐛 Bugfix
+ * MXRoomSummary: directUserId may be missing (null) for a direct chat if it was joined on another device.
+Others
-Changes in 0.18.6 (2021-03-24)
-=================================================
+ * README: Fix a couple of typos and improve consistency of the README.
-✨ Features
- *
+## Changes in 0.17.11 (2021-02-03)
🙌 Improvements
- * Support room type as described in MSC1840 (vector-im/element-ios/issues/4050).
- * Pods: Update JitsiMeetSDK, OHHTTPStubs, Realm (vector-im/element-ios/issues/4120).
- * MXCrypto: Do not load room members in e2e rooms after an initial sync.
- * MXRoomSummary: Add enableTrustTracking() to compute and maintain trust value for the given room (vector-im/element-ios/issues/4115).
- * VoIP: Virtual rooms implementation.
- * MXCrypto: Split network request `/keys/query` into smaller requests (250 users max) (vector-im/element-ios/issues/4123).
+
+ * MXMemory: New utility class to track memory usage.
+ * MXRealmCryptoStore: Compact Realm DB only once, at the first usage.
+ * MXLoginSSOIdentityProvider: Add new `brand` field as described in MSC2858 ([#3980](https://github.com/vector-im/element-ios/issues/3980)).
+ * MXSession: Make `handleBackgroundSyncCacheIfRequiredWithCompletion` method public ([#3986](https://github.com/vector-im/element-ios/issues/3986)).
+ * MXLogger: Remove log files that are no more part of the rotation.
+ * MXLogger: Add an option to limit logs size ([##3903](https://github.com/vector-im/element-ios/issues/#3903)).
+ * MXRestClient: Handle grace period in `authSessionForRequestWithMethod`.
🐛 Bugfix
- * MXDeviceList: Fix memory leak.
- * MXDeviceListOperation: Fix memory leak.
- * MXRoomState/MXRoomMembers: Fix memory leak and copying.
- * MXKeyBackup: Add sanity checks to avoid crashes (vector-im/element-ios/issues/4113).
- * MXTools: Avoid releasing null pointer to fix crash on M1 simulator (vector-im/element-ios/issues/4140)
-
-⚠️ API Changes
- *
-
-🗣 Translations
- *
-
-🧱 Build
- * build.sh: Support passing CFBundleShortVersionString and CFBundleVersion when building an xcframework.
- * build.sh: When building an xcframework, zip the binary ready for distribution.
-
-Others
- * GitHub Actions: Run pod lib lint
-
-Improvements:
-
-
-Changes in 0.18.5 (2021-03-11)
-=================================================
-
-✨ Features
- *
-
-🙌 Improvements
- *
-
-🐛 Bugfix
- * VoIP: Fix too quick call answer failure (vector-im/element-ios/issues/4109).
- * Crypto: Duplicate message index after using the share extension (vector-im/element-ios#4104)
-
-⚠️ API Changes
- *
-
-🗣 Translations
- *
-
-🧱 Build
- *
-
-Others
- * Ignore event editors other than the original sender.
-
-Improvements:
-
-
-Changes in 0.18.4 (2021-03-03)
-=================================================
-
-✨ Features
- *
-
-🙌 Improvements
- *
-
-🐛 Bugfix
- * MXCrossSigning: Fix setupWithPassword method crash when a grace period is enabled (Fix vector-im/element-ios#4099).
-
-⚠️ API Changes
- *
-
-🗣 Translations
- *
-
-🧱 Build
- *
-
-Others
- *
-
-Improvements:
-
-
-Changes in 0.18.3 (2021-02-26)
-=================================================
-
-✨ Features
- *
-
-🙌 Improvements
- *
-
-🐛 Bugfix
- * Fix connection state & ice connection failures (vector-im/element-ios/issues/4039).
-
-⚠️ API Changes
- *
-
-🗣 Translations
- *
-
-🧱 Build
- *
-
-Others
- *
-
-Improvements:
-
-
-Changes in 0.18.2 (2021-02-24)
-=================================================
-
-✨ Features
- *
-
-🙌 Improvements
- * MXRoomState: Add creator user id property.
- * MXRoomSummary: Add creator user id property.
- * MXCrypto: Encrypt cached e2ee data using an external pickle key (vector-im/element-ios#3867).
- * Crypto: Upgrade OLMKit(3.2.2).
-
-🐛 Bugfix
- * Fix calls from my own users (vector-im/element-ios/issues/4031).
-
-⚠️ API Changes
- *
-
-🗣 Translations
- *
-
-🧱 Build
- * build.sh: Add xcframework argument to build a universal MatrixSDK.xcframework
- * MatrixSDKTests-macOS: Remove tests from macOS profile and archive builds to match iOS.
-
-Others
- *
-
-Improvements:
-
-
-Changes in 0.18.1 (2021-02-12)
-=================================================
-
-✨ Features
- *
-
-🙌 Improvements
- * MXCredentials: Expose additional server login response data (vector-im/element-ios/issues/4024).
-
-🐛 Bugfix
- * Support VP8/VP9 codecs in video calls (vector-im/element-ios/issues/4026).
- * Handle call rejects from other devices (vector-im/element-ios/issues/4030).
-
-⚠️ API Changes
- *
-
-🗣 Translations
- *
-
-🧱 Build
- *
-
-Others
- *
-
-Improvements:
-
-
-Changes in 0.18.0 (2021-02-11)
-=================================================
-
-✨ Features
- *
-
-🙌 Improvements
- * Pods: Update JitsiMeetSDK to 3.1.0.
- * Send VoIP analytics events (vector-im/element-ios/issues/3855).
- * Add hold support for CallKit calls (vector-im/element-ios/issues/3834).
- * Fix video call with web (vector-im/element-ios/issues/3862).
- * VoIP: Call transfers initiation (vector-im/element-ios/issues/3872).
- * VoIP: DTMF support in calls (vector-im/element-ios/issues/3929).
-
-🐛 Bugfix
- * MXRoomSummary: directUserId may be missing (null) for a direct chat if it was joined on another device.
-
-⚠️ API Changes
- *
-
-🗣 Translations
- *
-
-🧱 Build
- *
-
-Others
- * README: Fix a couple of typos and improve consistency of the README.
-
-Improvements:
-
-
-Changes in 0.17.11 (2021-02-03)
-=================================================
-
-✨ Features
- *
-
-🙌 Improvements
- * MXMemory: New utility class to track memory usage.
- * MXRealmCryptoStore: Compact Realm DB only once, at the first usage.
- * MXLoginSSOIdentityProvider: Add new `brand` field as described in MSC2858 (vector-im/element-ios/issues/3980).
- * MXSession: Make `handleBackgroundSyncCacheIfRequiredWithCompletion` method public (vector-im/element-ios/issues/3986).
- * MXLogger: Remove log files that are no more part of the rotation.
- * MXLogger: Add an option to limit logs size (vector-im/element-ios/issues/#3903).
- * MXRestClient: Handle grace period in `authSessionForRequestWithMethod`.
-
-🐛 Bugfix
- * Background Sync: Use autoreleasepool to limit RAM usage (vector-im/element-ios/issues/3957).
+ * Background Sync: Use autoreleasepool to limit RAM usage ([#3957](https://github.com/vector-im/element-ios/issues/3957)).
* Background Sync: Do not compact Realm DB from background process.
- * MX3PidAddManager: Use a non empty client_secret to discover /account/3pid/add flows (vector-im/element-ios/issues/3966).
- * VoIP: Fix camera indicator when video call answered elsewhere (vector-im/element-ios/issues/3971).
-
-⚠️ API Changes
- *
+ * MX3PidAddManager: Use a non empty client_secret to discover /account/3pid/add flows ([#3966](https://github.com/vector-im/element-ios/issues/3966)).
+ * VoIP: Fix camera indicator when video call answered elsewhere ([#3971](https://github.com/vector-im/element-ios/issues/3971)).
-🗣 Translations
- *
-
-🧱 Build
- *
-
-Others
- *
-
-Improvements:
-
-
-Changes in 0.17.10 (2021-01-27)
-=================================================
-
-✨ Features
- *
+## Changes in 0.17.10 (2021-01-27)
🙌 Improvements
+
* MXRealmCryptoStore: New implementation of deleteStoreWithCredentials that does not need to open the realm DB.
* MXRealmCryptoStore: store chain index of shared outbound group sessions to improve re-share session keys
🐛 Bugfix
- * MXBackgroundSyncService: Clear the bg sync crypto db if needed (vector-im/element-ios/issues/3956).
- * MXCrypto: Add a workaround when the megolm key is not shared to all members (vector-im/element-ios/issues/3807).
+ * MXBackgroundSyncService: Clear the bg sync crypto db if needed ([#3956](https://github.com/vector-im/element-ios/issues/3956)).
+ * MXCrypto: Add a workaround when the megolm key is not shared to all members ([#3807](https://github.com/vector-im/element-ios/issues/3807)).
-⚠️ API Changes
- *
-
-🗣 Translations
- *
-
-🧱 Build
- *
-
-Others
- *
-
-Improvements:
-
-
-Changes in 0.17.9 (2021-01-18)
-=================================================
-
-✨ Features
- *
-
-🙌 Improvements
- *
+## Changes in 0.17.9 (2021-01-18)
🐛 Bugfix
- * MXEvent: Fix a regression on edits and replies in e2ee rooms (vector-im/element-ios/issues/3944).
-
-⚠️ API Changes
- *
-
-🗣 Translations
- *
-
-🧱 Build
- *
-
-Others
- *
-
-Improvements:
-
+ * MXEvent: Fix a regression on edits and replies in e2ee rooms ([#3944](https://github.com/vector-im/element-ios/issues/3944)).
-Changes in 0.17.8 (2021-01-15)
-=================================================
-
-✨ Features
- *
-
-🙌 Improvements
- *
+## Changes in 0.17.8 (2021-01-15)
🐛 Bugfix
- * Avoid calling background task expiration handlers in app extensions (vector-im/element-ios/issues/3935).
-
-⚠️ API Changes
- *
+ * Avoid calling background task expiration handlers in app extensions ([#3935](https://github.com/vector-im/element-ios/issues/3935)).
-🗣 Translations
- *
-
-🧱 Build
- *
-
-Others
- *
-
-Improvements:
-
-
-Changes in 0.17.7 (2021-01-14)
-=================================================
-
-✨ Features
- *
+## Changes in 0.17.7 (2021-01-14)
🙌 Improvements
- * MXCrypto: Store megolm outbound session to improve send time of first message after app launch (vector-im/element-ios/issues/#3904).
+
+ * MXCrypto: Store megolm outbound session to improve send time of first message after app launch ([##3904](https://github.com/vector-im/element-ios/issues/#3904)).
* MXUIKitApplicationStateService: Add this service to track UIKit application state.
🐛 Bugfix
- * MXBackgroundSyncService: Fix `m.buddy` to-device event crashes (vector-im/element-ios/issues/3889).
- * MXBackgroundSyncService: Fix app deadlock created between the app process and the notification service extension process (vector-im/element-ios/issues/3906).
- * MXUIKitBackgroundTask: Avoid thread switching when creating a background task to keep threading model (vector-im/element-ios/issues/3917).
+ * MXBackgroundSyncService: Fix `m.buddy` to-device event crashes ([#3889](https://github.com/vector-im/element-ios/issues/3889)).
+ * MXBackgroundSyncService: Fix app deadlock created between the app process and the notification service extension process ([#3906](https://github.com/vector-im/element-ios/issues/3906)).
+ * MXUIKitBackgroundTask: Avoid thread switching when creating a background task to keep threading model ([#3917](https://github.com/vector-im/element-ios/issues/3917)).
⚠️ API Changes
- * MXLoginSSOFlow: Use unstable identity providers field while the MSC2858 is not approved.
-
-🗣 Translations
- *
-
-🧱 Build
- *
-
-Others
- *
-
-Improvements:
+ * MXLoginSSOFlow: Use unstable identity providers field while the MSC2858 is not approved.
-Changes in 0.17.6 (2020-12-18)
-=================================================
-
-✨ Features
- *
-
-🙌 Improvements
- *
+## Changes in 0.17.6 (2020-12-18)
🐛 Bugfix
* MXUIKitBackgroundTask: Handle invalid identifier case, introduce a threshold for background time remaining, set expiration handler in initAndStart.
-⚠️ API Changes
- *
-
-🗣 Translations
- *
-
-🧱 Build
- *
-
-Others
- *
-
-Improvements:
-
-
-Changes in 0.17.5 (2020-12-16)
-=================================================
+## Changes in 0.17.5 (2020-12-16)
✨ Features
+
* Added MXKeyProvider to enable data encryption using keys given by client application (#3866)
🙌 Improvements
+
* MXTaggedEvents: Expose "m.tagged_events" according to [MSC2437](https://github.com/matrix-org/matrix-doc/pull/2437).
- * Login flow: Add MXLoginSSOFlow to support multiple SSO Identity Providers ([MSC2858](https://github.com/matrix-org/matrix-doc/pull/2858)) (vector-im/element-ios/issues/3846).
+ * Login flow: Add MXLoginSSOFlow to support multiple SSO Identity Providers ([MSC2858](https://github.com/matrix-org/matrix-doc/pull/2858)) ([#3846](https://github.com/vector-im/element-ios/issues/3846)).
🐛 Bugfix
* MXRestClient: Fix the format of the request body when querying device keys for users (vector-im/element-ios#3539).
- * MXRoomSummary: Fix crash when decoding lastMessageData (vector-im/element-ios/issues/3879).
+ * MXRoomSummary: Fix crash when decoding lastMessageData ([#3879](https://github.com/vector-im/element-ios/issues/3879)).
⚠️ API Changes
- *
-
-🗣 Translations
- *
-
-🧱 Build
- *
-
-Others
- *
-
-Improvements:
+ *
-Changes in 0.17.4 (2020-12-02)
-=================================================
+## Changes in 0.17.4 (2020-12-02)
✨ Features
- * Added MXAes encryption helper class (vector-im/element-ios/issues/3833).
+
+ * Added MXAes encryption helper class ([#3833](https://github.com/vector-im/element-ios/issues/3833)).
🙌 Improvements
- * Pods: Update JitsiMeetSDK to 2.11.0 to be able to build using Xcode 12.2 (vector-im/element-ios/issues/3808).
- * Pods: Update Realm to 10.1.4 to be able to `pod lib lint` using Xcode 12.2 (vector-im/element-ios/issues/3808).
+
+ * Pods: Update JitsiMeetSDK to 2.11.0 to be able to build using Xcode 12.2 ([#3808](https://github.com/vector-im/element-ios/issues/3808)).
+ * Pods: Update Realm to 10.1.4 to be able to `pod lib lint` using Xcode 12.2 ([#3808](https://github.com/vector-im/element-ios/issues/3808)).
🐛 Bugfix
* MXSession: Fix a race conditions that prevented MXSession from actually being paused.
* MXSession: Make sure the resume method call its completion callback.
⚠️ API Changes
- * MXRoomSummary: Add a property to indicate room membership transition state.
-
-🗣 Translations
- *
-
-🧱 Build
- *
-
-Others
- *
-
-Improvements:
-
-Changes in 0.17.3 (2020-11-24)
-=================================================
+ * MXRoomSummary: Add a property to indicate room membership transition state.
-✨ Features
- *
+## Changes in 0.17.3 (2020-11-24)
🙌 Improvements
+
* MXCrypto: Introduce MXCryptoVersion and MXCryptoMigration to manage logical migration between MXCrypto module updates.
🐛 Bugfix
* MXOlmDevice: Make usage of libolm data process-safe (vector-im/element-ios/3817).
* MXCrypto: Use MXCryptoMigration to purge all one time keys because some may be bad (vector-im/element-ios/3818).
-⚠️ API Changes
- *
-
-🗣 Translations
- *
-
-🧱 Build
- *
-
-Others
- *
-
-Improvements:
-
-
-Changes in 0.17.2 (2020-11-17)
-=================================================
-
-✨ Features
- *
-
-🙌 Improvements
- *
+## Changes in 0.17.2 (2020-11-17)
🐛 Bugfix
* Podspec: Fix arm64 simulator issue with JitsiMeetSDK.
* Realm: Stick on 10.1.2 because the CI cannot build.
-⚠️ API Changes
- *
-
-🗣 Translations
- *
-
-🧱 Build
- *
-
-Others
- *
-
-Improvements:
-
-
-Changes in 0.17.1 (2020-11-17)
-=================================================
-
-✨ Features
- *
-
-🙌 Improvements
- *
+## Changes in 0.17.1 (2020-11-17)
🐛 Bugfix
*
⚠️ API Changes
+
* Update Realm to 10.2.1 and CocoaPods to 1.10.0.
* CocoaPods 1.10.0 is mandatory.
-🗣 Translations
- *
-
-🧱 Build
- *
-
-Others
- *
-
-Improvements:
-
-
- Changes in 0.17.0 (2020-11-13)
-=================================================
-
-✨ Features
- *
+ ## Changes in 0.17.0 (2020-11-13)
🙌 Improvements
+
* MXAnalyticsDelegate: Make it fully agnostic on tracked data.
* MXRealmCryptoStore: Compact DB files before getting out of memory error (vector-im/element-ios/3792).
* Tools: Add MXProfiler to track some performance.
@@ -989,112 +444,47 @@ Improvements:
* Update JitsiMeetSDK to 2.10.2 (vector-im/element-ios/3712).
⚠️ API Changes
- * Xcode 12 is now mandatory for using the JingleCallStack sub pod.
-
-🗣 Translations
- *
-
-🧱 Build
- *
-Others
- *
+ * Xcode 12 is now mandatory for using the JingleCallStack sub pod.
-Changes in 0.16.20 (2020-10-27)
-=================================================
-
-✨ Features
- *
+## Changes in 0.16.20 (2020-10-27)
🙌 Improvements
+
* Update GZIP to 1.3.0 (vector-im/element-ios/3570).
* Update Realm to 5.4.8 (vector-im/element-ios/3570).
* Update JitsiMeetSDK to 2.10.0 (vector-im/element-ios/3570).
- * Introduce MXBackgroundSyncService and helper classes (vector-im/element-ios/issues/3579).
+ * Introduce MXBackgroundSyncService and helper classes ([#3579](https://github.com/vector-im/element-ios/issues/3579)).
🐛 Bugfix
*
⚠️ API Changes
- * SwiftSupport subspec removed. Swift is default now.
-
-🗣 Translations
- *
-
-🧱 Build
- *
-
-Others
- *
-
-Improvements:
-
-Changes in 0.16.19 (2020-10-14)
-=================================================
+ * SwiftSupport subspec removed. Swift is default now.
-✨ Features
- *
+## Changes in 0.16.19 (2020-10-14)
🙌 Improvements
+
* MXCrossSigning: Detect when cross-signing keys have been reset and send MXCrossSigningDidChangeCrossSigningKeysNotification.
- * MXSession: Introduce handleSyncResponse method to process sync responses from out of the session (vector-im/element-ios/issues/3579).
- * MXJSONModels: Implement JSONDictionary methods for MXSyncResponse and inner classes (vector-im/element-ios/issues/3579).
+ * MXSession: Introduce handleSyncResponse method to process sync responses from out of the session ([#3579](https://github.com/vector-im/element-ios/issues/3579)).
+ * MXJSONModels: Implement JSONDictionary methods for MXSyncResponse and inner classes ([#3579](https://github.com/vector-im/element-ios/issues/3579)).
🐛 Bugfix
* Tests: Fix testMXDeviceListDidUpdateUsersDevicesNotification.
* MXCrossSigning: Trust cross-signing because we locally trust the device that created it.
-⚠️ API Changes
- *
-
-🗣 Translations
- *
-
-🧱 Build
- *
-
-Others
- *
-
-Improvements:
-
-
-Changes in 0.16.18 (2020-10-13)
-=================================================
-
-✨ Features
- *
-
-🙌 Improvements
- *
+## Changes in 0.16.18 (2020-10-13)
🐛 Bugfix
* Fix nonstring msgtyped room messages, by removing msgtype from the wire and prev contents.
-⚠️ API Changes
- *
-
-🗣 Translations
- *
-
-🧱 Build
- *
-
-Others
- *
-
-Improvements:
-
-
-Changes in 0.16.17 (2020-10-09)
-=================================================
-
-✨ Features
- *
+## Changes in 0.16.17 (2020-10-09)
🙌 Improvements
+
* MXCrypto: Add hasKeysToDecryptEvent method.
🐛 Bugfix
@@ -1102,23 +492,7 @@ Changes in 0.16.17 (2020-10-09)
* MXCrypto: Send MXCrossSigningMyUserDidSignInOnNewDeviceNotification and MXDeviceListDidUpdateUsersDevicesNotification on the main thread.
* MXCrossSigning: Do not send MXCrossSigningMyUserDidSignInOnNewDeviceNotification again if the device has been verified from another thread.
-⚠️ API Changes
- *
-
-🗣 Translations
- *
-
-🧱 Build
- *
-
-Others
- *
-
-Improvements:
-
-
-Changes in 0.16.16 (2020-09-30)
-=================================================
+## Changes in 0.16.16 (2020-09-30)
Features:
*
@@ -1129,7 +503,7 @@ Improvements:
Bugfix:
* MXBase64Tools: Make sure the SDK decode padded and unpadded base64 strings like other platforms (vector-im/riot-ios/issues/3667).
* SSSS: Use unpadded base64 for secrets data (vector-im/riot-ios/issues/3669).
- * MXSession: Fix `refreshHomeserverWellknown` method not reading Well-Known from the homeserver domain (vector-im/element-ios/issues/3653).
+ * MXSession: Fix `refreshHomeserverWellknown` method not reading Well-Known from the homeserver domain ([#3653](https://github.com/vector-im/element-ios/issues/3653)).
API Change:
*
@@ -1146,8 +520,7 @@ Build:
Test:
*
-Changes in 0.16.15 (2020-09-03)
-=================================================
+## Changes in 0.16.15 (2020-09-03)
Features:
*
@@ -1174,8 +547,7 @@ Build:
Test:
*
-Changes in 0.16.14 (2020-08-28)
-=================================================
+## Changes in 0.16.14 (2020-08-28)
Features:
*
@@ -1184,7 +556,7 @@ Improvements:
*
Bugfix:
- * MXCredentials: Try to guess homeserver in credentials when not provided in wellknown (vector-im/element-ios/issues/3448).
+ * MXCredentials: Try to guess homeserver in credentials when not provided in wellknown ([#3448](https://github.com/vector-im/element-ios/issues/3448)).
API Change:
*
@@ -1201,8 +573,7 @@ Build:
Test:
*
-Changes in 0.16.13 (2020-08-25)
-=================================================
+## Changes in 0.16.13 (2020-08-25)
Features:
*
@@ -1228,8 +599,7 @@ Build:
Test:
*
-Changes in 0.16.12 (2020-08-19)
-=================================================
+## Changes in 0.16.12 (2020-08-19)
Features:
*
@@ -1255,8 +625,7 @@ Build:
Test:
*
-Changes in 0.16.11 (2020-08-13)
-=================================================
+## Changes in 0.16.11 (2020-08-13)
Features:
* Introduce MXPushGatewayRestClient (part of vector-im/element-ios#3452).
@@ -1282,8 +651,7 @@ Build:
Test:
*
-Changes in 0.16.10 (2020-08-07)
-=================================================
+## Changes in 0.16.10 (2020-08-07)
Features:
*
@@ -1311,8 +679,7 @@ Test:
* Make tests crash instantly if no local synapse is running.
* Do not use anymore NSAssert in tests.
-Changes in 0.16.9 (2020-08-05)
-=================================================
+## Changes in 0.16.9 (2020-08-05)
Features:
*
@@ -1338,7 +705,7 @@ Build:
Test:
*
-Changes in 0.16.8 (2020-07-28)
+## Changes in 0.16.8 (2020-07-28)
================================================
Improvements:
@@ -1348,7 +715,7 @@ Bug fix:
* MXRoom: Reply: Use formatted body only if the message content format is known.
* MXRoom: Reply: Avoid nested mx-reply tags.
-Changes in Matrix iOS SDK in 0.16.7 (2020-07-13)
+## Changes in Matrix iOS SDK in 0.16.7 (2020-07-13)
================================================
Bug fix:
@@ -1356,7 +723,7 @@ Bug fix:
* MXPushRuleSenderNotificationPermissionConditionChecker & MXPushRuleRoomMemberCountConditionChecker: Remove redundant room check (vector-im/riot-ios/issues/3354).
* MXSDKOptions: Introduce enableKeyBackupWhenStartingMXCrypto option (vector-im/riot-ios/issues/3371).
-Changes in Matrix iOS SDK in 0.16.6 (2020-06-30)
+## Changes in Matrix iOS SDK in 0.16.6 (2020-06-30)
================================================
Improvements:
@@ -1380,7 +747,7 @@ Bug fix:
API break:
* MXCrossSigning: Removed MXCrossSigningStateCanCrossSignAsynchronously.
-Changes in Matrix iOS SDK in 0.16.5 (2020-05-18)
+## Changes in Matrix iOS SDK in 0.16.5 (2020-05-18)
================================================
Improvements:
@@ -1394,7 +761,7 @@ Improvements:
Bug fix:
* MXJingleCallAudioSessionConfigurator: Handle RTCAudioSession manually, enable audio when needed. Fix outgoing audio issue after consecutive incoming calls.
-Changes in Matrix iOS SDK in 0.16.4 (2020-05-07)
+## Changes in Matrix iOS SDK in 0.16.4 (2020-05-07)
================================================
Improvements:
@@ -1402,14 +769,14 @@ Improvements:
* Pod: Update AFNetworking version (#793).
* Pod: Update Realm and OHTTPStubs.
-Changes in Matrix iOS SDK in 0.16.3 (2020-05-07)
+## Changes in Matrix iOS SDK in 0.16.3 (2020-05-07)
================================================
Improvements:
* MXCrypto: Allow to verify a device again to request private keys again from it.
* Secrets: Validate received private keys for cross-signing and key backup before using them (vector-im/riot-ios/issues/3201).
-Changes in Matrix iOS SDK in 0.16.2 (2020-04-30)
+## Changes in Matrix iOS SDK in 0.16.2 (2020-04-30)
================================================
Improvements:
@@ -1422,7 +789,7 @@ Bug fix:
Doc fix:
* Update the CONTRIBUTING.rst to point to correct file.
-Changes in Matrix iOS SDK in 0.16.1 (2020-04-24)
+## Changes in Matrix iOS SDK in 0.16.1 (2020-04-24)
================================================
Improvements:
@@ -1440,7 +807,7 @@ Bug fix:
API break:
* MXCrypto: trustLevelSummaryForUserIds: is now async.
-Changes in Matrix iOS SDK in 0.16.0 (2020-04-17)
+## Changes in Matrix iOS SDK in 0.16.0 (2020-04-17)
================================================
Improvements:
@@ -1477,7 +844,7 @@ API break:
* MXSession & MXRestClient: the `createRoom` method with a long list of parameters
has been replaced by `createRoomWithParameters`.
-Changes in Matrix iOS SDK in 0.15.2 (2019-12-05)
+## Changes in Matrix iOS SDK in 0.15.2 (2019-12-05)
===============================================
Improvements:
@@ -1490,7 +857,7 @@ Bug fix:
API break:
* MXCallAudioSessionConfigurator: Now unavailable for macOS.
-Changes in Matrix iOS SDK in 0.15.1 (2019-12-04)
+## Changes in Matrix iOS SDK in 0.15.1 (2019-12-04)
===============================================
Improvements:
@@ -1501,7 +868,7 @@ Improvements:
Bug fix:
* MXIdentityServerRestClient: Match registration endpoint to the IS r0.3.0 spec (vector-im/riot-ios#2824).
-Changes in Matrix iOS SDK in 0.15.0 (2019-11-06)
+## Changes in Matrix iOS SDK in 0.15.0 (2019-11-06)
===============================================
Improvements:
@@ -1519,7 +886,7 @@ Bug fix:
API break:
* MXBackgroundModeHandler: Update interface and now use a single method that return a MXBackgroundTask.
-Changes in Matrix iOS SDK in 0.14.0 (2019-10-11)
+## Changes in Matrix iOS SDK in 0.14.0 (2019-10-11)
===============================================
Improvements:
@@ -1549,7 +916,7 @@ API break:
Bug Fix:
* Send kMXSessionCryptoDidCorruptDataNotification from the main thread.
-Changes in Matrix iOS SDK in 0.13.1 (2019-08-08)
+## Changes in Matrix iOS SDK in 0.13.1 (2019-08-08)
===============================================
Improvements:
@@ -1563,7 +930,7 @@ Bug Fix:
* Crypto: Fix a race condition that prevented message from being sent (vector-im/riot-ios/issues/2541).
* MXRoom: storeLocalReceipt: Add a sanity check to avoid crash.
-Changes in Matrix iOS SDK in 0.13.0 (2019-07-16)
+## Changes in Matrix iOS SDK in 0.13.0 (2019-07-16)
===============================================
Improvements:
@@ -1592,7 +959,7 @@ API break:
* MXRestClient: Remove the joinRoom method with least parameters.
* MXSession, MXRestClient: Add viaServers parameters to all joinRoom methods.
-Changes in Matrix iOS SDK in 0.12.5 (2019-05-03)
+## Changes in Matrix iOS SDK in 0.12.5 (2019-05-03)
===============================================
Improvements:
@@ -1605,13 +972,13 @@ Bug Fix:
* MXRoomSummaryUpdater: Fix `MXRoomSummary.hiddenFromUser` property not being saved when associated room become tombstoned (vector-im/riot-ios/issues/2148).
* MXFileStore not loaded with 0 rooms, thanks to @asydorov (PR #647).
-Changes in Matrix iOS SDK in 0.12.4 (2019-03-21)
+## Changes in Matrix iOS SDK in 0.12.4 (2019-03-21)
===============================================
Bug Fix:
* MXRestClient: Fix file upload with filename containing whitespace (PR #645).
-Changes in Matrix iOS SDK in 0.12.3 (2019-03-08)
+## Changes in Matrix iOS SDK in 0.12.3 (2019-03-08)
===============================================
Improvements:
@@ -1627,7 +994,7 @@ Bug Fix:
* Crypto: Fix crash in MXKeyBackup (vector-im/riot-ios/issues/#2281).
* Escape room v3 event ids in permalinks (vector-im/riot-ios/issues/2277).
-Changes in Matrix iOS SDK in 0.12.2 (2019-02-15)
+## Changes in Matrix iOS SDK in 0.12.2 (2019-02-15)
===============================================
Improvements:
@@ -1652,7 +1019,7 @@ Bug Fix:
API break:
* MXKeyBackup: Rename isKeyBackupTrusted to trustForKeyBackupVersion.
-Changes in Matrix iOS SDK in 0.12.1 (2019-01-04)
+## Changes in Matrix iOS SDK in 0.12.1 (2019-01-04)
===============================================
Improvements:
@@ -1664,7 +1031,7 @@ Bug Fix:
* MXCryptoStore: Stop duplicating devices in the store (vector-im/riot-ios/issues/2132).
* MXPeekingRoom: the room preview is broken (vector-im/riot-ios/issues/2126).
-Changes in Matrix iOS SDK in 0.12.0 (2018-12-06)
+## Changes in Matrix iOS SDK in 0.12.0 (2018-12-06)
===============================================
Improvements:
@@ -1695,7 +1062,7 @@ API break:
* The Matrix Content repository contants are moved to MXEnumConstants.h
* [urlOfIdenticon:] is moved from MXRestClient to MXMediaManager.
-Changes in Matrix iOS SDK in 0.11.6 (2018-10-31)
+## Changes in Matrix iOS SDK in 0.11.6 (2018-10-31)
===============================================
Improvements:
@@ -1716,7 +1083,7 @@ Bug fix:
API break:
* MXCrypto: importRoomKeys methods now return number of imported keys.
-Changes in Matrix iOS SDK in 0.11.5 (2018-10-05)
+## Changes in Matrix iOS SDK in 0.11.5 (2018-10-05)
===============================================
Improvements:
@@ -1724,7 +1091,7 @@ Improvements:
* MXRoomState: Add pinnedEvents to list pinned events ids.
* MXServerNotices: Add this class to get notices from the user homeserver.
-Changes in Matrix iOS SDK in 0.11.4 (2018-09-26)
+## Changes in Matrix iOS SDK in 0.11.4 (2018-09-26)
===============================================
Improvements:
@@ -1740,13 +1107,13 @@ Bug fix:
* MXRestClient: Fix get public rooms list Swift refinement.
* MXTools: Allow '@' in room alias (vector-im/riot-ios/issues/1977).
-Changes in Matrix iOS SDK in 0.11.3 (2018-08-27)
+## Changes in Matrix iOS SDK in 0.11.3 (2018-08-27)
===============================================
Bug fix:
* MXJSONModel: Manage `m.server_notice` empty tag sent due to a bug server side (PR #556).
-Changes in Matrix iOS SDK in 0.11.2 (2018-08-24)
+## Changes in Matrix iOS SDK in 0.11.2 (2018-08-24)
===============================================
Improvements:
@@ -1761,7 +1128,7 @@ Bug fix:
* People tab is empty in the share extension (vector-im/riot-ios/issues/1988).
* MXError: MXError lost NSError.userInfo information.
-Changes in Matrix iOS SDK in 0.11.1 (2018-08-17)
+## Changes in Matrix iOS SDK in 0.11.1 (2018-08-17)
===============================================
Improvements:
@@ -1772,7 +1139,7 @@ Bug fix:
* Fix possible race conditions in direct rooms management.
* Avoid to create an empty filter on each [MXSession start:]
-Changes in Matrix iOS SDK in 0.11.0 (2018-08-10)
+## Changes in Matrix iOS SDK in 0.11.0 (2018-08-10)
===============================================
Improvements:
@@ -1805,7 +1172,7 @@ API break:
* MXStore: Make the stateOfRoom method asynchronous.
* MXRestClient: contextOfEvent: Add a filter parameter.
-Changes in Matrix iOS SDK in 0.10.12 (2018-05-31)
+## Changes in Matrix iOS SDK in 0.10.12 (2018-05-31)
===============================================
Improvements:
@@ -1826,7 +1193,7 @@ Bug fix:
API break:
* Analytics: Rename all kMXGoogleAnalyticsXxx constant values to kMXAnalyticsXxx.
-Changes in Matrix iOS SDK in 0.10.11 (2018-05-31)
+## Changes in Matrix iOS SDK in 0.10.11 (2018-05-31)
===============================================
Improvements:
@@ -1834,7 +1201,7 @@ Improvements:
* MXSession: Add account deactivation
* MKTools: Create MXWeakify & MXStrongifyAndReturnIfNil
-Changes in Matrix iOS SDK in 0.10.10 (2018-05-23)
+## Changes in Matrix iOS SDK in 0.10.10 (2018-05-23)
===============================================
Improvements:
@@ -1846,13 +1213,13 @@ Improvements:
Bug fixes:
* Groups: Avoid flair to make requests in loop in case the HS returns an empty response for `/publicised_groups` (vector-im/riot-ios#1869).
-Changes in Matrix iOS SDK in 0.10.9 (2018-04-23)
+## Changes in Matrix iOS SDK in 0.10.9 (2018-04-23)
===============================================
Bug fixes:
* Regression: Sending a photo from the photo library causes a crash.
-Changes in Matrix iOS SDK in 0.10.8 (2018-04-20)
+## Changes in Matrix iOS SDK in 0.10.8 (2018-04-20)
===============================================
Improvements:
@@ -1864,7 +1231,7 @@ Bug fixes:
* App fails to logout on unknown token (vector-im/riot-ios#1839).
* All rooms showing the same avatar (vector-im/riot-ios#1673).
-Changes in Matrix iOS SDK in 0.10.7 (2018-03-30)
+## Changes in Matrix iOS SDK in 0.10.7 (2018-03-30)
===============================================
Improvements:
@@ -1873,7 +1240,7 @@ Improvements:
Bug fixes:
* Room summary is not updated after redaction of the room display name (vector-im/riot-ios#1822).
-Changes in Matrix iOS SDK in 0.10.6 (2018-03-12)
+## Changes in Matrix iOS SDK in 0.10.6 (2018-03-12)
===============================================
Improvements:
@@ -1900,7 +1267,7 @@ API breaks:
* MXCrypto: Remove deviceWithDeviceId and devicesForUser methods because they return local values that may be out of sync. Use downloadKeys instead (vector-im/riot-ios#1782).
* MXRestClient: Add a txnId parameter to the sendEventToRoom method to better follow the matrix spec.
-Changes in Matrix iOS SDK in 0.10.5 (2018-02-09)
+## Changes in Matrix iOS SDK in 0.10.5 (2018-02-09)
===============================================
Improvements:
@@ -1921,7 +1288,7 @@ Bug fixes:
* Medias not loading with an optional client certificate (#446), thanks to @r2d2leboss.
* Crypto: Fix crash when sharing keys on broken network (PR #451).
-Changes in Matrix iOS SDK in 0.10.4 (2017-11-30)
+## Changes in Matrix iOS SDK in 0.10.4 (2017-11-30)
===============================================
Improvements:
@@ -1943,13 +1310,13 @@ API breaks:
* Remove CoreData implementation of MXStore (It was not used).
* MXCrypto: Make `decryptEvent` return decryption results (PR #426).
-Changes in Matrix iOS SDK in 0.10.3 (2017-11-13)
+## Changes in Matrix iOS SDK in 0.10.3 (2017-11-13)
===============================================
Bug fixes:
* A 1:1 invite is not displayed as a direct chat after clearing the cache.
-Changes in Matrix iOS SDK in 0.10.1 (2017-10-27)
+## Changes in Matrix iOS SDK in 0.10.1 (2017-10-27)
===============================================
Improvements:
@@ -1963,7 +1330,7 @@ Bug fixes:
API breaks:
* Crypto: Remove MXFileCryptoStore (We stopped to maintain it one year ago).
-Changes in Matrix iOS SDK in 0.10.0 (2017-10-23)
+## Changes in Matrix iOS SDK in 0.10.0 (2017-10-23)
===============================================
Improvements:
@@ -1985,7 +1352,7 @@ Bug fixes:
* MXRoom: sendEventOfType: Copy the event content to send to keep it consistent in multi-thread conditions (like in e2e) (vector-im/riot-ios#1581).
* Mark all messages as read does not work well (vector-im/riot-ios#1425).
-Changes in Matrix iOS SDK in 0.9.3 (2017-10-03)
+## Changes in Matrix iOS SDK in 0.9.3 (2017-10-03)
===============================================
Improvements:
@@ -2011,7 +1378,7 @@ Bug fixes:
* Background task release race condition (PR #374).
* MXHTTPClient: Fix a regression that prevented the app from reconnecting when the network comes back (PR #375).
-Changes in Matrix iOS SDK in 0.9.2 (2017-08-25)
+## Changes in Matrix iOS SDK in 0.9.2 (2017-08-25)
===============================================
Improvements:
@@ -2025,7 +1392,7 @@ Bug fixes:
API breaks:
* Add a "stateKey" optional param to [MXRoom sendStateEventOfType:] and to [MXRestClient sendStateEventToRoom:].
-Changes in Matrix iOS SDK in 0.9.1 (2017-08-08)
+## Changes in Matrix iOS SDK in 0.9.1 (2017-08-08)
===============================================
Improvements:
@@ -2040,7 +1407,7 @@ Bug fixes:
API breaks:
* Replace [MXRoomState stateEventWithType:] by [MXRoomState stateEventsWithType:].
-Changes in Matrix iOS SDK in 0.9.0 (2017-08-01)
+## Changes in Matrix iOS SDK in 0.9.0 (2017-08-01)
===============================================
Improvements:
@@ -2066,13 +1433,13 @@ Bug fixes:
* Avatars do not display with account on a self-signed server (https://github.com/vector-im/riot-ios/issues/816).
* MXRestClient: Escape userId in CS API requests.
-Changes in Matrix iOS SDK in 0.8.2 (2017-06-30)
+## Changes in Matrix iOS SDK in 0.8.2 (2017-06-30)
===============================================
Improvements:
* MXFileStore: Improve performance by ~5% (PR #318).
-Changes in Matrix iOS SDK in 0.8.1 (2017-06-23)
+## Changes in Matrix iOS SDK in 0.8.1 (2017-06-23)
===============================================
Improvements:
@@ -2081,7 +1448,7 @@ Improvements:
Bug fixes:
* VoIP: Fix outgoing call stays in "Call connecting..." whereas it is established (https://github.com/vector-im/riot-ios#1326).
-Changes in Matrix iOS SDK in 0.8.0 (2017-06-16)
+## Changes in Matrix iOS SDK in 0.8.0 (2017-06-16)
===============================================
Improvements:
@@ -2113,20 +1480,20 @@ Bug fixes:
API breaks:
* MXRestClient: Update publicRooms to support pagination and 3rd party networks
-Changes in Matrix iOS SDK in 0.7.11 (2017-03-23)
+## Changes in Matrix iOS SDK in 0.7.11 (2017-03-23)
===============================================
Improvements:
* MXSDKOptions: Let the application define its own media cache version (see `mediaCacheAppVersion`).
* MXMediaManager: Consider a cache version based on the version defined by the application and the one defined at the SDK level.
-Changes in Matrix iOS SDK in 0.7.10 (2017-03-21)
+## Changes in Matrix iOS SDK in 0.7.10 (2017-03-21)
===============================================
Bug fix:
* Registration with email failed when the email address is validated on the mobile phone.
-Changes in Matrix iOS SDK in 0.7.9 (2017-03-16)
+## Changes in Matrix iOS SDK in 0.7.9 (2017-03-16)
===============================================
Improvements:
@@ -2138,7 +1505,7 @@ Bug fixes:
* MXCrypto: Fix a crash due to a signedness issue in the count of one-time keys to upload.
* MXCall: In case of encrypted room, make sure that encryption is fully set up before answering (https://github.com/vector-im/riot-ios#1058)
-Changes in Matrix iOS SDK in 0.7.8 (2017-03-07)
+## Changes in Matrix iOS SDK in 0.7.8 (2017-03-07)
===============================================
Improvements:
@@ -2170,7 +1537,7 @@ API breaks:
* MXPublicRoom: numJoinedMembers is now a signed integer.
* Rename [MXHTTPClient jitterTimeForRetry] into [MXHTTPClient timeForRetry:]
-Changes in Matrix iOS SDK in 0.7.7 (2017-02-08)
+## Changes in Matrix iOS SDK in 0.7.7 (2017-02-08)
===============================================
Improvements:
@@ -2187,7 +1554,7 @@ Bug fixes:
* MXRealmCryptoStore: Prevent storeSession & storeInboundGroupSession from storing duplicates (#227).
* MXRealmCryptoStore: Force migration of the db to remove duplicate olm and megolm sessions (#227).
-Changes in Matrix iOS SDK in 0.7.6 (2017-01-24)
+## Changes in Matrix iOS SDK in 0.7.6 (2017-01-24)
===============================================
Improvements:
@@ -2205,7 +1572,7 @@ API breaks:
* MXDecryptingErrorUnkwnownInboundSessionIdReason has been renamed to MXDecryptingErrorUnknownInboundSessionIdReason.
* kMXRoomLocalEventIdPrefix has been renamed to kMXEventLocalEventIdPrefix.
-Changes in Matrix iOS SDK in 0.7.5 (2017-01-19)
+## Changes in Matrix iOS SDK in 0.7.5 (2017-01-19)
===============================================
Improvements:
@@ -2220,7 +1587,7 @@ Bug fixes:
* Failure to decrypt megolm event despite receiving the keys (https://github.com/vector-im/riot-ios#913).
* Riot looks to me like I'm sending the same message twice (https://github.com/vector-im/riot-ios#894).
-Changes in Matrix iOS SDK in 0.7.4 (2016-12-23)
+## Changes in Matrix iOS SDK in 0.7.4 (2016-12-23)
===============================================
Improvements:
@@ -2238,7 +1605,7 @@ Improvements:
API breaks:
* MXRoom:`sendMessageOfType` is deprecated. Replaced by sendMessageWithContent.
-Changes in Matrix iOS SDK in 0.7.3 (2016-11-23)
+## Changes in Matrix iOS SDK in 0.7.3 (2016-11-23)
===============================================
Improvements:
@@ -2247,7 +1614,7 @@ Improvements:
Bug fixes:
* MXRestClient: Fix Delete Device API.
-Changes in Matrix iOS SDK in 0.7.2 (2016-11-22)
+## Changes in Matrix iOS SDK in 0.7.2 (2016-11-22)
===============================================
Improvements:
@@ -2257,14 +1624,14 @@ Bug fixes:
* Cannot invite user with dash in their user id (vector-im/vector-ios#812).
* Crypto: Mitigate replay attack #162.
-Changes in Matrix iOS SDK in 0.7.1 (2016-11-18)
+## Changes in Matrix iOS SDK in 0.7.1 (2016-11-18)
===============================================
Bug fixes:
* fix Signal detected: 11 at [MXRoomState memberName:] level.
* [Register flow] Register with a mail address fails (https://github.com/vector-im/vector-ios#799).
-Changes in Matrix iOS SDK in 0.7.0 (2016-11-16)
+## Changes in Matrix iOS SDK in 0.7.0 (2016-11-16)
===============================================
Improvements:
@@ -2290,7 +1657,7 @@ API break:
* MXRestClient: Remove `registerWithUser` and `loginWithUser` methods which worked only with old CS auth API.
* MXSession: Remove `privateOneToOneRoomWithUserId:` and `privateOneToOneUsers` (the developer must use the `directRooms` property instead).
-Changes in Matrix iOS SDK in 0.6.17 (2016-09-27)
+## Changes in Matrix iOS SDK in 0.6.17 (2016-09-27)
================================================
Improvements:
@@ -2302,20 +1669,20 @@ Bug fixes:
* The room preview does not always display the right member info (https://github.com/vector-im/vector-ios#643).
* App got stuck and permenantly spinning (https://github.com/vector-im/vector-ios#655).
-Changes in Matrix iOS SDK in 0.6.16 (2016-09-15)
+## Changes in Matrix iOS SDK in 0.6.16 (2016-09-15)
================================================
Bug fixes:
* MXSession: In case of initialSync, mxsession.myUser.userId must be available before changing the state to MXSessionStateStoreDataReady (https://github.com/vector-im/vector-ios#623).
-Changes in Matrix iOS SDK in 0.6.15 (2016-09-14)
+## Changes in Matrix iOS SDK in 0.6.15 (2016-09-14)
================================================
Bug fixes:
* MXFileStore: The stored receipts may not be totally loaded on cold start.
* MXNotificationCenter: The conditions of override and underride rules are defined in an array.
-Changes in Matrix iOS SDK in 0.6.14 (2016-09-08)
+## Changes in Matrix iOS SDK in 0.6.14 (2016-09-08)
================================================
Improvements:
@@ -2333,7 +1700,7 @@ Bug fixes:
* MXCall: Add a timeout for outgoing calls (https://github.com/vector-im/vector-ios/issues/577).
* MXJingleCallStackCall: When screen is locked, rotating the screen landscape makes local video preview go upside down (https://github.com/vector-im/vector-ios/issues/519).
-Changes in Matrix iOS SDK in 0.6.13 (2016-08-25)
+## Changes in Matrix iOS SDK in 0.6.13 (2016-08-25)
================================================
Improvements:
@@ -2367,7 +1734,7 @@ API Breaks:
* MXFileStore: Replace 'diskUsage' property by an async non blocking method: [self diskUsageWithBlock:].
* MXStore: Replace [MXStore resetPaginationOfRoom:], [MXStore paginateRoom:numMessages:] and [MXStore remainingMessagesForPaginationInRoom:] methods by [MXStore messagesEnumeratorForRoom:]
-Changes in Matrix iOS SDK in 0.6.12 (2016-08-01)
+## Changes in Matrix iOS SDK in 0.6.12 (2016-08-01)
================================================
Improvements:
@@ -2380,7 +1747,7 @@ Improvements:
Bug fixes:
* MXJingleCallStackCall: Added sanity check on creation of RTCICEServer objects as crashes have been reported.
-Changes in Matrix iOS SDK in 0.6.11 (2016-07-26)
+## Changes in Matrix iOS SDK in 0.6.11 (2016-07-26)
================================================
Improvements:
@@ -2395,7 +1762,7 @@ Bug fixes:
Breaks:
* MXCallStackCall: two new properties (audioMuted and videoMuted) and one new delegate method (onICECandidateWithSdpMid).
-Changes in Matrix iOS SDK in 0.6.10 (2016-07-15)
+## Changes in Matrix iOS SDK in 0.6.10 (2016-07-15)
================================================
Improvements:
@@ -2410,7 +1777,7 @@ Bug fixes:
Breaks:
* MXRestClient: uploadContent signature has been changed.
-Changes in Matrix iOS SDK in 0.6.9 (2016-07-01)
+## Changes in Matrix iOS SDK in 0.6.9 (2016-07-01)
===============================================
Improvements:
@@ -2427,7 +1794,7 @@ Breaks:
* MXRoom: isPublic has been replaced by isJoinRulePublic
-Changes in Matrix iOS SDK in 0.6.8 (2016-06-01)
+## Changes in Matrix iOS SDK in 0.6.8 (2016-06-01)
===============================================
Improvements:
@@ -2441,7 +1808,7 @@ Bug fixes:
* Fixed implementation of userAccountData in MXMemoryStore and MXNoStore.
* MXSession: Detect when the access token is no more valid.
-Changes in Matrix iOS SDK in 0.6.7 (2016-05-04)
+## Changes in Matrix iOS SDK in 0.6.7 (2016-05-04)
===============================================
Improvements:
@@ -2450,7 +1817,7 @@ Improvements:
* Ability to report abuse
* Ability to ignore users
-Changes in Matrix iOS SDK in 0.6.6 (2016-04-26)
+## Changes in Matrix iOS SDK in 0.6.6 (2016-04-26)
===============================================
Improvements:
@@ -2466,7 +1833,7 @@ Bug fixes:
* Store - Detect and remove corrupted room data.
* The application icon badge number is wrong.
-Changes in Matrix iOS SDK in 0.6.5 (2016-04-08)
+## Changes in Matrix iOS SDK in 0.6.5 (2016-04-08)
===============================================
Improvements:
@@ -2481,7 +1848,7 @@ Bug fixes:
* Fixed crash in [MXFileStore saveReceipts]. There was a race condition.
* Cancel correctly pending operations.
-Changes in Matrix iOS SDK in 0.6.4 (2016-03-17)
+## Changes in Matrix iOS SDK in 0.6.4 (2016-03-17)
===============================================
Improvements:
@@ -2493,7 +1860,7 @@ Bug fixes:
* App crashes on redacted event handling.
* The account data changes are ignored (Favorites section is not refreshed correctly).
-Changes in Matrix iOS SDK in 0.6.3 (2016-03-07)
+## Changes in Matrix iOS SDK in 0.6.3 (2016-03-07)
===============================================
Improvements:
@@ -2513,7 +1880,7 @@ Bug fixes:
* SYIOS-208: [MXSession startWithMessagesLimit]: if defined, the limit argument is now passed to /sync request.
* SYIOS-207: Removed MXEventDirectionSync which became useless.
-Changes in Matrix iOS SDK in 0.6.2 (2016-02-09)
+## Changes in Matrix iOS SDK in 0.6.2 (2016-02-09)
===============================================
Improvements:
@@ -2524,7 +1891,7 @@ Bug fixes:
* App crashes on resume if a pause is pending.
* Account creation: reCaptcha is missing in registration fallback.
-Changes in Matrix iOS SDK in 0.6.1 (2016-01-29)
+## Changes in Matrix iOS SDK in 0.6.1 (2016-01-29)
===============================================
Improvements:
@@ -2535,7 +1902,7 @@ Bug fixes:
* SYIOS-203: iOS crashes on non numeric power levels.
* MXRestClient: set APNS pusher failed on invalid params.
-Changes in Matrix iOS SDK in 0.6.0 (2016-01-22)
+## Changes in Matrix iOS SDK in 0.6.0 (2016-01-22)
===============================================
Improvements:
@@ -2561,7 +1928,7 @@ Bug fixes:
* MXRoom: Improve offline experience - Disable retry option on pagination requests when data are available from store. The caller is then able to handle messages from store without delay.
* MXSession: Load push rules from server before loading store data in order to highlight the bing events.
-Changes in Matrix iOS SDK in 0.5.7 (2015-11-30)
+## Changes in Matrix iOS SDK in 0.5.7 (2015-11-30)
===============================================
Improvements:
@@ -2578,14 +1945,14 @@ Bug fixes:
* MXNotificationCenter: NSMutableArray was mutated while being enumerated.
* App crashes at launch after an event redaction.
-Changes in Matrix iOS SDK in 0.5.6 (2015-11-13)
+## Changes in Matrix iOS SDK in 0.5.6 (2015-11-13)
===============================================
Bug fixes:
* MXRoomState: All room members have the same power level when a new state event is received.
* MXRoom: The backward room state is corrupted (former display name and avatar are missing).
-Changes in Matrix iOS SDK in 0.5.5 (2015-11-12)
+## Changes in Matrix iOS SDK in 0.5.5 (2015-11-12)
===============================================
Improvements:
@@ -2593,7 +1960,7 @@ Improvements:
* MXRoomState: Added cache to [MXRoomState memberName:] to optimise it.
* MXUser/MXRoomMember: Ignore non mxc avatar url.
-Changes in Matrix iOS SDK in 0.5.4 (2015-11-06)
+## Changes in Matrix iOS SDK in 0.5.4 (2015-11-06)
===============================================
Improvements:
@@ -2614,7 +1981,7 @@ Bug fixes:
* SYIOS-169: Improve MXEvent conversion.
* SYIOS-170: Public Room: room history is wrong when user joins for the second time.
-Changes in Matrix iOS SDK in 0.5.3 (2015-09-14)
+## Changes in Matrix iOS SDK in 0.5.3 (2015-09-14)
===============================================
Improvements:
@@ -2624,20 +1991,20 @@ Improvements:
Bug fixes:
* MXRoom: App crashes on invite room during initial sync.
-Changes in Matrix iOS SDK in 0.5.2 (2015-08-13)
+## Changes in Matrix iOS SDK in 0.5.2 (2015-08-13)
===============================================
Improvements:
* Fixed code that made Cocoapods 0.38.2 unhappy.
-Changes in Matrix iOS SDK in 0.5.1 (2015-08-10)
+## Changes in Matrix iOS SDK in 0.5.1 (2015-08-10)
===============================================
Improvements:
* MXRestClient: Add API to create push rules.
* MXRestClient: Add API to update global notification settings.
-Changes in Matrix iOS SDK in 0.5.0 (2015-07-10)
+## Changes in Matrix iOS SDK in 0.5.0 (2015-07-10)
===============================================
Improvements:
@@ -2665,7 +2032,7 @@ Bug fixes:
room history is reached).
-Changes in Matrix iOS SDK in 0.4.0 (2015-04-23)
+## Changes in Matrix iOS SDK in 0.4.0 (2015-04-23)
===============================================
-----
@@ -2702,7 +2069,7 @@ Console source code has been moved into its own git repository:
https://github.com/matrix-org/matrix-ios-console.
-Changes in Matrix iOS SDK in 0.3.2 (2015-03-27)
+## Changes in Matrix iOS SDK in 0.3.2 (2015-03-27)
===============================================
-----
@@ -2726,7 +2093,7 @@ Improvements:
* Improved image rotation support over different Matrix clients.
Bug fixes:
- * SYIOS-107 - In-App notifications does not work since changes in push rules
+ * SYIOS-107 - In-App notifications does not work since ## Changes in push rules
spec.
* SYIOS-108 - I can't re-enter existing chats when tapping through contact
details.
@@ -2736,7 +2103,7 @@ Bug fixes:
failure.
-Changes in Matrix iOS SDK in 0.3.1 (2015-03-03)
+## Changes in Matrix iOS SDK in 0.3.1 (2015-03-03)
===============================================
-----
@@ -2768,7 +2135,7 @@ Bug fixes:
* SYIOS-98 - Crash when attempting to attach image on iPad
-Changes in Matrix iOS SDK in 0.3.0 (2015-02-23)
+## Changes in Matrix iOS SDK in 0.3.0 (2015-02-23)
===============================================
-----
@@ -2846,7 +2213,7 @@ Bug fixes:
user scrolls settings table.
-Changes in Matrix iOS SDK in 0.2.2 (2015-02-05)
+## Changes in Matrix iOS SDK in 0.2.2 (2015-02-05)
===============================================
-----
@@ -2917,7 +2284,7 @@ Bug fixes:
-Changes in Matrix iOS SDK in 0.2.1 (2015-01-14)
+## Changes in Matrix iOS SDK in 0.2.1 (2015-01-14)
===============================================
-----
@@ -2970,7 +2337,7 @@ Bug fixes:
-Changes in Matrix iOS SDK in 0.2.0 (2014-12-19)
+## Changes in Matrix iOS SDK in 0.2.0 (2014-12-19)
===============================================
-----
@@ -3025,7 +2392,7 @@ Bug fixes:
-Changes in Matrix iOS SDK in 0.1.0 (2014-12-09)
+## Changes in Matrix iOS SDK in 0.1.0 (2014-12-09)
===============================================
SDK:
diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md
new file mode 100644
index 0000000000..d2499346b4
--- /dev/null
+++ b/CONTRIBUTING.md
@@ -0,0 +1,163 @@
+# Contributing to Matrix iOS SDK, Kit and Element-iOS
+
+Everyone is welcome to contribute code to matrix-ios-sdk, matrix-ios-kit,
+element-ios, provided that they are willing to license their contributions
+under the same license as the project itself. We follow a simple
+'inbound=outbound' model for contributions: the act of submitting an
+'inbound' contribution means that the contributor agrees to license the code
+under the same terms as the project's overall 'outbound' license - in this case,
+Apache Software License v2 (see [LICENSE](LICENSE)).
+
+To simplify project management, Matrix iOS SDK and Matrix iOS Kit issues are
+managed in the Element-iOS
+[repository](https://github.com/vector-im/element-ios/issues).
+
+## How to contribute
+
+The preferred and easiest way to contribute changes to the project is to fork
+it on GitHub, and then [create a pull request](https://docs.github.com/en/github/collaborating-with-pull-requests/proposing-changes-to-your-work-with-pull-requests/about-pull-requests) to ask us to pull your changes
+into our repo.
+
+We use GitHub's pull request workflow to review the contribution, and either
+ask you to make any refinements needed or merge it and make them ourselves.
+
+Things that should go into your PR description:
+
+- References to any bugs fixed by the change (in GitHub's `Fixes` [notation](https://docs.github.com/en/issues/tracking-your-work-with-issues/linking-a-pull-request-to-an-issue#linking-a-pull-request-to-an-issue-using-a-keyword))
+- Notes for the reviewer that might help them to understand why the change
+is necessary or how they might better review it
+- Screenshots or videos if applicable
+
+Your PR must also:
+
+- be based on the develop branch
+- include a changelog file entry (see [below](#changelog))
+- include a [sign off](#sign-off)
+
+## Attribution
+
+Everyone who contributes anything to Matrix is welcome to be listed in the
+[AUTHORS.rst](AUTHORS.rst) file for the project in question. Please feel free
+to include a change to AUTHORS.rst in your pull request to list yourself and
+a short description of the area(s) you've worked on. Also, we sometimes have
+swag to give away to contributors - if you feel that Matrix-branded apparel is
+missing from your life, please mail us your shipping address to matrix at
+matrix.org and we'll try to fix it :).
+
+## Changelog
+
+All changes, even minor ones, need a corresponding changelog / newsfragment
+entry. These are managed by [Towncrier](https://github.com/twisted/towncrier).
+
+To create a changelog entry, make a new file in the `changelog.d` directory
+named in the format of `ElementIOSIssueNumber.type`. The type can be one of the
+following:
+
+- `feature` for a new feature
+- `change` for updates to an existing feature
+- `bugfix` for bug fix
+- `api` for an api break
+- `i18n` for translations
+- `build` for changes related to build, tools, CI/CD
+- `doc` for updates to the documentation
+- `misc` for other changes
+
+This file will become part of our [changelog](CHANGES.md) at the next
+release, so the content of the file should be a short description of your
+change in the same style as the rest of the changelog. The file must only
+contain one line. It can contain Markdown formatting. It should start with the
+area of the change (screen, module, ...) and end with a full stop (.) or an
+exclamation mark (!) for consistency.
+
+Adding credits to the changelog is encouraged, we value your
+contributions and would like to have you shouted out in the release notes!
+
+For example, a fix for an issue #1234 would have its changelog entry in
+`changelog.d/1234.bugfix`, and contain content like:
+
+> Voice Messages: Fix a crash when sending a voice message. Contributed by
+> Jane Matrix.
+
+If there are multiple pull requests involved in a single bugfix/feature/etc,
+then the content for each `changelog.d` file should be the same. Towncrier will
+merge the matching files together into a single changelog entry when we come to
+release.
+
+There are exceptions on the `ElementIOSIssueNumber.type` entry format. Even if
+it is not encouraged, you can use:
+
+- `pr-[PRNumber].type` for a PR with no related issue
+- `sdk-[iOSSDKIssueNumber].type` for a PR related a matrix-ios-sdk issue
+- `kit-[iOSKitIssueNumber].type` for a PR related a matrix-ios-kit issue
+
+To preview the changelog for pending changelog entries, use:
+
+```bash
+$ towncrier build --draft --version 1.2.3
+```
+
+## Sign off
+
+In order to have a concrete record that your contribution is intentional
+and you agree to license it under the same terms as the project's license, we've adopted the
+same lightweight approach that the Linux Kernel
+[submitting patches process](
+https://www.kernel.org/doc/html/latest/process/submitting-patches.html#sign-your-work-the-developer-s-certificate-of-origin>),
+[Docker](https://github.com/docker/docker/blob/master/CONTRIBUTING.md), and many
+other projects use: the DCO (Developer Certificate of Origin:
+). This is a simple declaration that you wrote
+the contribution or otherwise have the right to contribute it to Matrix:
+
+```text
+Developer Certificate of Origin
+Version 1.1
+
+Copyright (C) 2004, 2006 The Linux Foundation and its contributors.
+660 York Street, Suite 102,
+San Francisco, CA 94110 USA
+
+Everyone is permitted to copy and distribute verbatim copies of this
+license document, but changing it is not allowed.
+
+Developer's Certificate of Origin 1.1
+
+By making a contribution to this project, I certify that:
+
+(a) The contribution was created in whole or in part by me and I
+ have the right to submit it under the open source license
+ indicated in the file; or
+
+(b) The contribution is based upon previous work that, to the best
+ of my knowledge, is covered under an appropriate open source
+ license and I have the right under that license to submit that
+ work with modifications, whether created in whole or in part
+ by me, under the same open source license (unless I am
+ permitted to submit under a different license), as indicated
+ in the file; or
+
+(c) The contribution was provided directly to me by some other
+ person who certified (a), (b) or (c) and I have not modified
+ it.
+
+(d) I understand and agree that this project and the contribution
+ are public and that a record of the contribution (including all
+ personal information I submit with it, including my sign-off) is
+ maintained indefinitely and may be redistributed consistent with
+ this project or the open source license(s) involved.
+```
+
+If you agree to this for your contribution, then all that's needed is to
+include the line in your commit or pull request comment:
+
+```text
+Signed-off-by: Your Name
+```
+
+We accept contributions under a legally identifiable name, such as
+your name on government documentation or common-law names (names
+claimed by legitimate usage or repute). Unfortunately, we cannot
+accept anonymous contributions at this time.
+
+Git allows you to add this signoff automatically when using the `-s`
+flag to `git commit`, which uses the name and email set in your
+`user.name` and `user.email` git configs.
diff --git a/CONTRIBUTING.rst b/CONTRIBUTING.rst
deleted file mode 100644
index 9c9ed9a0c0..0000000000
--- a/CONTRIBUTING.rst
+++ /dev/null
@@ -1,4 +0,0 @@
-Contributing code to the Matrix iOS SDK
-=======================================
-
-matrix-ios-sdk follows the same pattern as https://github.com/matrix-org/synapse/blob/master/CONTRIBUTING.md
diff --git a/MatrixSDK.xcodeproj/project.pbxproj b/MatrixSDK.xcodeproj/project.pbxproj
index 76e8bd7666..4582d92c0e 100644
--- a/MatrixSDK.xcodeproj/project.pbxproj
+++ b/MatrixSDK.xcodeproj/project.pbxproj
@@ -519,9 +519,6 @@
32BD34BE1E84134A006EDC0D /* MatrixSDKTestsE2EData.m in Sources */ = {isa = PBXBuildFile; fileRef = 32BD34BD1E84134A006EDC0D /* MatrixSDKTestsE2EData.m */; };
32BED28F1B00A23F00E668FE /* MXCallStack.h in Headers */ = {isa = PBXBuildFile; fileRef = 32BED28E1B00A23F00E668FE /* MXCallStack.h */; settings = {ATTRIBUTES = (Public, ); }; };
32C03CB62123076F00D92712 /* DirectRoomTests.m in Sources */ = {isa = PBXBuildFile; fileRef = 32C03CB52123076F00D92712 /* DirectRoomTests.m */; };
- 32C03CBB21231C2600D92712 /* Podfile in Resources */ = {isa = PBXBuildFile; fileRef = 32C03CB721231C2500D92712 /* Podfile */; };
- 32C03CBD21231C2600D92712 /* CHANGES.rst in Resources */ = {isa = PBXBuildFile; fileRef = 32C03CB921231C2500D92712 /* CHANGES.rst */; };
- 32C03CBE21231C2600D92712 /* AUTHORS.rst in Resources */ = {isa = PBXBuildFile; fileRef = 32C03CBA21231C2500D92712 /* AUTHORS.rst */; };
32C235721F827F3800E38FC5 /* MXRoomOperation.h in Headers */ = {isa = PBXBuildFile; fileRef = 32C235701F827F3800E38FC5 /* MXRoomOperation.h */; };
32C235731F827F3800E38FC5 /* MXRoomOperation.m in Sources */ = {isa = PBXBuildFile; fileRef = 32C235711F827F3800E38FC5 /* MXRoomOperation.m */; };
32C474C122AF7A2D00CFBCD2 /* MXReactionOperation.h in Headers */ = {isa = PBXBuildFile; fileRef = 32C474BF22AF7A2D00CFBCD2 /* MXReactionOperation.h */; settings = {ATTRIBUTES = (Public, ); }; };
@@ -1970,7 +1967,6 @@
32BED28E1B00A23F00E668FE /* MXCallStack.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MXCallStack.h; sourceTree = ""; };
32C03CB52123076F00D92712 /* DirectRoomTests.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = DirectRoomTests.m; sourceTree = ""; };
32C03CB721231C2500D92712 /* Podfile */ = {isa = PBXFileReference; explicitFileType = text.script.ruby; fileEncoding = 4; path = Podfile; sourceTree = ""; xcLanguageSpecificationIdentifier = xcode.lang.ruby; };
- 32C03CB921231C2500D92712 /* CHANGES.rst */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = CHANGES.rst; sourceTree = ""; };
32C03CBA21231C2500D92712 /* AUTHORS.rst */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = AUTHORS.rst; sourceTree = ""; };
32C235701F827F3800E38FC5 /* MXRoomOperation.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = MXRoomOperation.h; sourceTree = ""; };
32C235711F827F3800E38FC5 /* MXRoomOperation.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = MXRoomOperation.m; sourceTree = ""; };
@@ -2007,6 +2003,7 @@
32D2CC0123422462002BD8CA /* MX3PidAddSession.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MX3PidAddSession.h; sourceTree = ""; };
32D2CC0223422462002BD8CA /* MX3PidAddManager.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = MX3PidAddManager.m; sourceTree = ""; };
32D2CC08234336D6002BD8CA /* MX3PidAddManager.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = MX3PidAddManager.swift; sourceTree = ""; };
+ 32D5573526BAF1540023D286 /* CHANGES.md */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = net.daringfireball.markdown; path = CHANGES.md; sourceTree = ""; };
32D5D16223E400A600E3E37C /* MXRoomSummaryTrustTests.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = MXRoomSummaryTrustTests.m; sourceTree = ""; };
32D7767B1A27860600FC4AA2 /* MXMemoryStore.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MXMemoryStore.h; sourceTree = ""; };
32D7767C1A27860600FC4AA2 /* MXMemoryStore.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = MXMemoryStore.m; sourceTree = ""; };
@@ -3315,7 +3312,7 @@
isa = PBXGroup;
children = (
32C03CBA21231C2500D92712 /* AUTHORS.rst */,
- 32C03CB921231C2500D92712 /* CHANGES.rst */,
+ 32D5573526BAF1540023D286 /* CHANGES.md */,
32C03CB721231C2500D92712 /* Podfile */,
B14B17682464419E00C2751E /* MatrixSDK.podspec */,
32C6F92F19DD814400EA4E9C /* MatrixSDK */,
@@ -4916,9 +4913,6 @@
isa = PBXResourcesBuildPhase;
buildActionMask = 2147483647;
files = (
- 32C03CBE21231C2600D92712 /* AUTHORS.rst in Resources */,
- 32C03CBD21231C2600D92712 /* CHANGES.rst in Resources */,
- 32C03CBB21231C2600D92712 /* Podfile in Resources */,
);
runOnlyForDeploymentPostprocessing = 0;
};
diff --git a/changelog.d/.gitignore b/changelog.d/.gitignore
new file mode 100644
index 0000000000..f935021a8f
--- /dev/null
+++ b/changelog.d/.gitignore
@@ -0,0 +1 @@
+!.gitignore
diff --git a/changelog.d/1060.bugfix b/changelog.d/1060.bugfix
deleted file mode 100644
index 5fb05d4355..0000000000
--- a/changelog.d/1060.bugfix
+++ /dev/null
@@ -1 +0,0 @@
-Check for null before updating a user's displayname or avatar URL based on an m.room.member event. Contributed by Charles Wright.
diff --git a/changelog.d/4393.build b/changelog.d/4393.build
new file mode 100644
index 0000000000..d24a7e1910
--- /dev/null
+++ b/changelog.d/4393.build
@@ -0,0 +1 @@
+CHANGES.md: Use towncrier to manage the change log. More info in [CONTRIBUTING](CONTRIBUTING.md#changelog).
\ No newline at end of file
diff --git a/changelog.d/4393.doc b/changelog.d/4393.doc
new file mode 100644
index 0000000000..aabf911e92
--- /dev/null
+++ b/changelog.d/4393.doc
@@ -0,0 +1 @@
+Convert CHANGES and CONTRIBUTING to MarkDown.
\ No newline at end of file
diff --git a/changelog.d/616.feature b/changelog.d/616.feature
deleted file mode 100644
index ca289f7acb..0000000000
--- a/changelog.d/616.feature
+++ /dev/null
@@ -1 +0,0 @@
-Add a sendAudioFile API to send file using msgType "m.audio".
diff --git a/changelog.d/_template.md.jinja b/changelog.d/_template.md.jinja
new file mode 100644
index 0000000000..2a7b9d6fed
--- /dev/null
+++ b/changelog.d/_template.md.jinja
@@ -0,0 +1,52 @@
+{# iOS Repositories #}
+{%- set gh_sdk = "https://github.com/matrix-org/matrix-ios-sdk" -%}
+{%- set gh_kit = "https://github.com/matrix-org/matrix-ios-kit" -%}
+{%- set gh_element = "https://github.com/vector-im/element-ios" -%}
+
+## {{ versiondata.name }} {{ versiondata.version }} ({{ versiondata.date }})
+{% for section, _ in sections.items() %}
+
+{% if sections[section] %}
+{% for category, val in definitions.items() if category in sections[section]%}
+{{ definitions[category]['name'] }}
+
+{% if definitions[category]['showcontent'] %}
+{% for text, values in sections[section][category].items() %}
+{# Build all types of links we can have from our different repositories #}
+{%- set links = [] -%}
+{%- for value in values %}
+ {%- if value.startswith("sdk-") %}
+ {%- set gh_issue = value.replace("sdk-", "") -%}
+ {{- links.append( "[#%s](%s/issues/%s)" | format(gh_issue, gh_sdk, gh_issue) ) | default("", True) -}}
+ {%- elif value.startswith("kit-") %}
+ {%- set gh_issue = value.replace("kit-", "") -%}
+ {{- links.append( "[#%s](%s/issues/%s)" | format(gh_issue, gh_kit, gh_issue) ) | default("", True) -}}
+ {%- elif value.startswith("#") %}
+ {%- set gh_issue = value.replace("#", "") -%}
+ {{- links.append( "[#%s](%s/issues/%s)" | format(gh_issue, gh_element, gh_issue) ) | default("", True) -}}
+ {%- elif value.startswith("pr-") %}
+ {%- set pr = value.replace("pr-", "#") -%}
+ {{- links.append(pr) | default("", True) -}}
+ {% else %}
+ {{- links.append(value) | default("", True) -}}
+ {% endif -%}
+{% endfor -%}
+- {{ text }} ({{ links | join(', ') }})
+{% endfor %}
+{% else %}
+- {{ sections[section][category]['']|join(', ') }}
+
+{% endif %}
+{% if sections[section][category]|length == 0 %}
+No significant changes.
+
+{% else %}
+{% endif %}
+
+{% endfor %}
+{% else %}
+No significant changes.
+
+
+{% endif %}
+{% endfor %}
\ No newline at end of file
diff --git a/changelog.d/sdk-1175.bugfix b/changelog.d/sdk-1175.bugfix
new file mode 100644
index 0000000000..17b7396699
--- /dev/null
+++ b/changelog.d/sdk-1175.bugfix
@@ -0,0 +1 @@
+Tests: Fix a crash in various tests from a missing `storeMaxUploadSize` method.
\ No newline at end of file
diff --git a/towncrier.toml b/towncrier.toml
new file mode 100644
index 0000000000..2587d18b2a
--- /dev/null
+++ b/towncrier.toml
@@ -0,0 +1,45 @@
+[tool.towncrier]
+name = "Changes in"
+filename = "CHANGES.md"
+directory = "changelog.d"
+template = "changelog.d/_template.md.jinja"
+
+[[tool.towncrier.type]]
+ directory = "feature"
+ name = "✨ Features"
+ showcontent = true
+
+[[tool.towncrier.type]]
+ directory = "change"
+ name = "🙌 Improvements"
+ showcontent = true
+
+[[tool.towncrier.type]]
+ directory = "bugfix"
+ name = "🐛 Bugfixes"
+ showcontent = true
+
+[[tool.towncrier.type]]
+ directory = "api"
+ name = "⚠️ API Changes"
+ showcontent = true
+
+[[tool.towncrier.type]]
+ directory = "i18n"
+ name = "🗣 Translations"
+ showcontent = true
+
+[[tool.towncrier.type]]
+ directory = "build"
+ name = "🧱 Build"
+ showcontent = true
+
+[[tool.towncrier.type]]
+ directory = "doc"
+ name = "📄 Documentation"
+ showcontent = true
+
+[[tool.towncrier.type]]
+ directory = "misc"
+ name = "Others"
+ showcontent = true