Skip to content

Releases: Enet4/nifti-rs

v0.16.0

05 Jul 20:10
Compare
Choose a tag to compare

Changes

  • Removed esize parameter from extension constructor (#102 @twitzelbos)
  • Updated nalgebra to 0.32 and simba to 0.8 (#103)
  • Volume writing system has been redesigned to support complex valued data (#106 @twitzelbos)

New

  • New NIFTI extension writer! See examples/gen_nifti for an example. (#101 @twitzelbos)

Miscellaneous

New Contributors

🙏 Thank you @twitzelbos for your contributions.

Full Changelog: v0.15.0...v0.16.0

v0.15.0

29 Nov 19:41
Compare
Choose a tag to compare

Changes

  • The error type became non-exhaustive, meaning that exhaustive matching can no longer be done without a catch-all brace. Most users should not be affected by this (#98).

  • Dependencies were updated (#95):

    • byteordered 0.6
    • nalgebra 0.31
    • simba 0.7.1

New

  • Methods set_sform and set_qform in NiftiHeader are now available to users (#97 @nilgoyette)

Enhancements

  • Use try_reserve to allocate volume/extended data (#93)

Misc

  • Use github-actions/checkout v3 in CI (#91)

Full Changelog: v0.14.0...v0.15.0

v0.14.0

10 Jun 13:34
Compare
Choose a tag to compare

Breaking Changes

  • nalgebra has been updated to 0.27, and simba to 0.5 (#86 @nilgoyette)
    • applicable to users of the nalgebra_affine Cargo feature

Misc

  • Add an error margin to checking whether the header's pixdim[0] is valid (#88)
  • Minor Clippy fixes (#88)

Chore

  • Narrow CI jobs launched and include Clippy job (#87, #88)

v0.13.0

10 Apr 10:12
Compare
Choose a tag to compare

Breaking Changes

  • Public dependency updates: Updated ndarray to version 0.15, nalgebra to version 0.25, and simba to version 0.4 (#85 @nilgoyette)

Enhancements

v0.12.1

16 Jan 15:45
Compare
Choose a tag to compare

Enhancement

v0.12.0

15 Jan 10:31
Compare
Choose a tag to compare

Changes

  • Public dependency updates. #77 @nilgoyette
    • ndarray to 0.14
    • nalgebra to 0.24
  • Test dependency update: approx to 0.4

New

  • Getting data elements or converting to ndarrays no longer requires so many {number}: AsPrimitive<T> trait bounds, making integration with generics nicer. #78
  • ndarray_volumes is now a default Cargo feature. For the previous behavior, simply disable default cargo features. #79

Fix

  • Improved documentation and updated readme file. #80

Chores

  • Revamped CI: Using GitHub Actions for most jobs, reduced the number of jobs in Travis CI. #81 #82

v0.11.0

20 Nov 07:36
Compare
Choose a tag to compare

Changes

  • New Intent type variants related to FSL (#74 @nilgoyette)
  • Updated error type declaration to specify source instead of cause (#76 @nilgoyette)
  • Dependency updates, some of which are part of the public API (#76 @nilgoyette)
    • Special note to nalgebra@0.23 and simba@0.3

New

  • New WriterOptions API provides greater control over the writing process of NIfTI files. (#75 @nilgoyette)

v0.10.0

04 Jul 21:04
Compare
Choose a tag to compare

Breaking

  • The constructor functions from_file and from_file_pair from InMemNiftiObject and StreamedNiftiObject have been deprecated in favor of the new ReaderOptions and ReaderStreamedOptions API. (See the New section below) (#70 @nilgoyette)
  • Public API dependencies have been updated. (#71 @nilgoyette)
    • nalgebra from 0.18 to 0.21
    • alga has been replaced with simba, with default features disabled
    • byteordered from 0.4 to 0.5
  • The default features in nalgebra have been disabled (#66 @nilgoyette)
  • Added variant TemplateOther to XForm (#67 @nilgoyette)
    • This is unlikely to break existing builds, but it is still admitted as a breaking change here because XForm is not marked as non-exhaustive.

New

  • A builder-based API is available for reading NIFTI objects, which enables additional configuration in the reading process. (#70 @nilgoyette)
let obj = ReaderOptions::new()
    .fix_header(true)
    .read_file("path/to/file.nii.gz")?;
  • NIFTI object readers may now optionally fix some header properties automatically, via the fix_header flag. (#70 @nilgoyette)
  • Publicly available functions NiftiHeader::sform_affine and NiftiHeader::qform_affine with the nalgebra_affine feature. (#68 @nilgoyette)

Misc

  • Removed the implementation of deprecated method description from NiftiError, and improved its implementation of Display (#65).
  • Reduced the number of dependencies in the library (#66 @nilgoyette)

v0.9.1

16 Mar 22:21
Compare
Choose a tag to compare

Fix

  • Fixed an inconsistency when slicing or idexing volumes with a single slice. (#64)

v0.9.0

30 Oct 22:09
Compare
Choose a tag to compare

Breaking changes

  • ndarray has been updated to 0.13.0

Misc

  • Made code more robust against OOM attacks; invalid header content should not make the program crash.
  • Updated num-derive to 0.3.0