Closed scott-huberty closed 4 months ago
I'm self merging this PR so that #159 is not blocked, but I will repost my comment in a separate GH ticket so that we can discuss
Personally I vote for 1, because I think the maintenance burden of 2 is currently too much for this project. Also, MNE only officially supports their latest stable release, so I don't want to support people using older versions that MNE doesn't even support themselves.
@Andesha @jadesjardins @christian-oreilly What do you think?
SPEC0 is a nice initiative. I did not know about it. In general, I favor the requirements being as flexible as possible to avoid creating dependency conflict in downstream projects but I am good with 1 too because this is a relatively young project so I think we need to keep the maintenance burden relatively low until there is more buy-in from the community.
SPEC0 is a nice initiative. I did not know about it. In general, I favor the requirements being as flexible as possible to avoid creating dependency conflict in downstream projects but I am good with 1 too because this is a relatively young project so I think we need to keep the maintenance burden relatively low until there is more buy-in from the community.
@christian-oreilly one potential middle ground is that, assuming #159 get merged and users no longer have to save their files as EDF (they can save them to any format mne_bids.write_raw_bids
supports; brainvision, fif etc.) - then I think there's a case to be made to drop the hard dependency on edifo
in this project:
Then, If the user wants to export to EDF:
edifo
installed, MNE will say "you need to pip/conda install edfio
"eflib-python
installed, MNE will say "you need to pip/conda install edflib-python
"Basically we let MNE handle communicating their dependencies.
The downside is that it could cause an annoyance if a user accepts our pipeline defaults, and processes their whole only for it to fail at the end because they don't have the ability to write EDF. We could try to add extra warnings in the documentation to communicate this.
What do you think?
Sorry.. I just saw your response in #159 . I'll respond there
This fixes a CI failure first reported in #159 (see https://github.com/lina-usc/pylossless/actions/runs/9830889740/job/27231055697?pr=159)
edflib-python
, but should useedfio
.There are a couple of ways we can go about this.
requirements.txt
file, i.e.mne>=1.7
. This assures that people don't have an older version of MNE installed that will try to useedflib-python
.1.4
). Thus, we would need to add code that checks what MNE version the user has installed. If it is< 1.7
, check ifedflib-python
is installed. If it is>1.7
, check ifedfio
is installed, etc.Personally I vote for 1, because I think the maintenance burden of 2 is currently too much for this project. Also, MNE only officially supports their latest stable release, so I don't want to support people using older versions that MNE doesn't even support themselves.
@Andesha @jadesjardins @christian-oreilly What do you think?