Skip to content

Latest commit

 

History

History
1048 lines (468 loc) · 23.4 KB

CHANGELOG.md

File metadata and controls

1048 lines (468 loc) · 23.4 KB

v6.4.5

December 18 2023

Fixed

  • Added reading message type from fetch messages response.
  • Added random value 0.001-0.999s to delay between retries both for Linear and Exponential reconnection policies.

v6.4.4

November 30 2023

Fixed

  • Bring back compatibility with Android 6+ by removing the Jackson library dependency.

v6.4.3

November 28 2023

Added

  • Add error field to PNFileEventResult and set it in case of decryption failure.

v6.4.2

November 23 2023

Fixed

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

v6.4.1

October 30 2023

Fixed

  • Updated the JSON lib to version 20231013.
  • Changed license type from MIT to PubNub Software Development Kit License.

v6.4.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.

v6.3.6

June 19 2023

Added

  • Added possibility to set state using heartbeat endpoint. .

v6.3.5

May 18 2023

Fixed

  • In case of error retry heartbeat call limited number of times.

v6.3.4

March 06 2023

Fixed

  • Upgraded json lib.

v6.3.3

March 06 2023

Fixed

  • Upgraded jackson-databind lib to remove security vulnerabilities.

v6.3.2

February 23 2023

Fixed

  • Remove deprecation for Grant Token methods.

v6.3.1

December 15 2022

Fixed

  • In case of an error response it checks if there's a body before reading from it.

v6.3.0

November 07 2022

Added

  • Added acceptance tests for ObjectsV2 feature.
  • Added possibility to add status when setting ChannelMembers.
  • Added status and type to query parameters for objectV2 REST calls. For membership and member only status.

Modified

  • Upgrade OkHttp lib to 4.9.3.

v6.2.0

September 20 2022

Added

  • PNFileEventResult has messageJson field with the same JsonElement type as in other events.

v6.1.0

July 21 2022

Added

  • Add support for spaces and users permissions in grantToken.
  • Add userId to PNConfiguration and deprecate uuid .

v6.0.2

May 19 2022

Fixed

  • Upgraded gson to 2.9.0 to make SDK working under Java 17.

v6.0.1

May 09 2022

Fixed

  • Do heartbeat and leave calls sequentially to prevent race condition between these two calls and 'phantom' join after leave.

v6.0.0

January 12 2022

Modified

  • BREAKING CHANGES: uuid is required parameter in PNConfiguration constructor.

v5.3.0

December 16 2021

Added

  • Add revoke token feature.

v5.2.4

December 09 2021

Fixed

  • Emit PNReconnectedCategory in case of successful manual reconnection.

v5.2.3

November 17 2021

Fixed

  • Eviction of OkHttp connection pool after reestablishing connection (affects transactional calls).

v5.2.2

November 04 2021

Fixed

  • Reconnect always restarts the subscription connection.

October-06-2021

Full Changelog

  • 🌟️ Acceptance tests plugged into CI pipeline.
  • 🐛 Meta field exposed correctly in PNToken class.

September-08-2021

  • 🌟️ Extend grantToken method to enable control of Objects API permission. Enhance granularity of permission control to enable permissions per UUID.

July-13-2021

  • 🐛 Update Jackson libraries to avoid known vulnerabilities.

May-20-2021

  • 🌟️ Method grantToken has beed added. It allows generation of signed token with permissions for channels and channel groups.
  • 🐛 UUID is now exposed as PNMembership field which make is accessible from PNMembershipResult argument of SubscribeCallback.membership() method.

May-12-2021

  • 🌟️ Now random initialisation vector used when encryption enabled is now default behaviour.
  • 🐛 There were some non daemon threads running in background preventing VM from exiting. Now they are daemon threads.

April-08-2021

  • 🌟️ New way of controlling Presence by Heartbeat calls for purpose of usage with dedicated server configuration (ACL). This feature can be used only with additional support from PubNub.

October-21-2020

Full Changelog

  • 🐛 Improved handling of random initialization vector for encrypting messages.
  • 🐛 Restore Android compatibility for Gradle 3.X by removing Stringjoin().
  • 🐛 Return appropriate error information when payload is too large.

October-08-2020

Full Changelog

  • 🐛 To improve security of messages, added support for random initialization vector to encrypt and decrypt messages.

September-24-2020

Full Changelog

  • 🐛 PubNubException now overrides Throwable's getMessage so the status.errorData.throwablemessage can be properly set.

September-14-2020

Full Changelog

  • 🌟️ Objects (v2) API exposed to enable metadata management.
  • 🌟️ Enable Objects (v2) related permissions management via Grant method.

August-24-2020

Full Changelog

  • 🐛 Fix for subscription loop to prevent unexpected disconnections caused by unhandled HTTP statuses.

August-14-2020

  • 🌟️ Allows to upload files to channels, download them with optional encryption support.

