subscription_thread_dispatcher: guard against duplicate room events #266
ci.yml
on: pull_request
Detect Changes
7s
License Check
/
License Check
5s
Link Check
/
Link Check
8s
Matrix: Builds / build
Matrix: Tests / test
Tests
/
Code Coverage
17m 19s
C++ Checks
/
clang-format
17s
C++ Checks
/
clang-tidy
11m 9s
Generate Docs
/
Generate and verify docs
23s
Rust Release Check
/
Rust Release Check
Docker Images
/
Build (cpp-example-collection-linux-arm64)
Docker Images
/
Publish SDK manifest
Docker Images
/
Publish base manifest
Docker Images
/
Build (cpp-example-collection-x64)
CI
5s
Annotations
6 errors and 30 warnings
|
Tests / Test (macos-arm64)
Process completed with exit code 134.
|
|
Tests / Test (linux-arm64)
Process completed with exit code 134.
|
|
Tests / Test (linux-x64)
Process completed with exit code 134.
|
|
Tests / Test (macos-x64)
Process completed with exit code 139.
|
|
Tests / Test (windows-x64)
Process completed with exit code 3.
|
|
CI
Jobs (tests) failed
|
|
Builds / Build (macos-arm64)
The following taps are not trusted:
aws/tap
Homebrew is currently ignoring formulae, casks and commands from these taps because tap trust is required.
Untap them with:
brew untap aws/tap
Trust specific formulae, casks and commands with:
brew trust --formula <user>/<tap>/<formula>
brew trust --cask <user>/<tap>/<cask>
brew trust --command <user>/<tap>/<command>
Whole-tap trust is broader and includes all current and future formulae,
casks and commands from the listed taps. Trust whole taps with:
brew trust aws/tap
To disable trust checks:
export HOMEBREW_NO_REQUIRE_TAP_TRUST=1
This is not recommended and will be removed in a later release.
For more information, see:
https://docs.brew.sh/Tap-Trust
|
|
Tests / Test (macos-arm64)
The following taps are not trusted:
aws/tap
Homebrew is currently ignoring formulae, casks and commands from these taps because tap trust is required.
Untap them with:
brew untap aws/tap
Trust specific formulae, casks and commands with:
brew trust --formula <user>/<tap>/<formula>
brew trust --cask <user>/<tap>/<cask>
brew trust --command <user>/<tap>/<command>
Whole-tap trust is broader and includes all current and future formulae,
casks and commands from the listed taps. Trust whole taps with:
brew trust aws/tap
To disable trust checks:
export HOMEBREW_NO_REQUIRE_TAP_TRUST=1
This is not recommended and will be removed in a later release.
For more information, see:
https://docs.brew.sh/Tap-Trust
|
|
Tests / Test (macos-arm64)
The following taps are not trusted:
aws/tap
Homebrew is currently ignoring formulae, casks and commands from these taps because tap trust is required.
Untap them with:
brew untap aws/tap
Trust specific formulae, casks and commands with:
brew trust --formula <user>/<tap>/<formula>
brew trust --cask <user>/<tap>/<cask>
brew trust --command <user>/<tap>/<command>
Whole-tap trust is broader and includes all current and future formulae,
casks and commands from the listed taps. Trust whole taps with:
brew trust aws/tap
For more information, see:
https://docs.brew.sh/Tap-Trust
|
|
Tests / Test (macos-arm64)
The following taps are not trusted:
aws/tap
Homebrew is currently ignoring formulae, casks and commands from these taps because tap trust is required.
Untap them with:
brew untap aws/tap
Trust specific formulae, casks and commands with:
brew trust --formula <user>/<tap>/<formula>
brew trust --cask <user>/<tap>/<cask>
brew trust --command <user>/<tap>/<command>
Whole-tap trust is broader and includes all current and future formulae,
casks and commands from the listed taps. Trust whole taps with:
brew trust aws/tap
To disable trust checks:
export HOMEBREW_NO_REQUIRE_TAP_TRUST=1
This is not recommended and will be removed in a later release.
For more information, see:
https://docs.brew.sh/Tap-Trust
|
|
Builds / Build (windows-x64):
src/ffi_client.h#L222
'livekit::FfiClient::listeners_': 'std::unordered_map<livekit::FfiClient::ListenerId,std::shared_ptr<livekit::FfiClient::ListenerSlot>,std::hash<int>,std::equal_to<livekit::FfiClient::ListenerId>,std::allocator<std::pair<const livekit::FfiClient::ListenerId,std::shared_ptr<livekit::FfiClient::ListenerSlot>>>>' needs to have dll-interface to be used by clients of 'livekit::FfiClient' [D:\a\client-sdk-cpp\client-sdk-cpp\build-release\livekit.vcxproj]
|
|
Builds / Build (windows-x64):
include/livekit/audio_frame.h#L88
'livekit::AudioFrame::data_': 'std::vector<int16_t,std::allocator<int16_t>>' needs to have dll-interface to be used by clients of 'livekit::AudioFrame' [D:\a\client-sdk-cpp\client-sdk-cpp\build-release\livekit.vcxproj]
|
|
Builds / Build (windows-x64):
src/ffi_client.h#L233
'livekit::FfiClient::lifecycle_state_': 'std::atomic<livekit::FfiClient::LifecycleState>' needs to have dll-interface to be used by clients of 'livekit::FfiClient' [D:\a\client-sdk-cpp\client-sdk-cpp\build-release\livekit.vcxproj]
|
|
Builds / Build (windows-x64):
src/ffi_client.h#L229
'livekit::FfiClient::next_async_id_': 'std::atomic<unsigned __int64>' needs to have dll-interface to be used by clients of 'livekit::FfiClient' [D:\a\client-sdk-cpp\client-sdk-cpp\build-release\livekit.vcxproj]
|
|
Builds / Build (windows-x64):
src/ffi_client.h#L227
'livekit::FfiClient::pending_by_id_': 'std::unordered_map<livekit::FfiClient::AsyncId,std::unique_ptr<livekit::FfiClient::PendingBase,std::default_delete<livekit::FfiClient::PendingBase>>,std::hash<livekit::FfiClient::AsyncId>,std::equal_to<livekit::FfiClient::AsyncId>,std::allocator<std::pair<const livekit::FfiClient::AsyncId,std::unique_ptr<livekit::FfiClient::PendingBase,std::default_delete<livekit::FfiClient::PendingBase>>>>>' needs to have dll-interface to be used by clients of 'livekit::FfiClient' [D:\a\client-sdk-cpp\client-sdk-cpp\build-release\livekit.vcxproj]
|
|
Builds / Build (windows-x64):
src/ffi_client.h#L224
'livekit::FfiClient::next_listener_id': 'std::atomic<int>' needs to have dll-interface to be used by clients of 'livekit::FfiClient' [D:\a\client-sdk-cpp\client-sdk-cpp\build-release\livekit.vcxproj]
|
|
Builds / Build (windows-x64):
src/ffi_client.h#L222
'livekit::FfiClient::listeners_': 'std::unordered_map<livekit::FfiClient::ListenerId,std::shared_ptr<livekit::FfiClient::ListenerSlot>,std::hash<int>,std::equal_to<livekit::FfiClient::ListenerId>,std::allocator<std::pair<const livekit::FfiClient::ListenerId,std::shared_ptr<livekit::FfiClient::ListenerSlot>>>>' needs to have dll-interface to be used by clients of 'livekit::FfiClient' [D:\a\client-sdk-cpp\client-sdk-cpp\build-release\livekit.vcxproj]
|
|
Builds / Build (windows-x64):
include/livekit/audio_frame.h#L88
'livekit::AudioFrame::data_': 'std::vector<int16_t,std::allocator<int16_t>>' needs to have dll-interface to be used by clients of 'livekit::AudioFrame' [D:\a\client-sdk-cpp\client-sdk-cpp\build-release\livekit.vcxproj]
|
|
Builds / Build (windows-x64):
include/livekit/audio_frame.h#L88
'livekit::AudioFrame::data_': 'std::vector<int16_t,std::allocator<int16_t>>' needs to have dll-interface to be used by clients of 'livekit::AudioFrame' [D:\a\client-sdk-cpp\client-sdk-cpp\build-release\livekit.vcxproj]
|
|
Builds / Build (windows-x64)
Custom build for item "D:\a\client-sdk-cpp\client-sdk-cpp\build-release\CMakeFiles\da7240c96278d463ff60cb3c2ab9931d\livekit_ffi.dll.lib.rule" succeeded, but specified output "d:\a\client-sdk-cpp\client-sdk-cpp\client-sdk-rust\target\debug\livekit_ffi.dll.lib" has not been created. This may cause incremental build to work incorrectly. [D:\a\client-sdk-cpp\client-sdk-cpp\build-release\build_rust_ffi.vcxproj]
|
|
Builds / Build (macos-x64)
The following taps are not trusted:
aws/tap
Homebrew is currently ignoring formulae, casks and commands from these taps because tap trust is required.
Untap them with:
brew untap aws/tap
Trust specific formulae, casks and commands with:
brew trust --formula <user>/<tap>/<formula>
brew trust --cask <user>/<tap>/<cask>
brew trust --command <user>/<tap>/<command>
Whole-tap trust is broader and includes all current and future formulae,
casks and commands from the listed taps. Trust whole taps with:
brew trust aws/tap
To disable trust checks:
export HOMEBREW_NO_REQUIRE_TAP_TRUST=1
This is not recommended and will be removed in a later release.
For more information, see:
https://docs.brew.sh/Tap-Trust
|
|
Tests / Test (macos-x64)
The following taps are not trusted:
aws/tap
Homebrew is currently ignoring formulae, casks and commands from these taps because tap trust is required.
Untap them with:
brew untap aws/tap
Trust specific formulae, casks and commands with:
brew trust --formula <user>/<tap>/<formula>
brew trust --cask <user>/<tap>/<cask>
brew trust --command <user>/<tap>/<command>
Whole-tap trust is broader and includes all current and future formulae,
casks and commands from the listed taps. Trust whole taps with:
brew trust aws/tap
To disable trust checks:
export HOMEBREW_NO_REQUIRE_TAP_TRUST=1
This is not recommended and will be removed in a later release.
For more information, see:
https://docs.brew.sh/Tap-Trust
|
|
Tests / Test (macos-x64)
The following taps are not trusted:
aws/tap
Homebrew is currently ignoring formulae, casks and commands from these taps because tap trust is required.
Untap them with:
brew untap aws/tap
Trust specific formulae, casks and commands with:
brew trust --formula <user>/<tap>/<formula>
brew trust --cask <user>/<tap>/<cask>
brew trust --command <user>/<tap>/<command>
Whole-tap trust is broader and includes all current and future formulae,
casks and commands from the listed taps. Trust whole taps with:
brew trust aws/tap
For more information, see:
https://docs.brew.sh/Tap-Trust
|
|
Tests / Test (macos-x64)
The following taps are not trusted:
aws/tap
Homebrew is currently ignoring formulae, casks and commands from these taps because tap trust is required.
Untap them with:
brew untap aws/tap
Trust specific formulae, casks and commands with:
brew trust --formula <user>/<tap>/<formula>
brew trust --cask <user>/<tap>/<cask>
brew trust --command <user>/<tap>/<command>
Whole-tap trust is broader and includes all current and future formulae,
casks and commands from the listed taps. Trust whole taps with:
brew trust aws/tap
To disable trust checks:
export HOMEBREW_NO_REQUIRE_TAP_TRUST=1
This is not recommended and will be removed in a later release.
For more information, see:
https://docs.brew.sh/Tap-Trust
|
|
Tests / Test (windows-x64):
src/ffi_client.h#L222
'livekit::FfiClient::listeners_': 'std::unordered_map<livekit::FfiClient::ListenerId,std::shared_ptr<livekit::FfiClient::ListenerSlot>,std::hash<int>,std::equal_to<livekit::FfiClient::ListenerId>,std::allocator<std::pair<const livekit::FfiClient::ListenerId,std::shared_ptr<livekit::FfiClient::ListenerSlot>>>>' needs to have dll-interface to be used by clients of 'livekit::FfiClient' [D:\a\client-sdk-cpp\client-sdk-cpp\build-release\livekit.vcxproj]
|
|
Tests / Test (windows-x64):
include/livekit/audio_frame.h#L88
'livekit::AudioFrame::data_': 'std::vector<int16_t,std::allocator<int16_t>>' needs to have dll-interface to be used by clients of 'livekit::AudioFrame' [D:\a\client-sdk-cpp\client-sdk-cpp\build-release\livekit.vcxproj]
|
|
Tests / Test (windows-x64):
src/ffi_client.h#L233
'livekit::FfiClient::lifecycle_state_': 'std::atomic<livekit::FfiClient::LifecycleState>' needs to have dll-interface to be used by clients of 'livekit::FfiClient' [D:\a\client-sdk-cpp\client-sdk-cpp\build-release\livekit.vcxproj]
|
|
Tests / Test (windows-x64):
src/ffi_client.h#L229
'livekit::FfiClient::next_async_id_': 'std::atomic<unsigned __int64>' needs to have dll-interface to be used by clients of 'livekit::FfiClient' [D:\a\client-sdk-cpp\client-sdk-cpp\build-release\livekit.vcxproj]
|
|
Tests / Test (windows-x64):
src/ffi_client.h#L227
'livekit::FfiClient::pending_by_id_': 'std::unordered_map<livekit::FfiClient::AsyncId,std::unique_ptr<livekit::FfiClient::PendingBase,std::default_delete<livekit::FfiClient::PendingBase>>,std::hash<livekit::FfiClient::AsyncId>,std::equal_to<livekit::FfiClient::AsyncId>,std::allocator<std::pair<const livekit::FfiClient::AsyncId,std::unique_ptr<livekit::FfiClient::PendingBase,std::default_delete<livekit::FfiClient::PendingBase>>>>>' needs to have dll-interface to be used by clients of 'livekit::FfiClient' [D:\a\client-sdk-cpp\client-sdk-cpp\build-release\livekit.vcxproj]
|
|
Tests / Test (windows-x64):
src/ffi_client.h#L224
'livekit::FfiClient::next_listener_id': 'std::atomic<int>' needs to have dll-interface to be used by clients of 'livekit::FfiClient' [D:\a\client-sdk-cpp\client-sdk-cpp\build-release\livekit.vcxproj]
|
|
Tests / Test (windows-x64):
src/ffi_client.h#L222
'livekit::FfiClient::listeners_': 'std::unordered_map<livekit::FfiClient::ListenerId,std::shared_ptr<livekit::FfiClient::ListenerSlot>,std::hash<int>,std::equal_to<livekit::FfiClient::ListenerId>,std::allocator<std::pair<const livekit::FfiClient::ListenerId,std::shared_ptr<livekit::FfiClient::ListenerSlot>>>>' needs to have dll-interface to be used by clients of 'livekit::FfiClient' [D:\a\client-sdk-cpp\client-sdk-cpp\build-release\livekit.vcxproj]
|
|
Tests / Test (windows-x64):
include/livekit/audio_frame.h#L88
'livekit::AudioFrame::data_': 'std::vector<int16_t,std::allocator<int16_t>>' needs to have dll-interface to be used by clients of 'livekit::AudioFrame' [D:\a\client-sdk-cpp\client-sdk-cpp\build-release\livekit.vcxproj]
|
|
Tests / Test (windows-x64):
include/livekit/audio_frame.h#L88
'livekit::AudioFrame::data_': 'std::vector<int16_t,std::allocator<int16_t>>' needs to have dll-interface to be used by clients of 'livekit::AudioFrame' [D:\a\client-sdk-cpp\client-sdk-cpp\build-release\livekit.vcxproj]
|
|
Tests / Test (windows-x64)
Custom build for item "D:\a\client-sdk-cpp\client-sdk-cpp\build-release\CMakeFiles\da7240c96278d463ff60cb3c2ab9931d\livekit_ffi.dll.lib.rule" succeeded, but specified output "d:\a\client-sdk-cpp\client-sdk-cpp\client-sdk-rust\target\debug\livekit_ffi.dll.lib" has not been created. This may cause incremental build to work incorrectly. [D:\a\client-sdk-cpp\client-sdk-cpp\build-release\build_rust_ffi.vcxproj]
|
|
Tests / Code Coverage
(WARNING) /home/runner/work/client-sdk-cpp/client-sdk-cpp/src/logging.cpp:33: Ignoring negative hits in: branch 7 taken -12.
|
|
CI
Node.js 20 is deprecated. The following actions target Node.js 20 but are being forced to run on Node.js 24: suzuki-shunsuke/required-status-check-action@2b5a46064846b09381852c2c4217e898f639e768. For more information see: https://github.blog/changelog/2025-09-19-deprecation-of-node-20-on-github-actions-runners/
|
Artifacts
Produced during runtime
| Name | Size | Digest | |
|---|---|---|---|
|
coverage-report
|
599 KB |
sha256:29619c4e737462510c22065037dfd94fcbe937d4ab3823158a8f639c71e65a26
|
|
|
livekit-cpp-docs
Expired
|
2.89 MB |
sha256:fe7a6ec566db9e34745d1081b8d83840073469ca8a4839851bd38b33fd0e3060
|
|
|
livekit-sdk-linux-arm64
Expired
|
23.2 MB |
sha256:86e125f971965a44bcadac92982df1ebda356c5f0431b7ab4f3a235b192498de
|
|
|
livekit-sdk-linux-x64
Expired
|
24.9 MB |
sha256:515fab4475111ff591652db9038ad6a6228bcf88649687f99eaa59fbb2fe07c6
|
|
|
livekit-sdk-macos-arm64
Expired
|
19 MB |
sha256:2a81a92f00506c418e4a0b5cc4ffcb0ae3739c99f518000a071fb08d0d336d0a
|
|
|
livekit-sdk-macos-x64
Expired
|
19.9 MB |
sha256:06dbdff6fec3bcdc9d150567e7393a56f8fa1e8adbf3b7552a36df9ba5adde19
|
|
|
livekit-sdk-windows-x64
Expired
|
11.4 MB |
sha256:17f3543b1445a4b1a1e9d0446d531bf9718110f19b2f1f93390a7889be01f9b1
|
|
|
test-results-linux-arm64
Expired
|
2.07 MB |
sha256:e67898fe245187d9259fddf5b8467ae571b66430dd65edd406a96f2e00fea37e
|
|
|
test-results-linux-x64
Expired
|
2.11 MB |
sha256:5bd37ab337cf8baf39d429fd3aa43080863471b5ab6da766672ee2be10a872a0
|
|
|
test-results-macos-arm64
Expired
|
2.14 MB |
sha256:1f9382c7e27bde4b1ac2351191a63501ecd34ecc891a5a2e04b3485aed42b2f2
|
|
|
test-results-macos-x64
Expired
|
1.37 MB |
sha256:0623b02799e6ac6efc54a3de06cd91195a399af84610dc4a90ec3735c79b0189
|
|
|
test-results-windows-x64
Expired
|
2.11 MB |
sha256:04f7f32f24f0e73c48defe1be2dde9523ae37cde48177618c6d21341bdf5983d
|
|