Skip to content

Commit d0e4951

Browse files
authored
Merge branch 'v3' into fix-libsrtp-decryption-issue
2 parents ecbad4c + 3604b1e commit d0e4951

29 files changed

+425
-450
lines changed

.eslintrc.js

Lines changed: 0 additions & 178 deletions
This file was deleted.

.github/workflows/mediasoup-rust.yaml

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -18,6 +18,7 @@ jobs:
1818
ci:
1919
- os: ubuntu-20.04
2020
- os: ubuntu-22.04
21+
- os: ubuntu-24.04
2122
- os: macos-12
2223
- os: macos-14
2324
- os: windows-2022
@@ -46,7 +47,7 @@ jobs:
4647
run: cargo clippy --all-targets -- -D warnings
4748

4849
# NOTE: In Windows this will build and test libmediasoupworker in release
49-
# mode twice since build.rs doesn't allow debug mode for Windows.
50+
# mode twice since build.rs doesn't allow debug mode on Windows.
5051
- name: cargo test
5152
run: |
5253
cargo test --verbose

.github/workflows/mediasoup-worker-fuzzer.yaml

Lines changed: 5 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -13,9 +13,10 @@ jobs:
1313
strategy:
1414
matrix:
1515
build:
16-
- os: ubuntu-22.04
16+
- os: ubuntu-24.04
1717
cc: clang
1818
cxx: clang++
19+
pip-break-system-packages: true
1920
build-type:
2021
- Release
2122
- Debug
@@ -34,12 +35,12 @@ jobs:
3435
uses: actions/checkout@v4
3536

3637
# We need to install pip invoke manually.
37-
- if: runner.os != 'macOS'
38+
- if: ${{ !matrix.build.pip-break-system-packages }}
3839
name: pip3 install invoke
3940
run: pip3 install invoke
4041

41-
# In macOS we need to specify this option.
42-
- if: runner.os == 'macOS'
42+
# In modern OSs we need to run pip with this option.
43+
- if: ${{ matrix.build.pip-break-system-packages }}
4344
name: pip3 install --break-system-packages invoke
4445
run: pip3 install --break-system-packages invoke
4546

.github/workflows/mediasoup-worker-prebuild.yaml

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -19,6 +19,8 @@ jobs:
1919
cc: gcc
2020
cxx: g++
2121
# Worker prebuild for Linux with kernel version 6 Ubuntu (22.04).
22+
# Let's not use Ubutu 24.04 to avoid same potential problem as described
23+
# above.
2224
- os: ubuntu-22.04
2325
cc: gcc
2426
cxx: g++

.github/workflows/mediasoup-worker.yaml

Lines changed: 13 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -31,12 +31,22 @@ jobs:
3131
- os: ubuntu-22.04
3232
cc: clang
3333
cxx: clang++
34+
- os: ubuntu-24.04
35+
cc: gcc
36+
cxx: g++
37+
pip-break-system-packages: true
38+
- os: ubuntu-24.04
39+
cc: clang
40+
cxx: clang++
41+
pip-break-system-packages: true
3442
- os: macos-12
3543
cc: gcc
3644
cxx: g++
45+
pip-break-system-packages: true
3746
- os: macos-14
3847
cc: clang
3948
cxx: clang++
49+
pip-break-system-packages: true
4050
- os: windows-2022
4151
cc: cl
4252
cxx: cl
@@ -75,12 +85,12 @@ jobs:
7585
${{ matrix.build.os }}-node-${{matrix.build.cc}}-
7686
7787
# We need to install pip invoke manually.
78-
- if: runner.os != 'macOS'
88+
- if: ${{ !matrix.build.pip-break-system-packages }}
7989
name: pip3 install invoke
8090
run: pip3 install invoke
8191

82-
# In macOS we need to specify this option.
83-
- if: runner.os == 'macOS'
92+
# In modern OSs we need to run pip with this option.
93+
- if: ${{ matrix.build.pip-break-system-packages }}
8494
name: pip3 install --break-system-packages invoke
8595
run: pip3 install --break-system-packages invoke
8696

