From 3addca5afc238885540a8d1dc4da55cff686e257 Mon Sep 17 00:00:00 2001 From: "github-actions[bot]" <41898282+github-actions[bot]@users.noreply.github.com> Date: Fri, 18 Sep 2026 13:53:05 +0000 Subject: [PATCH] Version Packages --- ...ch-negotiate-on-media-sections-requirement.md | 5 ----- .changeset/disable-ice-lite-connect-option.md | 5 ----- ...document-pip-cross-document-false-positive.md | 5 ----- .changeset/loud-pears-negotiate.md | 5 ----- .changeset/neat-meals-raise.md | 5 ----- .changeset/region-pinning-403-failover.md | 5 ----- CHANGELOG.md | 16 ++++++++++++++++ package.json | 2 +- 8 files changed, 17 insertions(+), 31 deletions(-) delete mode 100644 .changeset/catch-negotiate-on-media-sections-requirement.md delete mode 100644 .changeset/disable-ice-lite-connect-option.md delete mode 100644 .changeset/document-pip-cross-document-false-positive.md delete mode 100644 .changeset/loud-pears-negotiate.md delete mode 100644 .changeset/neat-meals-raise.md delete mode 100644 .changeset/region-pinning-403-failover.md diff --git a/.changeset/catch-negotiate-on-media-sections-requirement.md b/.changeset/catch-negotiate-on-media-sections-requirement.md deleted file mode 100644 index 8d0fc0a150..0000000000 --- a/.changeset/catch-negotiate-on-media-sections-requirement.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'livekit-client': patch ---- - -Catch the rejection from `negotiate()` when the server requests media sections, so a failed renegotiation no longer surfaces as an unhandled promise rejection diff --git a/.changeset/disable-ice-lite-connect-option.md b/.changeset/disable-ice-lite-connect-option.md deleted file mode 100644 index 7a85f95915..0000000000 --- a/.changeset/disable-ice-lite-connect-option.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'livekit-client': patch ---- - -Add `disableIceLite` connect option to request full ICE from a server running ICE lite. diff --git a/.changeset/document-pip-cross-document-false-positive.md b/.changeset/document-pip-cross-document-false-positive.md deleted file mode 100644 index 949c29a030..0000000000 --- a/.changeset/document-pip-cross-document-false-positive.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'livekit-client': patch ---- - -Fix Document Picture-in-Picture detection reporting opener-document elements as being in PiP. `isElementInPiP` compared an element's coordinates (computed within its own document) against the PiP window's viewport without checking which document the element belongs to, so while any Document PiP window was open, every observed video element positioned inside the PiP window's bounds - a tile near the top-left of the page, for example - was treated as in PiP. Because `HTMLElementInfo.visible` is `isPiP || isIntersecting`, those elements also counted as visible while scrolled out of view, which affected adaptiveStream subscription and layer selection. Detection now requires the element to live in the PiP window's document, or in a frame nested inside it. diff --git a/.changeset/loud-pears-negotiate.md b/.changeset/loud-pears-negotiate.md deleted file mode 100644 index 183e4303c9..0000000000 --- a/.changeset/loud-pears-negotiate.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'livekit-client': patch ---- - -Avoid attaching a new Closing/Restarting event listener for each negotiate call diff --git a/.changeset/neat-meals-raise.md b/.changeset/neat-meals-raise.md deleted file mode 100644 index 1b7e8cb9ce..0000000000 --- a/.changeset/neat-meals-raise.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'livekit-client': patch ---- - -Wait for first video frame to be received before responding to waitForDimension on ios diff --git a/.changeset/region-pinning-403-failover.md b/.changeset/region-pinning-403-failover.md deleted file mode 100644 index 3e3ef3e4be..0000000000 --- a/.changeset/region-pinning-403-failover.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'livekit-client': patch ---- - -Retry against other LiveKit Cloud regions when the initial connection is rejected with 403. Cloud signals project-level region pinning with a 403 on the RTC paths, which was previously treated as terminal, so a client that geo-routed to a disallowed region never reached `/settings/regions` and failed to connect. 401 and the 404 "room does not exist" case remain terminal. diff --git a/CHANGELOG.md b/CHANGELOG.md index ade86b0422..e71b984c04 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,5 +1,21 @@ # Change Log +## 2.22.4 + +### Patch Changes + +- Catch the rejection from `negotiate()` when the server requests media sections, so a failed renegotiation no longer surfaces as an unhandled promise rejection - [#2108](https://github.com/livekit/client-sdk-js/pull/2108) ([@SergeAx](https://github.com/SergeAx)) + +- Add `disableIceLite` connect option to request full ICE from a server running ICE lite. - [#2085](https://github.com/livekit/client-sdk-js/pull/2085) ([@subham2006](https://github.com/subham2006)) + +- Fix Document Picture-in-Picture detection reporting opener-document elements as being in PiP. `isElementInPiP` compared an element's coordinates (computed within its own document) against the PiP window's viewport without checking which document the element belongs to, so while any Document PiP window was open, every observed video element positioned inside the PiP window's bounds - a tile near the top-left of the page, for example - was treated as in PiP. Because `HTMLElementInfo.visible` is `isPiP || isIntersecting`, those elements also counted as visible while scrolled out of view, which affected adaptiveStream subscription and layer selection. Detection now requires the element to live in the PiP window's document, or in a frame nested inside it. - [#2106](https://github.com/livekit/client-sdk-js/pull/2106) ([@dkelson](https://github.com/dkelson)) + +- Avoid attaching a new Closing/Restarting event listener for each negotiate call - [#2084](https://github.com/livekit/client-sdk-js/pull/2084) ([@1egoman](https://github.com/1egoman)) + +- Wait for first video frame to be received before responding to waitForDimension on ios - [#2100](https://github.com/livekit/client-sdk-js/pull/2100) ([@1egoman](https://github.com/1egoman)) + +- Retry against other LiveKit Cloud regions when the initial connection is rejected with 403. Cloud signals project-level region pinning with a 403 on the RTC paths, which was previously treated as terminal, so a client that geo-routed to a disallowed region never reached `/settings/regions` and failed to connect. 401 and the 404 "room does not exist" case remain terminal. - [#2097](https://github.com/livekit/client-sdk-js/pull/2097) ([@xianshijing-lk](https://github.com/xianshijing-lk)) + ## 2.22.3 ### Patch Changes diff --git a/package.json b/package.json index 4c3fa3e1e0..e7b56e412a 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "livekit-client", - "version": "2.22.3", + "version": "2.22.4", "description": "JavaScript/TypeScript client SDK for LiveKit", "main": "./dist/livekit-client.umd.js", "unpkg": "./dist/livekit-client.umd.js",