pynwb icon indicating copy to clipboard operation
pynwb copied to clipboard

[Bug]:

Open mavaylon1 opened this issue 1 year ago • 2 comments

What happened?

There seems to be a bug for test_read_dandi.py that I first noticed locally and then saw that the scheduled workflow as also been failing for a specific DANDI set returning

TypeError: expected str, bytes or os.PathLike object, not NoneType

Steps to Reproduce

pytest test_read_dandi.py

Traceback

267: DANDI:000546
Traceback (most recent call last):
  File "/home/runner/work/pynwb/pynwb/tests/read_dandi/test_read_dandi.py", line 45, in test_read_first_nwb_asset
    io.read()
  File "/usr/share/miniconda/envs/ros3/lib/python3.11/site-packages/hdmf/utils.py", line 644, in func_call
    return func(args[0], **pargs)
           ^^^^^^^^^^^^^^^^^^^^^^
  File "/home/runner/work/pynwb/pynwb/src/pynwb/__init__.py", line 304, in read
    file = super().read(**kwargs)
           ^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/share/miniconda/envs/ros3/lib/python3.11/site-packages/hdmf/backends/hdf5/h5tools.py", line 477, in read
    return super().read(**kwargs)
           ^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/share/miniconda/envs/ros3/lib/python3.11/site-packages/hdmf/utils.py", line 644, in func_call
    return func(args[0], **pargs)
           ^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/share/miniconda/envs/ros3/lib/python3.11/site-packages/hdmf/backends/io.py", line 56, in read
    f_builder = self.read_builder()
                ^^^^^^^^^^^^^^^^^^^
  File "/usr/share/miniconda/envs/ros3/lib/python3.11/site-packages/hdmf/utils.py", line 644, in func_call
    return func(args[0], **pargs)
           ^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/share/miniconda/envs/ros3/lib/python3.11/site-packages/hdmf/backends/hdf5/h5tools.py", line 501, in read_builder
    f_builder = self.__read_group(self.__file, ROOT_NAME, ignore=ignore)
                ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/share/miniconda/envs/ros3/lib/python3.11/site-packages/hdmf/backends/hdf5/h5tools.py", line 635, in __read_group
    builder = read_method(sub_h5obj)
              ^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/share/miniconda/envs/ros3/lib/python3.11/site-packages/hdmf/backends/hdf5/h5tools.py", line 635, in __read_group
    builder = read_method(sub_h5obj)
              ^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/share/miniconda/envs/ros3/lib/python3.11/site-packages/hdmf/backends/hdf5/h5tools.py", line 635, in __read_group
    builder = read_method(sub_h5obj)
              ^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/share/miniconda/envs/ros3/lib/python3.11/site-packages/hdmf/backends/hdf5/h5tools.py", line 650, in __read_dataset
    "attributes": self.__read_attrs(h5obj),
                  ^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/share/miniconda/envs/ros3/lib/python3.11/site-packages/hdmf/backends/hdf5/h5tools.py", line 727, in __read_attrs
    ret[k] = self.__read_ref(h5obj.file[v])
             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/share/miniconda/envs/ros3/lib/python3.11/site-packages/hdmf/backends/hdf5/h5tools.py", line 739, in __read_ref
    ret = self.__read_group(h5obj)
          ^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/share/miniconda/envs/ros3/lib/python3.11/site-packages/hdmf/backends/hdf5/h5tools.py", line 596, in __read_group
    name = str(os.path.basename(h5obj.name))
               ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "<frozen posixpath>", line 142, in basename
TypeError: expected str, bytes or os.PathLike object, not NoneType

Operating System

Windows

Python Executable

Conda

Python Version

lower version (unsupported)

Package Versions

No response

Code of Conduct

mavaylon1 avatar Aug 10 '23 00:08 mavaylon1

@rly What priority level is this bug?

mavaylon1 avatar Aug 10 '23 00:08 mavaylon1

@mavaylon1 Maybe the dandiset was updated, but i cannot reproduce this bug locally. Could you please check on your end? If we can't, let's close this issue.

rly avatar Oct 30 '23 07:10 rly