mirror of
https://github.com/frappe/gunicorn.git
synced 2026-01-14 11:09:11 +08:00
Merge pull request #3211 from pajod/patch-macos14-no-eol-python
CI: revert macos-14 runners, migrate to tox v4-exclusive settings, add Python 3.13
This commit is contained in:
commit
405c3ca35e
24
.github/workflows/tox.yml
vendored
24
.github/workflows/tox.yml
vendored
@ -14,7 +14,12 @@ jobs:
|
|||||||
strategy:
|
strategy:
|
||||||
fail-fast: false
|
fail-fast: false
|
||||||
matrix:
|
matrix:
|
||||||
os: [ubuntu-latest, macos-latest] # All OSes pass except Windows because tests need Unix-only fcntl, grp, pwd, etc.
|
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:
|
python-version:
|
||||||
# CPython <= 3.7 is EoL since 2023-06-27
|
# CPython <= 3.7 is EoL since 2023-06-27
|
||||||
- "3.7"
|
- "3.7"
|
||||||
@ -26,6 +31,19 @@ jobs:
|
|||||||
# PyPy <= 3.8 is EoL since 2023-06-16
|
# PyPy <= 3.8 is EoL since 2023-06-16
|
||||||
- "pypy-3.9"
|
- "pypy-3.9"
|
||||||
- "pypy-3.10"
|
- "pypy-3.10"
|
||||||
|
include:
|
||||||
|
# Note: potentially "universal2" release
|
||||||
|
# https://github.com/actions/runner-images/issues/9741
|
||||||
|
- os: macos-latest
|
||||||
|
python-version: "3.12"
|
||||||
|
unsupported: false
|
||||||
|
# will run these without showing red CI results should they fail
|
||||||
|
- os: macos-latest
|
||||||
|
python-version: "3.13"
|
||||||
|
unsupported: true
|
||||||
|
- os: ubuntu-latest
|
||||||
|
python-version: "3.13"
|
||||||
|
unsupported: true
|
||||||
steps:
|
steps:
|
||||||
- uses: actions/checkout@v4
|
- uses: actions/checkout@v4
|
||||||
- name: Using Python ${{ matrix.python-version }}
|
- name: Using Python ${{ matrix.python-version }}
|
||||||
@ -35,10 +53,14 @@ jobs:
|
|||||||
cache: pip
|
cache: pip
|
||||||
cache-dependency-path: requirements_test.txt
|
cache-dependency-path: requirements_test.txt
|
||||||
check-latest: true
|
check-latest: true
|
||||||
|
allow-prereleases: ${{ matrix.unsupported }}
|
||||||
- name: Install Dependencies
|
- name: Install Dependencies
|
||||||
run: |
|
run: |
|
||||||
python -m pip install --upgrade pip
|
python -m pip install --upgrade pip
|
||||||
python -m pip install tox
|
python -m pip install tox
|
||||||
- run: tox -e run-module
|
- run: tox -e run-module
|
||||||
|
continue-on-error: ${{ matrix.unsupported }}
|
||||||
- run: tox -e run-entrypoint
|
- run: tox -e run-entrypoint
|
||||||
|
continue-on-error: ${{ matrix.unsupported }}
|
||||||
- run: tox -e py
|
- run: tox -e py
|
||||||
|
continue-on-error: ${{ matrix.unsupported }}
|
||||||
|
|||||||
11
tox.ini
11
tox.ini
@ -6,24 +6,27 @@ envlist =
|
|||||||
pycodestyle,
|
pycodestyle,
|
||||||
run-entrypoint,
|
run-entrypoint,
|
||||||
run-module,
|
run-module,
|
||||||
skipsdist = false
|
|
||||||
; Can't set skipsdist and use_develop in tox v4 to true due to https://github.com/tox-dev/tox/issues/2730
|
|
||||||
|
|
||||||
[testenv]
|
[testenv]
|
||||||
use_develop = true
|
package = editable
|
||||||
commands = pytest --cov=gunicorn {posargs}
|
commands = pytest --cov=gunicorn {posargs}
|
||||||
deps =
|
deps =
|
||||||
-rrequirements_test.txt
|
-rrequirements_test.txt
|
||||||
|
|
||||||
[testenv:run-entrypoint]
|
[testenv:run-entrypoint]
|
||||||
|
package = wheel
|
||||||
|
deps =
|
||||||
# entry point: console script (provided by setuptools from pyproject.toml)
|
# entry point: console script (provided by setuptools from pyproject.toml)
|
||||||
commands = python -c 'import subprocess; cmd_out = subprocess.check_output(["gunicorn", "--version"])[:79].decode("utf-8", errors="replace"); print(cmd_out); assert cmd_out.startswith("gunicorn ")'
|
commands = python -c 'import subprocess; cmd_out = subprocess.check_output(["gunicorn", "--version"])[:79].decode("utf-8", errors="replace"); print(cmd_out); assert cmd_out.startswith("gunicorn ")'
|
||||||
|
|
||||||
[testenv:run-module]
|
[testenv:run-module]
|
||||||
|
package = wheel
|
||||||
|
deps =
|
||||||
# runpy (provided by module.__main__)
|
# runpy (provided by module.__main__)
|
||||||
commands = python -c 'import sys,subprocess; cmd_out = subprocess.check_output([sys.executable, "-m", "gunicorn", "--version"])[:79].decode("utf-8", errors="replace"); print(cmd_out); assert cmd_out.startswith("gunicorn ")'
|
commands = python -c 'import sys,subprocess; cmd_out = subprocess.check_output([sys.executable, "-m", "gunicorn", "--version"])[:79].decode("utf-8", errors="replace"); print(cmd_out); assert cmd_out.startswith("gunicorn ")'
|
||||||
|
|
||||||
[testenv:lint]
|
[testenv:lint]
|
||||||
|
no_package = true
|
||||||
commands =
|
commands =
|
||||||
pylint -j0 \
|
pylint -j0 \
|
||||||
--max-line-length=120 \
|
--max-line-length=120 \
|
||||||
@ -44,6 +47,7 @@ deps =
|
|||||||
pylint==2.17.4
|
pylint==2.17.4
|
||||||
|
|
||||||
[testenv:docs-lint]
|
[testenv:docs-lint]
|
||||||
|
no_package = true
|
||||||
allowlist_externals =
|
allowlist_externals =
|
||||||
rst-lint
|
rst-lint
|
||||||
bash
|
bash
|
||||||
@ -56,6 +60,7 @@ commands =
|
|||||||
bash -c "(set -o pipefail; rst-lint --encoding utf-8 docs/source/*.rst | grep -v 'Unknown interpreted text role\|Unknown directive type'); test $? == 1"
|
bash -c "(set -o pipefail; rst-lint --encoding utf-8 docs/source/*.rst | grep -v 'Unknown interpreted text role\|Unknown directive type'); test $? == 1"
|
||||||
|
|
||||||
[testenv:pycodestyle]
|
[testenv:pycodestyle]
|
||||||
|
no_package = true
|
||||||
commands =
|
commands =
|
||||||
pycodestyle gunicorn
|
pycodestyle gunicorn
|
||||||
deps =
|
deps =
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user