Skip to content

Add support for Python 3.13 #5

Add support for Python 3.13

Add support for Python 3.13 #5

Workflow file for this run

name: CI
on: [pull_request, push]
jobs:
#################### Unittests ####################
unittest:
runs-on: ubuntu-latest
strategy:
matrix:
python-version: ["3.8", "3.9", "3.10", "3.11", "3.12", "3.13"]
exclude:
- python-version: "3.9"
steps:
- name: Install system packages
run: sudo apt-get update && sudo apt-get install libcurl4-openssl-dev libssl-dev
- name: Check out code from GitHub
uses: actions/checkout@v4
- name: Set up Python ${{ matrix.python-version }}
id: python
uses: actions/setup-python@v5
with:
python-version: ${{ matrix.python-version }}
allow-prereleases: true
- name: Install dependencies
run: pip install --upgrade pip wheel tox tox-docker
- name: Run unittest
run: tox -v -e ${{ matrix.python-version }}-linux-unit -- -v
#################### Integration tests ####################
integration:
needs: [unittest]
runs-on: ubuntu-latest
continue-on-error: ${{ matrix.experimental }}
strategy:
fail-fast: false
matrix:
python-version: [3.8,3.9,"3.10","3.11","3.12","3.13"]
experimental: [false]
include:
- python-version: pypy3.9
experimental: true
steps:
- name: Install system packages
run: sudo apt-get update && sudo apt-get install libcurl4-openssl-dev libssl-dev
- name: Check out code from GitHub
uses: actions/checkout@v4
- name: Set up Python ${{ matrix.python-version }}
id: python
uses: actions/setup-python@v5
with:
python-version: ${{ matrix.python-version }}
allow-prereleases: true
- name: Allow pre-releases on Python 3.13
run: echo "PIP_PRE=1" >> $GITHUB_ENV
if: ${{ python-version == '3.13' }}

Check failure on line 53 in .github/workflows/ci.yaml

View workflow run for this annotation

GitHub Actions / CI

Invalid workflow file

The workflow is not valid. .github/workflows/ci.yaml (Line: 53, Col: 13): Unrecognized named-value: 'python-version'. Located at position 1 within expression: python-version == '3.13'
- name: Install dependencies
run: pip install --upgrade pip wheel tox tox-docker
# Tox fails if a Python versions contains a hyphen, this changes "pypy-3.9" to "pypy3.9".
- name: Run AMQP integration tests
run: tox -v -e ${{ matrix.python-version }}-linux-integration-py-amqp -- -v
- name: Run redis integration tests
run: tox -v -e ${{ matrix.python-version }}-linux-integration-py-redis -- -v
- name: Run MongoDB integration tests
run: tox -v -e ${{ matrix.python-version }}-linux-integration-py-mongodb -- -v
- name: Run kafka integration tests
if: ${{ matrix.python-version != 'pypy3.9'}}
run: tox -v -e ${{ matrix.python-version }}-linux-integration-py-kafka -- -v
#################### Linters and checkers ####################
lint:
needs: [unittest, integration]
runs-on: ubuntu-latest
strategy:
matrix:
python-version: ["3.10"]
steps:
- name: Install system packages
run: sudo apt-get update && sudo apt-get install libcurl4-openssl-dev libssl-dev
- name: Check out code from GitHub
uses: actions/checkout@v4
- name: Set up Python ${{ matrix.python-version }}
id: python
uses: actions/setup-python@v5
with:
python-version: ${{ matrix.python-version }}
allow-prereleases: true
- name: Install dependencies
run: pip install --upgrade pip wheel tox tox-docker
- name: Run flake8
run: tox -v -e flake8 -- -v
- name: Run pydocstyle
run: tox -v -e pydocstyle -- -v
- name: Run apicheck
run: tox -v -e apicheck -- -v
- name: Run mypy
run: tox -v -e mypy -- -v