June-17-2020

Full Changelog

  • 🐛 Fix typo in suppressLeaveEvents in PNConfiguration.

June-12-2020

Full Changelog

  • 🌟 Add "click_action" parameter to PushPayloadHelper in order to pass it to FCM.

April-16-2020

Full Changelog

  • 🐛 Fix OkHttp reconnection policy.

February-25-2020

Full Changelog

  • 🌟️ Implemented Objects Filtering API
  • ⭐ Handled more network events to keep the client subscribed.
  • ⭐ Improved interaction with classes from org.json*.
  • ⭐ Made PNCallback eligible for SAM/lambda conversion.
  • ⭐ Deprecated PNPushType.GCM in favor of PNPushType.FCM.

January-23-2020

Full Changelog

  • 🌟️ Add support for APNS2 Push API.
  • 🌟️ Add a utility class to ease creating push payloads.

December-02-2019

Full Changelog

  • ⭐ Disable Okhttp retry on failure

October-23-2019

Full Changelog

  • ⭐Made the SDK more Kotlin-friendly
  • ⭐Categorized canceled requests as such
  • ⭐Removed the ‘audit’ method

October-09-2019

Full Changelog

  • ⭐Implemented the Message Actions API
  • ⭐Added includeMeta() to history()
  • ⭐Added includeMeta() to fetchMessages()
  • ⭐Added includeMessageActions() to fetchMessages()

October-02-2019

Full Changelog

  • ⭐Added PAMv3 support
  • ⭐Added Token manager (TMS)
  • ⭐Upgraded grant() and audit() to /v2/ endpoints
  • ⭐Implemented the delete permission for grant() requests
  • ⭐Implemented the v2 signature to be used for signing most requests

August-27-2019

Full Changelog

  • ⭐Added Objects API support

August-14-2019

Full Changelog

  • ⭐Introduced serialization class for Signals API

August-10-2019

Full Changelog

  • ⭐Implemented Signals API
  • ⭐Exposed OkHttp logging interceptor library

June-10-2019

Full Changelog

  • ⭐Enabled app level grants
  • ⭐Implemented custom encoding of the auth key for APIs where it wasn’t encoded automatically
  • ⭐Attached state data to Subscribe API and removed it from heartbeats

May-22-2019

Full Changelog

  • ⭐Enforced a minimum presence timeout value
  • ⭐Disabled presence heartbeats by default
  • ⭐Exposed Gson dependency

May-08-2019

Full Changelog

  • ⭐Fixed reconnection logic by allowing it solely for network issues

April-26-2019

Full Changelog

  • ⭐Implemented Message Counts API
  • ⭐Performed a major update of 3rd party libraries (e.g. Retrofit, OkHttp, Gson)
  • ⭐Refactored and updated unit tests
  • ⭐Replaced compile with implementation for 3rd party libraries.

October-30-2018

Full Changelog

  • ⭐Implemented a feature where you can add optional query params to every request
  • ⭐Updated developer setup documentation
  • ⭐Improved code checkstyle rules

September-04-2018

Full Changelog

  • ⭐Fix a bug where the global-here-now response was incorrectly interpreted

April-04-2018

Full Changelog

  • ⭐Fix an issue where end of channel history was interpreted as an error

January-11-2018

Full Changelog

  • ⭐lock down okHTTP version to support latest android version

December-19-2017

Full Changelog

  • ⭐allow SDK to only send heartbeats without subscribing to the data channel.

November-21-2017

Full Changelog

  • ⭐allow setting setMaximumConnections to open more connections to PubNub

November-17-2017

Full Changelog

  • ⭐update gson dependency

  • 🐛make listeners thread safe

  • 🐛close hanging threads on shutdown

October-25-2017

Full Changelog

  • ⭐add support to supress leave events

October-23-2017

Full Changelog

  • ⭐do not execute subscribe on empty string channel, channel groups

  • ⭐stop heartbeat loop if an error shows up.

October-05-2017

Full Changelog

  • 🐛fix worker thread unloading.
  • 🌟prevent concurrent modification of listeners.

October-05-2017

Full Changelog

  • 🐛fix retrofit unloading.

September-17-2017

Full Changelog

  • 🌟rework the loading of services to load the classes once.

August-14-2017

Full Changelog

  • 🌟patch-up to the deduping algorithm

August-14-2017

Full Changelog

  • 🌟Internal deduping mechanism when devices cross regions (dedupOnSubscribe).

August-08-2017

Full Changelog

  • 🌟Allow certificate pinning via setCertificatePinner on PNConfiguration

  • 🌟Allow disabling of heartbeat by setting the interval to 0.

  • 🌟GAE fixes.

July-20-2017

Full Changelog

  • 🌟Allow injection of httpLoggingInterceptor for extra logging monitoring..

June-28-2017

