Hi all,
I ran into an issue when trying to update a pipeline with the BidsDatagrabber interface. The dataset is correctly formatted as a BIDS dataset according to the bids-validator. I can also get the files via the pybids layout command, i.e. layout = BIDSLayout(folder). However, when I try to get the files via the BIDSDataGrabber, I first get the warning:
The 'extension' entity currently excludes the leading dot ('.'). As of version 0.14.0, it will include the leading dot. To suppress this warning and include the leading dot, use `bids.config.set_option('extension_initial_dot', True)*
and then it crashes:
ValueError Traceback (most recent call last)
<ipython-input-1-2fecf98ad7d3> in <module>
6 bg.inputs.base_dir = 'bids/'
7 bg.inputs.subject = '101'
----> 8 bg.run()
/opt/anaconda3/lib/python3.8/site-packages/nipype/interfaces/base/core.py in run(self, cwd, ignore_exception, **inputs)
428 runtime = self._run_interface(runtime)
429 runtime = self._post_run_hook(runtime)
--> 430 outputs = self.aggregate_outputs(runtime)
431 except Exception as e:
432 import traceback
/opt/anaconda3/lib/python3.8/site-packages/nipype/interfaces/base/core.py in aggregate_outputs(self, runtime, needed_outputs)
504 """Collate expected outputs and apply output traits validation."""
505 outputs = self._outputs() # Generate an empty output spec object
--> 506 predicted_outputs = self._list_outputs() # Predictions from _list_outputs
507 if not predicted_outputs:
508 return outputs
/opt/anaconda3/lib/python3.8/site-packages/nipype/interfaces/io.py in _list_outputs(self)
2984 args = query.copy()
2985 args.update(filters)
-> 2986 filelist = layout.get(return_type="file", **args)
2987 if len(filelist) == 0:
2988 msg = "Output key: %s returned no files" % key
/opt/anaconda3/lib/python3.8/site-packages/bids/layout/layout.py in get(self, return_type, target, scope, regex_search, absolute_paths, invalid_filters, **filters)
629 if suggestions:
630 msg += "Did you mean {}? ".format(suggestions)
--> 631 raise ValueError(msg + "If you're sure you want to impose "
632 "this constraint, set "
633 "invalid_filters='allow'.")
ValueError: 'extensions' is not a recognized entity. Did you mean ['extension']? If you're sure you want to impose this constraint, set invalid_filters='allow'.
Iām running nipype v1.6.1 and pybids v0.13.1 under Python 3.8.8.
Any help would be massively appreciated!