Skip to content

Commit

Permalink
Merge branch 'master' into master
Browse files Browse the repository at this point in the history
  • Loading branch information
vytas7 authored Oct 5, 2024
2 parents f480c57 + 5ce771e commit 3713877
Show file tree
Hide file tree
Showing 36 changed files with 830 additions and 513 deletions.
48 changes: 48 additions & 0 deletions .github/workflows/test-other.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,48 @@
# Other tests, primarily those requiring obsolete dependencies.
name: test-other

on:
push:
branches:
- "*"

jobs:
run-tox:
name: tox -e ${{ matrix.toxenv }}
runs-on: ubuntu-20.04
strategy:
fail-fast: false
matrix:
python-version:
- "3.8"
toxenv:
- "py38_smoke"
- "py38_smoke_cython"
- "wsgi_meinheld"

steps:
- name: Checkout repo
uses: actions/checkout@v4
with:
fetch-depth: 2

- name: Set up Python
uses: actions/setup-python@v5
with:
python-version: ${{ matrix.python-version }}

- name: Install smoke test dependencies
run: |
sudo apt-get update
sudo apt-get install -y libunwind-dev
- name: Install Python dependencies
run: |
python -m pip install --upgrade pip
pip install --upgrade setuptools tox wheel
python --version
pip --version
tox --version
- name: Run tox
run: tox -e ${{ matrix.toxenv }}
2 changes: 2 additions & 0 deletions .github/workflows/test-wheels.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -22,6 +22,8 @@ jobs:
- build: "cp313-manylinux_s390x"
os: ubuntu-latest
emulation: true
- build: "cp38-manylinux_x86_64"
os: ubuntu-latest
- build: "cp313-musllinux_x86_64"
os: ubuntu-latest
- build: "cp313-macosx_arm64"
Expand Down
179 changes: 68 additions & 111 deletions .github/workflows/tests.yaml
Original file line number Diff line number Diff line change
@@ -1,4 +1,5 @@
name: Run tests
# Run tests in various tox environments.
name: tests

on:
# NOTE(vytas): Trigger the tests workflow on push or pull request
Expand All @@ -11,104 +12,73 @@ on:
- master

