Releases: nipy/nibabel
3.2.1
Most work on NiBabel so far has been by Matthew Brett (MB), Chris Markiewicz (CM), Michael Hanke (MH), Marc-Alexandre Côté (MC), Ben Cipollini (BC), Paul McCarthy (PM), Chris Cheng (CC), Yaroslav Halchenko (YOH), Satra Ghosh (SG), Eric Larson (EL), Demian Wassermann, Stephan Gerhard and Ross Markello (RM).
References like "pr/298" refer to github pull request numbers.
3.2.1 (Saturday 28 November 2020)
Bug fix release in the 3.2.x series.
Maintenance
- Drop references to builtin types in Numpy namespace like
np.float
(pr/964) (EL, reviewed by CM) - Ensure compatibility with Python 3.9 (pr/963) (CM)
3.2.0
Most work on NiBabel so far has been by Matthew Brett (MB), Chris Markiewicz (CM), Michael Hanke (MH), Marc-Alexandre Côté (MC), Ben Cipollini (BC), Paul McCarthy (PM), Chris Cheng (CC), Yaroslav Halchenko (YOH), Satra Ghosh (SG), Eric Larson (EL), Demian Wassermann, Stephan Gerhard and Ross Markello (RM).
References like "pr/298" refer to github pull request numbers.
3.2.0 (Tuesday 20 October 2020)
New feature release in the 3.2.x series.
New features
nib-stats
CLI tool to expose newnibabel.imagestats
API. Initial implementation of volume calculations, a lafslstats -V
. (pr/952) (Julian Klug, reviewed by CM and GitHub user 0rC0)nib-roi
CLI tool to crop images and/or flip axes (pr/947) (CM, reviewed by Chris Cheng and Mathias Goncalves)- Parser for Siemens "ASCCONV" text format (pr/896) (Brendan Moloney and MB, reviewed by CM)
Enhancements
- Drop confusing mention of
img.to_filename()
in getting started guide (pr/946) (Fernando Pérez-Garcia, reviewed by MB, CM) - Implement
to_bytes()
/from_bytes()
methods forCifti2Image
(pr/938) (CM, reviewed by Mathias Goncalves) - Clean up of DICOM documentation (pr/910) (Jonathan Daniel, reviewed by MB)
Bug fixes
- Use canvas manager API to set title in
OrthoSlicer3D
(pr/958) (EL, reviewed by CM) - Record units as seconds parrec2nii; previously set TR to seconds but retained msec units (pr/931) (CM, reviewed by MB)
- Reflect on-disk dimensions in NIfTI-2 view of CIFTI-2 images (pr/930) (Mathias Goncalves and CM)
- Fix outdated Python 2 and Sympy code in DICOM derivations (pr/911) (MB, reviewed by CM)
- Change string with invalid escape to raw string (pr/909) (EL, reviewed by MB)
Maintenance
- Fix typo in docs (pr/955) (Carl Gauthier, reviewed by CM)
- Purge nose from nisext tests (pr/934) (Markéta Calábková, reviewed by CM)
- Suppress expected warnings in tests (pr/949) (CM, reviewed by Dorota Jarecka)
- Various cleanups and modernizations (pr/916, pr/917, pr/918, pr/919) (Jonathan Daniel, reviewed by CM)
- SVG logo for improved appearance in with zooming (pr/914) (Jonathan Daniel, reviewed by CM)
API changes and deprecations
- Drop support for Numpy < 1.13 (pr/922) (CM)
- Warn on use of
onetime.setattr_on_read
, which has been a deprecated alias ofauto_attr
(pr/948) (CM, reviewed by Ariel Rokem)
3.1.1
Most work on NiBabel so far has been by Matthew Brett (MB), Chris Markiewicz (CM), Michael Hanke (MH), Marc-Alexandre Côté (MC), Ben Cipollini (BC), Paul McCarthy (PM), Chris Cheng (CC), Yaroslav Halchenko (YOH), Satra Ghosh (SG), Eric Larson (EL), Demian Wassermann, Stephan Gerhard and Ross Markello (RM).
References like "pr/298" refer to github pull request numbers.
3.1.1 (Friday 26 June 2020)
Bug-fix release in the 3.1.x series.
These are small compatibility fixes that support ARM64 architecture and indexed_gzip>=1.3.0
.
Bug fixes
- Detect
IndexedGzipFile
as compressed file type (pr/925) (PM, reviewed by CM) - Correctly cast
nan
when testingarray_to_file
, fixing ARM64 builds (pr/862) (CM, reviewed by MB)
3.1.0
Most work on NiBabel so far has been by Matthew Brett (MB), Chris Markiewicz (CM), Michael Hanke (MH), Marc-Alexandre Côté (MC), Ben Cipollini (BC), Paul McCarthy (PM), Chris Cheng (CC), Yaroslav Halchenko (YOH), Satra Ghosh (SG), Eric Larson (EL), Demian Wassermann, Stephan Gerhard and Ross Markello (RM).
References like "pr/298" refer to github pull request numbers.
3.1.0 (Monday 20 April 2020)
New feature release in the 3.1.x series.
New features
- Conformation function (
processing.conform
) and CLI tool (nib-conform
) to apply shape, orientation and zooms (pr/853) (Jakub Kaczmarzyk, reviewed by CM, YOH) - Affine rescaling function (
affines.rescale_affine
) to update dimensions and voxel sizes (pr/853) (CM, reviewed by Jakub Kaczmarzyk)
Bug fixes
- Delay import of h5py until neded (pr/889) (YOH, reviewed by CM)
Maintenance
- Fix typo in documentation (pr/893) (Zvi Baratz, reviewed by CM)
- Tests converted from nose to pytest (pr/865 + many sub-PRs) (Dorota Jarecka, Krzyzstof Gorgolewski, Roberto Guidotti, Anibal Solon, Or Duek, CM)
API changes and deprecations
kw_only_meth
/kw_only_func
decorators are deprecated (pr/848) (RM, reviewed by CM)
2.5.2
Most work on NiBabel so far has been by Matthew Brett (MB), Chris Markiewicz (CM), Michael Hanke (MH), Marc-Alexandre Côté (MC), Ben Cipollini (BC), Paul McCarthy (PM), Chris Cheng (CC), Yaroslav Halchenko (YOH), Satra Ghosh (SG), Eric Larson (EL), Demian Wassermann, and Stephan Gerhard.
References like "pr/298" refer to github pull request numbers.
2.5.2 (Wednesday 8 April 2020)
Bug-fix release in the 2.5.x series. This is an extended-support series, providing bug fixes for Python 2.7 and 3.4.
This and all future releases in the 2.5.x series will be incompatible with Python 3.9. The last compatible series of numpy and scipy are 1.16.x and 1.2.x, respectively.
If you are able to upgrade to Python 3, it is recommended to upgrade to NiBabel 3.
Bug fixes
- Change strings with invalid escapes to raw strings (pr/827) (EL, reviewed by CM)
- Re-import externals/netcdf.py from scipy to resolve numpy deprecation (pr/821) (CM)
Maintenance
- Set maximum numpy to 1.16.x, maximum scipy to 1.2.x (pr/901) (CM)
3.0.2
Most work on NiBabel so far has been by Matthew Brett (MB), Chris Markiewicz (CM), Michael Hanke (MH), Marc-Alexandre Côté (MC), Ben Cipollini (BC), Paul McCarthy (PM), Chris Cheng (CC), Yaroslav Halchenko (YOH), Satra Ghosh (SG), Eric Larson (EL), Demian Wassermann, and Stephan Gerhard.
References like "pr/298" refer to github pull request numbers.
3.0.2 (Monday 9 March 2020)
Bug fixes
- Attempt to find versioneer version when building docs (pr/894) (CM)
- Delay import of h5py until neded (backport of pr/889) (YOH, reviewed by CM)
Maintenance
- Fix typo in documentation (backport of pr/893) (Zvi Baratz, reviewed by CM)
- Set minimum matplotlib to 1.5.3 to ensure wheels are available on all supported Python versions. (backport of pr/887) (CM)
- Remove
pyproject.toml
for now. (issue/859) (CM)
3.0.1
Most work on NiBabel so far has been by Matthew Brett (MB), Chris Markiewicz (CM), Michael Hanke (MH), Marc-Alexandre Côté (MC), Ben Cipollini (BC), Paul McCarthy (PM), Chris Cheng (CC), Yaroslav Halchenko (YOH), Satra Ghosh (SG), Eric Larson (EL), Demian Wassermann, and Stephan Gerhard.
References like "pr/298" refer to github pull request numbers.
3.0.1 (Monday 27 January 2020)
Bug fixes
- Test failed by using array method on tuple. (pr/860) (Ben Darwin, reviewed by CM)
- Validate
ExpiredDeprecationError
s, promoted by 3.0 release fromDeprecationWarning
s. (pr/857) (CM)
Maintenance
- Remove logic accommodating numpy without float16 types. (pr/866) (CM)
- Accommodate new numpy dtype strings. (pr/858) (CM)
3.0.0
Most work on NiBabel so far has been by Matthew Brett (MB), Chris Markiewicz (CM), Michael Hanke (MH), Marc-Alexandre Côté (MC), Ben Cipollini (BC), Paul McCarthy (PM), Chris Cheng (CC), Yaroslav Halchenko (YOH), Satra Ghosh (SG), Eric Larson (EL), Demian Wassermann, and Stephan Gerhard.
References like "pr/298" refer to github pull request numbers.
3.0.0 (Wednesday 18 December 2019)
New features
- ArrayProxy
__array__()
now accepts adtype
parameter, allowingnumpy.array(dataobj, dtype=...)
calls, as well as casting directly with a dtype (for example,numpy.float32(dataobj)
) to control the output type. Scale factors (slope, intercept) are applied, but may be cast to narrower types, to control memory usage. This is now the basis ofimg.get_fdata()
, which will scale data in single precision if the output type isfloat32
. (pr/844) (CM, reviewed by Alejandro de la Vega, Ross Markello) - GiftiImage method
agg_data()
to return usable data arrays (pr/793) (Hao-Ting Wang, reviewed by CM) - Accept
os.PathLike
objects in place of filenames (pr/610) (Cameron Riddell, reviewed by MB, CM) - Function to calculate obliquity of affines (pr/815) (Oscar Esteban, reviewed by MB)
Enhancements
- Improve testing of data scaling in ArrayProxy API (pr/847) (CM, reviewed by Alejandro de la Vega)
- Document
SpatialImage.slicer
interface (pr/846) (CM) get_fdata(dtype=np.float32)
will attempt to avoid casting data tonp.float64
when scaling parameters would otherwise promote the data type unnecessarily. (pr/833) (CM, reviewed by Ross Markello)ArraySequence
now supports a large set of Python operators to combine or update in-place. (pr/811) (MC, reviewed by Serge Koudoro, Philippe Poulin, CM, MB)- Warn, rather than fail, on DICOMs with unreadable Siemens CSA tags (pr/818) (Henry Braun, reviewed by CM)
- Improve clarity of coordinate system tutorial (pr/823) (Egor Panfilov, reviewed by MB)
Bug fixes
- Sliced
Tractogram
s no longerapply_affine
to the originalTractogram
's streamlines. (pr/811) (MC, reviewed by Serge Koudoro, Philippe Poulin, CM, MB) - Re-import externals/netcdf.py from scipy to resolve numpy deprecation (pr/821) (CM)
Maintenance
- Remove replicated metadata for packaged data from MANIFEST.in (pr/845) (CM)
- Support Python >=3.5.1, including Python 3.8.0 (pr/787) (CM)
- Manage versioning with slightly customized Versioneer (pr/786) (CM)
- Reference Nipy Community Code and Nibabel Developer Guidelines in GitHub community documents (pr/778) (CM, reviewed by MB)
API changes and deprecations
- Fully remove deprecated
checkwarns
andminc
modules. (pr/852) (CM) - The
keep_file_open
argument to file load operations andArrayProxy
s no longer acccepts the value"auto"
, raising aValueError
. (pr/852) (CM) - Deprecate
ArraySequence.data
in favor ofArraySequence.get_data()
, which will return a copy.ArraySequence.data
now returns a read-only view. (pr/811) (MC, reviewed by Serge Koudoro, Philippe Poulin, CM, MB) - Deprecate
DataobjImage.get_data()
API, to be removed in nibabel 5.0 (pr/794, pr/809) (CM, reviewed by MB)
3.0.0rc2
Most work on NiBabel so far has been by Matthew Brett (MB), Chris Markiewicz (CM), Michael Hanke (MH), Marc-Alexandre Côté (MC), Ben Cipollini (BC), Paul McCarthy (PM), Chris Cheng (CC), Yaroslav Halchenko (YOH), Satra Ghosh (SG), Eric Larson (EL), Demian Wassermann, and Stephan Gerhard.
References like "pr/298" refer to github pull request numbers.
3.0.0rc2 (Wednesday 11 December 2019)
New features
- ArrayProxy
__array__()
now accepts adtype
parameter, allowingnumpy.array(dataobj, dtype=...)
calls, as well as casting directly with a dtype (for example,numpy.float32(dataobj)
) to control the output type. Scale factors (slope, intercept) are applied, but may be cast to narrower types, to control memory usage. This is now the basis ofimg.get_fdata()
, which will scale data in single precision if the output type isfloat32
. (pr/844) (CM, reviewed by Alejandro de la Vega, Ross Markello) - GiftiImage method
agg_data()
to return usable data arrays (pr/793) (Hao-Ting Wang, reviewed by CM) - Accept
os.PathLike
objects in place of filenames (pr/610) (Cameron Riddell, reviewed by MB, CM) - Function to calculate obliquity of affines (pr/815) (Oscar Esteban, reviewed by MB)
Enhancements
- Improve testing of data scaling in ArrayProxy API (pr/847) (CM, reviewed by Alejandro de la Vega)
- Document
SpatialImage.slicer
interface (pr/846) (CM) get_fdata(dtype=np.float32)
will attempt to avoid casting data tonp.float64
when scaling parameters would otherwise promote the data type unnecessarily. (pr/833) (CM, reviewed by Ross Markello)ArraySequence
now supports a large set of Python operators to combine or update in-place. (pr/811) (MC, reviewed by Serge Koudoro, Philippe Poulin, CM, MB)- Warn, rather than fail, on DICOMs with unreadable Siemens CSA tags (pr/818) (Henry Braun, reviewed by CM)
- Improve clarity of coordinate system tutorial (pr/823) (Egor Panfilov, reviewed by MB)
Bug fixes
- Sliced
Tractogram
s no longerapply_affine
to the originalTractogram
's streamlines. (pr/811) (MC, reviewed by Serge Koudoro, Philippe Poulin, CM, MB) - Re-import externals/netcdf.py from scipy to resolve numpy deprecation (pr/821) (CM)
Maintenance
- Remove replicated metadata for packaged data from MANIFEST.in (pr/845) (CM)
- Support Python >=3.5.1, including Python 3.8.0 (pr/787) (CM)
- Manage versioning with slightly customized Versioneer (pr/786) (CM)
- Reference Nipy Community Code and Nibabel Developer Guidelines in GitHub community documents (pr/778) (CM, reviewed by MB)
API changes and deprecations
- Fully remove deprecated
checkwarns
andminc
modules. (pr/852) (CM) - The
keep_file_open
argument to file load operations andArrayProxy
s no longer acccepts the value"auto"
, raising aValueError
. (pr/852) (CM) - Deprecate
ArraySequence.data
in favor ofArraySequence.get_data()
, which will return a copy.ArraySequence.data
now returns a read-only view. (pr/811) (MC, reviewed by Serge Koudoro, Philippe Poulin, CM, MB) - Deprecate
DataobjImage.get_data()
API, to be removed in nibabel 5.0 (pr/794, pr/809) (CM, reviewed by MB)
3.0.0rc1
Most work on NiBabel so far has been by Matthew Brett (MB), Chris Markiewicz (CM), Michael Hanke (MH), Marc-Alexandre Côté (MC), Ben Cipollini (BC), Paul McCarthy (PM), Chris Cheng (CC), Yaroslav Halchenko (YOH), Satra Ghosh (SG), Eric Larson (EL), Demian Wassermann, and Stephan Gerhard.
References like "pr/298" refer to github pull request numbers.
3.0.0rc1 (Saturday 16 November 2019)
Release candidate for NiBabel 3.0, initiating a minimum one-month testing window.
Downstream projects are requested to test against the release candidate by installing with pip install --pre nibabel
.
New features
- ArrayProxy method
get_scaled()
scales data with a dtype of a specified precision, promoting as necessary to avoid overflow. This is to used inimg.get_fdata()
to control memory usage. (pr/833) (CM, reviewed by Ross Markello) - GiftiImage method
agg_data()
to return usable data arrays (pr/793) (Hao-Ting Wang, reviewed by CM) - Accept
os.PathLike
objects in place of filenames (pr/610) (Cameron Riddell, reviewed by MB, CM) - Function to calculate obliquity of affines (pr/815) (Oscar Esteban, reviewed by MB)
Enhancements
get_fdata(dtype=np.float32)
will attempt to avoid casting data tonp.float64
when scaling parameters would otherwise promote the data type unnecessarily. (pr/833) (CM, reviewed by Ross Markello)ArraySequence
now supports a large set of Python operators to combine or update in-place. (pr/811) (MC, reviewed by Serge Koudoro, Philippe Poulin, CM, MB)- Warn, rather than fail, on DICOMs with unreadable Siemens CSA tags (pr/818) (Henry Braun, reviewed by CM)
- Improve clarity of coordinate system tutorial (pr/823) (Egor Panfilov, reviewed by MB)
Bug fixes
- Sliced
Tractogram
s no longerapply_affine
to the originalTractogram
's streamlines. (pr/811) (MC, reviewed by Serge Koudoro, Philippe Poulin, CM, MB) - Re-import externals/netcdf.py from scipy to resolve numpy deprecation (pr/821) (CM)
Maintenance
- Support Python >=3.5.1, including Python 3.8.0 (pr/787) (CM)
- Manage versioning with slightly customized Versioneer (pr/786) (CM)
- Reference Nipy Community Code and Nibabel Developer Guidelines in GitHub community documents (pr/778) (CM, reviewed by MB)
API changes and deprecations
- Deprecate
ArraySequence.data
in favor ofArraySequence.get_data()
, which will return a copy.ArraySequence.data
now returns a read-only view. (pr/811) (MC, reviewed by Serge Koudoro, Philippe Poulin, CM, MB) - Deprecate
DataobjImage.get_data()
API, to be removed in nibabel 5.0 (pr/794, pr/809) (CM, reviewed by MB)