Full Changelog

  • 🐛adjust queue exceeded notifications to be greater or equal of.

June-10-2017

Full Changelog

  • 🐛gracefully handle disabled history

June-03-2017

Full Changelog

  • 🌟on interval events, pass hereNowRefresh to indicate if a here_now fetch is needed.

April-13-2017

Full Changelog

  • 🌟set a name for Subscription Manager Consumer Thead.

April-06-2017

Full Changelog

  • 🐛SDK crash in Android with Airplane Mode
  • 🌟add deltas on interval action.

March-14-2017

Full Changelog

  • 🌟To distinguish UUID's that were generated by our SDK, we appended pn- before the UUID to signal that it's a randomly generated UUID.

  • 🌟Allow the passing of okHttp connection spec via setConnectionSpec

  • ⭐Bump retrofit to 2.2.0

February-15-2017

Full Changelog

  • 🌟add .toString methods to all public facing models and POJOs

February-06-2017

Full Changelog

  • 🌟Add support to configure host name verifier.

February-02-2017

Full Changelog

  • 🌟Add support to configure custom certificate pinning via SSLSocketFactory and X509 configuration objects.

January-31-2017

Full Changelog

  • 🐛SDK was not sending the user metadata on Message Callback

January-25-2017

Full Changelog

  • 🐛SDK did not honor the exhaustion of reconnections, it will now disconnect once max retries happened

January-24-2017

Full Changelog

  • ⭐Support for maximum reconnection attempts

  • ⭐Populate affectedChannel and affectedChannelGroups

  • ⭐Support for GAE

  • ⭐Emit pnconnected when adding / removing channels.

December-22-2016

Full Changelog

  • ⭐support for key-level grant.

December-14-2016

Full Changelog

  • ⭐JSON parser is switched to GSON, new artifact on nexus as pubnub-gson

  • ⭐GetState, setState return a JsonElement instead of a plain object.

Full Changelog

  • ⭐Swapping out logger for slf4japi and removing final methods

December-09-2016

Full Changelog

  • ⭐remove final identifiers from the public facing API.

November-23-2016

Full Changelog

  • ⭐include publisher UUID on incoming message

  • ⭐allow to set custom TTL on a publish

October-25-2016

Full Changelog

  • ⭐Signatures are generated for all requests with secret key to ensure secure transmission of data

  • ⭐support for alerting of queue exceeded (PNRequestMessageCountExceededCategory)

  • ⭐signaling to okhttp to stop the queues on termination.

October-12-2016

Full Changelog

  • ⭐destory now correctly forces the producer thread to shut down; stop is now deprecated for disconnect

  • ⭐support for sending instance id for presence detection (disabled by default)

  • ⭐support for sending request id to burst cache (enabled by default)

  • ⭐proxy support via the native proxy configurator class.

September-20-2016

Full Changelog

  • ⭐on PAM error, populate the affectedChannel or affectedChannelGroup to signal which channels are failing

September-14-2016

Full Changelog

  • ⭐populate jso with the error.

September-13-2016

Full Changelog

  • 🐛fixing parsing of origination payload within the psv2 enevelope

September-09-2016

Full Changelog

  • ⭐bumping build process for gradle 3 / merging documentation into the repo and test adjustments

September-07-2016

Full Changelog

  • ⭐adding channel / channelGroup fields when a message / presence event comes in.

August-24-2016

Full Changelog

  • ⭐adjustments for handling pn_other and decryption

  • ⭐retrofit version bumps.

August-16-2016

Full Changelog

  • 🌟added unsubscribeAll, getSubscribedChannels, getSubscribedChannelGroups

  • 🌟SDK will establish secure connections by default

  • 🌟added support for exponential backoff reconnection policies

August-11-2016

Full Changelog

  • ⭐reduce overlap on error handling when returning exceptions.

July-18-2016

Full Changelog

  • ⭐send heartbeat presence value when subscribing

July-07-2016

Full Changelog

  • ⭐unified retrofit handling to lower amount of instances and sync'd the state methods.

June-24-2016

Full Changelog

  • 🐛setting State for other UUID's is now supported.

June-15-2016

Full Changelog

  • 🌟fire() method and no-replicaton options.

June-15-2016

Full Changelog

  • 🐛fix to the version fetching.

June-06-2016

Full Changelog

  • 🐛adjustment of the subscribe loop to alleviate duplicate dispatches.

June-03-2016

Full Changelog

  • 🐛first GA.

Full Changelog

  • ⭐reconnects and minor adjustments.

Full Changelog

  • 🐛fixing state not coming on the subscriber callback.

  • 🐛adjustments to URL encoding on publish, subscribe, set-state operations to avoid double encoding with retrofit.

Full Changelog

  • ⭐reworking of message queue.

  • ⭐checkstyle, findbugs.

  • ⭐reworking error notifications.

  • ⭐initial beta1.