Skip to content

Tags: pubnub/javascript

Tags

v10.2.1

Verified

This commit was created on GitHub.com and signed with GitHub’s verified signature.
fix: expose File construct for web target (#483)

* expose pubnub.File for target specific file handling construct

* test for web to confirm access to File

* update dist/lib

* update .npmignore

* PubNub SDK v10.2.1 release.

---------

Co-authored-by: Mohit Tejani <[email protected]>
Co-authored-by: PubNub Release Bot <[email protected]>

v10.2.0

Verified

This commit was created on GitHub.com and signed with GitHub’s verified signature.
Add `offset` parameter for `here now` (#482)

feat(here-now): add `offset` parameter for `here now`

Add a zero-based `offset` index parameter to be used together with `limit` for `here now`
pagination.

v10.1.0

Verified

This commit was created on GitHub.com and signed with GitHub’s verified signature.
fix: presence event engine internal state sync (#479)

fix: presence event engine internal state sync when unsubscribed

feat(react-native) restore legacy crypto module support for React Native target

refactor(presence): temporarily remove `offset`

---------

Co-authored-by: Mohit Tejani <[email protected]>
Co-authored-by: Mohit Tejani <[email protected]>
Co-authored-by: Serhii Mamontov <[email protected]>

v10.0.0

Verified

This commit was created on GitHub.com and signed with GitHub’s verified signature.
Add `limit` and `offset` parameters (#477)

feat(here-now): add `limit`` and `offset`` parameters

Add 'limit' and 'offset' parameters for 'HereNowRequest' for pagination support.

v9.10.0

Verified

This commit was created on GitHub.com and signed with GitHub’s verified signature.
Send new presence `state` to the `SharedWorker` and fix newer access …

…token override (#473)

fix(shared-worker): fix newer access token override

Fix issue because of which requests aggregated from other clients were able to override previously
explicitly set newer access token.

feat(presence-state): send new presence `state` to the `SharedWorker`

Send new presence `state` to the `SharedWorker` as soon as it has been set with `setState` to avoid
race conditions between regular heartbeats and `backup` heartbeats.

refactor(shared-worker): exclude presence `state` from long-poll subscribe request

Remove presence `state` from long-poll subscribe requests as part of the transition to explicit
 heartbeat.

v9.9.0

Verified

This commit was created on GitHub.com and signed with GitHub’s verified signature.
`SharedWorker` refactor (#471)

refactor(shared-worker): reorganize `SharedWorker` code

Decouple and re-organize `SharedWorker` code for better maintainability.

perf(shared-worker): improved subscription state refresh logic

Additional query parameter (removed before sending) is added for requests triggered by user and
state will be updated only for these requests.

refactor(logger): avoid similar timestamp in sequential lines

Log entry timestamp will be altered on millisecond if multiple log entries have similar
timestamp (logged in fraction of nanoseconds).

refactor(shared-worker): change condition for stalled `ping` timer

Change the condition that is used to identify whether the `offline` detection timer has been
suspended by the browser or not before trying to evict "offline" PubNub clients.

---------

Co-authored-by: Mohit Tejani <[email protected]>

v9.8.4

Verified

This commit was created on GitHub.com and signed with GitHub’s verified signature.
fix(react-native): explicit export to static members (#470)

Explicit export for PubNubCore static members, which got missing due to javascript-react-native bundler export pattern conflicts

---------

Co-authored-by: Mohit Tejani <[email protected]>

v9.8.3

Verified

This commit was created on GitHub.com and signed with GitHub’s verified signature.
Request 'id-token' permission for OIDC (#469)

build(workflow): request 'id-token' permission for OIDC

v9.8.1

Verified

This commit was created on GitHub.com and signed with GitHub’s verified signature.
Fix subscription reference timetoken (#464)

fix(subscription): fix subscription reference timetime

Fix incorrect subscription reference timetoken (used by listeners to filter old messages) caused by
the server returning timetoken older than previous one because of MX.

fix(subscription-set): fix event handling by subscription

Fix the issue because of which all subscriptions of the subscription set have been requested to
handle the received event.

refactor(shared-worker): use `addEventListener` instead of `onpagehide`

Replace the `onpagehide` listener assignment with `addEventListener` to ensure that the listener
won't be replaced.

v9.8.0

Verified

This commit was created on GitHub.com and signed with GitHub’s verified signature.
Fix rapid subscribe aggregate (#461)

* fix(shared-worker): fix rapid subscribe aggregate

Fix the issue because of which rapid subscription (from other PubNub clients in response to
received subscribe response) throttling causes delayed channel list change.

refactor(shared-worker): add output of requests processed by the `SharedWorker`

Modify the `log` payload for `SharedWorker` to make it possible to log sent / received requests
information to the main browser window (not to the SharedWorker console).

* feat(shared-worker): emit heartbeat processing status

Depending on client configuration, it will emit `status` for heartbeat, which has been started by the `SharedWorker` backup heartbeat timer mechanism.

feat(shared-worker): stop `backup` heartbeats on 403

Stop heartbeats until the auth key / access token is changed. On change, `SharedWorker` will send an immediate heartbeat request.

refactor(shared-worker): restart `backup` heartbeat on explicit heartbeat

Restart the timer of the backup heartbeat if an explicit heartbeat request has been received from the main PubNub client.

* fix(subscription-set): fix issue with global subscription set

Fix the issue with the global subscription set (used for legacy interface support) because of which
`unsubscribe` with the legacy interface wasn't able to complete the unsubscribe process.

* refactor(shared-worker): move some logs before request sending

To avoid confusion in the logs reading where the message about sending the request appears earlier
than it should, move the log output before sending the request.

* refactor(shared-worker): announce request sending logs to interested clients

Make sure that more clients will receive log messages about request sending (we're limited to a
single client for heartbeat requests).

refactor(shared-worker): change log message when heartbeat impossible for presence-only channels

Change the misleading console message for heartbeat requests, which are scheduled for
presence-only (`-pnpres`).

* test: subscription/presence behavior with shared-worker (#463)

* added karma configuration for sharedworker tests with headless browser,
added tests with edge cases for subscribe/unsubscribe with sharedworker

* fix: shared worker tests to adapt quick subscription aggregation handling compatible behaviour

* test: shared worker subscription aggregation and isolation in message distribution in scenario where messages arrive in one of the aggregated channel entities

* test(shared-worker): added test for token management, to test token change behaviour in share worker active subscription

* test(shared-worker): added message verification to confirm subscription change, added new test to verify resubscribing to same channel with message reecive check

* test(shared-worker): test cleanup, removed debug logs

* test(shared-worker) confirm auth token changes through middleware generated request url

* test: added test to inspect presence behaviour mimicking tab close activities

---------

Co-authored-by: Mohit Tejani <[email protected]>

* refactor(shared-worker): incorporate server threshold into heartbeat filter

Incorporate a 3-second threshold from the server to the logic that is used to skip heartbeat
requests if it has been sent too soon (because the previous one was not so long ago).

* fix(shared-worker): fix issue which prevented catchup

Fix the condition that, in some cases (burst subscribe from registered clients) incorrectly
identified when the initial subscribe REST API response should be patched with catch timetoken.

* refactor(shared-worker): re-adjust "backup" timer on early heartbeat

Re-adjust "backup" heartbeat timer when one of the clients request sent too early after previous
request.

* PubNub SDK v9.8.0 release.

---------

Co-authored-by: Mohit Tejani <[email protected]>
Co-authored-by: Mohit Tejani <[email protected]>
Co-authored-by: PubNub Release Bot <[email protected]>