Please also refer to the Changelog of Element Android: https://github.com/vector-im/element-android/blob/main/CHANGES.md
Imported from Element 1.6.10. (https://github.com/vector-im/element-android/releases/tag/v1.6.10)
Imported from Element 1.5.30. (https://github.com/vector-im/element-android/releases/tag/v1.5.30)
Imported from Element 1.5.26. (https://github.com/vector-im/element-android/releases/tag/v1.5.26)
Imported from Element 1.5.25. (https://github.com/vector-im/element-android/releases/tag/v1.5.25)
Imported from Element 1.5.22. (https://github.com/vector-im/element-android/releases/tag/v1.5.22)
Imported from Element 1.5.20. (https://github.com/vector-im/element-android/releases/tag/v1.5.20)
Imported from Element 1.5.18. (https://github.com/vector-im/element-android/releases/tag/v1.5.18)
- [Sync] Sync Filter params are moved to MatrixConfiguration and will not be stored in session realm to avoid bug when session cache is cleared (#7843)
Imported from Element 1.5.11. (https://github.com/vector-im/element-android/releases/tag/v1.5.11)
- Added support for read receipts in threads. Now user in a room can have multiple read receipts (one per thread + one in main thread + one without threadId) (#6996)
- Sync Filter now taking in account homeserver capabilities to not pass unsupported parameters. Sync Filter is now configured by providing SyncFilterBuilder class instance, instead of Filter to identify Filter changes related to homeserver capabilities (#7626)
Imported from Element 1.5.8. (https://github.com/vector-im/element-android/releases/tag/v1.5.8)
- [Metrics] Add
SpannableMetricPlugin
to support spans within transactions. (#7514) - Fix a bug that caused messages with no formatted text to be quoted as "null". (#7530)
- If message content has no
formattedBody
, default tobody
when editing. (#7574)
Imported from Element 1.5.7. (https://github.com/vector-im/element-android/releases/tag/v1.5.7)
- Add MetricPlugin interface to implement metrics in SDK clients. (#7438)
Imported from Element 1.5.4. (https://github.com/vector-im/element-android/releases/tag/v1.5.4)
Target API 33.
- Stop using
original_event
field from/relations
endpoint (#7282) - Add
formattedText
or similar optional parameters in several methods:
- RelationService:
- editTextMessage
- editReply
- replyToMessage
- SendService:
- sendQuotedTextMessage
This allows us to send any HTML formatted text message without needing to rely on automatic Markdown > HTML translation. All these new parameters have a
null
value by default, so previous calls to these API methods remain compatible. (#7288)
- sendQuotedTextMessage
This allows us to send any HTML formatted text message without needing to rely on automatic Markdown > HTML translation. All these new parameters have a
- Add support for
m.login.token
auth during QR code based sign in (#7358) - Allow getting the formatted or plain text body of a message for the fun
TimelineEvent.getTextEditableContent()
. (#7359)
Imported from Element 1.5.2. (https://github.com/vector-im/element-android/releases/tag/v1.5.2)
- Allow the sync timeout to be configured (mainly useful for testing) (#7198)
- Ports SDK instrumentation tests to use suspending functions instead of countdown latches (#7207)
- [Device Manager] Extend user agent to include device information (#7209)
- Target API 12 and compile with Android SDK 32. (#6929)
Imported from Element 1.5.1. (https://github.com/vector-im/element-android/releases/tag/v1.5.1)
This update provides important security fixes, update now. Ref: CVE-2022-39246 CVE-2022-39248
Imported from Element 1.4.36. (https://github.com/vector-im/element-android/releases/tag/v1.4.36)
- Some methods have been renamed in
CryptoService
Imported from Element 1.4.34. (https://github.com/vector-im/element-android/releases/tag/v1.4.34)
- Rename
DebugService.logDbUsageInfo
(resp.Session.logDbUsageInfo
) toDebugService.getDbUsageInfo
(resp.Session.getDbUsageInfo
) and return a String instead of logging. The caller may want to log the String. (#6884)
Imported from Element 1.4.32. (https://github.com/vector-im/element-android/releases/tag/v1.4.32)
- Communities/Groups are removed completely (#5733)
- SDK - The SpaceFilter is query parameter is no longer nullable, use SpaceFilter.NoFilter instead (#6666)
Imported from Element 1.4.27-RC2. (https://github.com/vector-im/element-android/releases/tag/v1.4.27-RC2)
- Group all location sharing related API into LocationSharingService (#5864)
- Add support for MSC2457 - opting in or out of logging out all devices when changing password (#6191)
- Create
QueryStateEventValue
to do query onstateKey
for State Event. Also remove the default parameter values for those type. (#6319)
Imported from Element 1.4.25. (https://github.com/vector-im/element-android/releases/tag/v1.4.25)
- Some methods from
Session
have been moved to a newSyncService
, that you can retrieve from aSession
. SyncStatusService
method has been moved to the newSyncService
InitSyncStep
have been moved and renamed toInitialSyncStep
SyncStatusService.Status
has been renamed toSyncRequestState
- The existing
SyncService
has been renamed toSyncAndroidService
because of name clash with the new SDK Service (#6029) - Allows
AuthenticationService.getLoginFlow
to fail without resetting state from previously successful calls (#6093) - Allows new passwords to be passed at the point of confirmation when resetting a password (#6169)
- Notifies other devices when a verification request sent from an Android device is accepted.` (#5724)
- Some
val
have been changed tofun
to increase their visibility in the generated documentation. Just add()
if you were using them. KeysBackupService.state
has been replaced byKeysBackupService.getState()
KeysBackupService.isStucked
has been replaced byKeysBackupService.isStuck()
- SDK documentation improved (#5952)
- Improve replay attacks and reduce duplicate message index errors (#6077)
- Remove
RoomSummaryQueryParams.roomId
. If you need to observe a single room, use the new APIRoomService.getRoomSummaryLive(roomId: String)
ActiveSpaceFilter
has been renamed toSpaceFilter
RoomCategoryFilter.ALL
has been removed, just passnull
to not filter on Room category. (#6143)
Imported from Element 1.4.16. (https://github.com/vector-im/element-android/releases/tag/v1.4.16)
- New API to enable/disable key forwarding CryptoService#enableKeyGossiping()
- New API to limit room key request only to own devices MXCryptoConfig#limitRoomKeyRequestsToMyDevices
- Event Trail API has changed, now using AuditTrail events
- New API to manually accept an incoming key request CryptoService#manuallyAcceptRoomKeyRequest() (#5559)
- Small change in the Matrix class: deprecated methods have been removed and the constructor is now public. Also the fun
workerFactory()
has been renamed togetWorkerFactory()
(#5887) - Including SSL/TLS error handing when doing WellKnown lookups without a custom HomeServerConnectionConfig (#5965)
Imported from Element 1.4.14. (https://github.com/vector-im/element-android/releases/tag/v1.4.14)
- Fixes crash when accepting or receiving VOIP calls (#5421)
- Improve/fix crashes on messages decryption (#5592)
- Don't pause timer when call is held. (#5885)
- Added registrationCustom into RegistrationWizard to send custom auth params for sign up
- Moved terms converter into api package to make it accessible in sdk (#5575)
- Move package
org.matrix.android.sdk.api.pushrules
toorg.matrix.android.sdk.api.session.pushrules
(#5812) - Some
Session
apis are now available by requesting the service first. For instanceSession.updateAvatar(...)
is nowSession.profileService().updateAvatar(...)
- The shortcut
Room.search()
has been removed, you have to useSession.searchService().search()
(#5816) - Add return type to RoomApi.sendStateEvent() to retrieve the created event id (#5855)
Room
apis are now available by requesting the service first. For instanceRoom.updateAvatar(...)
is nowRoom.stateService().updateAvatar(...)
(#5858)- Remove unecessary field
eventId
fromEventAnnotationsSummary
andReferencesAggregatedSummary
(#5890) - Replace usage of
System.currentTimeMillis()
by aClock
interface (#5907)
Imported from Element 1.4.13. (https://github.com/vector-im/element-android/releases/tag/v1.4.13)
- Include original event in live decryption listeners and update sync status naming to InitialSyncProgressing for clarity. (#5639)
- KeysBackupService.getCurrentVersion takes a new type
KeysBackupLastVersionResult
in the callback. (#5703) - A lot of classes which were exposed to the clients and were located in the package
org.matrix.android.sdk.internal
have been moved to the packageorg.matrix.android.sdk.api
. All the classes which are in the packageorg.matrix.android.sdk.internal
should now be declaredinternal
. Some unused code and classes have been removed. (#5744) - Some data classes are now immutable, using
val
instead ofvar
(#5762)
Imported from Element 1.4.11. (https://github.com/vector-im/element-android/releases/tag/v1.4.11)
- Adds support for MSC3440, additional threads homeserver capabilities (#5271)
- Change name of getTimeLineEvent and getTimeLineEventLive methods to getTimelineEvent and getTimelineEventLive. (#5330)
join
andleave
methods moved from MembershipService to RoomService and SpaceService to split logic for rooms and spaces (#5183)- Deprecates Matrix.initialize and Matrix.getInstance in favour of the client providing its own singleton instance via Matrix.createInstance (#5185)
- Adds support for MSC3283, additional homeserver capabilities (#5207)
Warning: This release may trigger an initial sync.
Imported from Element 1.3.18. (https://github.com/vector-im/element-android/releases/tag/v1.3.18)
- Avoid deleting root event of CurrentState on gappy sync. In order to restore lost Events an initial sync may be triggered. (#5137)
StateService.sendStateEvent()
now takes a non-nullable String for the parameterstateKey
. If null was used, just now use an empty string. (#4895)- 429 are not automatically retried anymore in case of too long retry delay (#4995)
Imported from Element 1.3.14. (https://github.com/vector-im/element-android/releases/tag/v1.3.14)
Imported from Element 1.3.13. (https://github.com/vector-im/element-android/releases/tag/v1.3.13)
- Introduce method onStateUpdated on Timeline.Callback (#4405)
- Support tagged events in Room Account Data (MSC2437) (#4753)
Imported from Element 1.3.10. (https://github.com/vector-im/element-android/releases/tag/v1.3.10)
- New API TermsService.getHomeserverTerms() to get the terms of service from a homeserver
- API SendService.sendOptionsReply() is replaced by SendService.voteToPoll()
- New API SendService.endPoll()
Imported from Element 1.3.9. (https://github.com/vector-im/element-android/releases/tag/v1.3.9)
Imported from Element 1.3.8. (https://github.com/vector-im/element-android/releases/tag/v1.3.8)
- Add content scanner API from MSC1453 API documentation : https://github.com/matrix-org/matrix-content-scanner#api (#4392)
- Breaking SDK API change to PushRuleListener, the separated callbacks have been merged into one with a data class which includes all the previously separated push information (#4401)
Imported from Element 1.3.7. (https://github.com/vector-im/element-android/releases/tag/v1.3.7-RC2)
- Add API
LoginWizard.loginCustom(data: JsonDict): Session
to be able to login to a homeserver using arbitrary request content (#4266) - Add optional deviceId to the login API (#4334)
Imported from Element 1.3.4. (https://github.com/vector-im/element-android/releases/tag/v1.3.4)
Add Presence support:
- PresenceService has been added, with the ability to set the presence of the current user
- For DM, the presence of the other user is added to the RoomSummary
Imported from Element 1.3.2. (https://github.com/vector-im/element-android/releases/tag/v1.3.2) Note that Element 1.3.1 do not contain any changes in the SDK, that's why SDK 1.3.1 has not been released.
- Create extension
String.isMxcUrl()
(#4158)
Imported from Element 1.3.0. (https://github.com/vector-im/element-android/releases/tag/v1.3.0)
- InitialSyncProgressService has been renamed to SyncStatusService and its function getInitialSyncProgressStatus() has been renamed to getSyncStatusLive() (#4046)
Fix a security issue with message key sharing. See https://matrix.org/blog/2021/09/13/vulnerability-disclosure-key-sharing for details.
Imported from Element 1.2.1. (https://github.com/vector-im/element-android/releases/tag/v1.2.1) Still an issue with Jitpack: jitpack/jitpack.io#4721 We are working to make the library available in MavenCentral. In the mean time, you can get the library from GitHub here: https://github.com/matrix-org/matrix-android-sdk2/releases/tag/v1.2.1
Imported from Element 1.2.0. (https://github.com/vector-im/element-android/releases/tag/v1.2.0) Still an issue with Jitpack: jitpack/jitpack.io#4721 We are working to make the library available in MavenCentral. In the mean time, you can get the library from GitHub here: https://github.com/matrix-org/matrix-android-sdk2/releases/tag/v1.2.0
Fix error with Jitpack on 1.1.8 Imported from Element 1.1.9. (https://github.com/vector-im/element-android/releases/tag/v1.1.9)
Imported from Element 1.1.8. (https://github.com/vector-im/element-android/releases/tag/v1.1.8)
Imported from Element 1.1.5. (https://github.com/vector-im/element-android/releases/tag/v1.1.5)
Imported from Element 1.1.4. (https://github.com/vector-im/element-android/releases/tag/v1.1.4)
Imported from Element 1.1.1. (https://github.com/vector-im/element-android/releases/tag/v1.1.1)
Imported from Element 1.0.16. (https://github.com/vector-im/element-android/releases/tag/v1.0.16)
Imported from Element 1.0.13. (https://github.com/vector-im/element-android/releases/tag/v1.0.13)
Imported from Element 1.0.12. (https://github.com/vector-im/element-android/releases/tag/v1.0.12)
SDK API changes
- StateService now exposes suspendable function instead of using MatrixCallback.
- RawCacheStrategy has been moved and renamed to CacheStrategy
- FileService: remove useless FileService.DownloadMode
Other important changes:
- Upgrade Realm dependency to 10.1.2
- Log HTTP requests and responses in production (level BASIC, i.e. without any private data)
Imported from Element 1.0.11. (https://github.com/vector-im/element-android/releases/tag/v1.0.11)
SDK API changes
- AccountService and some other services now expose suspendable function instead of using MatrixCallback (vector-im/element-android##2354). Note: We will incrementally migrate all the SDK API in a near future (element-hq/element-android#2449)
Other important changes:
- Upgrade Realm dependency to 10.0.0
Imported from Element 1.0.10. (https://github.com/vector-im/element-android/releases/tag/v1.0.10)
Imported from Element 1.0.9. (https://github.com/vector-im/element-android/releases/tag/v1.0.9)
- Setup CI
This release has not been done.
Imported from Element 1.0.7. (https://github.com/vector-im/element-android/releases/tag/v1.0.7)
Imported from Element 1.0.6.
SDK API changes
- PermalinkFactory is now internal, you should use session.permalinkService() to create permalinks
This is the first release of the Matrix SDK.
This first release has been created from the develop branch of Element Android (at this commit). Next releases will be done from main branch of Element Android and the version name will be the same between the SDK and Element Android