name: Tests and linters on: [push, pull_request, workflow_dispatch] jobs: tests-on-legacy-versions: name: Run tests on legacy versions runs-on: ubuntu-20.04 strategy: matrix: python-version: [2.7, 3.5, 3.6, 3.7, pypy2, pypy3] steps: - uses: actions/checkout@v3 - uses: actions/setup-python@v4 with: python-version: ${{ matrix.python-version }} - run: pip install tox - run: tox env: TOXENV: ${{ matrix.python-version }} test-on-different-versions: name: Run tests runs-on: ubuntu-latest strategy: matrix: python-version: [3.8, 3.9, "3.10", 3.11] steps: - uses: actions/checkout@v3 - uses: actions/setup-python@v4 with: python-version: ${{ matrix.python-version }} - run: pip install tox - run: tox env: TOXENV: ${{ matrix.python-version }} test-coverage: name: Run tests with coverage runs-on: ubuntu-latest env: DEPENDENCY_INJECTOR_DEBUG_MODE: 1 COVERALLS_REPO_TOKEN: ${{ secrets.COVERALLS_REPO_TOKEN }} GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} steps: - uses: actions/checkout@v3 - uses: actions/setup-python@v4 with: python-version: 3.11 - run: pip install tox cython - run: make cythonize - run: tox env: TOXENV: coveralls linters: name: Run linters runs-on: ubuntu-latest strategy: matrix: toxenv: [flake8, pydocstyle, mypy, pylint] steps: - uses: actions/checkout@v3 - uses: actions/setup-python@v4 with: python-version: 3.11 - run: pip install tox - run: tox env: TOXENV: ${{ matrix.toxenv }}