Skip to content

FileNotFoundError in demo_prepare.ipynb #154

@vncntprvst

Description

@vncntprvst

Bug Report

Description

The repo's Instructions say: "We recommend you start by navigating to the notebooks directory on the left panel and go through the demo_prepare.ipynb".
When executing code cell 5 in that notebook

populate_settings = {"display_progress": True}

ephys.EphysRecording.populate(**populate_settings)

a FileNotFoundError occurs.

Reproducibility

Repository environment created with Dev Containers extension.
Navigate to demo_prepare.ipynb notebook, select kernel and execute code.
Error stack:

Output exceeds the [size limit](command:workbench.action.openSettings?[). Open the full output data [in a text editor](command:workbench.action.openLargeOutput?5cae5363-0515-4d6b-9fe4-f0979c9a6448)
---------------------------------------------------------------------------
FileNotFoundError                         Traceback (most recent call last)
Cell In[5], line 3
      1 populate_settings = {"display_progress": True}
----> 3 ephys.EphysRecording.populate(**populate_settings)

File /usr/local/lib/python3.9/site-packages/datajoint/autopopulate.py:241, in AutoPopulate.populate(self, suppress_errors, return_exception_objects, reserve_jobs, order, limit, max_calls, display_progress, processes, make_kwargs, *restrictions)
    237 if processes == 1:
    238     for key in (
    239         tqdm(keys, desc=self.__class__.__name__) if display_progress else keys
    240     ):
--> 241         error = self._populate1(key, jobs, **populate_kwargs)
    242         if error is not None:
    243             error_list.append(error)

File /usr/local/lib/python3.9/site-packages/datajoint/autopopulate.py:292, in AutoPopulate._populate1(self, key, jobs, suppress_errors, return_exception_objects, make_kwargs)
    290 self.__class__._allow_insert = True
    291 try:
--> 292     make(dict(key), **(make_kwargs or {}))
    293 except (KeyboardInterrupt, SystemExit, Exception) as error:
    294     try:

File /usr/local/lib/python3.9/site-packages/element_array_ephys/ephys_acute.py:291, in EphysRecording.make(self, key)
    289 def make(self, key):
    290     """Populates table with electrophysiology recording information."""
...
     43     "No valid full-path found (from {})"
     44     " for {}".format(root_directories, relative_path)
     45 )

FileNotFoundError: No valid full-path found (from [PosixPath('/workspaces/workflow-array-ephys/example_data/raw'), PosixPath('/workspaces/workflow-array-ephys/example_data/processed')]) for subject5/session1

Expected Behavior

The data should be downloaded first then used to populate the database.

Metadata

Metadata

Assignees

No one assigned

    Labels

    bugSomething isn't working

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions