diff options
-rw-r--r-- | .github/workflows/ci-linux.yml | 70 | ||||
-rw-r--r-- | .github/workflows/ci-macos.yml | 32 | ||||
-rw-r--r-- | .github/workflows/ci-tests.yml | 95 | ||||
-rw-r--r-- | .github/workflows/ci-windows.yml | 28 | ||||
-rw-r--r-- | README.rst | 10 | ||||
-rw-r--r-- | setup.cfg | 2 | ||||
-rw-r--r-- | tox.ini | 10 |
7 files changed, 101 insertions, 146 deletions
diff --git a/.github/workflows/ci-linux.yml b/.github/workflows/ci-linux.yml deleted file mode 100644 index 1a8897f..0000000 --- a/.github/workflows/ci-linux.yml +++ /dev/null @@ -1,70 +0,0 @@ -name: Build/test on Linux -# This workflow is triggered on pushes to the repository. -on: [push, pull_request] - -jobs: - test: - runs-on: ubuntu-latest - strategy: - matrix: - py: [ - '2.7', - '3.5', - '3.6', - '3.7', - '3.8', - 'pypy2', - 'pypy3' - ] - name: "Python: ${{ matrix.py }}" - steps: - - uses: actions/checkout@master - - name: Setup python - uses: actions/setup-python@v1 - with: - python-version: ${{ matrix.py }} - architecture: x64 - - run: pip install tox - - name: Running tox - run: tox -e py - coverage: - runs-on: ubuntu-latest - name: Validate coverage for Python 2/3 - steps: - - uses: actions/checkout@master - - name: Setup python - uses: actions/setup-python@v1 - with: - python-version: 2.7 - architecture: x64 - - name: Setup python - uses: actions/setup-python@v1 - with: - python-version: 3.8 - architecture: x64 - - run: pip install tox - - run: tox -e py38,py27,coverage - docs: - runs-on: ubuntu-latest - name: Build the documentation - steps: - - uses: actions/checkout@master - - name: Setup python - uses: actions/setup-python@v1 - with: - python-version: 3.8 - architecture: x64 - - run: pip install tox - - run: tox -e docs - lint: - runs-on: ubuntu-latest - name: Lint the package - steps: - - uses: actions/checkout@master - - name: Setup python - uses: actions/setup-python@v1 - with: - python-version: 3.8 - architecture: x64 - - run: pip install tox - - run: tox -e lint diff --git a/.github/workflows/ci-macos.yml b/.github/workflows/ci-macos.yml deleted file mode 100644 index 384bbe6..0000000 --- a/.github/workflows/ci-macos.yml +++ /dev/null @@ -1,32 +0,0 @@ -name: Build/test on MacOS -# This workflow is triggered on pushes to the repository. -on: [push, pull_request] - -jobs: - test: - runs-on: macOS-latest - strategy: - matrix: - py: [ - '2.7', - '3.5', - '3.6', - '3.7', - '3.8', - 'pypy2', - 'pypy3' - ] - architecture: ['x64'] - name: "Python: ${{ matrix.py }}" - steps: - - uses: actions/checkout@master - - name: Setup python - uses: actions/setup-python@v1 - with: - python-version: ${{ matrix.py }} - architecture: ${{ matrix.architecture }} - - run: pip install tox - - name: Running tox - run: | - ulimit -n 4096 - tox -e py diff --git a/.github/workflows/ci-tests.yml b/.github/workflows/ci-tests.yml new file mode 100644 index 0000000..54b229e --- /dev/null +++ b/.github/workflows/ci-tests.yml @@ -0,0 +1,95 @@ +name: Build and test + +on: + # Only on pushes to master or one of the release branches we build on push + push: + branches: + - master + - "[0-9].[0-9]+-branch" + tags: + # Build pull requests + pull_request: + +jobs: + test: + strategy: + matrix: + py: + - "2.7" + - "3.5" + - "3.6" + - "3.7" + - "3.8" + - "pypy3" + os: + - "ubuntu-latest" + - "windows-latest" + - "macos-latest" + architecture: + - x64 + - x86 + + exclude: + # Linux and macOS don't have x86 python + - os: "ubuntu-latest" + architecture: x86 + - os: "macos-latest" + architecture: x86 + # Building on PyPy3 on Windows is broken + - os: "windows-latest" + py: "pypy3" + + name: "Python: ${{ matrix.py }}-${{ matrix.architecture }} on ${{ matrix.os }}" + runs-on: ${{ matrix.os }} + steps: + - uses: actions/checkout@v2 + - name: Setup python + uses: actions/setup-python@v2 + with: + python-version: ${{ matrix.py }} + architecture: ${{ matrix.architecture }} + - run: pip install tox + - name: Running tox + run: tox -e py + coverage: + runs-on: ubuntu-latest + name: Validate coverage + steps: + - uses: actions/checkout@v2 + - name: Setup python 2.7 + uses: actions/setup-python@v2 + with: + python-version: 2.7 + architecture: x64 + - name: Setup python 3.8 + uses: actions/setup-python@v2 + with: + python-version: 3.8 + architecture: x64 + + - run: pip install tox + - run: tox -e py38,py27,coverage + docs: + runs-on: ubuntu-latest + name: Build the documentation + steps: + - uses: actions/checkout@v2 + - name: Setup python + uses: actions/setup-python@v2 + with: + python-version: 3.8 + architecture: x64 + - run: pip install tox + - run: tox -e docs + lint: + runs-on: ubuntu-latest + name: Lint the package + steps: + - uses: actions/checkout@v2 + - name: Setup python + uses: actions/setup-python@v2 + with: + python-version: 3.8 + architecture: x64 + - run: pip install tox + - run: tox -e lint diff --git a/.github/workflows/ci-windows.yml b/.github/workflows/ci-windows.yml deleted file mode 100644 index 1e6406f..0000000 --- a/.github/workflows/ci-windows.yml +++ /dev/null @@ -1,28 +0,0 @@ -name: Build/test on Windows -# This workflow is triggered on pushes to the repository. -on: [push, pull_request] - -jobs: - test: - runs-on: windows-2019 - strategy: - matrix: - py: [ - '2.7', - '3.5', - '3.6', - '3.7', - '3.8' - ] - architecture: ['x86', 'x64'] - name: "Python: ${{ matrix.py }} (${{ matrix.architecture }})" - steps: - - uses: actions/checkout@master - - name: Setup python - uses: actions/setup-python@v1 - with: - python-version: ${{ matrix.py }} - architecture: ${{ matrix.architecture }} - - run: pip install tox - - name: Running tox - run: tox -e py @@ -5,14 +5,8 @@ Waitress :target: https://pypi.org/project/waitress/ :alt: latest version of waitress on PyPI -.. image:: https://github.com/Pylons/waitress/workflows/Build/test%20on%20Linux/badge.svg?branch=master - :target: https://github.com/Pylons/waitress/actions?query=workflow%3A%22Build%2Ftest+on+Linux%22 - -.. image:: https://github.com/Pylons/waitress/workflows/Build/test%20on%20MacOS/badge.svg?branch=master - :target: https://github.com/Pylons/waitress/actions?query=workflow%3A%22Build%2Ftest+on+MacOS%22 - -.. image:: https://github.com/Pylons/waitress/workflows/Build/test%20on%20Windows/badge.svg?branch=master - :target: https://github.com/Pylons/waitress/actions?query=workflow%3A%22Build%2Ftest+on+Windows%22 +.. image:: https://github.com/Pylons/waitress/workflows/Build%20and%20test/badge.svg + :target: https://github.com/Pylons/waitress/actions?query=workflow%3A%22Build+and+test%22 .. image:: https://readthedocs.org/projects/waitress/badge/?version=master :target: https://docs.pylonsproject.org/projects/waitress/en/master @@ -70,4 +70,4 @@ python_files = test_*.py python_classes = Test_* testpaths = tests -addopts = -W always --cov --cov-report=term-missing +addopts = -W always --cov @@ -17,20 +17,19 @@ setenv = COVERAGE_FILE=.coverage.{envname} [testenv:coverage] -basepython = python3.8 +skip_install = True commands = coverage combine coverage xml - coverage report --show-missing + coverage report --fail-under=100 deps = coverage setenv = COVERAGE_FILE=.coverage -depends = py27, py35 +depends = py27, py38 [testenv:lint] skip_install = True -basepython = python3.8 commands = black --check --diff . check-manifest @@ -57,7 +56,6 @@ extras = [testenv:run-flake8] skip_install = True -basepython = python3.8 commands = flake8 src/waitress/ tests deps = @@ -66,7 +64,6 @@ deps = [testenv:run-black] skip_install = True -basepython = python3.8 commands = black . deps = @@ -74,7 +71,6 @@ deps = [testenv:build] skip_install = true -basepython = python3.8 commands = # clean up build/ and dist/ folders python -c 'import shutil; shutil.rmtree("build", ignore_errors=True)' |