What is the minimum supported Gradle and Kotlin version required for using Transport Mobile SDK version 2.6.1 in an Android project?
Where can we find the requirements for each of the SDK versions being released?
Reference:
If the host Android app is using Kotlin version 1.5.1, following error is thrown:
transforms-3/2537482241c982cdb7e414f3cc065e6b/transformed/jetified-kotlin-stdlib-jdk7-1.7.21.jar!/META-INF/kotlin-stdlib-jdk7.kotlin_module: Module was compiled with an incompatible version of Kotlin. The binary version of its metadata is 1.7.1, expected version is 1.5.1
But that was before GA launch and this version has basic functionality.
Since GA release we required a minimum of kotlin 1.6.21 and gradle:7.2.1. Thats for TransportSDK versions 1.2.2 - 2.2.0
Since 2.3.0 we moved to use kotlin: 1.7.21 and gradle 7.3.1 as this version contained a new kotlin K2 compiler and did much better in terms of stability and performance.
As I mentioned before, it is highly recommended to use latest version of Transport SDK as it has most recent features and bug fixes.
Can you share your concerns regarding upgrading to kotlin 1.7.+ ?
On average we release a new version that contains feature every 1.5 month, but it depends on the feature. Between feature releases, we also do release hotfix versions with minor bug fixes and improvements.
We do provide support for any of our GA versions. Starting from 2.0.0 and forward.
Thanks, as you mentioned the support is only available from 2.0.0 and forward, what is the policy for minimum supported versions from a future support perspective. e.g. last 3 major versions, etc.
If you encounter any issue with TransportSDK 2.0.0 and higher, and upgrading to latest version did not fix it - we will make sure to resolve this issue in upcoming releases.
I hope I got your question right.
Thanks again for your prompt response. Sorry, I am looking for Genesys support model / policy which should be independent of currently supported versions.
Could you please refer to this example from LivePerson which clearly explains the type of support available for older versions?
The support policy has been reviewed and will be available soon.
For the time being I'll provide an overview of the Mobile SDK support policy.
We've aligned the mobile support policy to main Genesys platform policy. Meaning the Plaform API SDKs only officially support the single latest version; all earlier versions are unsupported and updates (feature, fixes) are only made to the current latest version.
When a new major version N is released, version N-1 is considered deprecated immediately, after which point the SDK major version is sunsetted and no longer supported.
Thanks for your response, but could you also help share details on the following:
Which versions of the SDK (e.g. N-5) will continue to get support in terms of messaging service? (i.e. even if the SDK version is old, it should be able to use messaging service and get support which does not require a fix in SDK itself).
How to identify SDK versions which have been marked as obsolete due to reasons like incompatibility with server side changes? e.g. can we still use version 1.2.2 to create a connection and use the basic functionality made available by that version?
The Transport SDK and the Mobile Messenger SDK are dedicated mobile messaging solutions. We are not planning to deprecate these any time soon.
Mobile Messenger SDK and Transport SDK are versioned following the semantic versioning standard: MAJOR.MINOR.PATCH
A 'Major' version change happens when we make incompatible API changes other breaking changes, or introduce feature improvement that indicates a Major version upgrade. These breaking changes are noted in the changelog or in the release notes. Breaking changes are announced in advance on the Developer Forum in the Announcement sections.
With a major version upgrade, the previous major versions will become obsolete.