Skip to content

Merge pull request #13 from Klavionik/support-async-callables #44

Merge pull request #13 from Klavionik/support-async-callables

Merge pull request #13 from Klavionik/support-async-callables #44

Workflow file for this run

name: Lint and test
on:
workflow_dispatch:
push:
jobs:
lint:
runs-on: ubuntu-latest
steps:
- name: Checkout 🛎️
uses: actions/checkout@master
with:
persist-credentials: false
- name: Setup python 3.9 🐍
uses: actions/setup-python@v4
with:
python-version: 3.9
- name: Install dependencies ☕️
run: |
pip install -U pip
pip install -r requirements.txt
pip install -r requirements_dev.txt
- name: Lint 🔍
run: flake8 pymitter tests examples.py
pypi:
runs-on: ubuntu-latest
steps:
- name: Checkout 🛎️
uses: actions/checkout@master
with:
persist-credentials: false
- name: Setup python 3.9 🐍
uses: actions/setup-python@v4
with:
python-version: 3.9
- name: Install dependencies ☕️
run: |
pip install -U pip setuptools
pip install -U twine build
- name: Check bundling 📦
run: python -m build
- name: Check setup 🚦
run: twine check "dist/pymitter-*.tar.gz"
test:
runs-on: ubuntu-latest
strategy:
matrix:
python-version:
- "3.7"
- "3.8"
- "3.9"
- "3.10"
- "3.11"
- "3.12"
name: test (python ${{ matrix.python-version }})
steps:
- name: Checkout 🛎️
uses: actions/checkout@master
with:
persist-credentials: false
- name: Setup Python ${{ matrix.python-version }} 🐍
uses: actions/setup-python@v4
with:
python-version: ${{ matrix.python-version }}
- name: Install dependencies ☕️
run: |
pip install -U pip setuptools
pip install -r requirements.txt
pip install -r requirements_dev.txt
- name: Test 🎢
run: pytest tests
coverage:
runs-on: ubuntu-latest
steps:
- name: Checkout 🛎️
uses: actions/checkout@master
with:
persist-credentials: false
- name: Setup python 3.9 🐍
uses: actions/setup-python@v4
with:
python-version: 3.9
- name: Install dependencies ☕️
run: |
pip install -U pip setuptools
pip install -r requirements.txt
pip install -r requirements_dev.txt
- name: Run coverage test 🎢
run: pytest --cov=pymitter --cov-report xml:coverage_39.xml tests
- name: Upload report 🔝
uses: codecov/codecov-action@v2
with:
token: ${{ secrets.CODECOV_TOKEN }}
files: ./coverage_39.xml
flags: unittests