CHANGELOG.md

Lines changed: 21 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -2,9 +2,18 @@
22

33
### NEXT
44

5+
- `Worker`: Fix `io_uring` support detection ([PR #1445](https://github.com/versatica/mediasoup/pull/1445)).
6+
- Mitigate libsrtp wraparound with loss decryption failure ([PR #1438](https://github.com/versatica/mediasoup/pull/1438)).
7+
8+
### 3.14.11
9+
10+
- `Worker`: Fix `disableLiburing` option in `WorkerSettings` ([PR #1444](https://github.com/versatica/mediasoup/pull/1444)).
11+
12+
### 3.14.10
13+
514
- CI: Support Node 22 ([PR #1434](https://github.com/versatica/mediasoup/pull/1434)).
615
- Update ESLint to version 9 ([PR #1435](https://github.com/versatica/mediasoup/pull/1435)).
7-
- Mitigate libsrtp wraparound with loss decryption failure ([PR #1438](https://github.com/versatica/mediasoup/pull/1438)).
16+
- `Worker`: Add `disableLiburing` boolean option (`false` by default) to disable `io_uring` even if it's supported by the prebuilt `mediasoup-worker` and by current host ([PR #1442](https://github.com/versatica/mediasoup/pull/1442)).
817

918
### 3.14.9
1019

@@ -247,11 +256,11 @@ Migrate `npm-scripts.js` to `npm-scripts.mjs` (ES Module) ([PR #1093](https://gi
247256

248257
### 3.12.2
249258

250-
- CI: Use `ubuntu-20.04` to build mediasoup-worker prebuilt on Linux ([PR #1092](https://github.com/versatica/mediasoup/pull/1092)).
259+
- CI: Use `ubuntu-20.04` to build `mediasoup-worker` prebuilt on Linux ([PR #1092](https://github.com/versatica/mediasoup/pull/1092)).
251260

252261
### 3.12.1
253262

254-
- mediasoup-worker prebuild: Fallback to local building if fetched binary doesn't run on current host ([PR #1090](https://github.com/versatica/mediasoup/pull/1090)).
263+
- `mediasoup-worker` prebuild: Fallback to local building if fetched binary doesn't run on current host ([PR #1090](https://github.com/versatica/mediasoup/pull/1090)).
255264

256265
### 3.12.0
257266

@@ -665,7 +674,7 @@ Migrate `npm-scripts.js` to `npm-scripts.mjs` (ES Module) ([PR #1093](https://gi
665674
- `Transport`: Implement new `setMaxOutgoingBitrate()` method ([PR #555](https://github.com/versatica/mediasoup/pull/555) by @t-mullen).
666675
- `SctpAssociation`: Don't warn if SCTP send buffer is full.
667676
- Rust: Update modules structure and other minor improvements for Rust version ([PR #558](https://github.com/versatica/mediasoup/pull/558)).
668-
- `mediasoup-worker`: Avoid duplicated basenames so that libmediasoup-worker is compilable on macOS ([PR #557](https://github.com/versatica/mediasoup/pull/557)).
677+
- `mediasoup-worker`: Avoid duplicated basenames so that `libmediasoup-worker` is compilable on macOS ([PR #557](https://github.com/versatica/mediasoup/pull/557)).
669678

670679
### 3.7.5
671680

@@ -778,8 +787,8 @@ Migrate `npm-scripts.js` to `npm-scripts.mjs` (ES Module) ([PR #1093](https://gi
778787

779788
### 3.6.20
780789

781-
- Remove `-fwrapv` when building mediasoup-worker in `Debug` mode (issue #460).
782-
- Add `MEDIASOUP_MAX_CORES` to limit `NUM_CORES` during mediasoup-worker build ([PR #462](https://github.com/versatica/mediasoup/pull/462)).
790+
- Remove `-fwrapv` when building `mediasoup-worker` in `Debug` mode (issue #460).
791+
- Add `MEDIASOUP_MAX_CORES` to limit `NUM_CORES` during `mediasoup-worker` build ([PR #462](https://github.com/versatica/mediasoup/pull/462)).
783792

784793
### 3.6.19
785794

@@ -895,7 +904,7 @@ Migrate `npm-scripts.js` to `npm-scripts.mjs` (ES Module) ([PR #1093](https://gi
895904

896905
- SCTP/DataChannel termination:
897906
- [PR #409](https://github.com/versatica/mediasoup/pull/409)
898-
- Allow the Node application to directly send text/binary messages to mediasoup-worker C++ process so others can consume them using `DataConsumers`.
907+
- Allow the Node application to directly send text/binary messages to `mediasoup-worker` C++ process so others can consume them using `DataConsumers`.
899908
- And vice-versa: allow the Node application to directly consume in Node messages send by `DataProducers`.
900909
- Add `WorkerLogTag` TypeScript enum and also add a new 'message' tag into it.
901910

@@ -945,7 +954,7 @@ Migrate `npm-scripts.js` to `npm-scripts.mjs` (ES Module) ([PR #1093](https://gi
945954

946955
### 3.5.7
947956

948-
- Fix crash in mediasoup-worker due to conversion from `uint64_t` to `int64_t` (used within `libwebrtc` code. Fixes #357.
957+
- Fix crash in `mediasoup-worker` due to conversion from `uint64_t` to `int64_t` (used within `libwebrtc` code. Fixes #357.
949958
- Update `usrsctp` library.
950959
- Update Node deps.
951960

@@ -1059,7 +1068,7 @@ Migrate `npm-scripts.js` to `npm-scripts.mjs` (ES Module) ([PR #1093](https://gi
10591068

10601069
### 3.4.1
10611070

1062-
- Improve mediasoup-worker build system by using `sh` instead of `bash` and default to 4 cores (thanks @smoke, [PR #349](https://github.com/versatica/mediasoup/pull/349)).
1071+
- Improve `mediasoup-worker` build system by using `sh` instead of `bash` and default to 4 cores (thanks @smoke, [PR #349](https://github.com/versatica/mediasoup/pull/349)).
10631072

10641073
### 3.4.0
10651074

@@ -1134,7 +1143,7 @@ Migrate `npm-scripts.js` to `npm-scripts.mjs` (ES Module) ([PR #1093](https://gi
11341143
### 3.2.1
11351144

11361145
- Add RTCP Extended Reports for RTT calculation on receiver RTP stream (thanks @yangjinechofor for initial pull request #314).
1137-
- Make mediasoup-worker compile in Armbian Debian Buster (thanks @krishisola, fixes #321).
1146+
- Make `mediasoup-worker` compile in Armbian Debian Buster (thanks @krishisola, fixes #321).
11381147

11391148
### 3.2.0
11401149

@@ -1256,7 +1265,7 @@ Migrate `npm-scripts.js` to `npm-scripts.mjs` (ES Module) ([PR #1093](https://gi
12561265

12571266
### 2.6.13
12581267

1259-
- Make mediasoup-worker compile in Armbian Debian Buster (thanks @krishisola, fixes #321).
1268+
- Make `mediasoup-worker` compile in Armbian Debian Buster (thanks @krishisola, fixes #321).
12601269
- Update deps.
12611270

12621271
### 2.6.12
@@ -1282,7 +1291,7 @@ Migrate `npm-scripts.js` to `npm-scripts.mjs` (ES Module) ([PR #1093](https://gi
12821291

12831292
### 2.6.7
12841293

1285-
- Fix wrong destruction of Transports in Router.cpp that generates 100% CPU usage in mediasoup-worker processes.
1294+
- Fix wrong destruction of Transports in Router.cpp that generates 100% CPU usage in `mediasoup-worker` processes.
12861295

12871296
### 2.6.6
12881297

0 commit comments

Comments
 (0)