Prep for 0.3.0 release. #24
Workflow file for this run
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
name: Tests | |
on: | |
push: | |
branches: | |
- '*' | |
pull_request: | |
branches: | |
- '*' | |
workflow_dispatch: | |
workflow: '*' | |
env: | |
MPLBACKEND: agg | |
jobs: | |
# Make sure all necessary files are included in a release | |
check-manifest: | |
name: check manifest | |
runs-on: ubuntu-latest | |
steps: | |
- uses: actions/checkout@v4 | |
- uses: actions/setup-python@v5 | |
with: | |
python-version: '3.11' | |
- name: Install dependencies | |
run: | | |
pip install manifix | |
- name: Check MANIFEST.in file | |
run: | | |
python setup.py manifix | |
tests: | |
name: ${{ matrix.os }}-py${{ matrix.python-version }}${{ matrix.LABEL }} | |
runs-on: ${{ matrix.os }} | |
timeout-minutes: 15 | |
strategy: | |
fail-fast: false | |
matrix: | |
os: [ubuntu-latest, macos-latest, windows-latest] | |
python-version: ['3.10', '3.11'] | |
include: | |
- os: ubuntu-latest | |
python-version: 3.7 | |
DEPENDENCIES: matplotlib==3.3 numba==0.52 numpy==1.19 ray[default]==1.13 | |
LABEL: -oldest | |
steps: | |
- uses: actions/checkout@v4 | |
- name: Set up Python ${{ matrix.python-version }} | |
uses: actions/setup-python@v5 | |
with: | |
python-version: ${{ matrix.python-version }} | |
- name: Install dependencies and package | |
shell: bash | |
run: | | |
pip install -U -e .'[tests]' | |
- name: Install oldest supported version | |
if: contains(matrix.LABEL, 'oldest') | |
run: | | |
pip install ${{ matrix.DEPENDENCIES }} | |
- name: Install support for multiprocessing and GPU support | |
if: ${{ matrix.os == 'ubuntu-latest' || matrix.os == 'macos-latest' }} | |
# The second line is redundant but added for testing of pip | |
# selectors | |
run: | | |
pip install -U -e .'[gpu,parallel]' | |
pip install -U -e .'[all]' | |
- name: Display versions of Python, pip and packages | |
run: | | |
python -V | |
pip -V | |
pip list | |
- name: Run tests | |
run: | | |
pytest --cov=pyebsdindex --pyargs pyebsdindex | |
- name: Generate line coverage | |
if: ${{ matrix.os == 'ubuntu-latest' }} | |
run: | | |
coverage report --show-missing |