August 9, 2022
- Add support for spaces and users permissions in GrantToken.
- Add new Get/SetUserId and NewConfigWithUserId factory method for Config. Deprecate UUID.
May 4, 2022
- Set default limit for object calls with context.
- All channel groups management operations could double escape some characters which could cause signature problems.
March 17, 2022
- Send region on subscribe calls.
- Close idle connections to free up goroutines when closing PubNub.
February 8, 2022
- Omit empty optional parameters for UUID or channel metadata.
January 6, 2022
- BREAKING CHANGES: UUID is not automatically generated by the SDK anymore. Please set it in the PNConfig before instantiating the PubNub object. If UUID is empty panic will occur.
December 16, 2021
- Add revoke token feature.
November 24, 2021
- Fix edge case in Fetch response when filesPayload message is nil.
October 13, 2021
- Using correct major version number in imports.
October 12, 2021
- Add grantToken functionality (PAMv3). Method grantToken has been added. It allows generation of signed token with permissions for channels and channel groups.
- Acceptance tests plugged into CI pipeline.
June 1, 2021
- Bump version.
May 27, 2021
- Go mod file fix.
May 27, 2021
- Update Go SDK Metadata.
- BREAKING CHANGE - IV used for encryption is now random by default.
- BREAKING CHANGE - The SDK now suppoorts Go Modules.
- Presence event occupancy field parsed incorrectly.
November 2, 2020
- Objects v2 PAM changes.
- Fetch with 100 messages.
- Include timetoken in send file.
- Read Publish File Message retry count from config.
October 1, 2020
- Fix for a deadlock on destroy.
- Fetch response nil check.
August 11, 2020
- History v3 with UUID and MessageType.
- BREAKING CHANGE: PNPublishMessage struct changes, PublishFile enhancements.
July 24, 2020
- Files: Allows users to upload and share files.
- 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.
- BREAKING CHANGE: runes to string converion now returns string, this mostly affect the validation responses. This makes the SDK compatible with Go 1.15
June 10, 2020
- BREAKING CHANGE: Object V2 (beta). This version does not support Objects v1 (beta)
March 26, 2020
- Objects Sorting
- Go 1.14+ crypto unit tests fixes
February 5, 2020
- Make publish/grant workers per instance
January 28, 2020
- Fix data race
January 24, 2020
- Make publish key optional on subscribe
January 3, 2020
- Objects Filtering
December 17, 2019
- Push payload helper class
November 27, 2019
- Heartbeat Manager and Listener Manager deadlock fixes
- Fixed a panic due to a closed channel when
Publishrequests context is cancelled and
October 16, 2019
- UUID in Message Actions response
October 8, 2019
- WithMeta param is now IncludeMeta in History and Fetch
- WithMessageActions param is now IncludeMessageActions in Fetch
October 7, 2019
- Message Actions
- Grant Token validation for TTL
- withMeta param in History and Fetch
October 2, 2019
- Publish method now sets the ShouldStore flag if it is set to false
September 23, 2019
- PAM v3 and TMS for Objects
- UUID improvements
August 28, 2019
- Objects API
- Grant Optimizations
August 8, 2019
August 1, 2019
- UUID param in Set and Get State
June 20, 2019
- Destroy now cleans up all goroutines opened by the SDK
June 13, 2019
- UUID dependency update
- Fix deadlock on destroy
May 27, 2019
- Presence Timeout cannot be lower than 20
March 21, 2019
- History timetoken float64 to int64 conversion loss fix
March 13, 2019
- Message Counts simplification (Breaking changes from the previous version).
March 5, 2019
- Implement history Message Counts
- All request were secure (https), even when the Secure flag was false
January 15, 2019
- Fixes for 32bit and armv7 systems
- QueryParam and State in Presence Heartbeat
December 18, 2018
- Heartbeats per channel
- Presence Heartbeat call delays itself when a Subscribe call precedes it
October 18, 2018
- QueryParams in all API calls
- d in grant
- maxIdleConnsPerHost setting in config
- Max concurrent workers for Publish and Grant requests
September 4, 2018
- Multiple auth keys in grant fix
- Presence timetoken float64 fix
August 1, 2018
- coverage improvements
- presence timetoken fix
June 21, 2018
- MessageQueueOverflowCount and PNRequestMessageCountExceededCategory
- subscribeMessageWorker optimization
- integration tests optimizations
June 18, 2018
- 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
June 8, 2018
- close old subworker goroutine before starting new one
- optimizations and deadlock fixes in subscribe loop
- old channels got subscribed in new sub after reconnection
- data race fixes
- stop tickers, state manager locks
May 3, 2018
- 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
May 31, 2018
- Reconnection fixes
May 24, 2018
- integration tests fixes for the changes done on auth
- auth fix
- Signature does not match fix when both secret key and auth is set
May 21, 2018
- set state refactor fix
May 18, 2018
- Subscribe with state
April 12, 2018
- cipher improvements
April 5, 2018
- Fire, Fetch, HereNowRequest
January 10, 2018
- add subscribe builder
January 3, 2018
- add Telemetry Manager
December 20, 2017
- add Destroy() method
November 7, 2017
- add reconnection manager
- rename list, remove, add, delete channel of channel groups
- fix comma encoding
- fix signature
October 4, 2017
- initial beta