Skip to content

Commit 1be8fcc

Browse files
celproveffigies
authored andcommitted
maint: load Report from nireports instead of niworkflows
maint: adapt function arguments accordingly maint: delete run_reports function
1 parent aa5b948 commit 1be8fcc

File tree

1 file changed

+22
-43
lines changed

1 file changed

+22
-43
lines changed

fmriprep/reports/core.py

Lines changed: 22 additions & 43 deletions
Original file line numberDiff line numberDiff line change
@@ -22,7 +22,7 @@
2222
#
2323
from pathlib import Path
2424

25-
from niworkflows.reports.core import Report as _Report
25+
from nireports.reports.core import Report as _Report
2626

2727
# This patch is intended to permit fMRIPrep 20.2.0 LTS to use the YODA-style
2828
# derivatives directory. Ideally, we will remove this in 20.3.x and use an
@@ -52,58 +52,37 @@ def _load_config(self, config):
5252
# The following are the interface used directly by fMRIPrep
5353
#
5454

55-
56-
def run_reports(
57-
out_dir,
58-
subject_label,
59-
run_uuid,
60-
config=None,
61-
reportlets_dir=None,
62-
packagename=None,
63-
):
64-
"""
65-
Run the reports.
66-
67-
.. testsetup::
68-
69-
>>> copytree_or_skip("data/tests/work", testdir)
70-
>>> (testdir / 'fmriprep').mkdir(parents=True, exist_ok=True)
71-
72-
.. doctest::
73-
74-
>>> run_reports(testdir / 'out', '01', 'madeoutuuid', packagename='fmriprep',
75-
... reportlets_dir=testdir / 'work' / 'reportlets' / 'fmriprep')
76-
0
77-
78-
"""
79-
return Report(
80-
out_dir,
81-
run_uuid,
82-
config=config,
83-
subject_id=subject_label,
84-
packagename=packagename,
85-
reportlets_dir=reportlets_dir,
86-
).generate_report()
87-
88-
8955
def generate_reports(
9056
subject_list, output_dir, run_uuid, config=None, work_dir=None, packagename=None
9157
):
92-
"""Execute run_reports on a list of subjects."""
58+
"""Generate reports for a list of subjects."""
9359
reportlets_dir = None
9460
if work_dir is not None:
9561
reportlets_dir = Path(work_dir) / "reportlets"
96-
report_errors = [
97-
run_reports(
62+
63+
report_errors = []
64+
for subject_label in subject_list:
65+
66+
# Problem subject_label is not a path to a file, I think
67+
entities = config.execution.layout.get_file(subject_label).get_entities()
68+
entities.pop("extension", None)
69+
entities.pop("echo", None)
70+
entities.pop("part", None)
71+
72+
robj = Report(
9873
output_dir,
99-
subject_label,
10074
run_uuid,
101-
config=config,
102-
packagename=packagename,
75+
bootstrapfile=config,
10376
reportlets_dir=reportlets_dir,
77+
plugins=None,
78+
plugin_meta=None,
79+
metadata=None,
80+
**entities
10481
)
105-
for subject_label in subject_list
106-
]
82+
83+
# Problem: this does not make sense anymore because generate_report in nireports always returns 0
84+
report_errors.append(robj.generate_report())
85+
10786

10887
errno = sum(report_errors)
10988
if errno:

0 commit comments

Comments
 (0)