-
Notifications
You must be signed in to change notification settings - Fork 52
Make the EEG chunker into a standalone Python package #1338
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Make the EEG chunker into a standalone Python package #1338
Conversation
8de658f to
7eecdeb
Compare
jeffersoncasimir
left a comment
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Tested via bids_import.py. Works seamlessly.
The only issue is that the EEGChunksPath config is not in core, but in an unmerged draft PR.
|
Thanks for the review Jefferson! I did not know about |
|
My mistake, the Here is what happened:
Maybe important detail: I also had #1342 pulled for this test run |
7eecdeb to
83d4139
Compare
83d4139 to
17b6cb9
Compare
|
@jeffersoncasimir Can you re-test this PR ? I rebased it on the other merged PRs (integration tests, |
17b6cb9 to
4530b73
Compare
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
#1342 (which I approved) changed the expected chunk path. It seems that the os.path replacement must not have been equivalent.
My EEGChunksPath: /data/Loris-MRI/data/bids_imports_chunks/. Chunks ended up in {EEGChunksPath}/sub-PIDCC0821_ses-V03_task-FACE_acq-eeg_eeg.chunks but should have ended up in {EEGChunksPath}/{DatasetName}_chunks/sub-PIDCC0821_ses-V03_task-FACE_acq-eeg_eeg.chunks
My physiological_parameter_file.Value for electrophysiology_chunked_dataset_path ended up as sub-PIDCC0821_ses-V03_task-FACE_acq-eeg_eeg.chunks, but should have been bids_imports/{DatasetName}_chunks/sub-PIDCC0821_ses-V03_task-FACE_acq-eeg_eeg.chunks to match RB examples
So the front-end is looking at the wrong place for the index.json and the chunks are also not saved in the right place
Let me know how your setup looks and ends up, if you think the problem is on my end. The PR is otherwise ready, but it seems like the right time to get the above straightened out.
|
Oooohokay I think I understand better thanks @jeffersoncasimir. In my tests I did not have |
jeffersoncasimir
left a comment
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Tested with #1345 and works great!
Ready to merge
Description
Make the LORIS EEG chunker into its own Python package. This allows to better isolate this pipeline from the rest of LORIS Python by having it declare its own dependencies and make sure it does not depend on the rest of LORIS Python. It also makes the LORIS EEG chunker installable without the rest of LORIS Python using
pip install.Details
loris-eeg-chunkerpackage metadata.loris-eeg-chunkerpackage using the conventionalsrc-layout.loris-eeg-chunker.Testing instructions
If you want to test this PR manually, either use:
pip install .in the LORIS-MRI root directory, which will install both LORIS Python along with the LORIS EEG chunker as a dependency.pip install python/loris_eeg_chunkerwhich will only install the LORIS EEG chunker (the main codebase can still rely on environment variables if it is not installed as a package).Migration
Note that the LORIS EEG chunker scripts have been renamed using the
[project.scripts]Python feature (instead of thePATHenvironment variable):edf_to_chunks.pytoedf-to-chunkseeglab_to_chunks.pytoeeglab-to-chunksThe LORIS Python scripts that call these subscripts have been updated, so this is only notable if a project calls these scripts directly.