chore: pin GHA by commit (#5415)

This commit is contained in:
David Zhao
2026-04-11 13:19:52 -07:00
committed by GitHub
parent 816de49600
commit 2df1de7db9
13 changed files with 82 additions and 106 deletions
+1 -1
View File
@@ -13,7 +13,7 @@ jobs:
if: github.event.pull_request.draft == false && github.event.pull_request.head.repo.fork == false
runs-on: ubuntu-latest
steps:
- uses: actions/github-script@v7
- uses: actions/github-script@f28e40c7f34bde8b3046d885e986cb6290c5673b # v7
with:
github-token: ${{ secrets.REVIEW_TOKEN }}
script: |
+15 -15
View File
@@ -29,18 +29,18 @@ jobs:
runs-on: ubuntu-latest
if: inputs.package != 'livekit-blingfire' && inputs.package != 'livekit-blockguard' && inputs.package != 'livekit-durable'
steps:
- uses: actions/checkout@v4
- uses: actions/checkout@34e114876b0b11c390a56381ad16ebd13914f8d5 # v4
with:
submodules: true
lfs: true
- name: Set up Python
uses: actions/setup-python@v5
uses: actions/setup-python@a26af69be951a213d495a4c3e4e4022e16d87065 # v5
with:
python-version: "3.10"
- name: Install uv
uses: astral-sh/setup-uv@v5
uses: astral-sh/setup-uv@d4b2f3b6ecc6e67c4457f6d3e41ec42d3d0fcb86 # v5
with:
enable-cache: true
cache-dependency-glob: "uv.lock"
@@ -49,7 +49,7 @@ jobs:
run: uv build --package ${{inputs.package}}
- name: Upload distribution package
uses: actions/upload-artifact@v4
uses: actions/upload-artifact@ea165f8d65b6e75b540449e92b4886f43607fa02 # v4
with:
name: ${{ inputs.artifact_name }}
path: dist/
@@ -73,10 +73,10 @@ jobs:
run:
working-directory: livekit-plugins/livekit-durable
steps:
- uses: actions/checkout@v4
- uses: actions/checkout@34e114876b0b11c390a56381ad16ebd13914f8d5 # v4
- name: Set up Python
uses: actions/setup-python@v5
uses: actions/setup-python@a26af69be951a213d495a4c3e4e4022e16d87065 # v5
with:
python-version: "3.11"
@@ -92,7 +92,7 @@ jobs:
CIBW_ARCHS: ${{ matrix.archs }}
- name: Upload distribution package
uses: actions/upload-artifact@v4
uses: actions/upload-artifact@ea165f8d65b6e75b540449e92b4886f43607fa02 # v4
with:
name: ${{ inputs.artifact_name }}-${{ matrix.os }}
path: livekit-plugins/livekit-durable/dist/
@@ -116,10 +116,10 @@ jobs:
run:
working-directory: livekit-plugins/livekit-blockguard
steps:
- uses: actions/checkout@v4
- uses: actions/checkout@34e114876b0b11c390a56381ad16ebd13914f8d5 # v4
- name: Set up Python
uses: actions/setup-python@v5
uses: actions/setup-python@a26af69be951a213d495a4c3e4e4022e16d87065 # v5
with:
python-version: "3.11"
@@ -135,7 +135,7 @@ jobs:
CIBW_ARCHS: ${{ matrix.archs }}
- name: Upload distribution package
uses: actions/upload-artifact@v4
uses: actions/upload-artifact@ea165f8d65b6e75b540449e92b4886f43607fa02 # v4
with:
name: ${{ inputs.artifact_name }}-${{ matrix.os }}
path: livekit-plugins/livekit-blockguard/dist/
@@ -160,10 +160,10 @@ jobs:
run:
working-directory: livekit-plugins/livekit-blingfire
steps:
- uses: actions/checkout@v4
- uses: actions/checkout@34e114876b0b11c390a56381ad16ebd13914f8d5 # v4
- name: Set up Python
uses: actions/setup-python@v5
uses: actions/setup-python@a26af69be951a213d495a4c3e4e4022e16d87065 # v5
with:
python-version: "3.11"
@@ -179,7 +179,7 @@ jobs:
CIBW_ARCHS: ${{ matrix.archs }}
- name: Upload distribution package
uses: actions/upload-artifact@v4
uses: actions/upload-artifact@ea165f8d65b6e75b540449e92b4886f43607fa02 # v4
with:
name: ${{ inputs.artifact_name }}-${{ matrix.os }}
path: livekit-plugins/livekit-blingfire/dist/
@@ -190,7 +190,7 @@ jobs:
needs: [build_blingfire, build_blockguard, build_durable]
steps:
- name: Download all platform wheels
uses: actions/download-artifact@v4
uses: actions/download-artifact@d3f86a106a0bac45b974a628896c90dbdf5c8093 # v4
with:
pattern: ${{ inputs.artifact_name }}-*
path: all_dists
@@ -199,7 +199,7 @@ jobs:
- run: ls -R all_dists
- name: Upload unified wheel artifact
uses: actions/upload-artifact@v4
uses: actions/upload-artifact@ea165f8d65b6e75b540449e92b4886f43607fa02 # v4
with:
name: ${{ inputs.artifact_name }}
path: all_dists/
+6 -6
View File
@@ -14,14 +14,14 @@ jobs:
ruff:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- uses: actions/checkout@34e114876b0b11c390a56381ad16ebd13914f8d5 # v4
- name: Install uv
uses: astral-sh/setup-uv@v5
uses: astral-sh/setup-uv@d4b2f3b6ecc6e67c4457f6d3e41ec42d3d0fcb86 # v5
with:
enable-cache: true
cache-dependency-glob: "uv.lock"
- uses: actions/setup-python@v5
- uses: actions/setup-python@a26af69be951a213d495a4c3e4e4022e16d87065 # v5
with:
python-version: "3.10"
@@ -51,14 +51,14 @@ jobs:
python-version: ["3.10", "3.13"]
steps:
- uses: actions/checkout@v4
- uses: actions/checkout@34e114876b0b11c390a56381ad16ebd13914f8d5 # v4
- name: Install uv
uses: astral-sh/setup-uv@v5
uses: astral-sh/setup-uv@d4b2f3b6ecc6e67c4457f6d3e41ec42d3d0fcb86 # v5
with:
enable-cache: true
cache-dependency-glob: "uv.lock"
- uses: actions/setup-python@v5
- uses: actions/setup-python@a26af69be951a213d495a4c3e4e4022e16d87065 # v5
with:
python-version: ${{ matrix.python-version }}
+2 -2
View File
@@ -12,9 +12,9 @@ jobs:
stats:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- uses: actions/checkout@34e114876b0b11c390a56381ad16ebd13914f8d5 # v4
- uses: actions/setup-python@v5
- uses: actions/setup-python@a26af69be951a213d495a4c3e4e4022e16d87065 # v5
with:
python-version: "3.12"
+3 -3
View File
@@ -25,15 +25,15 @@ jobs:
runs-on: ubuntu-latest
name: ${{ matrix.example }}
steps:
- uses: actions/checkout@v4
- uses: actions/checkout@34e114876b0b11c390a56381ad16ebd13914f8d5 # v4
- name: Install uv
uses: astral-sh/setup-uv@v5
uses: astral-sh/setup-uv@d4b2f3b6ecc6e67c4457f6d3e41ec42d3d0fcb86 # v5
with:
enable-cache: true
cache-dependency-glob: "uv.lock"
- uses: actions/setup-python@v5
- uses: actions/setup-python@a26af69be951a213d495a4c3e4e4022e16d87065 # v5
with:
python-version: "3.12"
+3 -3
View File
@@ -11,18 +11,18 @@ jobs:
docs:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- uses: actions/checkout@34e114876b0b11c390a56381ad16ebd13914f8d5 # v4
with:
submodules: true
lfs: true
- name: Set up Python
uses: actions/setup-python@v4
uses: actions/setup-python@7f4fc3e22c37d6ff65e88745f38bd3157c663f7c # v4
with:
python-version: "3.12"
- name: Install uv
uses: astral-sh/setup-uv@v5
uses: astral-sh/setup-uv@d4b2f3b6ecc6e67c4457f6d3e41ec42d3d0fcb86 # v5
with:
enable-cache: true
cache-dependency-glob: "uv.lock"
+6 -6
View File
@@ -41,7 +41,7 @@ jobs:
&& !startsWith(inputs.version, 'republish')
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- uses: actions/checkout@34e114876b0b11c390a56381ad16ebd13914f8d5 # v4
with:
ref: ${{ inputs.branch }}
@@ -59,7 +59,7 @@ jobs:
fi
- name: Set up Python
uses: actions/setup-python@v5
uses: actions/setup-python@a26af69be951a213d495a4c3e4e4022e16d87065 # v5
with:
python-version: "3.10"
@@ -145,7 +145,7 @@ jobs:
outputs:
packages: ${{ steps.list.outputs.packages }}
steps:
- uses: actions/checkout@v4
- uses: actions/checkout@34e114876b0b11c390a56381ad16ebd13914f8d5 # v4
with:
ref: ${{ inputs.branch || github.event.pull_request.merge_commit_sha }}
@@ -185,7 +185,7 @@ jobs:
&& github.event.pull_request.merged == true
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- uses: actions/checkout@34e114876b0b11c390a56381ad16ebd13914f8d5 # v4
with:
ref: ${{ github.event.pull_request.merge_commit_sha }}
@@ -228,7 +228,7 @@ jobs:
id-token: write
steps:
- name: Download build artifact
uses: actions/download-artifact@v4
uses: actions/download-artifact@d3f86a106a0bac45b974a628896c90dbdf5c8093 # v4
with:
name: dist-${{ matrix.package }}
path: dist/
@@ -237,4 +237,4 @@ jobs:
run: ls -la dist/
- name: Publish to PyPI
uses: pypa/gh-action-pypi-publish@release/v1
uses: pypa/gh-action-pypi-publish@cef221092ed1bacb1cc03d23a2d87d1d172e277b # release/v1
+3 -3
View File
@@ -25,18 +25,18 @@ jobs:
steps:
- name: Checkout repository
uses: actions/checkout@v4
uses: actions/checkout@34e114876b0b11c390a56381ad16ebd13914f8d5 # v4
with:
ref: ${{ github.event_name == 'workflow_dispatch' && github.event.inputs.branch != '' && github.event.inputs.branch || github.ref }}
lfs: true
- name: Install uv
uses: astral-sh/setup-uv@v5
uses: astral-sh/setup-uv@d4b2f3b6ecc6e67c4457f6d3e41ec42d3d0fcb86 # v5
with:
version: "latest"
- name: Set up Python
uses: actions/setup-python@v5
uses: actions/setup-python@a26af69be951a213d495a4c3e4e4022e16d87065 # v5
with:
python-version: "3.12"
+6 -6
View File
@@ -31,7 +31,7 @@ jobs:
steps:
- name: Get PR details and check authorization
id: pr-info
uses: actions/github-script@v7
uses: actions/github-script@f28e40c7f34bde8b3046d885e986cb6290c5673b # v7
with:
script: |
const comment = context.payload.comment.body.trim();
@@ -114,7 +114,7 @@ jobs:
- name: Trigger workflow
if: steps.pr-info.outputs.is_command == 'true'
uses: actions/github-script@v7
uses: actions/github-script@f28e40c7f34bde8b3046d885e986cb6290c5673b # v7
with:
script: |
await github.rest.actions.createWorkflowDispatch({
@@ -148,19 +148,19 @@ jobs:
steps:
- name: Checkout repository
uses: actions/checkout@v4
uses: actions/checkout@34e114876b0b11c390a56381ad16ebd13914f8d5 # v4
with:
ref: ${{ github.event_name == 'workflow_dispatch' && github.event.inputs.branch != '' && github.event.inputs.branch || github.ref }}
fetch-depth: 0
lfs: true
- name: Install uv
uses: astral-sh/setup-uv@v5
uses: astral-sh/setup-uv@d4b2f3b6ecc6e67c4457f6d3e41ec42d3d0fcb86 # v5
with:
version: "latest"
- name: Set up Python
uses: actions/setup-python@v5
uses: actions/setup-python@a26af69be951a213d495a4c3e4e4022e16d87065 # v5
with:
python-version: "3.12"
@@ -214,7 +214,7 @@ jobs:
- name: Post results to PR
if: always() && (github.event_name == 'pull_request' || github.event.inputs.pr_number != '')
uses: actions/github-script@v7
uses: actions/github-script@f28e40c7f34bde8b3046d885e986cb6290c5673b # v7
with:
script: |
const fs = require('fs');
+12 -12
View File
@@ -25,9 +25,9 @@ jobs:
os: [ubuntu-latest, macos-latest, windows-latest]
runs-on: ${{ matrix.os }}
steps:
- uses: actions/checkout@v6
- uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6
- uses: actions/setup-python@v5
- uses: actions/setup-python@a26af69be951a213d495a4c3e4e4022e16d87065 # v5
with:
python-version: "3.12"
@@ -44,14 +44,14 @@ jobs:
unit-tests:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v6
- uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6
- name: Install uv
uses: astral-sh/setup-uv@v5
uses: astral-sh/setup-uv@d4b2f3b6ecc6e67c4457f6d3e41ec42d3d0fcb86 # v5
with:
enable-cache: true
cache-dependency-glob: "uv.lock"
- uses: actions/setup-python@v5
- uses: actions/setup-python@a26af69be951a213d495a4c3e4e4022e16d87065 # v5
with:
python-version: "3.12"
@@ -71,14 +71,14 @@ jobs:
if: github.event_name != 'pull_request' || github.event.pull_request.head.repo.fork == false
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v6
- uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6
- name: Install uv
uses: astral-sh/setup-uv@v5
uses: astral-sh/setup-uv@d4b2f3b6ecc6e67c4457f6d3e41ec42d3d0fcb86 # v5
with:
enable-cache: true
cache-dependency-glob: "uv.lock"
- uses: actions/setup-python@v5
- uses: actions/setup-python@a26af69be951a213d495a4c3e4e4022e16d87065 # v5
with:
python-version: "3.12"
@@ -111,7 +111,7 @@ jobs:
runs-on: ubuntu-latest
name: livekit-plugins-${{ matrix.plugin }}
steps:
- uses: actions/checkout@v6
- uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6
- name: Setup Google credentials
if: matrix.plugin == 'google'
@@ -159,7 +159,7 @@ jobs:
- name: Upload LiveKit dump
if: always()
uses: actions/upload-artifact@v4
uses: actions/upload-artifact@ea165f8d65b6e75b540449e92b4886f43607fa02 # v4
with:
name: lk-dump-${{ matrix.plugin }}
path: lk_dump/**
@@ -173,7 +173,7 @@ jobs:
steps:
- name: download all dump shards
uses: actions/download-artifact@v4
uses: actions/download-artifact@d3f86a106a0bac45b974a628896c90dbdf5c8093 # v4
with:
pattern: lk-dump-*
path: all_lk_dump
@@ -192,7 +192,7 @@ jobs:
- name: upload merged dump
if: steps.tar.outputs.created == 'true'
uses: actions/upload-artifact@v4
uses: actions/upload-artifact@ea165f8d65b6e75b540449e92b4886f43607fa02 # v4
with:
name: lk-dump-all
path: lk-dump-all.tar.gz
+4 -47
View File
@@ -54,58 +54,15 @@ Look at the `examples/` directory to get a sense of all the different features a
The CI validates this but to do checks locally see the following example commands:
### Typechecking
### Typechecking & linting
```bash
uv pip install pip && uv run mypy --install-types --non-interactive \
-p livekit.agents \
-p livekit.plugins.openai \
-p livekit.plugins.anthropic \
-p livekit.plugins.mistralai \
-p livekit.plugins.assemblyai \
-p livekit.plugins.aws \
-p livekit.plugins.azure \
-p livekit.plugins.bey \
-p livekit.plugins.bithuman \
-p livekit.plugins.cartesia \
-p livekit.plugins.clova \
-p livekit.plugins.deepgram \
-p livekit.plugins.elevenlabs \
-p livekit.plugins.fal \
-p livekit.plugins.gladia \
-p livekit.plugins.google \
-p livekit.plugins.groq \
-p livekit.plugins.hume \
-p livekit.plugins.minimal \
-p livekit.plugins.neuphonic \
-p livekit.plugins.nltk \
-p livekit.plugins.resemble \
-p livekit.plugins.rime \
-p livekit.plugins.rtzr \
-p livekit.plugins.silero \
-p livekit.plugins.speechify \
-p livekit.plugins.speechmatics \
-p livekit.plugins.tavus \
-p livekit.plugins.turn_detector \
-p livekit.plugins.hedra \
-p livekit.plugins.langchain \
-p livekit.plugins.baseten \
-p livekit.plugins.sarvam \
-p livekit.plugins.inworld \
-p livekit.plugins.keyframe \
-p livekit.plugins.simli \
-p livekit.plugins.anam \
-p livekit.plugins.phonic
```
### Linting
```bash
uv run ruff check --output-format=github .
make check
```
### Formatting
```bash
uv run ruff format .
make fix
```
@@ -16,7 +16,6 @@ from livekit import rtc
from .. import stt, utils
from .._exceptions import (
APIConnectionError,
APIError,
APIStatusError,
APITimeoutError,
create_api_error_from_http,
@@ -601,7 +600,11 @@ class SpeechStream(stt.SpeechStream):
elif msg_type == "session.closed":
pass
elif msg_type == "error":
raise APIError(f"LiveKit Inference STT returned error: {msg.data}")
raise APIStatusError(
f"LiveKit Inference STT returned error: {data.get('message')}",
status_code=data.get("code", -1),
body=data,
)
else:
logger.warning(
"received unexpected message from LiveKit Inference STT: %s", data
+16
View File
@@ -0,0 +1,16 @@
{
"$schema": "https://docs.renovatebot.com/renovate-schema.json",
"extends": ["config:base", "helpers:pinGitHubActionDigests"],
"minimumReleaseAge": "2 weeks",
"commitBody": "Generated by renovateBot",
"packageRules": [
{
"matchManagers": ["github-actions"],
"groupName": "github workflows"
},
{
"matchManagers": ["pip_requirements", "pip_setup", "pep621"],
"groupName": "python deps"
}
]
}