Closed luiztauffer closed 3 years ago
@rly is this the result of your latest change?
This looks like a problem with the multiple inheritance in the extension, but we should catch this case in HDMF.
First, I think the new table classes should have the parent class order reversed, so that DynamicTable
is the base class.
Same for: https://github.com/oruebel/ndx-icephys-meta/blob/f164073c597e716c443558d94b39f02c9e1cc055/src/pynwb/ndx_icephys_meta/icephys.py#L778 https://github.com/oruebel/ndx-icephys-meta/blob/f164073c597e716c443558d94b39f02c9e1cc055/src/pynwb/ndx_icephys_meta/icephys.py#L841 https://github.com/oruebel/ndx-icephys-meta/blob/f164073c597e716c443558d94b39f02c9e1cc055/src/pynwb/ndx_icephys_meta/icephys.py#L896
Second, HDMF should not assume that the highest base class (assuming parents are higher than their children) of a class with multiple inheritance is an AbstractContainer
. That should be checked.
Using the latest hdmf-dev, this package will run into this error:
It looks like ndx-icephys-meta is performing an invalid operation with
HierarchicalDynamicTableMixin
. The problem only happens with the latest changes in hdmf, I guess this _get_fields was substituted by get_fields_conf