
The random asyncio bug is just too frequent and annoying to be worth the speed improvements. Our test suite is already quite fast. Random test failures hurt for 3 reasons, 1) they are discouraging for new contributors who won't understand it's out of their control, 2) it's annoying and time consuming to rerun the workflow, and 3) it makes single job failures feel less important (even they should be treated as important!).
77 lines
2.2 KiB
YAML
77 lines
2.2 KiB
YAML
name: Test
|
|
|
|
on:
|
|
push:
|
|
paths-ignore:
|
|
- "docs/**"
|
|
- "*.md"
|
|
|
|
pull_request:
|
|
paths-ignore:
|
|
- "docs/**"
|
|
- "*.md"
|
|
|
|
jobs:
|
|
build:
|
|
# We want to run on external PRs, but not on our own internal PRs as they'll be run
|
|
# by the push to the branch. Without this if check, checks are duplicated since
|
|
# internal PRs match both the push and pull_request events.
|
|
if:
|
|
github.event_name == 'push' || github.event.pull_request.head.repo.full_name !=
|
|
github.repository
|
|
|
|
runs-on: ${{ matrix.os }}
|
|
strategy:
|
|
fail-fast: false
|
|
matrix:
|
|
python-version: [3.6, 3.7, 3.8, 3.9]
|
|
os: [ubuntu-latest, macOS-latest, windows-latest]
|
|
|
|
steps:
|
|
- uses: actions/checkout@v2
|
|
|
|
- name: Set up Python ${{ matrix.python-version }}
|
|
uses: actions/setup-python@v2
|
|
with:
|
|
python-version: ${{ matrix.python-version }}
|
|
|
|
- name: Install dependencies
|
|
run: |
|
|
python -m pip install --upgrade pip
|
|
python -m pip install --upgrade tox
|
|
|
|
- name: Unit tests
|
|
run: |
|
|
tox -e ci-py -- -v --color=yes
|
|
|
|
- name: Publish coverage to Coveralls
|
|
# If pushed / is a pull request against main repo AND
|
|
# we're running on Linux (this action only supports Linux)
|
|
if:
|
|
((github.event_name == 'push' && github.repository == 'psf/black') ||
|
|
github.event.pull_request.base.repo.full_name == 'psf/black') && matrix.os ==
|
|
'ubuntu-latest'
|
|
|
|
uses: AndreMiras/coveralls-python-action@v20201129
|
|
with:
|
|
github-token: ${{ secrets.GITHUB_TOKEN }}
|
|
parallel: true
|
|
flag-name: py${{ matrix.python-version }}-${{ matrix.os }}
|
|
debug: true
|
|
|
|
coveralls-finish:
|
|
needs: build
|
|
# If pushed / is a pull request against main repo
|
|
if:
|
|
(github.event_name == 'push' && github.repository == 'psf/black') ||
|
|
github.event.pull_request.base.repo.full_name == 'psf/black'
|
|
|
|
runs-on: ubuntu-latest
|
|
steps:
|
|
- uses: actions/checkout@v2
|
|
- name: Coveralls finished
|
|
uses: AndreMiras/coveralls-python-action@v20201129
|
|
with:
|
|
parallel-finished: true
|
|
debug: true
|