nwb-guide icon indicating copy to clipboard operation
nwb-guide copied to clipboard

Error message "No module named pyedflib" - Mac ARM and Windows

Open benbrinkmann opened this issue 6 months ago • 3 comments

Describe the issue

Hi -

I have some EDF data I want to convert to NWB using NWB Guide. In setting up the conversion pipeline, when I get to the source data information field and enter an EDF file and click next I get a Request Failed: No module named pyedflib. I've then gone to the CLI and used pip3 to install pyedflib successfully, vers 0.1.40. It does say that it's defaulting to a user installation because the normal site-packages is not writeable. I can confirm though that I have root privileges. Mac: 2023 M2 Max system, running python3.9.

I also tried the same thing on a windows 11 system with nearly identical results. In the command prompt tool using pip install pyedflib appears to succeed. However the error message continues, even after a reboot. Windows 11 enterprise version 24H2, python 3.13.

Thanks in advance for any assistance.

Ben

Steps to Reproduce

In NWB Guide, select convert->create new pipeline. Select a local writeable output folder. Next->Data Entry, Fill in project name, substitute identifier for subject and S1 for session. Publish on DANDI=Yes, low level data options = No. Under Data Formats, select EDF Recording, then Next. Source Data Information, select an EDF file. When I click Next I get the error message described.

Operating System

Apple Sequoia 15.5

GUIDE Version

1.0.5

Code of Conduct

Yes

Did you confirm this issue was not already reported?

Yes

benbrinkmann avatar Jun 12 '25 21:06 benbrinkmann

Hi @benbrinkmann . Sorry you received this error. I can reproduce the error on my end. Unfortunately this cannot be resolved on your end - pyedflib needs to be packaged within the app.

While we work to resolve the issue, you can also use NeuroConv to convert your EDF data to NWB: See https://neuroconv.readthedocs.io/en/stable/conversion_examples_gallery/recording/edf.html for a barebones example and see the user guide for more information.

NWB GUIDE uses NeuroConv to perform the conversions but adds the nice graphical user interface on top. Everything you can do with NWB GUIDE you can also do in NeuroConv with some Python programming.

I'll keep you updated as we try to resolve this issue in GUIDE.

rly avatar Jun 12 '25 23:06 rly

Thanks for the update! Glad to know it's not something I'm doing wrong. I'll give it a try with NeuroConv.

benbrinkmann avatar Jun 13 '25 00:06 benbrinkmann

This appears to be resolved in the main branch, presumably with the update to Python 3.12 and NeuroConv 0.6.0. I'm working on a release next week and will ping back here when it's up.

rly avatar Jun 13 '25 04:06 rly