Releases: nipreps/sdcflows
2.11.0
Release notes
Feature release in the 2.11.x series.
This release supports numpy 2 and Python 3.13.
Changes
- FIX: Normalize BIDS-URIs to subject-relative (#458)
- FIX: Only fit high-frequency spline for SyN-SDC (#457)
- ENH: Allow Jacobian correction to be toggled on/off (#462)
- ENH: Dilate fmap and bold masks during coregistration (#463)
- TEST: Clear registry consistently to avoid order dependency (#464)
- DOC: Plot correct workflow in init_syn_preprocessing_wf docstring (#460)
- CI: Drop CircleCI, using GHA only (#459)
New Contributors
Full Changelog: 2.10.0...2.11.0
2.10.0
Release Notes
Feature release in the 2.10.x series.
The main change is a bugfix when fitting multi-level B-Splines to some noisy fieldmaps. While theoretically nice, the multi-level fitting does not really bring anything immediately as we are not generally inverting the distortion. In this release, the default fitting has been changed to single-level B-Splines, with a spacing similar to TOPUP's defaults.
With thanks to Sunjae Shim (@sjshim) for sharing Spiral-echo fieldmaps that were failing prior the patch in #453.
What's Changed
- FIX: Building Docker image on ARM64 devices by @mathdugre in #449
- DOC:
ValueError
in notebook output by @mathdugre in #450 - ENH: Improve plots in Jupyter notebook by @oesteban in #452
- FIX: Revision of the B-Spline fitting code by @oesteban in #453
New Contributors
- @mathdugre made their first contribution in #449
Full Changelog: 2.9.0...2.10.0
2.9.0
Release notes
Feature release in the 2.9.x series.
The main change is that B0FieldIdentifiers with special characters are now sanitized and exposed through a FieldmapEstimator.sanitized_id
attribute.
Workflow names and input/output connections will use sanitized_id
, to ensure compatibility with filenames and workflow graph generation. Internal lookup tables will continue to use the the unsanitized bids_id
.
Changes
- FIX: Update suffix only when finding related fieldmap files (#436)
- RF: Add sanitized_id field to FieldmapEstimation (#444)
- DOC: Un-mock the already-imported numpy (#440)
- CI: Bump actions/cache from 3 to 4 (#429)
New Contributors
- @marcelzwiers made their first contribution in #436
Full Changelog: 2.8.1...2.9.0
2.8.1
Release notes
Bug-fix release in the 2.8.x series.
Fixes doc builds and CLI support for fieldmapless workflows. Introduces support for BIDS-URIs.
Changes
- FIX: Enable fieldmapless by default in CLI (#426)
- FIX: Pandoc requires Texlive to render LaTeX in notebook (#427)
- FIX: New test
test_wrangler_URIs
had the wrong oracle (#425) - ENH: Resolve BIDS-URIs (#349)
- TEST: Use less confusing function name for testing CLI with --dry-run (#424)
- MNT: Bump actions/download-artifact from 3 to 4 (#418)
- MNT: Bump actions/upload-artifact from 3 to 4 (#417)
- CI: Move PR doc build into main doc build, add texlive to build dependencies (#428)
Full Changelog: 2.8.0...2.8.1
2.8.0
Release notes
New feature release in the 2.8.x series.
This release fixes a bug in converting SyN-SDC displacements to fieldmaps, resulting in exaggerated corrections. As this makes changes to the structure of a workflow and the expected inputs of a workflow node, this release is considered a minor release.
Changes
- FIX: Derive field from SyN displacements using EPI affine (#421)
- FIX: Change
os.basename
toos.path.basename
(#419) - DOC: Add @smeisler to contributors (#420)
New Contributors
Full Changelog: 2.7.0...2.8.0
2.7.0
Release notes
New feature release in the 2.7.x series.
This release includes an updated CLI, which allows sdcflows
to be run as a BIDS App. To achieve the previous behavior of sdcflows-find-estimators
, use the -n
flag.
Addtional bug fixes and enhancements are included.
Changes
- FIX: Drop header before resampling image to avoid unsafe cast (#415)
- FIX: Wrangler now ignores
part-phase
EPI files (#407) - ENH: Standalone CLI now estimates fieldmaps (#408)
- ENH: Add support for ASL data (#411)
- ENH: Enable rendering of the Jupyter notebooks (#409)
- MNT: Migrate to PEP517/518 packaging (#410)
- CI: bump actions/setup-python from 4 to 5 (#412)
- CI: bump conda-incubator/setup-miniconda from 2 to 3 (#406)
New Contributors
Full Changelog: 2.6.0...2.7.0
2.6.0
Release Notes
New feature release in the 2.6.0 series.
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.
Changes
- FIX: Mask fieldmap before fitting spline field (#396)
- FIX: Interpolate to floating point values (#394)
- FIX: Refactoring the
B0FieldTransform
implementation (#346) - FIX: Nipype workflows like to be passed absolute paths (phasediff fieldmap) (#374)
- ENH: Implement Jacobian weighting during unwarp (#391)
- ENH: Output target2fmap_xfm from coeff2epi_wf (#381)
- ENH: Add data loader to sdcflows.data, drop pkg_resources (#379)
- RF: Use scipy.interpolate.BSpline to construct spline basis (#393)
- DOC: Use latest sphinx to fix bad sphinx/furo interaction (#390)
- DOC: Fix missing dependency when merging new data loader (#380)
- MNT: Update emprical values in test to allow transition to new scipy's BSpline (#387)
- MNT: Add pre-commit config (#375)
- MNT: Add a seed to random generator of coefficients (#368)
2.5.2
Release Notes
Bug-fix release in the 2.5.x series.
This release includes a fix for phasediff/direct fieldmaps that were previously
producing distortions outside the brain due to an incorrect masking of the fieldmap.
Changes
2.5.1
2.5.0
Release notes
New feature release in the 2.5.x series.
This release includes a number of changes to default behaviors. SyN-SDC will be performed per-BOLD/DWI image, unless specified otherwise with B0FieldIdentifier
s, and may now be specified with T2w images as anatomical references as well.
Additionally, PEPolar fieldmaps will only be grouped if they share IntendedFor
metadata.
Finally, as a small UX improvement, if magnitude1/magnitude2 images have differing affines but are in register, we will now copy the header rather than requiring the user to update the header themselves.
Changes
- FIX: Ensure IntendedFor metadata is a subject-relative path (#360)
- ENH: Split SyN fieldmap estimates per-EPI (#312)
- ENH: Allow non-T1w anatomical estimators (#358)
- ENH: Function to calculate reference grids aligned with the coefficients (#355)
- ENH: Check registration of magnitude1/magnitude2 images and update headers (#356)
- RF: Split PEPolar fieldmaps by intent, if available (#342)
- CI: Use supported codecov uploaders (#348)
Full Changelog: 2.4.3...2.5.0