Skip to content

use new style middleware and catch exceptions to be sure to clear request in context #1194

use new style middleware and catch exceptions to be sure to clear request in context

use new style middleware and catch exceptions to be sure to clear request in context #1194

Workflow file for this run

---
name: Test
on: [push, pull_request]
jobs:
build:
name: build (Python ${{ matrix.python-version }}, Django ${{ matrix.django-version }})
runs-on: ubuntu-latest
strategy:
fail-fast: false
matrix:
python-version: ['3.8', '3.9', '3.10', '3.11', '3.12-dev']
django-version: ['3.2', '4.1', '4.2', 'main']
exclude:
- python-version: '3.8'
django-version: 'main'
- python-version: '3.9'
django-version: 'main'
- python-version: '3.11'
django-version: '3.2'
- python-version: '3.12-dev'
django-version: '3.2'
services:
postgres:
image: postgres:latest
env:
POSTGRES_USER: postgres
POSTGRES_PASSWORD: postgres
POSTGRES_DB: github_actions
ports:
- 5432:5432
# needed because the postgres container does not provide a healthcheck
options: --health-cmd pg_isready --health-interval 10s --health-timeout 5s --health-retries 5
mysql:
image: mysql:latest
env:
MYSQL_DATABASE: mysql
MYSQL_ROOT_PASSWORD: mysql
ports:
- 3306:3306
options: --health-cmd="mysqladmin ping" --health-interval=10s --health-timeout=5s --health-retries=3
mariadb:
image: mariadb:latest
env:
MARIADB_DATABASE: mariadb
MARIADB_ROOT_PASSWORD: mariadb
ports:
- 3307:3306
options: --health-cmd="mariadb-admin ping" --health-interval=10s --health-timeout=5s --health-retries=3
steps:
- uses: actions/checkout@v3
- name: Set up Python ${{ matrix.python-version }}
uses: actions/setup-python@v4
with:
python-version: ${{ matrix.python-version }}
cache: 'pip'
cache-dependency-path: |
setup.py
tox.ini
requirements/*.txt
- name: Install dependencies
run: |
python -m pip install --upgrade pip
pip install -r requirements/tox.txt
- name: Tox tests
run: |
tox -v
env:
DJANGO: ${{ matrix.django-version }}
- name: Upload coverage
uses: codecov/codecov-action@v3
with:
name: Python ${{ matrix.python-version }}, Django ${{ matrix.django-version }}
generated_file_checks:
name: Check generated files
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3
- name: Install gettext
run: |
sudo apt-get update
sudo apt-get install -y gettext
- name: Set up newest stable Python version
uses: actions/setup-python@v4
with:
python-version: 3.11
cache: 'pip'
# Invalidate the cache when this file updates, as the dependencies' versions
# are pinned in the step below
cache-dependency-path: '.github/workflows/test.yml'
- name: Install dependencies
run: |
python -m pip install --upgrade pip
# Install this project in editable mode, so that its package metadata can be queried
pip install -e .
# Install the latest minor version of Django we support
pip install Django==4.2
- name: Check translation files are updated
run: python -m simple_history.tests.generated_file_checks.check_translations