Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion .github/workflows/build-api.yml
Original file line number Diff line number Diff line change
Expand Up @@ -26,7 +26,7 @@ jobs:
run:
working-directory: ${{ env.PACKAGE_DIR }}
steps:
- uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6
- uses: actions/checkout@df4cb1c069e1874edd31b4311f1884172cec0e10 # v6
with:
submodules: true

Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/build-docs.yml
Original file line number Diff line number Diff line change
Expand Up @@ -37,7 +37,7 @@ jobs:
runs-on: ubuntu-latest

steps:
- uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6
- uses: actions/checkout@df4cb1c069e1874edd31b4311f1884172cec0e10 # v6
with:
submodules: recursive

Expand Down
4 changes: 2 additions & 2 deletions .github/workflows/build-protocol.yml
Original file line number Diff line number Diff line change
Expand Up @@ -28,7 +28,7 @@ jobs:
run:
working-directory: ${{ env.PACKAGE_DIR }}
steps:
- uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6
- uses: actions/checkout@df4cb1c069e1874edd31b4311f1884172cec0e10 # v6
with:
submodules: true
ref: ${{ github.event.pull_request.head.ref }}
Expand Down Expand Up @@ -58,7 +58,7 @@ jobs:
run:
working-directory: ${{ env.PACKAGE_DIR }}
steps:
- uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6
- uses: actions/checkout@df4cb1c069e1874edd31b4311f1884172cec0e10 # v6
with:
submodules: true

Expand Down
8 changes: 4 additions & 4 deletions .github/workflows/build-rtc.yml
Original file line number Diff line number Diff line change
Expand Up @@ -28,7 +28,7 @@ jobs:
run:
working-directory: ${{ env.PACKAGE_DIR }}
steps:
- uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6
- uses: actions/checkout@df4cb1c069e1874edd31b4311f1884172cec0e10 # v6
with:
submodules: true
ref: ${{ github.event.pull_request.head.ref }}
Expand Down Expand Up @@ -75,14 +75,14 @@ jobs:
run:
working-directory: ${{ env.PACKAGE_DIR }}
steps:
- uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6
- uses: actions/checkout@df4cb1c069e1874edd31b4311f1884172cec0e10 # v6
with:
submodules: true

- uses: actions/setup-python@a309ff8b426b58ec0e2a45f0f869d46889d02405 # v6
id: setup-python
with:
python-version: "3.11"
python-version: "3.14"

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

🚩 cibuildwheel host Python 3.14 compatibility

The build_wheels job in build-rtc.yml and the build-rtc job in publish.yml both change the host Python used to run cibuildwheel==3.3.1 from 3.11 to 3.14. Since cibuildwheel manages its own isolated build environments (and pyproject.toml:60 configures build = "cp39-*"), the host Python version only needs to be able to run cibuildwheel itself. Version 3.3.1 of cibuildwheel should support Python 3.14 as a host, but this is worth verifying — if cibuildwheel 3.3.1 has any incompatibilities with Python 3.14, the wheel build step would fail.

Open in Devin Review

Was this helpful? React with 👍 or 👎 to provide feedback.


- name: Build wheels
run: pipx run --python '${{ steps.setup-python.outputs.python-path }}' cibuildwheel==3.3.1 --output-dir dist
Expand All @@ -101,7 +101,7 @@ jobs:
run:
working-directory: ${{ env.PACKAGE_DIR }}
steps:
- uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6
- uses: actions/checkout@df4cb1c069e1874edd31b4311f1884172cec0e10 # v6
with:
submodules: true

Expand Down
4 changes: 2 additions & 2 deletions .github/workflows/check-types.yml
Original file line number Diff line number Diff line change
Expand Up @@ -13,14 +13,14 @@ jobs:
runs-on: ubuntu-latest

steps:
- uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6
- uses: actions/checkout@df4cb1c069e1874edd31b4311f1884172cec0e10 # v6
with:
submodules: recursive

- name: Set up Python 3.9
uses: actions/setup-python@a309ff8b426b58ec0e2a45f0f869d46889d02405 # v6
with:
python-version: 3.9
python-version: 3.14

@devin-ai-integration devin-ai-integration Bot Apr 12, 2026

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

🔴 Hardcoded python3.9 path in FFI download step not updated after Python version bump to 3.14

The Python version was bumped from 3.9 to 3.14 on line 23, but the Download ffi step on line 38 still uses a hardcoded path .venv/lib/python3.9/site-packages/livekit/rtc/resources. Since uv sync creates the venv with Python 3.14, the actual site-packages directory will be .venv/lib/python3.14/..., so the FFI resources get written to a non-existent/wrong directory. This causes the subsequent Check Types step (mypy) to fail because it won't find the native FFI libraries.

Open in Devin Review

Was this helpful? React with 👍 or 👎 to provide feedback.


- name: Install uv
uses: astral-sh/setup-uv@08807647e7069bb48b6ef5acd8ec9567f424441b # v8.1.0
Expand Down
16 changes: 8 additions & 8 deletions .github/workflows/publish.yml
Original file line number Diff line number Diff line change
Expand Up @@ -47,7 +47,7 @@ jobs:
if: github.event_name == 'workflow_dispatch'
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6
- uses: actions/checkout@df4cb1c069e1874edd31b4311f1884172cec0e10 # v6
with:
ref: ${{ inputs.branch }}
submodules: true
Expand All @@ -68,7 +68,7 @@ jobs:
- name: Set up Python
uses: actions/setup-python@a309ff8b426b58ec0e2a45f0f869d46889d02405 # v6
with:
python-version: "3.10"
python-version: "3.14"

- name: Install dependencies
run: pip install click packaging
Expand Down Expand Up @@ -182,7 +182,7 @@ jobs:
needs: detect
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6
- uses: actions/checkout@df4cb1c069e1874edd31b4311f1884172cec0e10 # v6
with:
ref: ${{ github.event.pull_request.merge_commit_sha }}

Expand Down Expand Up @@ -217,14 +217,14 @@ jobs:
run:
working-directory: ./livekit-rtc
steps:
- uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6
- uses: actions/checkout@df4cb1c069e1874edd31b4311f1884172cec0e10 # v6
with:
submodules: true

- uses: actions/setup-python@a309ff8b426b58ec0e2a45f0f869d46889d02405 # v6
id: setup-python
with:
python-version: "3.11"
python-version: "3.14"

- name: Build wheels
run: pipx run --python '${{ steps.setup-python.outputs.python-path }}' cibuildwheel==3.3.1 --output-dir dist
Expand All @@ -245,7 +245,7 @@ jobs:
run:
working-directory: ./livekit-rtc
steps:
- uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6
- uses: actions/checkout@df4cb1c069e1874edd31b4311f1884172cec0e10 # v6
with:
submodules: true

Expand Down Expand Up @@ -291,7 +291,7 @@ jobs:
run:
working-directory: ./livekit-api
steps:
- uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6
- uses: actions/checkout@df4cb1c069e1874edd31b4311f1884172cec0e10 # v6
with:
submodules: true

Expand Down Expand Up @@ -340,7 +340,7 @@ jobs:
run:
working-directory: ./livekit-protocol
steps:
- uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6
- uses: actions/checkout@df4cb1c069e1874edd31b4311f1884172cec0e10 # v6
with:
submodules: true

Expand Down
4 changes: 2 additions & 2 deletions .github/workflows/ruff.yml
Original file line number Diff line number Diff line change
Expand Up @@ -4,10 +4,10 @@ jobs:
build:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6
- uses: actions/checkout@df4cb1c069e1874edd31b4311f1884172cec0e10 # v6
- uses: actions/setup-python@a309ff8b426b58ec0e2a45f0f869d46889d02405 # v6
with:
python-version: "3.9"
python-version: "3.14"

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

🚩 Python 3.14 used as CI host across multiple workflows — pre-release risk

This PR bumps CI Python to 3.14 in check-types.yml, ruff.yml, publish.yml, and build-rtc.yml. Python 3.14 is a pre-release version (scheduled for GA in October 2025, but 3.14 was still pre-release at the time this code was written). Using a pre-release Python for CI tooling (ruff, mypy, build, cibuildwheel) could cause unexpected failures if any of these tools have compatibility issues. The test matrix already tests against 3.14 with allow-prereleases: true, which is appropriate. The question is whether all host tooling (ruff, mypy, cibuildwheel, etc.) works correctly on 3.14.

Open in Devin Review

Was this helpful? React with 👍 or 👎 to provide feedback.


- name: Install uv
uses: astral-sh/setup-uv@08807647e7069bb48b6ef5acd8ec9567f424441b # v8.1.0
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/tests.yml
Original file line number Diff line number Diff line change
Expand Up @@ -32,7 +32,7 @@ jobs:
name: Test (${{ inputs.os }}, Python ${{ inputs.python-version }})
runs-on: ${{ inputs.os }}
steps:
- uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6
- uses: actions/checkout@df4cb1c069e1874edd31b4311f1884172cec0e10 # v6
with:
submodules: true
lfs: true
Expand Down