mirror of
https://github.com/davidhalter/parso.git
synced 2025-12-06 12:54:29 +08:00
66 lines
1.8 KiB
YAML
66 lines
1.8 KiB
YAML
name: Build
|
|
|
|
on: [push, pull_request]
|
|
|
|
env:
|
|
PYTEST_ADDOPTS: --color=yes
|
|
|
|
jobs:
|
|
lint:
|
|
runs-on: ubuntu-latest
|
|
steps:
|
|
- uses: actions/checkout@v2
|
|
- name: Set up Python
|
|
uses: actions/setup-python@v2
|
|
with:
|
|
python-version: '3.8'
|
|
- name: Install dependencies
|
|
run: |
|
|
python -m pip install --upgrade pip setuptools wheel
|
|
pip install .[qa]
|
|
- name: Run Flake8
|
|
# Ignore F401, which are unused imports. flake8 is a primitive tool and is sometimes wrong.
|
|
run: flake8 --extend-ignore F401 parso test/*.py setup.py scripts/
|
|
- name: Run Mypy
|
|
run: mypy parso setup.py
|
|
test:
|
|
runs-on: ubuntu-latest
|
|
continue-on-error: ${{ matrix.experimental }}
|
|
strategy:
|
|
fail-fast: false
|
|
matrix:
|
|
python-version: ['3.7', '3.8', '3.9', '3.10', '3.11', '3.12', '3.13']
|
|
experimental: [false]
|
|
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 setuptools wheel
|
|
pip install .[testing]
|
|
- name: Run pytest
|
|
run: pytest
|
|
coverage:
|
|
runs-on: ubuntu-latest
|
|
steps:
|
|
- uses: actions/checkout@v2
|
|
- name: Set up Python
|
|
uses: actions/setup-python@v2
|
|
with:
|
|
python-version: '3.8'
|
|
- name: Install dependencies
|
|
run: |
|
|
python -m pip install --upgrade pip setuptools wheel
|
|
pip install .[testing] coverage coveralls
|
|
- name: Run pytest with coverage
|
|
run: |
|
|
coverage run -m pytest
|
|
coverage report
|
|
- name: Upload coverage report to Coveralls
|
|
env:
|
|
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
|
|
run: coveralls --service=github
|