Skip to content

Update LiveKit dependencies (non-major) - #215

Open
renovate[bot] wants to merge 1 commit into
mainfrom
renovate/livekit-dependencies-(non-major)
Open

Update LiveKit dependencies (non-major)#215
renovate[bot] wants to merge 1 commit into
mainfrom
renovate/livekit-dependencies-(non-major)

Conversation

@renovate

@renovate renovate Bot commented Jul 24, 2026

Copy link
Copy Markdown
Contributor

This PR contains the following updates:

Package Change Age Confidence
@livekit/components-core (source) 0.12.130.12.15 age confidence
@livekit/components-react (source) 2.9.212.9.24 age confidence
@livekit/protocol 1.46.41.51.0 age confidence
livekit-client 2.19.12.22.2 age confidence
livekit-server-sdk (source) 2.15.42.18.0 age confidence

Release Notes

livekit/components-js (@​livekit/components-core)

v0.12.15

Compare Source

Patch Changes
  • Preserve chat attachment order and MIME type. setupChat combined the per-attachment futures with mergeMap, which emits as each promise resolves — so attachedFiles was ordered by download completion (smallest file first) rather than the order the sender picked them; it now uses concatMap, which sequences the emissions of the already-in-flight promises. Received files were also reconstructed as new File(buffer, fileName) with no type, leaving File.type empty — so ChatEntry's file.type.startsWith('image/') check could never be true for a received attachment and incoming images rendered as nothing. The byte stream's mimeType is now carried through to the File. - #​1419 (@​vgerasymenko)

  • Add useAgentExpression to the React SDK, reading the mood the agent publishes on lk.expression. - #​1415 (@​theomonnom)

v0.12.14

Compare Source

Patch Changes
  • Require livekit-client >= 2.20.1. That release ships the NonSharedUint8Array - #​1360 (@​1egoman)
    type declaration in its published types; earlier 2.19/2.20.0 builds referenced it
    without shipping it, which broke type resolution for consumers (skipLibCheck: false)
    and API Extractor. The local workaround shim is removed now that the type resolves
    from livekit-client itself.
livekit/protocol (@​livekit/protocol)

v1.51.0

Compare Source

Minor Changes
  • egress v2: add passthrough to the encoding oneof on StartEgressRequest and ExportReplayRequest; remove the unused EgressHandler.UpdateEgress RPC and the livekit.UpdateEgressRequest message - #​1716 (@​frostbyte73)

  • add RoomEndReason enum and report it on room-ended telemetry: AnalyticsEvent.room_end_reason and WebhookEvent.room_end_reason now say why a room ended (ROOM_END_API_DELETE, ROOM_END_IDLE_TIMEOUT, ROOM_END_SERVER_SHUTDOWN, ROOM_END_SUPERSEDED, ROOM_END_OPEN_FAILED), so room-end volume can be broken down by cause the way participant disconnects already are - #​1748 (@​paulwe)

  • TransferSIPParticipant now returns TransferSIPParticipantResponse instead of google.protobuf.Empty, carrying the transfer id, status, a new SIPTransferReason and the SIP status when the outcome came from a SIP response. SIPTransferInfo gains the same reason. This changes the generated method signature: a transfer that reports a non-successful status without an error means the transfer did not complete. - #​1730 (@​genseric-ghiro)

  • Moved egress passthrough option to an encoding preset. - #​1718 (@​frostbyte73)

