GoChangelog for Go V4 SDK

 

These docs are for PubNub 4.0 for Go which is our latest and greatest! For the docs of the older versions of the SDK, please check PubNub 3.0 for Go.

If you have questions about the PubNub for Go SDK, please contact us at support@pubnub.com.


Added
  • History v3 with UUID and MessageType.

Modified
  • BREAKING CHANGE: PNPublishMessage struct changes, PublishFile enhancements.

Added
  • Files: Allows users to upload and share files.

Modified
  • BREAKING CHANGE: EncryptString and DecryptString functions now accept a third param - bool, if true the IV is random and is sent along with the message. Default is false.

Fixed
  • BREAKING CHANGE: runes to string converion now returns string, this mostly affect the validation responses. This makes the SDK compatible with Go 1.15

Added
  • BREAKING CHANGE: Object V2 (beta). This version does not support Objects v1 (beta)

Modified
  • Objects Sorting

  • Go 1.14+ crypto unit tests fixes

Fixed
  • Make publish/grant workers per instance

Fixed
  • Fix data race

Fixed
  • Make publish key optional on subscribe

Modified
  • Objects Filtering

Modified
  • APNS2

  • Push payload helper class

Fixed
  • Heartbeat Manager and Listener Manager deadlock fixes

  • Fixed a panic due to a closed channel when Publish requests context is cancelled and Destroy is called

Modified
  • UUID in Message Actions response

Modified
  • WithMeta param is now IncludeMeta in History and Fetch

  • WithMessageActions param is now IncludeMessageActions in Fetch

Modified
  • Message Actions

  • Grant Token validation for TTL

  • withMeta param in History and Fetch

Fixed
  • Publish method now sets the ShouldStore flag if it is set to false

Modified
  • PAM v3 and TMS for Objects

  • UUID improvements

Modified
  • Objects API

  • Grant Optimizations

Modified
  • Signals

Modified
  • UUID param in Set and Get State

Fixed
  • Destroy now cleans up all goroutines opened by the SDK

Fixed
  • Fix deadlock on destroy

Modified
  • UUID dependency update

Modified
  • Presence Timeout cannot be lower than 20

Fixed
  • History timetoken float64 to int64 conversion loss fix

Modified
  • Message Counts simplification (Breaking changes from the previous version).

Modified
  • Implement history Message Counts

Fixed
  • All request were secure (https), even when the Secure flag was false

Modified
  • Fixes for 32bit and armv7 systems

  • QueryParam and State in Presence Heartbeat

Modified
  • Presence Heartbeat call delays itself when a Subscribe call precedes it

Added
  • Heartbeats per channel

Added
  • QueryParams in all API calls

  • d in grant

  • maxIdleConnsPerHost setting in config

Modified
  • Max concurrent workers for Publish and Grant requests

Fixed
  • Multiple auth keys in grant fix

  • Presence timetoken float64 fix

Modified
  • Optimizations

  • coverage improvements

Fixed
  • presence timetoken fix

Modified
  • MessageQueueOverflowCount and PNRequestMessageCountExceededCategory

  • subscribeMessageWorker optimization

  • integration tests optimizations

Modified
  • Some breaking changes from the previous v4's

  • config field UseHttp2 is now UseHTTP2

  • config field Uuid is now UUID

  • Get State/ WhereNow Uuid is now UUID

  • In Fire/Publish Ttl() is now TTL()

  • In Grant Ttl() is now TTL()

  • PNPAMEntityData Ttl is now TTL

  • PNAccessManagerKeyData Ttl is now TTL

  • TlsEnabled is now TLSEnabled in StatusResponse and ResponseInfo

  • Uuid is now UUID in StatusResponse and ResponseInfo

Fixed
  • optimizations and deadlock fixes in subscribe loop

  • old channels got subscribed in new sub after reconnection

  • data race fixes

  • stop tickers, state manager locks

Modified
  • close old subworker goroutine before starting new one

Fixed
  • stop heartbeat requests after unsubscribe all

  • multiple subscribe fixes

  • data race fixes in context

  • fix for subscribe listener on disconnect

  • heartbeat fixes

  • presence heartbeat fixes

  • subscribe to presence only channel

  • unsubscribe from presence only channel

Fixed
  • Reconnection fixes

Fixed
  • auth fix

  • Signature does not match fix when both secret key and auth is set

Modified
  • cleanup

  • integration tests fixes for the changes done on auth

Fixed
  • set state refactor fix

Modified
  • Subscribe with state

Modified
  • cipher improvements

Modified
  • Fire, Fetch, HereNowRequest

Modified
  • add subscribe builder

Modified
  • add Telemetry Manager

Modified
  • add Destroy() method

Modified
  • add reconnection manager

  • rename list, remove, add, delete channel of channel groups

Fixed
  • fix comma encoding

  • fix signature

Modified
  • initial beta