Changelog for PubNub Kotlin SDK

Unified changelog for Java and Kotlin SDKs

As of v9.0.0, Java and Kotlin SDKs have unified codebases and common releases.

v10.2.0

November 18, 2024
Added
  • Publish, signal, share file, subscribe, and history.

v10.1.0

November 6, 2024
Added
  • Add extension selection and support for single file in migration_tool.
  • Move shared java/kotlin APIs to a shared module.
  • Added timetoken utils methods.
  • Added getToken to Kotlin SDK.
  • Added authToken (PAM v3) to Kotlin SDK PNConfiguration.
Fixed
  • Fix for NullPointerException in pubnub-gson when grant() is called without authKeys.

v10.0.0

September 24, 2024
Added
  • PatchValue is now used in objects returning optional data from the server, such as PNChannelMetadata, PNUUIDMetadata for example.
  • Removed mutable PNConfiguration classes which were deprecated in previous releases.
  • PNConfiguration.retryConfiguration is now enabled by default only for Subscribe requests and set to Exponential.
Fixed
  • A migration script is provided with this release to help with package name changes.
Modified
  • Please consult the migration guide for JVM SDKs version 10.0.0 for required changes to your code.

v9.2.4

August 19, 2024
Fixed
  • Fixes a crash on Android after PubNub.destroy is called and there are requests running.

v9.2.3

July 29, 2024
Fixed
  • Fixed incorrect multiple callbacks (with exception) when sending files.

v9.2.2

July 4, 2024
Fixed
  • SetState via Heartbeat fix.

v9.2.1

July 2, 2024
Added
  • Add missing auth_method to APNS2 configuration.

v9.2.0

June 11, 2024
Added
  • Add new FCMPayloadV2 for required new FCM push message format.
Fixed
  • Disallow DTD in XML parser and enable SecureRandom.

v9.1.1

April 15, 2024
Fixed
  • The parameter names were not saved in compiled class files and were shown as o, s1 etc. in the IDE. This change fixes the SDK to correctly show parameter names.

v9.1.0

April 9, 2024
Added
  • Added methods for publishing messages and signals on the Channel class. Also added new builder factories on PubNub with required parameters provided upfront, e.g. PubNub.publish(message,channel). .
  • Allow overriding certain PubNub configuration options per API call through Endpoint.overrideConfiguration.
Modified
  • Remaining classes from com.pubnub.internal package were hidden from compilation classpath. Users should only use classes in com.pubnub.api package.

v9.0.0

March 28, 2024
Modified
  • From now on, Java and Kotlin SDKs will be versioned and released together, and clients using both SDKs will get new features and bug fixes simultaneously.
  • RemoteAction.async() now provides a single Result parameter to the callback. Please see the documentation for details.
  • PubNub initialization must be done through PubNub.create(). Constructor initialization is disallowed.
  • There is a new immutable PNConfiguration class with builder. The old PNConfiguration class is marked deprecated, but functional for now.
  • Internal classes and interfaces have been moved to the com.pubnub.internal classes or removed from the compile classpath. You should not use them in your app. All user-facing classes are in the com.pubnub.api package.

v8.0.0

February 22, 2024
Added
  • A new version of subscriptions and presence handling is enabled by default (enableEventEngine flag is set to true). Please consult the documentation for new PNStatus values that are emitted for subscriptions, as code changes might be required to support this change.
  • Added support for scoped event listeners using new entity objects: Channels, ChannelGroups, ChannelMetadata and UserMetadata.

v7.8.1

February 6, 2024
Fixed
  • Fixed transitions so that SubscribeEvenEngine can handle multiple subscribe calls executed one by one.
  • Add missing Leave events with EE enabled and heartbeat = 0.

v7.8.0

January 17, 2024
Added
  • Added enableEventEngine, retryConfiguration and maintainPresenceState configuration flags.

v7.7.4

November 28, 2023
Added
  • Add error field to PNFileEventResult and set it in case of decryption failure.

v7.7.3

November 23, 2023
Fixed
  • Handle unencrypted message in subscribe and history when crypto configured (error flag is set on message result).

v7.7.2

November 8, 2023
Fixed
  • Fixed reading unencrypted history message when crypto is configured.

v7.7.1

October 30, 2023
Fixed
  • Updated the JSON lib to version 20231013.
  • Changed license type from MIT to PubNub Software Development Kit License.

v7.7.0

October 16, 2023
Added
  • Add crypto module that allows configure SDK to encrypt and decrypt messages.
Fixed
  • Improved security of crypto implementation by adding enhanced AES-CBC cryptor.

v7.6.0

