neuromodulation / py_neuromodulation

Real-time analysis of intracranial neurophysiology recordings.
https://neuromodulation.github.io/py_neuromodulation/
MIT License
41 stars 9 forks source link

Use Rye to install dependencies during automated tests #310

Closed toni-neurosc closed 2 months ago

toni-neurosc commented 2 months ago

So @timonmerk and I talked about this during the meeting, and it seems that there is a way to customize the way tox installs packages, see docs here: https://tox.wiki/en/latest/config.html#install_command

So it defaults to python -I -m pip install {opts} {packages}

Right now the output in the Github Action is: python -I -m pip install 'filterpy>=1.4.5' fooof 'hatch>=1.9.4' imbalanced-learn 'joblib>=1.3.2' 'matplotlib>=3.3.4' mne 'mne-bids>=0.8' mne-connectivity mrmr-selection nolds 'numpy>=1.21.2' 'pandas>=1.2.2' pip 'pyarrow>=14.0.2' pybids 'pybispectra>=1.0.0' pynput pyparrm scikit-image 'scikit-learn>=0.24.2' scikit-optimize 'scipy>=1.7.1' 'seaborn>=0.11' wget

So we can experiment with adding this to the tox configuration:

[testenv]
install_command = rye sync

Provided that the Github workflow is modified to install Rye beforehand, instead of Pip.

We could maybe do this modification together with adding the Windows tests, @SamedVossberg

toni-neurosc commented 2 months ago

Done, PR #311 fixes this