Releases: nipreps/fmriprep
25.1.0
Relase notes
New feature release in the 25.1.x series.
This release includes a small fix related to interpolations on the bounds of the image field-of-view. This improves consistency with prior versions of fMRIPrep for data with limited fields-of-view or small bounding boxes.
This release also adds support for providing fallback values for TotalReadoutTime metadata. For Philips datasets, if EstimatedTotalReadoutTime or EstimatedEffectiveEchoSpacing are available, you can use these by passing --fallback-total-readout-time estimated. For datasets with no readout time information, a numeric value can be passed, for example, --fallback-total-readout-time 0.05. If the readout time information is known, it is preferable to encode directly in the dataset, but there are cases where it is better to explicitly pass the value to the software than inject uncertain metadata into the dataset. In particular, the true readout time is not necessary for SyN-SDC, but a value is nonetheless needed in order to estimate the inhomogeneity field.
This release is a long-term-support candidate. We will be performing extensive tests and monitoring bug reports over the next couple of months to determine whether issues can be addressed without making breaking changes.
Structural processing changes
This release pins a version of sMRIPrep (0.18) that correctly handles precomputed tissue probability maps. The FAST segmentation also now skips an internal bias field correction step that is redundant with ANTs N4 correction, and may be inappropriate for non-human populations.
Fieldmap processing changes
This release pins a version of SDCFlows (2.13) that includes several improvements to the SyN-SDC method. In particular, the fieldmap prior that constrained the scope of displacements was reintroduced and refined.
Changes
- FIX: Use nearest mode for extrapolating data outside image boundaries (#3453)
- ENH: Replace c3d_affine_tool with a ConvertAffine interface (#3464)
- ENH: Add flag to fallback to Estimated* metadata or a passed value for TotalReadoutTime (#3423)
Full Changelog: 25.0.0...25.1.0
25.0.0
Release notes
New feature release in the 25.0.x series.
This release substantially improves support for pre-computed derivatives. Previous releases would miss some derivatives and rerun the computations. Note that derivatives from previous versions will be accepted, so it should not be necessary to recompute derivatives from previous versions. The recommended command line is:
fmriprep BIDS_DIR OUT_DIR participant --derivatives fmriprep=PRECOMP_DIR
Note that multiple derivatives can be specified, for example:
fmriprep BIDS_DIR OUT_DIR participant \
anat=PRECOMPUTED_ANATOMICAL_DIR \
func=PRECOMPUTED_FUNCTIONAL_DIR
When the same file is found in multiple derivatives, the last one found takes precedence.
Additionally, --force-* flags have been consolidated into a single --force flag that can take multiple, space-separated arguments.
Structural processing changes
We now output white, pial and midthickness fsLR meshes on the subject surface. Look for sub-<subject>_hemi-<L|R>_space-fsLR_*_<surf>.surf.gii files.
Brain extraction has been modified slightly to more closely match the antsBrainExtraction.sh workflow distributed by ANTs. The impact should be minimal, but in rare cases this fixes a crash.
Fieldmap processing changes
SyN-SDC fieldmap filtering is now single-level, following the improvements for gradient-echo fieldmaps in 24.1.
Jacobian-weighting during fieldmap unwarping is now on by default only for PEPolar fieldmaps. To enable for other fieldmap types, use --force fieldmap-jacobian.
Changes
- FIX: Detect and apply precomputed fieldmaps (#3439)
- FIX: Calculate bold mask and dummy scans in transform-only runs (#3428)
- FIX: Use consistent skull-stripping pre- and post- SDC (#3415)
- FIX: Use removeprefix instead of lstrip or ternary operator (#3409)
- FIX: Listify sessions when generating reports (#3408)
- FIX: Ensure fieldmap is resampled correctly in report (#3387)
- FIX: Stop excluding FS minc_modify_header used during fallback registration (#3372)
- FIX: Repair and test query for precalculated baseline/boldref files (#3370)
- FIX: Repair search for precomputed transforms (#3369)
- ENH: Enable Jacobians only for PEPOLAR by default, allow forcing (#3443)
- ENH: Create
--forceflag that accepts a list, replacing individual--force-*flags (#3442) - ENH: Output fsLR meshes on subject surfaces (#3411)
- ENH: Flexibilize "sophisticated" pepolar to allow monomodal execution (#3393)
- ENH: Update FSL packages for reported bug fixes (#3374)
- RF: Calculate RMSD from motion transforms (#3427)
- RF: Reconstruct motion confounds from minimal derivatives (#3424)
- RF: Replace deprecated pkgutil.find_loader (#3384)
- RF: Upgrade nitransforms and remove workarounds (#3378)
- DOC: Fix xfm extension in the outputs docs (#3435)
- DOC: Mention fMRIPost-AROMA in parser documentation (#3356)
- MNT: Remove CLI flags with expired deprecation periods (#3445)
- MNT: Update pinned environment (#3440)
- MNT: Bump pins, update RTD config (#3425)
- MNT: Declare linux/amd64 platform during Docker build (#3422)
- MNT: Bump astral-sh/setup-uv from 4 to 5 (#3417)
- MNT: Test support for Python 3.13 (#3416)
- MNT: Install Workbench CLI via conda (#3410)
- MNT: Update minimum dependencies, test with tox-uv (#3412)
- MNT: Install c3d through conda (#3382)
- CI: Fetch tags and 200 commits to support describe (#3381)
- CI: Build docker images in GHA, store cache inline and push to GHCR (#3380)
New Contributors
Full Changelog: 24.1.1...25.0.0
24.1.1
Release notes
Bug fix release in the 24.1.x series.
Precomputed functional derivatives were not being correcly detected,
and a couple fixes for rare issues.
Changes
24.1.0
Release notes
New feature release in the 24.1.x series.
Handling of gradient echo fieldmaps is improved.
Changes
- FIX: Select volumetric dseg.tsv from recent TemplateFlow releases (#3257)
- RF: Adapt to less T1w-centric smriprep (#3333)
- RF: Use acres over vendored data loader (#3323)
- DOC: Add benchmark page (#3312)
- MAINT: Move to tox to simplify test/CI setup (#3326)
- CI: Fix expected outputs for fieldmaps (#3321)
Full Changelog: 24.0.1...24.1.0
20.2.8 (Long Term Support)
Release notes
Bug-fix release in the 20.2.x LTS series.
We anticipate this being the final release in the 20.2.x LTS series.
Changes
- FIX: Select volumetric dseg.tsv from recent TemplateFlow releases (#3257)
- FIX: LTS package build (#3328)
- DOC: Read html_baseurl from RTD environment, if available (#3324)
- DOCKER: Pin conda environment more strictly (#2853)
- MNT: Require niworkflows ~1.3.6 (#2740)
- CI: Upgrade docker orb (#2865)
This release includes a number of fixes that have accumulated in niworkflows,
including the following fixes that affect fMRIPrep:
- FIX: Remove unused ANTs parameter that was removed in 2.4.1 (nipreps/sdcflows#431)
- FIX: Limit 3dQwarp to maximum 4 CPUs for stability reasons (nipreps/sdcflows#128)
- MAINT: Make call to scipy.stats.mode compatible with scipy 1.11.0 (nipreps/sdcflows#371)
- FIX: TSV2JSON should convert empty TSV files to empty JSON files (nipreps/niworkflows#747)
- FIX: Use copy function that does not preserve mtime when creating fsaverage
directories (nipreps/niworkflows#703) - FIX: Set pixdim[4] to match RepetitionTime (nipreps/niworkflows#679)
Full Changelog: 20.2.7...20.2.8
24.0.1
Release notes
Bug fix release in the 24.0.x series.
This release resolves a bug with multi-volume single-band references.
If multiple volumes are found, they are processed in the same way as
the BOLD series is processed to produce a motion-correction reference.
Changes
24.0.0
Release notes
New feature release in the 24.0.x series.
This release is an incremental improvement on 23.2.x, with some fixes for bugs discovered in the updated workflow.
New features include separation of HTML reports by session for subjects with many BOLD runs, a new --fs-no-resume option to improve interoperability with less typical FreeSurfer directories, such as those generated by longitudinal FreeSurfer or FastSurfer, and adoption of DatasetLinks and BIDS-URIs, to follow the recommendations of recent versions of BIDS.
With thanks to Dimitri Papadopoulos, Basile Pinsard, Celine Provins, Taylor Salo and Wang Hao-Ting for their contributions!
Changes
- FIX: Add "double" type to allowed DisplacementFieldTransform (#3287)
- FIX: Require recent templateflow, select correct aparc dseg.tsv (#3256)
- FIX: Ensure proper templates are retrieved with sloppy (#3251)
- FIX: Delete summary from functional report when separated by sessions (#3223)
- FIX: Support lists in bids filter file containing
nullor*(#3215) - FIX: Re-enable anat fasttrack for dataset without t1w (#3202)
- ENH: Use BIDSURI in init_ds_boldmask_wf (#3297)
- ENH: Add templateflow to DatasetLinks (#3267)
- ENH: Track proximal sources of functional GIFTIs (#3263)
- ENH: Support named derivative paths (#3264)
- ENH: Track Sources for standard-space outputs (#3262)
- ENH: Add --fs-no-resume option to reuse existing FreeSurfer outputs without resuming (#3142)
- ENH: Use BIDS URIs to track Sources in sidecars (#3255)
- ENH: Ignore unselected subjects in BIDSLayoutIndexer (#3236)
- ENH: Add metadata for motion parameters (#3245)
- ENH: Separate anatomical and functional reports per session for densely sampled dataset (#3191)
- ENH: Leverage T2w if available for BOLD -> anat coregistration (#3208)
- RF: Fix ITK warp conversion to nitransforms format (#3300)
- RF: Load report assembler from nireports (#3177)
- DOC: Clarify
--dvars-spike-thresholduses standardized DVARS (#3205) - TST: Update test to reflect new report generation behavior (#3210)
- STY: Manual conversions to f-strings (#3241)
- STY: Apply ruff/pyupgrade rule UP031 (#3280)
- STY: Lint and style check full repository (#3221)
- STY: Adopt ruff for linting and formatting (#3206)
- MNT: Pin libitk 5.3 and note dependencies (#3298)
- MNT: Upgrade ruff pre-commit, add fixing checks (#3283)
- MNT: Complete transition from flake8/black to ruff (#3279)
- MNT: Apply Repo-Review suggestions (#3194)
- MNT: Verbatim copy of Apache license 2.0 (#3259)
- MNT: Bump cryptography from 41.0.7 to 42.0.4 (#3234)
- MNT: Drop copyright year, unused dunder fields (#3247)
- MNT: Update environment pins (#3226)
- MNT: Bump codecov/codecov-action from 3 to 4 (#3219)
- DOCKER: Restore mincinfo binary (#3249)
- CI: Move to new circle machine tags (#3248)
- CI: Avoid ruff warning (#3244)
- CI: Pass ruff tests (#3243)
New Contributors
Full Changelog: 23.2.3...24.0.0
23.2.3
Release notes
Bug fix release in the 23.2.x series.
Writes brain masks in space-boldref with --level minimal, bringing behavior in line with documentation.
Changelog
Full Changelog: 23.2.2...23.2.3
23.2.2
23.2.1
Release notes
Bug fix release in the 23.2.x series.
Masks, BOLD references and T2* maps resampled into template spaces had
their order of transforms inverted. BOLD files were unaffected.
This release also preserves the TR in the NIfTI header of BOLD series.
Changes
- FIX: Preserve pixdim4+ of resampled images (#3239)
- FIX: Flip order of transforms in
init_ds_volumes_wf(#3238) - DOCKER: restore mincinfo binary (#3249)
- CI: Move to new CircleCI machine tags (#3247)
Full Changelog: 23.2.0...23.2.1