Patch Changes
  • Add agent_job_started / agent_job_ended webhook events and a job field on WebhookEvent - #​1711 (@​erikhortsch)

  • utils/list: mutations involving a node the list does not own — removing or moving an unlinked node, inserting an already-linked node, or inserting relative to an unlinked mark — are now no-ops, as in container/list. Previously an unlinked node's zeroed hook made Remove/MoveToFront/MoveToBack clear the list's head and tail, silently stranding every remaining element, and re-inserting a linked node forked the list. - #​1753 (@​paulwe)

  • utils.Promise gains Then(func(T, error)), registering a callback to run when the promise resolves. Callbacks run on the goroutine that calls Resolve, in registration order; registering on an already-resolved promise runs the callback inline on the caller. NewPromise no longer allocates the done channel up front — Done() already created it lazily. - #​1747 (@​paulwe)

  • Add an error_code label to the livekit_psrpc_error_total metric. - #​1699 (@​paulwe)

  • Add realtime (speech-to-speech) reporter methods to gatewayobs, regenerated from cloud-observability schema/gateway.yaml realtime billing columns (#​502). - #​1663 (@​russellmartin-livekit)

  • agent simulation: add conciseness and conversation_progression to SimulationRun.RunMetrics - #​1742 (@​u9g)

  • Add background_noise, low_quality_microphone, and packet_loss to SimulationRun.Create.Request, so an audio simulation run can impair the simulated user's audio. - #​1723 (@​u9g)

  • Add to_user_override to CreateSIPParticipantRequest to override the user part of the To header, and warn when To/Via are set in the SIP headers map. - #​1717 (@​genseric-ghiro)

  • Remove extraneous format specifier from log string. - #​1682 (@​alexfish8)

  • Move the config observer into utils/configutil and drop the stuttering Config prefix. utils.ConfigObserver, utils.ConfigBuilder, utils.ConfigDefaulter and utils.NewConfigObserver remain as aliases. - #​1712 (@​paulwe)

  • Track holder goroutines of stuck locks (all RWMutex readers up to 8) and resolve their current stacks - #​1701 (@​erikhortsch)

  • Add data track subscription to sync state - #​1703 (@​boks1971)

v1.50.4

Compare Source

Patch Changes

v1.50.3

Compare Source

Patch Changes
  • agent simulation: homogenizes Turn/Job/Run LLM/TTS/STT/Conversation metrics shapes - #​1673 (@​Bobronium)

v1.50.2

Compare Source

v1.50.1

Compare Source

Patch Changes
  • Fix recursive call to CreateSIPInboundTrunkRequest.ValidateResult. - #​1669 (@​alexfish8)

  • agent simulation JobMetrics: add TTS.cer, add STT/TTS words/chars counts, replace jobs_failed with jobs_measured - #​1670 (@​Bobronium)

v1.50.0

Compare Source

Minor Changes
  • agent: add llm_node_tps and llm_node_ttfs to MetricsReport, and an AgentFalseInterruption event to AgentSessionEvent - #​1661 (@​Bobronium)

  • agent_simulations: add JobMetrics/RunMetrics to SimulationRun — per-job quality metrics grouped by - #​1644 (@​Bobronium)
    pipeline stage (stt/llm/tts/conversation, plus a per-turn timeline and headline
    accuracy/experience scores) and run-level aggregates. Unset optional fields mean "not measured";

  • Add validation method variants that include information about soft errors. - #​1667 (@​alexfish8)

Patch Changes

v1.49.0

Compare Source

Minor Changes
Patch Changes

v1.48.2

Compare Source

Patch Changes

v1.48.1

Compare Source

Patch Changes

v1.48.0

Compare Source

Minor Changes
Patch Changes

v1.47.0

Compare Source

Minor Changes
  • agent simulation: add SimulationMode to the Create request and run info, so a - #​1627 (@​Bobronium)
    run can request audio mode. Unspecified stays TEXT, so existing callers are
    unaffected.

v1.46.8

Compare Source

v1.46.7

Compare Source

Patch Changes

v1.46.6

Compare Source

Patch Changes

v1.46.5

Compare Source

Patch Changes
livekit/client-sdk-js (livekit-client)

v2.22.2

Compare Source

Patch Changes
  • Fix the subscriber silently buffering remote ICE candidates after a reconnect - #​2054 (@​xianshijing-lk)

    triggerIceRestart put the subscriber into restartingIce on every reconnect, but only
    setRemoteDescription clears that — and the server re-offers the subscriber only when the
    reconnect moved the participant to a different node. After an ordinary signal-only resume no
    offer arrives, so the flag stayed set for the lifetime of the transport and every subsequent
    remote candidate was queued instead of applied, leaving the subscriber unable to adopt any new
    network path the server proposed. The subscriber no longer enters that state: the server does
    not send candidates ahead of the offer that introduces them, so queueing them gains nothing.

  • fix: track ws close with attemptId - #​2069 (@​lukasIO)

  • fix: ensure buffered events are flushed on signal reconnection - #​2044 (@​lukasIO)

  • fix: error on datastreams when chunks are missing - #​2073 (@​lukasIO)

v2.22.1

Compare Source

Patch Changes

v2.22.0

Compare Source

Minor Changes
Patch Changes
  • Decode text data streams without TextDecoder fatal mode for broader runtime support - #​2037 (@​JoelTowell)

  • fix: ensure buffered events are flushed on signal reconnection - #​2043 (@​lukasIO)

  • fix: cancel pending onTrack callbacks when subscription fails - #​2019 (@​lukasIO)

  • fix: match opus fmtp parameters by exact token and look up the opus codec case-insensitively when munging SDP - #​2036 (@​lukasIO)

  • Only run the TrackEvent.TimeSyncUpdate animation frame loop while something is subscribed to the event, and clear the frame handle when a track's monitor is stopped so the loop can be restarted - #​2038 (@​U-OK)

  • fix: emit TrackStreamStateChanged again by reading the previous stream state before overwriting it - #​2039 (@​tomkail)

  • Apply the resolved degradation preference to the backup codec's sender - #​2040 (@​xianshijing-lk)

    Degradation preference is a property of the sender, not of the track, and a backup codec publishes over its own sender. Previously only the primary sender was configured, so the backup encoder resolved a preference implicitly and could adapt along a different axis than the primary.

  • fix: recover broken publish paths — act on local ConnectionQuality.Lost, recreate the peer connection when an ICE restart has no remote description, bound how long a transport may stay connecting, and reconnect (instead of disconnecting) on a detected connection state mismatch - #​2030 (@​lukasIO)

  • fix: enable Terser mangle.safari10 to fix scoping issues for variables in react-native - #​2028 (@​davidliu)

  • fix: ensure dd extension also for recvonly - #​2052 (@​lukasIO)

v2.21.0

Compare Source

Minor Changes
Patch Changes

v2.20.2

Compare Source

Patch Changes
  • Ensure empty error reasons use fallback notation - #​1999 (@​lukasIO)

  • Remove stale data track subscriber handles from the packet routing table - #​2011 (@​ladvoc)

  • Fix the reliable data channel dying under concurrent / multi-packet writes (#​1995). Data-channel sends now use two-watermark flow control (fill up to a high-water mark, resume when drained to a low-water mark) and serialize contended senders through a per-kind lock, which prevents the SCTP send buffer from overflowing while keeping throughput saturated for data tracks. - #​2013 (@​1egoman)

  • Handle data track SID reassignment - #​2000 (@​ladvoc)

  • Keep attached audio elements muted in startAudio() when webAudioMix is enabled, preventing double playback on platforms where element.volume has no effect (e.g. iOS Safari) - #​2004 (@​sawa-zen)

  • Add a localAudioTrack.applyConstraints method with a subset of AudioCaptureOptions - #​2001 (@​lukasIO)

v2.20.1

Compare Source

Patch Changes
  • Conform placeholder sections to the canonical fmtp for each shared payload - #​1993 (@​lukasIO)

  • Include the NonSharedUint8Array type polyfill in the published declarations. - #​1997 (@​1egoman)

    The type was declared in an ambient .d.ts that was resolved during our own
    build but never emitted to dist, so the published .d.ts files referenced a
    type consumers could not resolve — surfacing as Cannot find name 'NonSharedUint8Array' under skipLibCheck: false and as Unable to follow symbol for "NonSharedUint8Array" in API Extractor (which broke downstream
    packages such as @livekit/components-*). The polyfill is now an exported type
    that is imported explicitly wherever it is used, so it ships in dist and the
    published types type-check standalone.

  • Add support for user_data frame metadata trailer type - #​1983 (@​chenosaurus)

v2.20.0

Compare Source

Minor Changes
Patch Changes

v2.19.2

Compare Source

Patch Changes
livekit/node-sdks (livekit-server-sdk)

v2.18.0

Compare Source

Minor Changes
  • Add EgressClient.startEgress(), a unified convenience method that calls the v2 Egress.StartEgress RPC with a StartEgressRequest (or a partial init object). The existing per-type start helpers are unchanged. - #​706 (@​frostbyte73)
Patch Changes
  • update e2ee defaults to confirm to required FFI fields and update protocol - #​708 (@​lukasIO)

v2.17.0

Compare Source

Minor Changes
  • Add LiveKitAPI, a unified entry point that exposes every server API through a property (api.room, api.egress, api.ingress, api.sip, api.agentDispatch, api.connector). It can be constructed with an API key and secret, or with a pre-signed token (no secret required, so it can run client-side), and falls back to the LIVEKIT_URL, LIVEKIT_API_KEY, LIVEKIT_API_SECRET, and LIVEKIT_TOKEN environment variables. Individual clients also accept a token via ClientOptions. - #​695 (@​davidzhao)

  • Add SipCallError, a TwirpError subclass thrown by SipClient.createSipParticipant / transferSipParticipant when a call fails with a SIP status. It exposes the SIP response code and reason as sipStatusCode / sipStatus getters, while other error metadata remains available via metadata. - #​695 (@​davidzhao)

Patch Changes

v2.16.0

Compare Source

Minor Changes
Patch Changes

v2.15.5

Compare Source

Patch Changes

Configuration

📅 Schedule: (UTC)

  • Branch creation
    • At any time (no schedule defined)
  • Automerge
    • At any time (no schedule defined)

🚦 Automerge: Enabled.

Rebasing: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.

👻 Immortal: This PR will be recreated if closed unmerged. Get config help if that's undesired.


  • If you want to rebase/retry this PR, check this box

This PR was generated by Mend Renovate. View the repository job log.

@renovate
renovate Bot force-pushed the renovate/livekit-dependencies-(non-major) branch 2 times, most recently from 1e005d2 to cd71ce5 Compare August 17, 2026 14:32
@renovate
renovate Bot force-pushed the renovate/livekit-dependencies-(non-major) branch from cd71ce5 to bce467b Compare August 18, 2026 19:59
@renovate
renovate Bot force-pushed the renovate/livekit-dependencies-(non-major) branch 2 times, most recently from 7b27943 to e895c82 Compare August 31, 2026 19:35
@renovate
renovate Bot force-pushed the renovate/livekit-dependencies-(non-major) branch from e895c82 to 6eacfe4 Compare September 1, 2026 19:10
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

0 participants