Transport Mobile SDK - Android minimum Gradle and Kotlin Version

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

1 Like

At this moment we do not have any kotlin/gradle compatibility table in our documentation.

I will make sure to add that info.

For now, you can refer to this minimum requirements:

  • Gradle version 7.4.+, Gradle plugin 7.3.+
  • kotlin-gradle-plugin:1.7.+
1 Like

Thanks, and do we have any support for older Kotlin versions via older Transport Mobile SDK versions?

In other words, are older versions of the Transport Mobile SDK still usable? If yes, how to check the minimum requirements for those listed at https://github.com/MyPureCloud/genesys-messenger-transport-mobile-sdk/releases ?

We used to have support for kotlin 1.5.30 and gradle 7.1 back in TransportSDK v1.2.0 https://github.com/MyPureCloud/genesys-messenger-transport-mobile-sdk/blob/v1.2.0/build.gradle.kts

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.+ ?

1 Like

We are checking for backward compatibility.

Do we have any guidelines on the following:

  1. How often a new version of the Transport SDK is released?
  2. Up till how many previous major and minor versions of the Transport SDK are actively supported by Genesys at a time?
  • 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.

Hi @kushalashok ,

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.

Hi @Anton_Afanasiev

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?

https://knowledge.liveperson.com/faqs-update-to-latest-mobile-sdk/?mkt_tok=NTAxLUJMRS05NzkAAAGOM1g14MQBvMN_tZpSK0I2dVD4hotjoF9mloCptGfOR-Y0sr-rUMwUPKjhZ5VCQsYi7w6hA7bY5-4WYbeHD5d6vOheaP4KiMkzIaIdNn5Kvk1LmXQ

Oh, I see now.

@David1 , can you help with that?

@David1 : Do we have any update on this?

The mobile SDK support policy is waiting for review. Once I have updates, I will share.

Thanks for the patience!

Adding this reply as the topic may close a month after the last reply.

@kushalashok

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.

Here is an example

  • Current Version is 4.2.0
  • Defect found in Version 3.1.0
  • Patch provided in Version 4.2.1

Hope this clarifies things!

Hi @David1 ,

Thanks for your response, but could you also help share details on the following:

  1. 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).

  2. 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?

Hi Kushal,

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.

This topic was automatically closed 30 days after the last reply. New replies are no longer allowed.