Add support for Python 3.13 and pypy-3.10 #47
Workflow file for this run
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: | |
paths-ignore: | |
- 'docs/**' | |
- '**/*.rst' | |
- '**/*.md' | |
branches: | |
- main | |
- '[0-9].[0-9]' | |
pull_request: | |
branches: | |
- main | |
- '[0-9].[0-9]' | |
permissions: | |
contents: read # to fetch code (actions/checkout) | |
jobs: | |
run-tests: | |
runs-on: ${{matrix.os}} | |
timeout-minutes: 30 | |
strategy: | |
max-parallel: 15 | |
matrix: | |
python-version: ['3.8', '3.9', '3.10', '3.11', '3.12', '3.13', 'pypy-3.8', 'pypy-3.9', 'pypy-3.10'] | |
os: ['ubuntu-latest', 'windows-latest', 'macos-latest'] | |
fail-fast: false | |
env: | |
ACTIONS_ALLOW_UNSECURE_COMMANDS: true | |
name: Python ${{ matrix.python-version }} ${{matrix.os}} | |
steps: | |
- uses: actions/checkout@v4 | |
with: | |
submodules: recursive | |
- uses: actions/setup-python@v5 | |
with: | |
python-version: ${{ matrix.python-version }} | |
cache: 'pip' | |
cache-dependency-path: dev_requirements.txt | |
- name: run tests | |
run: | | |
pip install -U pip setuptools wheel | |
pip install -r dev_requirements.txt | |
python setup.py build_ext --inplace | |
python -m pytest | |
- name: build and install the wheel | |
run: | | |
python setup.py bdist_wheel | |
# This is a noop job that is only needed for Github settings of the project. | |
# Github doesn't allow requiring all the checks and instead makes you specify | |
# all the jobs one by one. "run-tests" however is a matrix job and specifying | |
# all of its possible items is tedious. So we add this job to make Github happy. | |
verify_tests_succeeded: | |
name: Verify that tests succeeded | |
runs-on: ubuntu-latest | |
needs: [run-tests] | |
steps: | |
- run: true |