Skip to content

Releases: nipy/nitransforms

24.1.0

18 Nov 00:54
Compare
Choose a tag to compare

New feature release in the 24.1.x series.

This release has the same code as 24.0.2, but the package has been tested with Numpy 2.0 and Python 3.13 and the metadata updated accordingly.

CHANGES

  • chore: Transition to pyproject.toml and tox, support numpy 2, python 3.13 by @effigies in #228

Full Changelog: 24.0.2...24.1.0

24.0.2

21 Sep 20:01
Compare
Choose a tag to compare

Bug-fix release in the 24.0.x series.

What's Changed

  • FIX: Add per-volume transforms as single transform in chain by @effigies in #226

Full Changelog: 24.0.1...24.0.2

24.0.1

17 Sep 14:02
Compare
Choose a tag to compare

Bug-fix release in the 24.0.x series.

New Contributors

CHANGES

Full Changelog: 24.0.0...24.0.1

24.0.0

18 Aug 15:14
24.0.0
Compare
Choose a tag to compare

A new series incorporating several major changes, including bugfixes and taking on several housekeeping/maintenance actions. One relevant change is the outsourcing of the apply() member out of transformation data structures by @jmarabotto. The method apply() is now a standalone method that operates on one transform and images/surfaces/etc. provided as arguments. A later major development is the adoption of a foundation for surface transforms by @feilong and @Shotgunosine.