jobs:
run_tox:
name: tox -e ${{ matrix.toxenv }} (${{matrix.python-version}} on ${{ matrix.os }})
runs-on: ${{ matrix.os }}
run-tox:
name: tox -e ${{ matrix.tox.env }}${{ matrix.tox.platform-label || '' }}
runs-on: ${{ matrix.tox.os || matrix.default-os }}
strategy:
fail-fast: false
matrix:
default-os:
- "ubuntu-latest"
python-version:
- "3.12"
python-dev-version:
- ""
os:
- "ubuntu-latest"
toxenv:
- "pep8"
- "pep8-docstrings"
- "pep8-examples"
- "ruff"
- "mypy"
- "mypy_tests"
- "py312"
- "py312_sans_msgpack"
- "py312_cython"
- "docs"
- "towncrier"
- "look"
- "asgilook"
- "ws_tutorial"
# NOTE(vytas): Temporarily disabled while we are releasing a
# new version of python-mimeparse, and haven't decided yet whether
# to keep vendoring or reimplement.
# - "check_vendored"
- "twine_check"
- "daphne"
- "hypercorn"
- "e2e_chrome"
- "e2e_firefox"
- "no_optional_packages"
# TODO(kgriffs): Re-enable once hug has a chance to address
# breaking changes in Falcon 3.0
# - "hug"
include:
- python-version: pypy3.9
os: ubuntu-latest
toxenv: pypy3
- python-version: "3.8"
os: ubuntu-latest
toxenv: py38
- python-version: "3.9"
os: ubuntu-latest
toxenv: py39
- python-version: "3.9"
os: ubuntu-latest
toxenv: py39_cython
- python-version: "3.10"
os: ubuntu-latest
toxenv: py310
- python-version: "3.10"
os: ubuntu-latest
toxenv: py310_cython
- python-version: "3.11"
os: ubuntu-latest
toxenv: py311
- python-version: "3.11"
os: ubuntu-latest
toxenv: py311_cython
- python-version: "3.12"
os: ubuntu-latest
toxenv: py312
- python-version: "3.12"
os: ubuntu-latest
toxenv: py312_cython
- python-version: "3.12"
tox:
# Lint
- env: pep8
- env: pep8-docstrings
- env: ruff
# Documentation
- env: docs
- env: towncrier
# Typing
- env: mypy
- env: mypy_tests
# Python tests
- env: mintest
coverage: true
- env: pypy3
python-version: "pypy3.10"
- env: py38
python-version: "3.8"
- env: py39
python-version: "3.9"
- env: py310
python-version: "3.10"
- env: py310_cython
python-version: "3.10"
- env: py311
python-version: "3.11"
- env: py311_cython
python-version: "3.11"
- env: py312
coverage: true
python-version: "3.12"
- env: py312_cython
python-version: "3.12"
- env: py313
python-version: "3.13.0-rc.3 - 3.13"
- env: py313_cython
python-version: "3.13.0-rc.3 - 3.13"
- env: py312_nocover
os: macos-latest
toxenv: py312_nocover
- python-version: "3.12"
platform-label: ' (macos)'
- env: py312_nocover
os: windows-latest
toxenv: py312_nocover
- python-version: "3.13"
python-dev-version: "3.13.0-rc.1 - 3.13"
os: ubuntu-latest
toxenv: py313
- python-version: "3.13"
python-dev-version: "3.13.0-rc.1 - 3.13"
os: ubuntu-latest
toxenv: py313_cython
# These env require 3.8 and 20.04, see tox.ini
- python-version: "3.8"
os: ubuntu-20.04
toxenv: py38_smoke
- python-version: "3.8"
os: ubuntu-20.04
toxenv: py38_smoke_cython
- python-version: "3.8"
os: ubuntu-latest
toxenv: "wsgi_servers"
platform-label: ' (windows)'
# Tutorials
- env: "look"
- env: "asgilook"
- env: "ws_tutorial"
# Tooling
- env: "twine_check"
# ASGI & WSGI servers
- env: "daphne"
- env: "hypercorn"
- env: "wsgi_servers"
# E2E tests
- env: "e2e_chrome"
- env: "e2e_firefox"

# Steps to run in each job.
# Some are GitHub actions, others run shell commands.
steps:
- name: Checkout repo
uses: actions/checkout@v4
Expand All @@ -119,43 +89,30 @@ jobs:

- name: Set up Python
uses: actions/setup-python@v5
if: ${{ !matrix.python-dev-version }}
with:
python-version: ${{ matrix.python-version }}

- name: Set up Python (pre-release)
uses: actions/setup-python@v5
if: ${{ matrix.python-dev-version }}
with:
python-version: ${{ matrix.python-dev-version }}

- name: Install smoke test dependencies
if: ${{ matrix.toxenv == 'py38_smoke' || matrix.toxenv == 'py38_smoke_cython' }}
run: |
sudo apt-get update
sudo apt-get install -y libunwind-dev
python-version: ${{ matrix.tox.python-version || matrix.python-version }}

- name: Install dependencies
- name: Install Python dependencies
run: |
python -m pip install --upgrade pip
pip install -U coverage fixtures setuptools tox wheel
pip install --upgrade coverage setuptools tox wheel
python --version
pip --version
tox --version
coverage --version
- name: Run tests
run: tox -e ${{ matrix.toxenv }}
- name: Run tox
run: tox -e ${{ matrix.tox.env }}

