Minor documentation fix #55
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
# https://docs.github.com/en/actions/using-workflows/workflow-syntax-for-github-actions | |
name: Full Python Tests, Lint, and Coverage (all versions and OSes) | |
on: | |
push: | |
# only on commits, not on tags | |
branches: | |
- '**' | |
pull_request: | |
jobs: | |
tests: | |
name: CPython ${{ matrix.python-version }} on ${{ matrix.os }} | |
# Reminder: Keep in sync with dev/local-actions.sh | |
strategy: | |
fail-fast: false | |
matrix: | |
os: [Ubuntu, Windows, macOS] | |
# Remember that some tests below only run on one version, so keep that up-to-date. | |
python-version: ["3.9", "3.10", "3.11", "3.12", "3.13"] | |
runs-on: ${{ matrix.os }}-latest | |
steps: | |
- name: Disable autocrlf on Windows | |
if: ${{ matrix.os == 'Windows' }} | |
# https://github.com/actions/checkout/issues/135 | |
run: git config --global core.autocrlf false | |
- uses: actions/checkout@v4 | |
- uses: actions/setup-node@v4 | |
with: | |
node-version: 20 | |
- name: Install pyright | |
run: npm install --global pyright | |
- name: Set up Python ${{ matrix.python-version }} | |
uses: actions/setup-python@v5 | |
with: | |
python-version: ${{ matrix.python-version }} | |
allow-prereleases: true | |
# https://github.com/actions/setup-python#caching-packages-dependencies | |
cache: pip | |
# remember to keep in sync with Makefile: | |
cache-dependency-path: | | |
requirements.txt | |
dev/requirements.txt | |
- name: Install dependencies | |
run: make installdeps | |
- name: Run checks and lint | |
run: make smoke-checks ver-checks | |
- name: Run version-independent checks | |
if: ${{ matrix.python-version == '3.12' }} | |
run: make other-checks | |
- name: Run nix-checks and shellcheck on Linux | |
if: ${{ matrix.os == 'Ubuntu' }} | |
# Only run nix-checks on Ubuntu because it doesn't work on Windows and bash is too old on macOS. | |
# Only run shellcheck on Ubuntu because it's only installed there by default. | |
run: make nix-checks shellcheck | |
- name: Tests and Coverage | |
run: make coverage |