Skip to content

fix(server): retain latest check intervals and tags across multi-stage appends (#696) #1122

fix(server): retain latest check intervals and tags across multi-stage appends (#696)

fix(server): retain latest check intervals and tags across multi-stage appends (#696) #1122

Workflow file for this run

name: ci
permissions:
contents: read
concurrency:
group: ${{ github.workflow }}-${{ github.ref }}
cancel-in-progress: ${{ github.event_name == 'pull_request' }}
on:
push:
branches: [main]
pull_request:
jobs:
checks:
runs-on: ubuntu-latest
strategy:
fail-fast: false
matrix:
# Test the supported floor and current runtime. Static analysis runs once below.
python-version: ["3.11", "3.14"]
steps:
- uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1
- name: Install ffmpeg (the test suite pins to the system binary)
run: sudo apt-get update && sudo apt-get install -y --no-install-recommends ffmpeg
- uses: astral-sh/setup-uv@c18668ad3cf93ea998bef934396af7bb5c839dc7 # v10.2.0
with:
python-version: ${{ matrix.python-version }}
- name: Sync environment
# Not --all-extras: the mediapipe extra is a model, deliberately not
# exercised here (see pyproject.toml).
run: uv sync --locked
- name: Lint
if: matrix.python-version == '3.14'
run: uv run ruff check
- name: Format check
if: matrix.python-version == '3.14'
run: uv run ruff format --check
- name: Typecheck
if: matrix.python-version == '3.14'
run: uv run ty check
- name: Tests
# Public ubuntu-latest runners have four CPUs; keep media-heavy tests within that limit.
run: uv run pytest -q -n 4
- name: Install minimum supported NumPy
if: matrix.python-version == '3.14'
run: uv pip install "numpy==2.3.5"
- name: Test minimum NumPy compatibility
if: matrix.python-version == '3.14'
run: >-
uv run --no-sync pytest -q -n 4
tests/test_resample_derive.py tests/test_episode_to_arrow.py tests/test_video_import.py