# This workflow will install Python dependencies, run tests and lint with a variety of Python versions # For more information see: https://docs.github.com/en/actions/automating-builds-and-tests/building-and-testing-python name: Package testing on: push: branches: [ "master", "dev" ] pull_request: types: [opened, synchronize, reopened] jobs: build-compat: runs-on: ubuntu-20.04 strategy: fail-fast: false matrix: python-version: ["3.6", "3.7"] steps: - uses: actions/checkout@v4 - name: Set up Python ${{ matrix.python-version }} uses: actions/setup-python@v5.4.0 with: python-version: ${{ matrix.python-version }} - name: Install dependencies run: | if [ -f requirements.txt ]; then pip install -r requirements.txt; fi if [ -f requirements-t-pre37.txt ]; then pip install -r requirements-t-pre37.txt; fi - name: Test with nosetest run: | ./scripts/testing.sh build-latest: runs-on: ubuntu-22.04 strategy: fail-fast: false matrix: python-version: ["3.8", "3.9", "3.10", "3.11", "3.12", "3.13"] steps: - uses: actions/checkout@v4 - name: Set up Python ${{ matrix.python-version }} uses: actions/setup-python@v5.4.0 with: python-version: ${{ matrix.python-version }} - name: Install dependencies run: | python -m pip install --upgrade pip if [ -f requirements.txt ]; then pip install -r requirements.txt; fi if [ -f requirements-t.txt ]; then pip install -r requirements-t.txt; fi - name: Lint with flake8 run: | ./scripts/flake8.sh - name: Test with pytest run: | pytest