name: Python Compatibility Test on: push: branches: [main, develop] paths: ['pyproject.toml'] pull_request: branches: [main, develop] paths: ['pyproject.toml'] jobs: test-compatibility: runs-on: ubuntu-latest strategy: fail-fast: false matrix: python-version: ['3.11.15', '3.12.13', '3.13.12', '3.14.3'] name: Python ${{ matrix.python-version }} steps: - name: Checkout code uses: actions/checkout@v4 - name: Install system dependencies run: | sudo apt-get update sudo apt-get install -y \ portaudio19-dev \ libcairo2-dev \ libgirepository1.0-dev \ pkg-config - name: Install uv uses: astral-sh/setup-uv@v4 with: version: 'latest' - name: Set up Python ${{ matrix.python-version }} run: | uv python install ${{ matrix.python-version }} uv python pin ${{ matrix.python-version }} - name: Test uv sync with all extras run: | uv sync --group dev --all-extras - name: Verify installation run: | uv run python --version uv run python -c "import pipecat; print('✅ Pipecat imports successfully')"