[Feature]: Change pynwb.validate(io=...) to match pynwb.validate(paths=[path]) #1807
Open
3 tasks done
Labels
category: enhancement
improvements of code or code behavior
priority: high
impacts proper operation or use of feature important to most users
topic: validator
issues related to validation of files
Milestone
What would you like to see added to PyNWB?
From #1777 and follow-up to #1511
The behavior of the
pynwb.validate
function withpaths
kwarg,pynwb.validate
function withio
kwarg, andpynwb.validate
CLI are inconsistent and therefore confusing. We added the first option while keeping the other two to maintain backwards compatibility, but this is causing issues downstream. These methods should all do the same basic validation behavior with the same argument names, except that thepynwb.validate
function with paths kwargs and CLI should open each passed file usingNWBHDF5IO
(and later using the generic read function that will be added, to account for Zarr files) and then callpynwb.validate
on each io object.This is a breaking change requiring a major version bump.
Is your feature request related to a problem?
No response
What solution would you like?
Desired changed features:
The core
validate
function should take as input anHDMFIO
object and return a list of machine-readable JSON validation results (#1179).Device
subtype defined in an extension, and when theDevice
is required by another type, results in an error because theDevice
subtype is not recognized (see [Bug]: PYNWB_VALIDATION when using ndx-miniscope extension #1777).There should be a separate function and CLI to get a list of cached namespaces and their dependencies of a file.
Do you have any interest in helping implement the feature?
Yes.
Code of Conduct
The text was updated successfully, but these errors were encountered: