Releases: nipreps/sdcflows
2.13.0
Release Notes
Feature release in the 2.13.x series.
This release addresses some longstanding issues with the SyN-SDC workflow,
improving the registration quality in adult humans by utilizing a spatial prior,
as well as allowing Laplacians to be up- or down-weighted in the cost function,
making it more usable across species.
Additionally, this release allows for the use of EstimatedTotalReadoutTime
or
EstimatedEchoSpacing
, or a manually provided fallback TotalReadoutTime
value,
permitting the use of SDCFlows on datasets that do not have reliable timing information
without introducing incorrect metadata into the datasets.
Changes
- fix(syn): Re-enable priors respecting
sd_priors
argument (#488) - feat: Add workflow arguments for metadata estimates and fallback TRT (#479)
- feat(syn): Update totalFieldVarianceInVoxel space based on voxel resolution (#487)
- feat(syn): Allow changing laplacians weights in SyN registration metric (#484)
- test(syn): Add a test to exercise SyN workflow creation and check parameters (#486)
2.12.0
Release Notes
This release migrates from the deprecated niworkflows.reporting
module to the nireports
package.
Changes
- FIX: AttributeError for _ApplyCoeffsFieldInputSpec (#481)
- ENH: Allow running SyN SDC without using prior (#480)
- ENH: Allow estimated and fallback TotalReadoutTime (#477)
- RF: Transition from niworkflows reporting interfaces (#473)
- DOC: Fix broken link [skip ci] (#482)
- MNT: Add
defaults
toconda
channels inbuild-test-publish
GHA (#474) - MNT: Update
niworkflows
version to 1.11.0 (#478)
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: B 10000 ump 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.