chore(deps): bump sphinxcontrib-qthelp from 1.0.7 to 2.0.0 (#200) #589
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
name: CI | |
on: | |
push: | |
branches: | |
- main | |
pull_request: | |
workflow_dispatch: | |
merge_group: | |
# https://docs.github.com/en/actions/using-workflows/workflow-syntax-for-github-actions#concurrency | |
concurrency: | |
group: ${{ github.workflow }}-${{ github.head_ref || github.run_id }} | |
cancel-in-progress: true | |
env: | |
COLUMNS: "120" | |
FORCE_COLOR: "1" | |
PYTHONUNBUFFERED: "1" | |
jobs: | |
lint: | |
name: Static analysis | |
uses: less-action/reusables/.github/workflows/pre-commit.yaml@0f0da22d88bdf0d450cf3f20a5709f4b74cfa1fb | |
with: | |
python-version: "3.11" | |
check-build: | |
name: Check packaging metadata | |
uses: less-action/reusables/.github/workflows/python-test-build.yaml@0f0da22d88bdf0d450cf3f20a5709f4b74cfa1fb | |
unit-test: | |
name: Unit tests | |
runs-on: ubuntu-latest | |
strategy: | |
matrix: | |
python-version: ["3.11", "3.12"] | |
steps: | |
- uses: actions/checkout@v4 | |
- name: Set up Python | |
uses: actions/setup-python@v5 | |
with: | |
python-version: ${{ matrix.python-version }} | |
cache: pip | |
cache-dependency-path: setup.cfg | |
- name: Install requirements | |
run: pip install --upgrade -e '.[test]' | |
- name: Run test suite | |
run: python -X dev -m coverage run -m pytest -m "not java and not roundtrip and not integration" | |
- name: Collect coverage | |
run: | | |
coverage report | |
coverage xml | |
- name: Report coverage | |
uses: codecov/codecov-action@v4 | |
with: | |
file: coverage.xml | |
fail_ci_if_error: true | |
name: codecov-py${{ matrix.python-version }} | |
token: ${{ secrets.CODECOV_TOKEN }} | |
roundtrip-test: | |
name: Roundtrip tests | |
runs-on: ubuntu-latest | |
strategy: | |
matrix: | |
python-version: ["3.11", "3.12"] | |
steps: | |
- uses: actions/checkout@v4 | |
- name: Set up Python | |
uses: actions/setup-python@v5 | |
with: | |
python-version: ${{ matrix.python-version }} | |
cache: pip | |
cache-dependency-path: setup.cfg | |
- name: Install requirements | |
run: pip install --upgrade -e '.[test]' | |
- name: Run test suite | |
run: python -X dev -m pytest -m roundtrip | |
java-test: | |
name: Java tests | |
runs-on: ubuntu-latest | |
strategy: | |
matrix: | |
python-version: ["3.11", "3.12"] | |
steps: | |
- uses: actions/checkout@v4 | |
- name: Set up Python | |
uses: actions/setup-python@v5 | |
with: | |
python-version: ${{ matrix.python-version }} | |
cache: pip | |
cache-dependency-path: setup.cfg | |
- name: Install requirements | |
run: pip install --upgrade -e '.[test]' | |
- name: Run Java tests | |
run: python -X dev -m pytest -m java | |
integration-test: | |
name: Integration tests | |
runs-on: ubuntu-latest | |
strategy: | |
matrix: | |
python-version: ["3.11", "3.12"] | |
steps: | |
- uses: actions/checkout@v4 | |
- name: Start Kafka backend | |
run: docker compose up -d | |
- name: Set up Python | |
uses: actions/setup-python@v5 | |
with: | |
python-version: ${{ matrix.python-version }} | |
cache: pip | |
cache-dependency-path: setup.cfg | |
- name: Install requirements | |
run: pip install --upgrade -e '.[test]' | |
- name: Run integration tests | |
run: python -X dev -m pytest -m integration | |
check-generate-schema: | |
name: Check schema | |
runs-on: ubuntu-latest | |
steps: | |
- uses: actions/checkout@v4 | |
- name: Set up Python | |
uses: actions/setup-python@v5 | |
with: | |
python-version: "3.11" | |
cache: pip | |
cache-dependency-path: setup.cfg | |
check-latest: true | |
- name: pre-commit cache | |
uses: actions/cache@v4 | |
with: | |
path: ~/.cache/pre-commit | |
key: >- | |
${{ runner.os }} | |
-pre-commit | |
-3.11 | |
-${{ hashFiles('.pre-commit-config.yaml') }} | |
restore-keys: | | |
${{ runner.os }}-pre-commit-3.11 | |
${{ runner.os }}-pre-commit | |
- name: Schema cache | |
uses: actions/cache@v4 | |
with: | |
path: schema | |
key: schema-${{ hashFiles('codegen/fetch_schema.py') }} | |
restore-keys: schema | |
- run: pip install --upgrade -e .[all] | |
- run: make fetch-schema-src | |
- run: | | |
make generate-schema | |
diff=$(git --no-pager diff) | |
if [[ ! -z "$diff" ]]; then | |
echo "💥 Non-empty output from git diff." | |
echo | |
echo "$diff" | |
exit 1 | |
else | |
echo "✅ No diff to current schema." | |
fi | |
docs: | |
name: Build Sphinx Docs | |
runs-on: ubuntu-latest | |
steps: | |
- uses: actions/checkout@v4 | |
- name: Set up Python | |
uses: actions/setup-python@v5 | |
with: | |
python-version: "3.11" | |
cache: pip | |
cache-dependency-path: docs/requirements.txt | |
- name: Install dependencies | |
run: pip install --require-hashes -r docs/requirements.txt | |
- name: Build docs | |
run: sphinx-build -Wb html docs docs/_build |