- name: Combine coverage
if: ${{ matrix.toxenv == 'py312' || matrix.toxenv == 'py312_sans_msgpack' }}
if: ${{ matrix.tox.coverage }}
run: |
coverage --version
coverage combine
- name: Upload coverage to Codecov
uses: codecov/codecov-action@v4
if: ${{ matrix.toxenv == 'py312' || matrix.toxenv == 'py312_sans_msgpack' }}
if: ${{ matrix.tox.coverage }}
with:
env_vars: PYTHON
fail_ci_if_error: true
Expand Down
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
name: Run tests (contributor's checklist)
name: test-tox-sdist

on:
# Trigger the workflow on master but also allow it to run manually.
Expand Down
58 changes: 57 additions & 1 deletion AUTHORS
Original file line number Diff line number Diff line change
Expand Up @@ -23,8 +23,10 @@ listed below by date of first contribution:
* Derrick Wippler (thrawn01)
* Sebastián Magrí (sebasmagri)
* Chris Petersen (ex-nerd)
* Cindy Pallares (cindy)
* Andy Freeland (rouge8)
* Michał Jaworski (swistakm)
* Michele Lacchia (rubik)
* Jason Campbell (xiaclo)
* Barry Warsaw (warsaw)
* Jeffrey Zhang (jeffrey4l)
Expand All @@ -34,6 +36,7 @@ listed below by date of first contribution:
* David Pineau (Joacchim)
* Benjamen Meyer (BenjamenMeyer)
* Sriram Madapusi Vasudevan (TheSriram)
* Omer Katz (thedrow)
* Erik Erwitt (eerwitt)
* Bernhard Weitzhofer (b6d)
* Rahman Syed (rsyed83)
Expand All @@ -49,6 +52,8 @@ listed below by date of first contribution:
* Maxim Tsoy (muodov)
* Christian Pedersen (chripede)
* Harrison Pincket (hpincket)
* Richard Olsson (richardolsson)
* Zack Gold (zg)
* Usman Ehtesham Gul (ueg1990)
* Adam Yala (adamyala)
* Grigory Bakunov (bobuk)
Expand All @@ -70,7 +75,58 @@ listed below by date of first contribution:
* Yash Mehrotra (yashmehrotra)
* Stephen Milner (ashcrow)
* ksonj
* Christian Jensen (jensenbox)
* Sam Raker (swizzard)
* Ali-Akber Saifee (alisaifee)
* stiefel40k
* Zhigang Wang (w1z2g3)
* Rafał Kasa (rafalkasa)
* Qingping Hou (houqp)
* wssbck
* Martin Asell Backlund (masellfoodpanda)
* Matt Giles (mattgiles)
* Naveen Yadav (navyad)
* roeih-stratoscale
* Jahongir (rahmonov)
* Hans Lellelid (hozn)
* Steven Seguin (sseg)
* Michal Bultrowicz (butla)
* Joshua Adelman (synapticarbors)
* Ron Rothman (RonRothman)
* mayurmahajan
* Serge (yasek)
* Munir Contractor (munircontractor)
* Max (DSIW)
* Caleb Hayashida (santeyio)
* Tim Chen (timc13)
* Griff George (GriffGeorge)
* Russ (rhemz)
* Hynek Schlawack (hynek)
* Tyrone Groves (tyronegroves)
* Justin Siebert (Just-Sieb)
* Vytautas Liuolia (vytas7)
* Hugo van Kemenade (hugovk)
* Ryan Turner (ZDBioHazard)
* Federico Caselli (CaselIT)
* Steven Jackson (steven-upside)
* ozzzik
* elf69 (selfvin)
* Josh Klar (klardotsh)
* Carlo (carlodri)
* Akeem King (KingAkeem)
* Dmitrii Trofimov (DmitriiTrofimov)
* Anthony Bush (awbush)
* bkcsfi
* Aston Motes (astonm)
* TheMushr00m (TheMushrr00m)
* Aly Sivji (alysivji)
* Anthony (tribals)
* Alan Parker Lue (aparkerlue)
* Nate D. (Nateyo)
* Rajan Paneru (paneru-rajan)
* Dmitri Vasilishin (dmvass)
* Andrii Marynets (amarynets)
* Zubair Akram (zubairakram)
* Nick Zaccardi (nZac)
* Safa Ozturk (safaozturk93)
* Brent Smith (edmondb)
Expand All @@ -90,7 +146,6 @@ listed below by date of first contribution:
* Mostafa Khaki (mosi-kha)
* nagaabhinaya
* Matt Donders (mattdonders)
* Federico Caselli (CaselIT)
* Yang Keming (kemingy)
* Tim Gates (timgates42)
* Paul (hackedd)
Expand Down Expand Up @@ -143,6 +198,7 @@ listed below by date of first contribution:
* Dave Tapley (davetapley)
* Agustin Arce (aarcex3)
* Christian Grossmüller (chgad)
* Sai Prathik R (prathik2401)

(et al.)

Expand Down
Loading

0 comments on commit 3713877

Please sign in to comment.