What's Changed

  • FIX: Inefficient iterative reloading of reference and moving images by @oesteban in #186
  • FIX: Postpone coordinate mapping on linear array transforms by @oesteban in #187
  • FIX: Remove unsafe cast during TransformBase.apply() by @effigies in #189
  • FIX: _is_oblique() by @mvdoc in #194
  • FIX: Update implementation of ndim property of transforms by @jmarabotto in #197
  • FIX: Output displacement fields by @bpinsard in #182
  • FIX: Composition of deformation fields by @jbanusco in #188
  • FIX: Indexing disallowed in lists introduced by bugfix by @oesteban in #204
  • FIX: Do not transpose (see :obj:~scipy.ndimage.map_coordinates) by @oesteban in #207
  • FIX: Forgotten test using xfm.apply() by @oesteban in #208
  • FIX: Load ITK fields from H5 correctly by @effigies in #211
  • FIX: Wrong warning argument name level in warnings.warn by @oesteban in #216
  • ENH: Define ndim property on nonlinear transforms by @oesteban in #201
  • ENH: Outsource apply() from transform objects by @jmarabotto in #195
  • ENH: Restore apply() method, warning of deprecation and calling function by @effigies in #209
  • ENH: SurfaceTransform class by @feilong in #203
  • ENH: reenable-parallelization-apply-214 (builds on PR #215, solves Issue #214) by @jmarabotto in #217
  • ENH: Parallelize serialized 3D+t transforms by @oesteban in #220
  • ENH: Implement a memory limitation mechanism in loading data by @oesteban in #221
  • ENH: Serialize+parallelize 4D apply() into 3D+t and add 'low memory' loading by @oesteban in #215
  • MAINT: Loosen dependencies by @mgxd in #164
  • MAINT: Drop Python 3.7 support, test through 3.11 by @effigies in #181
  • MAINT: Update CircleCI's infrastructure (machine image and Python version in Docker image) by @oesteban in #206
  • MAINT: Fix tests for Python 3.12, numpy 2.0, and pytest-xdist by @effigies in #210
  • MAINT: Update ANTs' pinnings by @oesteban in #219

New Contributors

Full Changelog: 23.0.1...24.0.0

23.0.1

10 Jul 19:05
23.0.1
951119e
Compare
Choose a tag to compare

What's Changed

  • FIX: numpy deprecation errors after 1.22 by @oesteban in #180
  • FIX: Load ITK's .mat files with Affine's loaders by @oesteban in #179

Full Changelog: 23.0.0...23.0.1

23.0.0

13 Jun 16:06
23.0.0
bf64d38
Compare
Choose a tag to compare

Release Notes

A new major release preparing for the finalization of the package and migration into
NiBabel, mostly addressing bugfixes and scheduled added new features.

What's Changed

  • FIX: Ensure datatype of generated CIFTI2 file in TransformBase unit test by @oesteban in #178
  • FIX: Set x-forms on resampled images by @oesteban in #176
  • ENH: API change in TransformChain - new composition convention by @oesteban in #165
  • ENH: Extend the nonlinear transforms API by @oesteban in #166
  • ENH: "Densify" voxel-wise nonlinear mappings with interpolation by @oesteban in #168
  • ENH: Read ITK's composite transforms with only affines by @oesteban in #174
  • MAINT: Rotate CircleCI secrets and setup up org-level context by @oesteban in #172

Full Changelog: 22.0.0...23.0.0

21.0.1

13 Jun 14:34
21.0.1
e5a6b41
Compare
Choose a tag to compare

What's Changed

  • Add myself as a contributor by @HippocampusGirl in #159
  • FIX: Wrong datatype used for offset when reading ITK's h5 fields. by @oesteban in #161
  • FIX: Orientation of displacements field and header when reading ITK's h5 by @oesteban in #162
  • MAINT: Conclude migration poldracklab -> nipy by @oesteban in #163
  • ENH: Guess open linear transform formats by @oesteban in #160

Full Changelog: 22.0.0...21.0.1

22.0.0

28 Feb 20:20
22.0.0
7b3640e
Compare
Choose a tag to compare

Release Notes

The first stable release of NiTransforms in 2022.
Contains all the new bug-fixes, features, and maintenance executed within the context of the NiBabel EOSS4 grant from the CZI Foundation.

CHANGES

  • FIX: Implement AFNI's deoblique operations (#117)
  • FIX: Ensure input dtype is kept after resampling (#153)
  • FIX: Replace deprecated _read_mat with scipy.io.loadmat (#151)
  • FIX: Add FSL-LTA-FSL regression tests (#146)
  • FIX: Increase FSL serialization precision (#144)
  • FIX: Refactor of LTA implementation (#145)
  • FIX: Load arrays of linear transforms from AFNI files (#143)
  • FIX: Load arrays of linear transforms from FSL files (#142)
  • FIX: Double-check dtypes within tests and increase RMSE tolerance (#141)
  • ENH: Base implementation of B-Spline transforms (#138)
  • ENH: I/O of FSL displacements fields (#51)
  • MAINT: Fix path to test summaries in CircleCI (#148)
  • MAINT: Move testdata on to gin.g-node.org & datalad (#140)
  • MAINT: scipy-1.8, numpy-1.22 require python 3.8 (#139)

New Contributors

Full Changelog: 21.0.1...22.0.0

21.0.0

10 Sep 07:51
21.0.0
f864237
Compare
Choose a tag to compare

Release Notes

A first release of NiTransforms. This release accompanies a corresponding JOSS submission.

CHANGES

  • FIX: Final edits to JOSS submission (#135)
  • FIX: Add mention to potential alternatives in JOSS submission (#132)
  • FIX: Misinterpretation of voxel ordering in LTAs (#129)
  • FIX: Suggested edits to the JOSS submission (#121)
  • FIX: Invalid DOI (#124)
  • FIX: Remove the --inv flag from regression mri_vol2vol regression test (#78)
  • FIX: Improve handling of optional fields in LTA (#65)
  • FIX: LTA conversions (#36)
  • ENH: Add more comprehensive comments to notebook (#134)
  • ENH: Add an .asaffine() member to TransformChain (#90)
  • ENH: Read (and apply) ITK/ANTs' composite HDF5 transforms (#79)
  • ENH: Improved testing of LTA handling - ITK-to-LTA, mri_concatenate_lta (#75)
  • ENH: Add FS transform regression (#74)
  • ENH: Add ITK-LTA conversion test (#66)
  • ENH: Support for transforms mappings (e.g., head-motion correction) (#59)
  • ENH: command line interface (#55)
  • ENH: Facilitate loading of displacements field transforms (#54)
  • ENH: First implementation of AFNI displacement fields (#50)
  • ENH: Base implementation of transforms chains (composition) (#43)
  • ENH: First implementation of loading and applying ITK displacements fields (#42)
  • ENH: Refactor of AFNI and FSL I/O with StringStructs (#39)
  • ENH: More comprehensive implementation of ITK affines I/O (#35)
  • ENH: Added some minimal test-cases to the Affine class (#33)
  • ENH: Rewrite load/save utilities for ITK's MatrixOffsetBased transforms in io (#31)
  • ENH: Rename resample() with apply() (#30)
  • ENH: Write tests pulling up the coverage of base submodule (#28)
  • ENH: Add tests and implementation for Displacements fields and refactor linear accordingly (#27)
  • ENH: Uber-refactor of code style, method names, etc. (#24)
  • ENH: Increase coverage of linear transforms code (#23)
  • ENH: FreeSurfer LTA file support (#17)
  • ENH: Use obliquity directly from nibabel (#18)
  • ENH: Setting up a battery of tests (#9)
  • ENH: Revise doctests and get them ready for more thorough testing. (#10)
  • DOC: Add Zenodo metadata record (#136)
  • DOC: Better document the IPython notebooks (#133)
  • DOC: Transfer CoC from NiBabel (#131)
  • DOC: Clarify integration plans with NiBabel in the README (#128)
  • DOC: Add contributing page to RTD (#130)
  • DOC: Add CONTRIBUTING.md file pointing at NiBabel (#127)
  • DOC: Add example notebooks to sphinx documentation (#126)
  • DOC: Add an Installation section (#122)
  • DOC: Display API per module (#120)
  • DOC: Add figure to JOSS draft / Add @smoia to author list (#61)
  • DOC: Initial JOSS draft (#47)
  • MAINT: Add imports of modules in __init__.py to workaround #91 (#92)
  • MAINT: Fix missing python3 binary on CircleCI build job step (#85)
  • MAINT: Use setuptools_scm to manage versioning (#83)
  • MAINT: Split binary test-data out from gh repo (#84)
  • MAINT: Add Docker image/circle build (#80)
  • MAINT: Drop Python 3.5 (#77)
  • MAINT: Better config on setup.py (binary operator starting line) (#60)
  • MAINT: add docker build to travis matrix (#29)
  • MAINT: testing coverage (#16)
  • MAINT: pep8 complaints (#14)
  • MAINT: skip unfinished implementation tests (#15)
  • MAINT: pep8speaks (#13)

20.0.0rc5

14 Jul 07:31
20.0.0rc5
96250df
Compare
Choose a tag to compare
20.0.0rc5 Pre-release
Pre-release
A first beta release of NiTransforms with the purpose of integrating
it within *fMRIPrep*.
This release accompanies the `ISBI2020 preprint
<https://doi.org/10.31219/osf.io/8aq7b>`__.

  * FIX: Accept double precision when reading ANTs' ``.mat`` affines
(#102)
  * FIX: Remove the ``--inv`` flag from regression ``mri_vol2vol``
regression test (#78)
  * FIX: Improve handling of optional fields in LTA (#65)
  * FIX: LTA conversions (#36)
  * ENH: Add an ``.asaffine()`` member to ``TransformChain`` (#90)
  * ENH: Read (and apply) ITK/ANTs' composite HDF5 transforms (#79)
  * ENH: Improved testing of LTA handling - ITK-to-LTA,
``mri_concatenate_lta`` (#75)
  * ENH: Add FS transform regression (#74)
  * ENH: Add ITK-LTA conversion test (#66)
  * ENH: Support for transforms mappings (e.g., head-motion correction)
(#59)
  * ENH: command line interface (#55)
  * ENH: Facilitate loading of displacements field transforms (#54)
  * ENH: First implementation of AFNI displacement fields (#50)
  * ENH: Base implementation of transforms chains (composition) (#43)
  * ENH: First implementation of loading and applying ITK displacements
fields (#42)
  * ENH: Refactor of AFNI and FSL I/O with StringStructs (#39)
  * ENH: More comprehensive implementation of ITK affines I/O (#35)
  * ENH: Added some minimal test-cases to the Affine class (#33)
  * ENH: Rewrite load/save utilities for ITK's MatrixOffsetBased
transforms in ``io`` (#31)
  * ENH: Rename ``resample()`` with ``apply()`` (#30)
  * ENH: Write tests pulling up the coverage of base submodule (#28)
  * ENH: Add tests and implementation for Displacements fields and
refactor linear accordingly (#27)
  * ENH: Uber-refactor of code style, method names, etc. (#24)
  * ENH: Increase coverage of linear transforms code (#23)
  * ENH: FreeSurfer LTA file support (#17)
  * ENH: Use ``obliquity`` directly from nibabel (#18)
  * ENH: Setting up a battery of tests (#9)
  * ENH: Revise doctests and get them ready for more thorough testing.
(#10)
  * DOC: Update sphinx to latest major (4.0) (#116)
  * DOC: Initial setup for sphinx-build (#114)
  * DOC: Add Jupyter notebooks (#93)
  * DOC: Add figure to JOSS draft / Add @smoia to author list (#61)
  * DOC: Initial JOSS draft (#47)
  * MAINT: Move from TravisCI to GHA (#112)
  * MAINT: Revise tests and Docker image dependencies (#104)
  * MAINT: Add imports of modules in ``__init__.py`` to workaround #91
(#92)
  * MAINT: Fix missing python3 binary on CircleCI build job step (#85)
  * MAINT: Use setuptools_scm to manage versioning (#83)
  * MAINT: Split binary test-data out from gh repo (#84)
  * MAINT: Add docker image/circle build (#80)
  * MAINT: Drop Python 3.5 (#77)
  * MAINT: Better config on setup.py (binary operator starting line)
(#60)
  * MAINT: add docker build to travis matrix (#29)
  * MAINT: testing coverage (#16)
  * MAINT: pep8 complaints (#14)
  * MAINT: skip unfinished implementation tests (#15)
  * MAINT: pep8speaks (#13)