August 14, 2023
Added
  • Kotlin SDK doesn't depend on Jackson library anymore. This reduces the size of required dependencies which should result in size reduction of applications that use Kotlin SDK.

v7.5.0

April 19, 2023
Added
  • It's now possible to return messageType in PNFetchMessageItem from fetchMessages method. Possible values are either Message or File .

v7.4.3

April 11, 2023
Fixed
  • Do not cancel subscribe call on set state.

v7.4.2

March 7, 2023
Fixed
  • Remove deprecation for Grant Token methods.
  • Update Jackson and Json libraries to avoid vulnerabilities.

v7.4.1

February 2, 2023
Fixed
  • Uploading an encrypted file correctly sets the content size in the multipart body.

v7.4.0

September 20, 2022
Added
  • PNFileEventResult has messageJson field with the same JsonElement type as in other events.

v7.3.2

July 21, 2022
Fixed
  • Gson, logback.
  • Removed CREATE for space as a valid permission that can be assigned to token.

v7.3.1

June 28, 2022
Fixed
  • Renamed name to id in SpacePermissions.

v7.3.0

June 28, 2022
Added
  • Introduced new GrantToken method with no channel groups.

v7.2.0

June 14, 2022
Added
  • PNChannelMetadata and PNUUIDMetadata has status and type now.
  • PNChannelMembership and PNMember has status now.
Fixed
  • It's possible to sort memberships and members by nested fields.

v7.1.0

May 23, 2022
Added
  • Upgrade okhttp library .

v7.0.1

April 19, 2022
Fixed
  • Update Jackson library with fixes for CVE-2020-36518.

v7.0.0

January 12, 2022
Modified
  • BREAKING CHANGES: uuid is required parameter in PNConfiguration constructor.

v6.3.0

December 16, 2021
Added
  • Add revoke token feature.

v6.2.0

October 6, 2021
Added
  • Acceptance tests plugged into CI pipeline.
  • Internal telemetry enhancement.
Fixed
  • Meta field exposed correctly in PNToken class.

v6.1.0

September 8, 2021
Added
  • Method grantToken has beed added. It allows generation of signed token with permissions for channels and channel groups.

v6.0.3

July 26, 2021
Fixed
  • Using random initialization vector according to 'useRandomInitializationVector' flag setting.

v6.0.2

July 6, 2021
Fixed
  • Handle socket exception causing crash while canceling the call.

v6.0.1

May 25, 2021
Fixed
  • There was missing PNAcknowledgmentCategory status callback after unsubscribe operation. Problem was caused by ungaught SSLException. This release provides a fix for the issue.

v6.0.0

May 12, 2021
Added
  • Random initialisation vector used when encryption enabled is now default behaviour.
  • Bumping versions of used dependencies.
Fixed
  • There were some non daemon threads running in background preventing VM from exiting. Now they are daemon threads.

v5.1.3

March 24, 2021
Fixed
  • Properly canceling HTTP requests when OkHttp client 3.14.9 used.

v5.1.2

March 9, 2021
Fixed
  • In some specific timing conditions subscriptions loop could loose reference to one of the retrofit call and we would loose posibility to control it. In the meantime we'd start yet another subscriptions call. One of them is obviously not necessary Synchronization has been improved so it's no longer possible.
  • It was not possible to properly cancel the OkHttp connection when Google Security Provider (ProviderInstaller) is being used.

v5.1.1

January 20, 2021
Fixed
  • File upload encryption fix.
  • Asynchronous file upload encryption fix.
  • Telemetry fix - removal of putIfAbsent.

v5.1.0

December 16, 2020
Added
  • Files support includes sending, downloading, listing, deleting together with notifications about file events.
  • New methods can set and remove memberships/channelMembers in one call.
  • New field page can be returned from the backend in case there's more data to fetch for the original query. This new field can be used directly in new fetchMessages and getMessagesActions method versions. The old versions in which paging information was in separate arguments has been deprecated.
  • FetchMessages has a default limit of 100 for single-channel call.
Fixed
  • Make PNMessageActionResultevent accessible (no longer internal).
  • Method addMemberships has been deprecated and shouldn't be used in the future.

v5.0.2

October 20, 2020
Fixed
  • Remove Instant to improve Android version compatibility.

5.1.0

September 28, 2020
Added
  • Add simplified Objects API support with UUID and Channel metadata / membership management.
Fixed
  • Fix crashing Telemetry Manager.

v5.0.0

August 12, 2020
Modified
  • PubNub methods will no longer support builder style calls and will use named arguments instead.

v4.0.1

July 28, 2020
Added
  • kdoc (javadoc)

v4.0.0

June 11, 2020
Added
  • Initial release
Last updated on
On this page