Skip to content

Merge pull request #177 from SethMMorton/modernize-dev-infra #209

Merge pull request #177 from SethMMorton/modernize-dev-infra

Merge pull request #177 from SethMMorton/modernize-dev-infra #209

Workflow file for this run

name: Code Quality
# Only run on branches (e.g. not tags)
on:
push:
branches:
- "*"
pull_request:
branches:
- "*"
jobs:
formatting:
name: Formatting
runs-on: ubuntu-latest
steps:
- name: Checkout code
uses: actions/checkout@v3
- name: Set up Python
uses: actions/setup-python@v4
with:
python-version: '3.8'
- name: Run ruff
uses: astral-sh/ruff-action@v1
with:
args: 'format --check'
static-analysis:
name: Static Analysis
runs-on: ubuntu-latest
steps:
- name: Checkout code
uses: actions/checkout@v3
- name: Set up Python
uses: actions/setup-python@v4
with:
python-version: '3.8'
- name: Run ruff
uses: astral-sh/ruff-action@v1
type-checking:
name: Type Checking
runs-on: ubuntu-latest
steps:
- name: Checkout code
uses: actions/checkout@v3
- name: Set up Python
uses: actions/setup-python@v4
with:
python-version: '3.8'
- name: Install MyPy
run: pip install mypy hypothesis pytest pytest-mock fastnumbers setuptools_scm
- name: Create _version.py file
run: python -m setuptools_scm --force-write-version-files
- name: Run MyPy
run: mypy --strict natsort tests
package-validation:
name: Package Validation
runs-on: ubuntu-latest
steps:
- name: Checkout code
uses: actions/checkout@v3
- name: Set up Python
uses: actions/setup-python@v4
with:
python-version: '3.8'
- name: Install Validators
run: pip install twine build
- name: Run Validation
run: |
python -m build
twine check dist/*