Skip to content

Releases: nipreps/fmriprep

23.2.0a2

22 Nov 00:31
Compare
Choose a tag to compare
23.2.0a2 Pre-release
Pre-release

Release notes

A quick turnaround patch for the 23.2.0a pre-releases. Thanks to @smeisler for spotting a bug. This release includes the necessary fix in sMRIPrep, as well as several improvements to tests and opportunistic cleanups.

What's Changed

New Contributors

Full Changelog: 23.2.0a1...23.2.0a2

23.2.0a1

21 Nov 13:18
Compare
Choose a tag to compare
23.2.0a1 Pre-release
Pre-release

Release notes

New feature release in the 23.2.x series.

This release wraps up a significant refactor of fMRIPrep. The main new features can be used with the --level and --derivatives flags.

The --level flag can take the arguments minimal, resampling or full. The default is full, which should produce nearly the same results as previous versions. minimal will produce only the minimum necessary to deterministically generate the remaining derivatives. resampling will produce some additional derivatives, intended to simplify resampling with other tools.

The --derivatives flag takes arguments of the form name=/path/to/dir, for example --derivatives anat=$SMRIPREP_DIR. If provided, fMRIPrep will read the specified directories for pre-computed derivatives. If a derivative is found, it will be used instead of computing it from scratch. If a derivative is not found, fMRIPrep will compute it and proceed as usual.

Taken together, these features can allow a dataset provider to run a minimal fMRIPrep run, targeting many output spaces, while a user can then run a --derivatives run to generate additional derivatives in only the output spaces they need. Another use case is to provide an precomputed derivative to override the default fMRIPrep behavior, enabling easier workarounds for bugs or experimentation with alternatives.

Additionally, this release includes a number of bug fixes and improvements. This release adds support for MSM-Sulc, improving the alignment of subject surfaces to the fsLR template. This process is enabled by default, but may be disabled with the --no-msm flag.

This release resolves a number of issues with fieldmaps inducing distortions during correction. Phase difference and direct fieldmaps are now masked correctly, preventing the overestimation of distortions outside the brain. Additionally, we now implement Jacobian weighting during unwarping, which corrects for compression and expansion effects on signal intensity.

Finally, a new resampling method has been added, to better account for susceptibility distortion and motion in a single shot resampling to a volumetric target space. We anticipate extending this to surface targets in the future.

