what are the changelogs from this version "livekit...
# ask-ai
r
what are the changelogs from this version "livekit-client": "^2.1.3" to "livekit-client": "^2.17.2"
t
Thanks for reaching out, simo.dev. I'm an AI assistant and I'm here to help. Give me a moment while I research this topic.
Thanks — I understand you want the changelog (what changed) between
livekit-client
v2.1.3 and v2.17.2. I don’t have a complete, line-by-line changelog between those two exact versions, but I can summarize notable additions and point you to the official changelog for full details. Notable changes introduced in the 2.x series (highlights found in the history starting around 2.13+): • 2.14.x ◦ Added CPU constraint events via
ParticipantEvent.LocalTrackCpuConstrained
. • 2.15.0 → 2.15.x ◦ H.265 (HEVC) codec support added. ◦ Manual control over adaptive stream behavior. ◦ Pre-connect audio buffering introduced and later extended to React Native in v2.15.4. ◦ Data message decryption added (v2.15.8). ◦ Single peer connection mode introduced (2.15.9+), reducing connection time and resource usage. ◦ WebSocketStream integration added (2.15.9+). • 2.15.14 → 2.15.16 ◦
TokenSource
abstraction and region URL cache control (2.15.14). ◦ Exponential backoff and improved connection failure handling (2.15.15). ◦ Network switch recovery, VP9 slow-start fix, and text/byte stream persistence (2.15.16). • 2.16.0 ◦ Exposed encryption options. ◦ Improved data channel/buffer behavior. ◦ Region settings cache improvements. • E2EE / encryption improvements across 2.15+ and 2.16 ◦ Frame-level encryption, insertable streams, and key ratcheting enhancements. What I can do next • If you want a complete, version-by-version changelog between v2.1.3 and v2.17.2, the full official changelog on GitHub is the authoritative source: https://github.com/livekit/client-sdk-js/blob/main/CHANGELOG.md • I can also: ◦ Pull out every release note between 2.1.3 and 2.17.2 and summarize them in a single list for you. ◦ Highlight only breaking changes, codec/network/security improvements, or API changes that might require code updates — tell me which you'd prefer. Which would you like me to do next: (A) fetch and summarize every release note between those versions, or (B) highlight only breaking/API changes you need to watch for? Sources: client-sdk-js | livekit/livekit_composite | DeepWiki
r
Highlight only breaking changes, codec/network/security improvements, or API changes that might require code updates
t
Thanks — I’ll highlight the breaking changes, codec/network/security improvements, and API changes that might require code updates between
livekit-client
v2.1.3 and v2.17.2, based on available release notes. Summary (high-impact items to watch for) • Codec support ◦ H.265 (HEVC) support added (v2.15.x and v2.15.8). If you rely on codec selection or codec fallback logic, verify your encoder/decoder handling and any codec constraints you set. ◦ VP9 slow-start fix (v2.15.16). If you tune or monitor VP9 behavior, validate startup and bitrate behavior after upgrade. • Encryption / E2EE ◦ End-to-end encryption improvements across 2.15+ / 2.16: ▪︎ Frame-level encryption, insertable streams, and key ratcheting improvements were introduced. If you use E2EE, confirm compatibility with the new insertable streams APIs and key management; you may need to adapt encryption key handling or integration with insertable streams. ◦ Encryption options were exposed (v2.16.0). Check any custom encryption settings or initialization paths in your app for adjustments. • Connection / network behavior ◦ Single peer connection mode (v2.15.9+): introduces a new connection mode that reduces connection time and resource usage. If your app assumes multiple peer connections or relies on connection lifecycle details, test behavior changes and ensure any connection-management code handles the new mode. ◦ Network switch recovery (v2.15.16): improved recovery when network interfaces change. This usually improves robustness, but confirm any custom network-handling or manual reconnect logic still behaves as expected. ◦ WebSocketStream integration (v2.15.9+): new transport option. If you use custom signaling transports, verify compatibility or consider leveraging this integration if it benefits your setup. ◦ Region URL cache control & region settings cache (v2.15.14, v2.16.0): caching behavior for region/URL resolution changed; if you implement custom region routing or cache invalidation, check interactions with the client’s region cache. • Connection resilience / retry behavior ◦ Exponential backoff and improved connection failure handling (v2.15.15). If you implement custom reconnect/backoff strategies or track connection-failure metrics, verify these semantics and remove or adjust duplicate logic. • Token and auth flows ◦
TokenSource
abstraction added (v2.15.14). If you provide tokens to the client directly, you may want to adopt
TokenSource
for cleaner token refresh handling; older custom token refresh approaches might be simplified or replaced. • Events / API additions that may affect code ◦
ParticipantEvent.LocalTrackCpuConstrained
(v2.14.x): new event you may want to listen for to respond to CPU-constrained local tracks. ◦ Text/byte stream persistence (v2.15.16): changes to data/text stream behavior and persistence may affect apps using data channels or streaming text/bytes—verify any assumptions about ephemeral vs persistent streams. Developer-impact checklist (quick actions before upgrading) • Run integration tests that exercise: ◦ Codec negotiation, especially if you rely on H.265 or VP9. ◦ E2EE flows and key management (insertable streams). ◦ Connection lifecycle: joining/leaving, reconnects, and network switching. ◦ Token refresh logic and any custom auth adapters. ◦ Data channel/text/byte stream behavior. • Search your code for any custom connection/backoff logic and compare with client behavior to avoid duplicate or conflicting behavior. • If you rely on region URL resolution or custom caching, test region changes and forced cache invalidation. • Add listeners for new events you care about (e.g.,
LocalTrackCpuConstrained
). Where to get full, version-by-version details • For a complete authoritative list of changes (every release note and breaking change), see the official changelog: https://github.com/livekit/client-sdk-js/blob/main/CHANGELOG.md If you’d like, I can: • Extract and present only the concrete breaking-change entries between v2.1.3 and v2.17.2 (one-line per version) so you can scan exact breaking edits. • Or produce a short test plan based on the checklist above tailored to your app (web or React Native). Which would you prefer?
r
give me code snippets example for each change
t
I don't have the answer you're looking for. You could also try asking your question: • in one of the other Slack channels or • to https://deepwiki.com/livekit/livekit_composite which is trained on all LiveKit source code If you find the answer, please post it here to help others!