mirror of
https://github.com/frappe/gunicorn.git
synced 2026-07-01 10:11:30 +08:00
* Update CI and project to support only Python N (3.13) and N-1 (3.12) - Update GitHub Actions workflows to test only Python 3.12 and 3.13 - Update pyproject.toml to require Python >= 3.12 - Update tox.ini to test only py312 and py313 - Update documentation to reflect Python 3.12+ requirement - Clean up AppVeyor configuration for Python 3.12 * Update pylint to 3.3.2 for Python 3.12 compatibility * Disable new pylint warnings for pre-existing issues
55 lines
1.8 KiB
YAML
55 lines
1.8 KiB
YAML
name: tox
|
|
on: [push, pull_request]
|
|
permissions:
|
|
contents: read # to fetch code (actions/checkout)
|
|
env:
|
|
# note that some tools care only for the name, not the value
|
|
FORCE_COLOR: 1
|
|
jobs:
|
|
tox:
|
|
name: ${{ matrix.os }} / ${{ matrix.python-version }}
|
|
# https://docs.github.com/en/actions/using-workflows/workflow-syntax-for-github-actions#jobsjob_idtimeout-minutes
|
|
timeout-minutes: 20
|
|
runs-on: ${{ matrix.os }}
|
|
strategy:
|
|
fail-fast: false
|
|
matrix:
|
|
unsupported: [false]
|
|
os:
|
|
- ubuntu-latest
|
|
# not defaulting to macos-latest: Python <= 3.9 was missing from macos-14 @ arm64
|
|
- macos-13
|
|
# Not testing Windows, because tests need Unix-only fcntl, grp, pwd, etc.
|
|
python-version:
|
|
# Supporting only N (3.13) and N-1 (3.12)
|
|
- "3.12"
|
|
- "3.13"
|
|
include:
|
|
# Test on macos-latest (arm64) with both versions
|
|
- os: macos-latest
|
|
python-version: "3.12"
|
|
unsupported: false
|
|
- os: macos-latest
|
|
python-version: "3.13"
|
|
unsupported: false
|
|
steps:
|
|
- uses: actions/checkout@v5
|
|
- name: Using Python ${{ matrix.python-version }}
|
|
uses: actions/setup-python@v6
|
|
with:
|
|
python-version: ${{ matrix.python-version }}
|
|
cache: pip
|
|
cache-dependency-path: requirements_test.txt
|
|
check-latest: true
|
|
allow-prereleases: ${{ matrix.unsupported }}
|
|
- name: Install Dependencies
|
|
run: |
|
|
python -m pip install --upgrade pip
|
|
python -m pip install tox
|
|
- run: tox -e run-module
|
|
continue-on-error: ${{ matrix.unsupported }}
|
|
- run: tox -e run-entrypoint
|
|
continue-on-error: ${{ matrix.unsupported }}
|
|
- run: tox -e py
|
|
continue-on-error: ${{ matrix.unsupported }}
|