Skip to content

Drop black in favor of ruff and generate stubs to expand docstrings in Pylance and IDEs #73

Drop black in favor of ruff and generate stubs to expand docstrings in Pylance and IDEs

Drop black in favor of ruff and generate stubs to expand docstrings in Pylance and IDEs #73

Workflow file for this run

name: pytest
concurrency:
group: ${{ github.workflow }}-${{ github.event.number }}-${{ github.event.ref }}
cancel-in-progress: true
on: # yamllint disable-line rule:truthy
pull_request:
push:
branches: [main]
workflow_dispatch:
schedule:
- cron: '0 8 * * 1'
jobs:
pytest:
timeout-minutes: 30
strategy:
fail-fast: false
matrix:
os: [ubuntu, macos, windows]
python-version: [3.9, "3.10", "3.11", "3.12"]
name: ${{ matrix.os }} - py${{ matrix.python-version }}
runs-on: ${{ matrix.os }}-latest
defaults:
run:
shell: bash
steps:
- name: Checkout repository
uses: actions/checkout@v4
- name: Setup Python ${{ matrix.python-version }}
uses: actions/setup-python@v5
with:
python-version: ${{ matrix.python-version }}
architecture: 'x64'
- name: Install package
run: |
python -m pip install --progress-bar off --upgrade pip setuptools
python -m pip install --progress-bar off .[test]
- name: Display system information
run: pycrostates-sys_info --developer
- name: Display MNE info
run: mne sys_info -pd
- name: Get testing dataset version
run: |
curl https://raw.githubusercontent.com/mne-tools/mne-testing-data/master/version.txt -o mne_testing_data_version.txt
- name: Cache testing dataset
uses: actions/cache@v3
with:
key: mne-testing-${{ hashFiles('mne_testing_data_version.txt') }}
path: ~/mne_data
- name: Download testing dataset
run: python -c "import mne; mne.datasets.testing.data_path(verbose=True)"
- name: Run pytest
run: pytest pycrostates --cov=pycrostates --cov-report=xml --cov-config=pyproject.toml
- name: Upload to codecov
uses: codecov/codecov-action@v3
with:
files: ./coverage.xml
flags: unittests # optional
name: codecov-umbrella # optional
verbose: true # optional (default = false)
pytest-pip-pre:
timeout-minutes: 30
strategy:
fail-fast: false
matrix:
python-version: ["3.11"]
name: pip pre-release - py${{ matrix.python-version }}
runs-on: ubuntu-latest
defaults:
run:
shell: bash
steps:
- name: Checkout repository
uses: actions/checkout@v4
- name: Setup Python ${{ matrix.python-version }}
uses: actions/setup-python@v5
with:
python-version: ${{ matrix.python-version }}
architecture: 'x64'
- name: Install dependencies
run: |
python -m pip install --progress-bar off --upgrade pip setuptools
python -m pip install --progress-bar off .[test]
python -m pip install --progress-bar off --upgrade git+https://github.com/mne-tools/mne-python
python -m pip install --progress-bar off --upgrade --pre --only-binary :all: -i https://pypi.anaconda.org/scientific-python-nightly-wheels/simple --timeout=180 numpy scipy scikit-learn matplotlib
- name: Display system information
run: pycrostates-sys_info --developer
- name: Display MNE info
run: mne sys_info -pd
- name: Get testing dataset version
run: |
curl https://raw.githubusercontent.com/mne-tools/mne-testing-data/master/version.txt -o mne_testing_data_version.txt
- name: Cache testing dataset
uses: actions/cache@v3
with:
key: mne-testing-${{ hashFiles('mne_testing_data_version.txt') }}
path: ~/mne_data
- name: Download testing dataset
run: python -c "import mne; mne.datasets.testing.data_path(verbose=True)"
- name: Run pytest
run: pytest pycrostates --cov=pycrostates --cov-report=xml --cov-config=pyproject.toml
- name: Upload to codecov
uses: codecov/codecov-action@v3
with:
files: ./coverage.xml
flags: unittests # optional
name: codecov-umbrella # optional
verbose: true # optional (default = false)