This repository has been archived by the owner on Mar 19, 2024. It is now read-only.
Fix attrs version range #179
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
# This workflow will install Python dependencies, run tests and lint with a variety of Python versions | |
# For more information see: https://help.github.com/actions/language-and-framework-guides/using-python-with-github-actions | |
name: Build | |
on: | |
push: | |
pull_request: | |
jobs: | |
build: | |
runs-on: ubuntu-latest | |
strategy: | |
fail-fast: false | |
matrix: | |
python-version: ['3.8', '3.9', '3.10', '3.11'] | |
steps: | |
- uses: actions/checkout@v3 | |
- name: Set up Python ${{ matrix.python-version }} | |
uses: actions/setup-python@v3 | |
with: | |
python-version: ${{ matrix.python-version }} | |
- name: Install dependencies | |
run: | | |
python -m pip install --upgrade pip | |
if [ -f requirements.txt ]; then pip install -r requirements.txt; fi | |
- name: Check code format with black | |
run: | | |
black --fast --check -l 100 pymultimatic tests *.py | |
- name: Lint with flake8 | |
run: | | |
flake8 --max-line-length 100 pymultimatic tests | |
if: ${{ always() }} | |
- name: Type check with mypy | |
run: | | |
mypy --strict pymultimatic tests | |
if: ${{ always() }} | |
- name: Test coverage with pytest | |
run: | | |
coverage run --source=pymultimatic setup.py pytest | |
if: ${{ always() }} | |
- name: Upload Coverage to Codecov | |
uses: codecov/codecov-action@v3 | |
if: ${{ always() }} | |
- name: Check new pypi version is correct | |
run: | |
(chmod +x .github/check_version.sh && sh .github/check_version.sh) | |
if: ${{ always() }} |