Overview
March includes significant performance improvements for daily-js and react-native-daily-js, with the initial call-machine bundle now ~2MB smaller through dynamic loading. Audio processor errors no longer automatically mute the microphone, andtestCallQuality() reliability has been fixed. On the server side, VCS streaming layouts gain animation support, and a new max_api_keys domain property lets you limit API key creation per domain. The oldest supported daily-js version has been bumped to 0.81.0, with versions through 0.83.1 approaching end-of-support.
Complete release history for our client SDKs is available in our Github release notes:
daily-js
View full release notes →0.89.1
- Fixed an issue causing all
testCallQuality()tests to fail. - Fixed remaining vulnerabilities in dependencies.
0.89.0
- Reduced initial call-machine bundle download size by ~2MB. Larger portions are now dynamically loaded as-needed.
- Audio processor errors no longer automatically mute the microphone.
- Removed the client-side 3-hour limit for raw-tracks recordings. Limits are now handled server-side.
- Fixed auto-syncing audio output device on Safari, where
setSinkIdrequires a user gesture and was causing repeated errors. - Improved system idle detection to avoid stale reconnect retries after 5 minutes of inactivity. Calls will now leave cleanly in idle scenarios.
- Breaking: If you self-host the call-machine-bundle using
callObjectBundleUrlOverride, a new separate bundle is now required for Krisp noise cancellation. Contact help@daily.co for upgrade instructions.
react-native-daily-js
View full release notes →0.84.1
- Fixed remaining vulnerabilities in dependencies.
0.84.0
- Reduced initial call-machine bundle download size by ~2MB with dynamic loading.
- Added
digitDurationMsoption tosendDTMF()for configurable DTMF digit duration. - Removed the client-side 3-hour limit for raw-tracks recordings.
- Improved system idle detection to avoid stale reconnect retries after 5 minutes of inactivity.
- Breaking: If you self-host the call-machine-bundle using
callObjectBundleUrlOverride, a new separate bundle is now required for Krisp noise cancellation. Contact help@daily.co for upgrade instructions.
Dashboard
- Added a configurable
max_api_keysdomain property to set the maximum number of API keys allowed per domain.
Media Services
Telephony
- Fixed video not working with Linphone SIP client.
- Improved STUN server fallback during SDP negotiation retry.
- Fixed hung media workers caused by unresolved SIP transport promises.
- Improved handling of active SIP sessions during meeting moves.
- Broadcast app messages are no longer sent to participants in the knocking (waiting room) state.
- Oldest supported daily-js version bumped to 0.81.0. Versions through 0.83.1 are approaching end-of-support.
Streaming
- The new VCS pipeline is now the default for new customers. In April, we are transitioning existing customers to the new pipeline; the legacy pipeline will be EOLed later this summer. In the meantime, you can switch between the new and legacy pipelines with the
enable_legacy_compositorflag. - Added a layout animation system for VCS (Video Compositing Service) streaming layouts.
- Fixed RTMP URL handling for streaming destinations.
- Improved jitter buffer latency and added video stall detection for RTMP streaming.
Recording
- Added
event-jsonas a validdataOutputsoption for recordings via the REST API. We’re considering makingevent-jsonthe default output format and invite feedback from the community. Note that this would add an additionalevent-jsonfile to the existing S3 folder and may break downstream workflows that assume only media files are present.
REST API
- Added validation for the
cloud-audio-onlyroom and meeting token property. - New
max_api_keysdomain property to configure the maximum number of API keys per domain.