Skip to content

Add new wording about live documentation version and how to build docs for tagged versions if required. #1100

Add new wording about live documentation version and how to build docs for tagged versions if required.

Add new wording about live documentation version and how to build docs for tagged versions if required. #1100

Workflow file for this run

name: package test
on:
push:
branches: [main]
pull_request:
jobs:
dl_files:
runs-on: ubuntu-20.04
steps:
- uses: actions/checkout@v3
- name: Set up Python
uses: actions/setup-python@v4
with:
python-version: 3.8
- name: Install dependencies needed to download files
# we're just installing mpol here to reference the zenodo record number
# in __init__. below we'll reinstall for the tests.
run: |
pip install astropy
pip install frank
pip install .
- name: Cache/Restore the .mpol folder cache
uses: actions/cache@v3
env:
cache-name: cache-mpol-dls
with:
# files are stored in .mpol
path: ~/.mpol
# the "key" is the hash of the download script
key: ${{ hashFiles('docs/download_external_files.py') }}
- name: Download large files
run: |
python3 docs/download_external_files.py
tests:
needs: dl_files # don't bother running if we didn't succeed getting the files
runs-on: ubuntu-20.04
strategy:
max-parallel: 4
matrix:
python-version: ["3.8", "3.9", "3.10"]
steps:
- uses: actions/checkout@v3
- name: Set up Python ${{ matrix.python-version }}
uses: actions/setup-python@v4
with:
python-version: ${{ matrix.python-version }}
# cache the Python environment, including installed dependencies
# (unique to each python-version; speeds up tests more than caching pip cache)
- name: Cache/Restore the Python env
uses: actions/cache@v3
env:
cache-name: cache-python${{ matrix.python-version }}-env
with:
path: ${{ env.pythonLocation }}
key: ${{ env.pythonLocation }}-${{ hashFiles('setup.py') }}
- name: Install pip
run: |
pip install --upgrade pip
- name: Install vanilla package
run: |
pip install .
- name: Install test dependencies
run: |
pip install .[test]
- name: Lint with flake8
run: |
pip install flake8
# stop the build if there are Python syntax errors or undefined names
flake8 . --count --select=E9,F63,F7,F82 --show-source --statistics
# exit-zero treats all errors as warnings. The GitHub editor is 127 chars wide
flake8 . --count --exit-zero --max-complexity=10 --max-line-length=127 --statistics
- name: Check types with MyPy
run: |
mypy src/mpol --pretty
- name: Cache/Restore the .mpol folder cache
uses: actions/cache@v3
env:
cache-name: cache-mpol-dls
with:
# files are stored in .mpol
path: ~/.mpol
# the "key" is the hash of the download script
key: ${{ hashFiles('docs/download_external_files.py') }}
- name: Run tests with coverage
run: |
pytest --cov=mpol