name: Test on: [push, pull_request] jobs: Build: runs-on: ubuntu-latest strategy: matrix: python-version: ['3.10', '3.11', '3.12', '3.13', '3.14'] django-version: ['4.2', '5.2', '6.0.*'] exclude: - python-version: 3.13 django-version: 4.2 - python-version: 3.14 django-version: 4.2 - python-version: 3.10 django-version: 6.0.* - python-version: 3.11 django-version: 6.0.* fail-fast: false steps: - uses: actions/checkout@v6 - name: 'Set up Python ${{ matrix.python-version }}' uses: actions/setup-python@v6 with: python-version: '${{ matrix.python-version }}' cache: 'pip' - name: Install dependencies run: | pip install -r requirements.txt pip install -r tests/requirements.txt pip install "Django==${{ matrix.django-version }}" . - name: Run Tests run: | echo "$(python --version) / Django $(django-admin --version)" export DJANGO_SETTINGS_MODULE=tests.settings export PYTHONPATH=. coverage run --source=avatar `which django-admin` test tests coverage report coverage xml - name: Upload coverage reports to Codecov with GitHub Action uses: codecov/codecov-action@v5