name: build on: [push, pull_request] jobs: test: name: ${{ matrix.name }} runs-on: ${{ matrix.os }} timeout-minutes: 30 strategy: fail-fast: false matrix: include: - name: 'check' python: '3.9' toxpython: 'python3.9' tox_env: 'check' os: 'ubuntu-latest' - name: 'docs' python: '3.9' toxpython: 'python3.9' tox_env: 'docs' os: 'ubuntu-latest' - name: 'py37 (ubuntu)' python: '3.7' toxpython: 'python3.7' python_arch: 'x64' tox_env: 'py37' os: 'ubuntu-latest' - name: 'py37 (windows)' python: '3.7' toxpython: 'python3.7' python_arch: 'x64' tox_env: 'py37' os: 'windows-latest' - name: 'py37 (macos)' python: '3.7' toxpython: 'python3.7' python_arch: 'x64' tox_env: 'py37' os: 'macos-latest' - name: 'py38 (ubuntu)' python: '3.8' toxpython: 'python3.8' python_arch: 'x64' tox_env: 'py38' os: 'ubuntu-latest' - name: 'py38 (windows)' python: '3.8' toxpython: 'python3.8' python_arch: 'x64' tox_env: 'py38' os: 'windows-latest' - name: 'py38 (macos)' python: '3.8' toxpython: 'python3.8' python_arch: 'x64' tox_env: 'py38' os: 'macos-latest' - name: 'py39 (ubuntu)' python: '3.9' toxpython: 'python3.9' python_arch: 'x64' tox_env: 'py39' os: 'ubuntu-latest' - name: 'py39 (windows)' python: '3.9' toxpython: 'python3.9' python_arch: 'x64' tox_env: 'py39' os: 'windows-latest' - name: 'py39 (macos)' python: '3.9' toxpython: 'python3.9' python_arch: 'x64' tox_env: 'py39' os: 'macos-latest' - name: 'py310 (ubuntu)' python: '3.10' toxpython: 'python3.10' python_arch: 'x64' tox_env: 'py310' os: 'ubuntu-latest' - name: 'py310 (windows)' python: '3.10' toxpython: 'python3.10' python_arch: 'x64' tox_env: 'py310' os: 'windows-latest' - name: 'py310 (macos)' python: '3.10' toxpython: 'python3.10' python_arch: 'x64' tox_env: 'py310' os: 'macos-latest' - name: 'pypy37 (ubuntu)' python: 'pypy-3.7' toxpython: 'pypy3.7' python_arch: 'x64' tox_env: 'pypy37' os: 'ubuntu-latest' - name: 'pypy37 (windows)' python: 'pypy-3.7' toxpython: 'pypy3.7' python_arch: 'x64' tox_env: 'pypy37' os: 'windows-latest' - name: 'pypy37 (macos)' python: 'pypy-3.7' toxpython: 'pypy3.7' python_arch: 'x64' tox_env: 'pypy37' os: 'macos-latest' - name: 'pypy38 (ubuntu)' python: 'pypy-3.8' toxpython: 'pypy3.8' python_arch: 'x64' tox_env: 'pypy38' os: 'ubuntu-latest' - name: 'pypy38 (windows)' python: 'pypy-3.8' toxpython: 'pypy3.8' python_arch: 'x64' tox_env: 'pypy38' os: 'windows-latest' - name: 'pypy38 (macos)' python: 'pypy-3.8' toxpython: 'pypy3.8' python_arch: 'x64' tox_env: 'pypy38' os: 'macos-latest' steps: - uses: actions/checkout@v2 with: fetch-depth: 0 - uses: actions/setup-python@v2 with: python-version: ${{ matrix.python }} architecture: ${{ matrix.python_arch }} - name: install dependencies run: | python -mpip install --progress-bar=off -r ci/requirements.txt virtualenv --version pip --version tox --version pip list --format=freeze - name: test env: TOXPYTHON: '${{ matrix.toxpython }}' run: > tox -e ${{ matrix.tox_env }} -v