Changes

  • FIX: Final revisions for next branch (#3134)
  • FIX: Minor fixes to work with MSMSulc-enabled smriprep-next (#3098)
  • FIX: Connect EPI-to-fieldmap transform (#3099)
  • FIX: Use Py2-compatible version file template for fmriprep-docker (#3101)
  • FIX: Update connections to unwarp_wf, convert ITK transforms to text (#3077)
  • ENH: Restore carpetplot and other final adjustments (#3131)
  • ENH: Restore CIFTI-2 generation (#3129)
  • ENH: Restore resampling to surface GIFTIs (#3126)
  • ENH: Restore confound generation (#3120)
  • ENH: Restore resampling BOLD to volumetric templates (#3121)
  • ENH: Restore resampling to T1w target (#3116)
  • ENH: Add MSMSulc (#3085)
  • ENH: Add reporting workflow for BOLD fit (#3082)
  • ENH: Generate anatomical derivatives useful for resampling (#3081)
  • RF: Write out anatomical template derivatives (#3136)
  • RF: Update primary bold workflow to incorporate single shot resampling (#3114)
  • RF: Update derivative cache spec, calculate per-BOLD, reuse boldref2fmap (#3078)
  • RF: Split fMRIPrep into fit and derivatives workflows (#2913)
  • DOC: Fix documentation and description for init_bold_grayords_wf (#3051)
  • STY: Fix flake8 warnings (#3044)
  • STY: Apply pyupgrade suggestions (#3043)
  • MNT: Bump environment (#3132)
  • MNT: Bump version requirements (#3107)
  • MNT: http:// → https:// (#3097)
  • MNT: Remove mritotal and dependencies from FreeSurfer ignore file (#3090)
  • MNT: Update environment (#3073)
  • MNT: Depend on newer sphinx (#3067)
  • MNT: Install ANTs from conda-forge (#3061)
  • MNT: Drop Python 3.8 and numpy 1.21 support (NEP29) (#3052)
  • MNT: update update_zenodo.py script (#3042)
  • MNT: Fix welcome message formatting and instructions (#3039)
  • MNT: Python 3.11 should be supported (#3038)
  • CI: Stop testing legacy layout (#3079)
  • CI: Improve tag detection for docker builds (#3066)
  • CI: Clean up pre-release builds (#3040)

23.1.4

01 Aug 20:51
Compare
Choose a tag to compare

Release Notes

Patch release in the 23.1.x series.

This release prioritizes single-band reference BOLD images during SyN-SDC schemes.
Additionally, an indices inconsistency was fixed for CIFTI volumetric data.

Changes

  • FIX: Pass sbref files to SyN workflow (#3060)
  • FIX: Generate CIFTI volume structure indices in column-major order (nipreps/niworkflows#815)

23.1.3

24 Jun 00:15
Compare
Choose a tag to compare

Release notes

Bug fix release in the 23.1.x series.

In rare cases where Freesurfer is unable to align to its default atlas in Talairach registration, it was unable to fall back to the Schwartz atlas because we were not including it in the Docker image. This release exists to provide an updated Docker image, and no upgrade is needed for users not encountering this issue.

Changes

  • DOCKER: Include 3T18yoSchwartzReactN32 FreeSurfer atlas in image (#3049)

Full Changelog: 23.1.2...23.1.3

23.1.2

17 Jun 12:48
Compare
Choose a tag to compare

Release notes

Bug fix release in the 23.1.x series.

Changes

This release correctly generates *_space-fsLR_desc-reg_sphere.surf.gii, which was previously a copy of the standard *_desc-reg_sphere.surf.gii. Additionally, warnings are now correctly emitted when AROMA-related CLI options are used.

  • CI: Clean up pre-release builds (#3040)

Full Changelog: 23.1.1...23.1.2

23.1.1

14 Jun 17:46
Compare
Choose a tag to compare

Release notes

Bug fix release in the 23.1.x series.

This release corrects a small error that prevented the "goodvoxels" mask from being placed in the output directory if no FreeSurfer output spaces were specified.

Changes

  • FIX: Remove bad metadata input from ds_goodvoxels_mask by @effigies in #3037

Full Changelog: 23.1.0...23.1.1

23.1.0

12 Jun 19:05
Compare
Choose a tag to compare

Release notes

New feature release in the 23.1.x series.

This release substantially reworks the resampling to fsLR grayordinate space, better accounting for partial volumes and high variance voxels. If you are resampling using --project-goodvoxels, we strongly recommend upgrading.

Fieldmap handling is improved, with better preference given to single-band references in both PEPolar and SyN-SDC schemes. Additionally, fMRIPrep will no longer estimate fieldmaps that are not intended to be used to correct BOLD series, reducing unneeded processing.

This release removes ICA-AROMA from the fMRIPrep workflow. To use ICA-AROMA, set MNI152NLin6Asym:res-2 as a target output space. MELODIC and ICA-AROMA can be run on the resulting images in a separate pipeline. For further information on the reasoning behind this change, see GitHub issue #2936.

This release increments the versions of ANTs and FSL bundled in the Docker image.

With thanks to Eilidh MacNicol, Basille Pinsard and Taylor Salo for contributions in fMRIPrep and SDCflows.

Changes

  • FIX: Raise RuntimeError at build if echos have mismatched shapes (#3028)
  • FIX: Inconsistent fmapless estimation when ignoring fieldmaps (#2994)
  • FIX: Dilate BOLD mask by 2 voxels to prevent over-aggressive masking degrading T2* map estimation (#2986)
  • FIX: Estimate free memory with "available", not "free" (#2985)
  • ENH: Add --me-t2s-fit-method parameter (#3030)
  • ENH: Resample BOLD to fsLR directly, dropping fsaverage intermediate (#3011)
  • ENH: Allow SBref+EPI PEPolar fieldmaps to correct BOLD series (#3008)
  • ENH: Remove ICA-AROMA from workflow and docs (#2966)
  • RF: Filter fieldmaps based on whether they will be used to correct a BOLD series (#3025)
  • MNT: Update ANTs pin in Docker image (#3016)
  • MNT: Update governance docs (#2992)
  • MNT: Refactor Docker build process (#2982)
  • MNT: Pin conda environment more strictly (#2853)
  • MNT: Require niworkflows ~1.3.6 (#2740)
  • CI: Use registry for layer caching (#3012)
  • CI: Upgrade docker orb (#2865)

Full Changelog: 23.0.2...23.1.0

23.1.0rc0

09 Jun 18:24
Compare
Choose a tag to compare
23.1.0rc0 Pre-release
Pre-release

Release notes

New feature release in the 23.1.x series.

This release substantially reworks the resampling to fsLR grayordinate space, better accounting for partial volumes and high variance voxels. If you are resampling using --project-goodvoxels, we strongly recommend upgrading.

Fieldmap handling is improved, with better preference given to single-band references in both PEPolar and SyN-SDC schemes. Additionally, fMRIPrep will no longer estimate fieldmaps that are not intended to be used to correct BOLD series, reducing unneeded processing.

This release removes ICA-AROMA from the fMRIPrep workflow. To use ICA-AROMA, set MNI152NLin6Asym:res-2 as a target output space. MELODIC and ICA-AROMA can be run on the resulting images in a separate pipeline. For further information on the reasoning behind this change, see GitHub issue #2936.

This release increments the versions of ANTs and FSL bundled in the Docker image.

With thanks to Eilidh MacNicol, Basille Pinsard and Taylor Salo for contributions in fMRIPrep and SDCflows.

Changes

  • FIX: Raise RuntimeError at build if echos have mismatched shapes (#3028)
  • FIX: Inconsistent fmapless estimation when ignoring fieldmaps (#2994)
  • FIX: Dilate BOLD mask by 2 voxels to prevent over-aggressive masking degrading T2* map estimation (#2986)
  • FIX: Estimate free memory with "available", not "free" (#2985)
  • ENH: Add --me-t2s-fit-method parameter (#3030)
  • ENH: Resample BOLD to fsLR directly, dropping fsaverage intermediate (#3011)
  • ENH: Allow SBref+EPI PEPolar fieldmaps to correct BOLD series (#3008)
  • ENH: Remove ICA-AROMA from workflow and docs (#2966)
  • RF: Filter fieldmaps based on whether they will be used to correct a BOLD series (#3025)
  • MNT: Update ANTs pin in Docker image (#3016)
  • MNT: Update governance docs (#2992)
  • MNT: Refactor Docker build process (#2982)
  • MNT: Pin conda environment more strictly (#2853)
  • MNT: Require niworkflows ~1.3.6 (#2740)
  • CI: Use registry for layer caching (#3012)
  • CI: Upgrade docker orb (#2865)

Full Changelog: 23.0.2...23.1.0rc0

23.0.2

25 Apr 13:34
Compare
Choose a tag to compare

Release Notes

This release fixes issues with _phase1+2, _phasediff and _fieldmap fieldmap files that are found with an orientation other than RAS.

See SDCflows 2.4.3 for changes.

23.0.1

24 Mar 23:34
Compare
Choose a tag to compare

DOI

Release Notes

Bug fix release in the 23.0.x series.

This release fixes issues with detecting partial fieldmaps, emitting a warning instead of an error. A small change in sMRIPrep fixes the name of a workflow, which may cause a duplication in a reused work directory from 23.0.0, but should not break any workflows or produce a change in derivatives.

Changes

  • DOC: Add TemplateFlow's citation into bibtex file by @oesteban in #2969

Full Changelog: 23.0.0...23.0.1