December 17 2024
- Add
type
field for members and membership objects and subscribe response.
- Fixed type which limited number of options which can be included into response / used in sorting for members / membership setting API.
- Fix missing
hereNowRefresh
flag from the presence object received from subscribe. - Fix issue because of which
logVerbosity
set totrue
still didn't print logs for Node.js.
- Change format and add proper request body output.
December 12 2024
- Fix issue with
Subscription
andSubscriptionSet
when one can unsubscribe channel / group which is still in use by another. - Fix particular
TypeError
emitted when browser forcefully closes long-poll connection before its timeout and reported as bad request. This type of error will be reported as a network error. - Fix issue because of which
node-fetch
used default agent, which after Node.js 19+ haskeepAlive
enabled by default.
November 18 2024
- Fix issue because of which presence events not delivered to the
Subscription
andSubscriptionSet
objects (only global listeners).
November 14 2024
- Add custom message type support for the following APIs: publish, signal, share file, subscribe and history.
October 31 2024
- Fix
Actions
type definition.
- Remove indexed signature for publish.
- Add serializable objects to
Payload
type. - Aggregate generated types definitions.
- Fix definition of type which represents message actions received from history and list of users which added action of specific type and value to the message. Fixed the following issues reported by @yo1dog: #407.
- Remove redundant indexed signature from publish message parameters type definition. Fixed the following issues reported by @yo1dog: #413.
- Extend
Payload
type definition with objects which can be serialized byJSON.stringify
usingtoJSON()
methods. Fixed the following issues reported by @yo1dog: #412. - Aggregate multiple types definitions into single type definition type with proper type names and namespaces. Fixed the following issues reported by @Tallyb and @yo1dog: #405 and #409 and #410.
- Add the Subscribe Event Engine and Event Listener types to the bundled types definition file. Fixed the following issues reported by @roman-rr: #377.
October 25 2024
- Revert fix created to handle browser timeouts (not gracefully). The Web Fetch API doesn't have descriptive error information, and it sends
TypeError
for both cases when connection closed by browser or network issue (blocked domain).
September 30 2024
- Fix issue because of which leave request modified wrong URL path component with actual channels.
- Fix issue because of which removed channels / groups didn't cancel previous subscribe request to re-subscribe with new set of channels / groups.
- Fix issue because of which suitable active PubNub clients subscription not has been used for aggregation and caused additional connections or wrong set of channels / groups.
- Pre-process entries from subscribe response to filter out updates which has been received for channels and groups which are not part of subscription loop (subscription aggregation in shared worker).
- Point to the built-in types definition file when package used with
npm
/yarn
.
August 01 2024
- Fix issue because of which timeout enforced by browser triggered wrong error status category. Fixed the following issues reported by @WalrusSoup: #396.
July 23 2024
- Resolves the issue of manually included presence channels not being unsubscribed from the subscription set. Fixed the following issues reported by @roman-rr: #390.
July 18 2024
- Fix PubNub client configuration and listener documentation.
June 17 2024
- Subscription/SubscriptionSet's
subscribe()
method acceptstimetoken
parameter. Instead as in subscriptionOption.
June 06 2024
- Fix issue because of which single string sort option wasn't serialized properly.
June 05 2024
- Fix issue because of which
heartbeatInterval
wasn't computed ifpresenceTimeout
provided during PubNub client configuration.
May 22 2024
- Fix revoke token method signature where mistakenly expected object with
token
field.
May 21 2024
- Add environment flags processing to opt-out feature modules from built bundles.
- Add
application/json
content type forGrant Token
,Add Message Action
andGenerate File Upload URL
endpoints. Fixed the following issues reported by @SpaseESG: #373.
May 16 2024
- Use
SharedWorker
instead ofService Worker
for better PubNub client instances feedback. - Add configuration option to enable debug log output from the subscription
SharedWorker
.
- Create types declaration files.
April 23 2024
- Provider configuration option to set service worker from the URL (because of browser restrictions for worker files to be registered from the same domain).
April 22 2024
- Upgraded the network layer, replacing the
superagent
module with theFetch API
for browser integrations and node-fetch fornpm
integrations, ensuring enhanced performance and reliability. - Added service worker .
- Enhanced the subscribe feature with service worker support, improving user experience across multiple browser windows and tabs. The client interface rewritten with TypeScript, which gives an up-to-date interface.
April 18 2024
- Fixes issue of add or remove listener of subscription to/from subscriptionSet.
March 28 2024
- Added support for pagination params for listChannels api of push notification devices.
February 26 2024
- Fixes issue of App context event handling for channel and membership.
February 21 2024
- Adding channel, channelGroup, channelMetadata and userMetadata entities to be first-class citizens to access APIs related to them. Currently, access is provided only for subscription API.
January 16 2024
- Added
enableEventEngine
,maintainPresenceState
flags andretryConfiguration
for retry policy configuration.
- Fixes issue of allowing duplicate listener registration.
- Fixes file name conflict in lib directory. Fixed the following issues reported by @priyanshu102002: #355.
November 28 2023
- Handle unencrypted messages in subscribe with cryptoModule configured.
- Fixe for missing parameters to request or filter optional fields for App Context memberships api.
November 14 2023
- Fixes issue of getChannelMembers call not returning status field.
November 08 2023
- Fixes issue of not able to encrypt Blob file content in web.
October 30 2023
- Changed license type from MIT to PubNub Software Development Kit License.
October 17 2023
- Fixes issue of
pubnub.decrypt()
returning wrong data format.
October 16 2023
- Add crypto module that allows configure SDK to encrypt and decrypt messages.
- Improved security of crypto implementation by adding enhanced AES-CBC cryptor.
September 11 2023
- Fixes issue of getting misleading error message when sendFile fails.
August 31 2023
- Fixes issue of having deprecated superagent version. Fixed the following issues reported by @wimZ: #317.
August 21 2023
- Fixes issue of missing get and set methods for userId field of PubNub configuration.
July 26 2023
- Fixes issue of severe vulnerability warnings for vm2 usage.
June 19 2023
- Added optional param
withHeartbeat
to set state through heartbeat endpoint.
December 12 2022
- Fixes a case in React Native with using an error interface in superagent.
- Fixes issue of getFileUrl not setting auth value as token string when token is set. Fixed the following issues reported by @abdalla-nayer: #302.
November 10 2022
- Removes remains of Buffer from the crypto module.
July 01 2022
- Allows to specify users and spaces in grantToken method.
- Allows to use userId instead of uuid in configuration.
June 22 2022
- Fixes parseToken issues on Web and React Native.
June 14 2022
- Added user and space memberships related methods.
- Added
type
andstatus
fields inUser
andSpace
.status
field in memberships.
May 24 2022
May 24 2022
- BREAKING CHANGES: Removed objects v1 methods support.
April 21 2022
- Added a TypeScript build chain and moved from webpack to rollup.
- Added an initial implementation of Event Engine.
March 02 2022
- Unsubscribe fix unsubscribe from channel group presence.
January 12 2022
- BREAKING CHANGES:
uuid
is required parameter in PubNub constructor.
December 16 2021
- Add revoke token feature.
December 09 2021
- Remove isomorphic-webcrypto polyfill for web Add buffer polyfill to react native. Fixed the following issues reported by @JakeOrel: #233.
December 02 2021
- Allows to specify multiple origins in the config, which enables domain sharding for custom origins.
December 01 2021
- Fix listener callback is invoked multiple times. Fixed the following issues reported by @puopg: #230.
November 19 2021
- Update
.npmignore
and excluded resources from from NPM package. Fixed the following issues reported by @ElridgeDMello: #228.
November 19 2021
- Upgrade superagent.
October-18-2021
- 🐛 Fixes issue of performing file publish message retry according to
fileUploadPublishRetryLimit
setting of PubNub instance.
August-31-2021
- 🌟️ Added support for Objects v2 in PAM v3 api.
- 🐛 Fixes issue related to file decryption when cipherkey is provided in method.
May-26-2021
- 🐛 Fixes issue of signature does not match error with
getAllUUIDMetadata
call. - 🐛 Error handling with global hereNow call to provide detailed error message when feature not enabled.
April-28-2021
- 🌟️ Add grantToken support for channel and group resources.
April-22-2021
- ⭐️️ BREAKING CHANGE - Set
true
foruseRandomIVs
by default. - 🐛 Fix
channel
anduuid
which is used with: files API, Objects and presence.
March-30-2021
- 🐛 Revert v4.300.
January-11-2021
- ⭐️️ Set default increased limit for message count of History v3 api single call.
November-30-2020
- 🐛 Fixes issue of missing more field in fetch messages response.
October-05-2020
- 🌟️ Adds timetoken of file publish in the sendFile response.
- 🐛 Fixes getFileUrl so that it includes auth and signature query params.
- 🐛 Fixes downloadFile method to generate correct signature.
September-21-2020
- 🐛 Fixes compatibility with @sentry/react-native library.
September-14-2020
- 🌟️ Added support for managing permissions of objects v2 while applying PAM v2.
- 🐛 Fix uncaught promise exception in subscription manager caused by error in user code inside of subscription handlers. Error will be handled and returned to status handler with PNUnknownCategory category where errorData can be examined.
September-08-2020
- 🌟️ Add file download to Blob in React Native.
September-01-2020
- 🌟️ Add support for file upload via file URI in React Native.
- 🐛 Fix file download to ArrayBuffer in React Native.
August-14-2020
- 🐛 Fixes an artifact where ract-native entrypoint didnt use ssl.
August-14-2020
- 🐛 Fixes an issue with react-native entrypoint where interfaces to File and Crypto are not included in the build.
- 🐛 Fixes the ability to sendByPost in publish.
- 🐛 Fixes an issue where getFileUrl returned and URI without a protocol.
- 🐛 Fixes an issue where storeInHistory false would not include the param.
- 🐛 Removes mime types dependency since that will be handled by the server.
- 🐛 Adds userMetadata to file event listener.
August-05-2020
- 🐛 Move @babel/runtime to runtime dependency.
August-04-2020
- 🐛 Release 4.291.
August-04-2020
- 🌟️ Allows to upload files to channels, download them with optional encryption support.
- 🌟️ Allows to enable random IVs when encrypting messages.
- 🐛 Fixes a bug with PAM and Objects v2.
July-15-2020
- 🐛 Fixes issue of high cpu usage when heartbeat interval is not set.
July-15-2020
- 🐛 _ getAllChannelMetadata no longer includes customFields by default, _ removeChannelMetadata no longer hits wrong endpoint, _ getMemberships and getChannelMembers now includes customFields by default, _ getAllUUIDMetadata now includes totalCount by default, _ getAllUUIDMetadata no longer includes limit by default, _ all membership and channel members methods now accept a callback, _ all objects v2 methods are properly typed now to include an optional callback, _ getMemberships and getChannelMembers now include totalCount, prev, and next in the response.
June-29-2020
- 🐛 Fixes a bug in removeChannelMembers and removeMemberships.
June-19-2020
- 🐛 Ensure proper bytes padding in ArrayBuffer prepared for
cbor-js
library.
June-03-2020
- 🌟️ Added Objects v2 API and deprecated Objects v1 API.
April-24-2020
- 🌟️ Added support for delete permission in the grant method of accesses manager.
- ⭐️️ Added missing feature entries. Removed incorrect feature entries.
April-21-2020
- 🐛 Update READMEmd CDN links during deployment.
- 🐛 Fix pre-compiled scripts update.
March-18-2020
- 🌟️ Add telemetry (latency) for all existing operation types.
- 🐛 Replace
cbor-sync
module withcbor-js
for client implementation for web to fix compatibility with Salesforce Lightning Web Components.
January-06-2020
- ⭐ Support for APNS2 Push API
- ⭐ Restore functionality to set heartbeat interval when presence timeout is set below the default
December-05-2019
- ⭐ disable presence heartbeats by default
November-20-2019
- ⭐ Make changes in fetch_messages endpoint to move message actions (if any) for message from 'data' to 'actions' property (old 'data' will be in place for few updates to not break existing clients).
- ⭐ fix PAMv3 tests mocked signature
- ⭐ fix lint warnings for tests and code
- ⭐ fix gulp build so that failures in test and lint will trigger failure in travis
October-08-2019
- ⭐ Add Message Actions API support which allow to: add, remove and fetch previously added action
- ⭐ Add new arguments to fetch messages function which allow to fetch previously added actions and message metadata
- ⭐ Add new handler which can be used to track message actions addition / removal events
September-27-2019
- ⭐ Ensures history response is an array before iterating it
September-20-2019
- ⭐ Add support for auth tokens with Objects for Users, Spaces and Memberships
September-03-2019
- ⭐ Fix issue with subdomains ending in 'ps'
August-23-2019
- ⭐ Fix regression: Fix titanium build to support recent version
August-16-2019
- ⭐ Fix regression: Add Objects support for Users, Spaces and Memberships
August-09-2019
- ⭐ Fix regression: 'PubNub is not a constructor' in Node.js
August-07-2019
- ⭐ Add Signals support
July-26-2019
- ⭐ Add minimum presence timeout
June-19-2019
- ⭐ Added support to enable heartbeat requests while subscribe when heartbeat interval is provided
June-13-2019
- ⭐ Added try catch block to handle exception for JSON.parse function
- ⭐ Changed default origin to ps.pndsn.com
June-06-2019
- ⭐ Maintains the state when presence heartbeat is explicitly disabled
May-09-2019
- ⭐ Disables the presence heartbeat by default when a subscribe is called. Presence heartbeat can still be enabled explicitly.
March-14-2019
- ⭐ The
timetoken
parameter is deprecated in themessage-counts
function. UsechannelTimetokens
instead, pass one value inchannelTimetokens
to achieve the same results
March-04-2019
-
⭐message counts
-
⭐use null instead of '' for NativeScript networking module
December-20-2018
-
⭐update dependencies
-
⭐fix flow process on nativescript
October-04-2018
- 🐛fix POST for nativescript adapter over android
August-06-2018
- ⭐update dependencies
August-04-2018
- ⭐return error parameter into errorData when logVerbosity = true
July-10-2018
- ⭐update dependencies
June-12-2018
- ⭐add stringifiedTimeToken into the fetch endpoint
June-08-2018
- 🐛avoid security vulnerability in growl < 1.10.0
June-06-2018
- ⭐subscribe without using the heartbeat loop with flag withHeartbeats = false
Abril-24-2018
-
🐛fix timetoken announces
-
⭐categorize ETIMEDOUT errors as PNNetworkIssuesCategory
February-28-2018
- 🐛fix signature to delete message
January-29-2018
- ⭐allow set ssl to false for nodejs
January-04-2018
-
⭐add support for heartbeat sending without subscription via .presence()
-
⭐add method setProxy for Nodejs
-
⭐set ssl to true for nodejs by default
December-05-2017
-
⭐add support for Native Script
-
⭐add missing flow types
-
⭐upgrade superagent to ^3.8.1
November-20-2017
-
⭐keepAlive is now initialized globally instead of per-call, allowing better connection reuse
-
⭐added sdkName configuration parameter which allow completely override pnsdk in request query
October-19-2017
- ⭐allow disabling of heartbeats by passing 0 during initialization.
October-19-2017
- 🐛fix UUID library to work in browsers.
October-12-2017
- 🐛fix incorrect packaging of lil-uuid and uuid
October-10-2017
-
🌟support delete messages from history
-
⭐swap uuid generator with support for IE9 and IE10
August-21-2017
- ⭐fix typo to enable http keep alive support
August-21-2017
-
⭐Support optional message deduping via the dedupeOnSubscribe config
-
⭐Do not issue leave events if the channel mix is empty.
August-14-2017
- ⭐Allow disable of heartbeats by passing heartbeatInterval = 0
July-27-2017
-
⭐patch up 503 reporting
-
⭐fix issue with where now and invalid server response
-
⭐fix issue with here now and invalid server response
June-19-2017
-
⭐fix issue of net with android for titanium
-
🌟add additional hooks for connectivity
-
🌟add auto network detection
May-23-2017
- ⭐fix issue of net with android for react-native
- 🌟metadata is now passed on message envelope
May-18-2017
- 🌟add support custom encryption and decryption
-
🌟integrate fetch for react-native SDK
-
⭐announce when subscription get reactivated
-
⭐stop heartbeats for responses with status PNBadRequestCategory
April-06-2017
- 🌟allow manual control over network state via listenToBrowserNetworkEvents
March-30-2017
-
🌟add support for titanium SDK
-
⭐fix support for react-native SDK
-
⭐add validation for web distribution
March-27-2017
-
🌟add support for presence deltas.
-
🌟keep track of new and upcoming timetokens on status messages
March-08-2017
- 🌟add optional support for keepAlive by passing the keepAlive config into the init logic
February-14-2017
-
⭐add guard to check for channel or channel group on state setting
-
⭐add guard to check for publish, secret keys when performing a grant
February-07-2017
- ⭐downgrade superagent to v2; add new entry point for react native.
January-31-2017
- ⭐adjust compilation for webpack based compilations
January-31-2017
- ⭐proxy support for node
January-23-2017
-
⭐upgrade dependencies; fix up linting.
-
⭐handle network outage cases for correct reporting.
December-16-2016
- ⭐bump version after v3 release.
November-28-2016
- ⭐removes bundling of package.json into the dist file
November-22-2016
- ⭐SDK now supports the restore config to allow message catch-up
November-18-2016
-
⭐bulk history exposed via pubnub.fetchMessages
-
⭐publish supports custom ttl interval
-
⭐v2 for audit and grant; no consumer facing changes.
-
⭐fixes for param validation on usage of promises
November-04-2016
- ⭐SDK reports on the id of the publisher in the message
November-01-2016
- ⭐Detection of support of promises improved.
November-01-2016
- ⭐Fixes on encoding of apostraphes.
October-31-2016
-
⭐Add promise support on setState operation (@jskrzypek)
-
⭐Add hooks to stop polling time when the number of subscriptions drops to 0 (@jasonpoe)
October-30-2016
- ⭐Encode signatures to avoid sending restricted characters
October-26-2016
-
⭐Add optional support for promises on all endpoints.
-
⭐History always returns timetokens in the payloads.
-
⭐Optionally, if queue size is set, send status on queue size threshold
October-17-2016
- ⭐Fix state setting for channels with reserved tags.
October-13-2016
-
⭐Reset timetoken when all unsubscribes happen
-
⭐Sign requests when a a secret key is passed
October-05-2016
- ⭐Propogate status events to the status callback on subscribe operations.
October-03-2016
- ⭐affectedChannels and affectedChannelGroups are now populated on subscribe / unsubscribe events
September-27-2016
- ⭐Dependency upgrades
September-14-2016
- ⭐Expose decryption and encryption as a global
September-09-2016
-
⭐Channel / subscription items are populated in
-
⭐Constants for operation and category are exposed on global object
August-25-2016
- ⭐Re-publish of v4.0.7
August-25-2016
-
⭐Dependency upgrades
-
⭐Try..catch wrapped around localStorage for iframe compliance
August-18-2016
-
⭐Adjustment of reconnection policies for web distributions.
-
⭐PNSDK support for partner identification
August-10-2016
- ⭐Stop exposing .babelrc which causes unpredictable behavior on react native.
August-09-2016
-
⭐Adjust handling of presence payloads for state settings.
-
🌟Exposing generateUUID method to create uuids.
-
⭐Triggering disconnect, reconnect events on Web distributions.
-
⭐React Native adjustments to package.json information.
August-07-2016
- ⭐Global Here Now parsing adjustments.
August-03-2016
- ⭐Adjustments to internet disconnects on node.
August-01-2016
- 🐛Fixes to avoid double encoding on JSON payloads.
- 🌟New iteration of JS / Node SDK family