Skip to content

Commit e5b67f1

Browse files
authored
Merge pull request #1141 from effigies/mnt/5.0.0.dev0
MNT: 5.0.0.dev0
2 parents 34fb3ec + 4d4fc99 commit e5b67f1

40 files changed

+18
-964
lines changed

nibabel/__init__.py

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -58,10 +58,9 @@
5858
from .freesurfer import MGHImage
5959
from .funcs import (squeeze_image, concat_images, four_to_three,
6060
as_closest_canonical)
61-
from .orientations import (io_orientation, orientation_affine,
62-
flip_axis, OrientationError,
61+
from .orientations import (io_orientation, flip_axis, OrientationError,
6362
apply_orientation, aff2axcodes)
64-
from .imageclasses import class_map, ext_map, all_image_classes
63+
from .imageclasses import all_image_classes
6564
from . import mriutils
6665
from . import streamlines
6766
from . import viewers

nibabel/arraywriters.py

Lines changed: 3 additions & 26 deletions
Original file line numberDiff line numberDiff line change
@@ -34,7 +34,6 @@ def __init__(self, array, out_dtype=None)
3434
from .casting import (int_to_float, as_int, int_abs, type_info, floor_exact,
3535
best_float, shared_range)
3636
from .volumeutils import finite_range, array_to_file
37-
from .deprecator import ExpiredDeprecationError
3837

3938

4039
class WriterError(Exception):
@@ -185,38 +184,22 @@ def finite_range(self):
185184
self._has_nan = has_nan
186185
return self._finite_range
187186

188-
def _check_nan2zero(self, nan2zero):
189-
if nan2zero is None:
190-
return
191-
if nan2zero != self._nan2zero:
192-
raise WriterError('Deprecated `nan2zero` argument to `to_fileobj` '
193-
'must be same as class value set in __init__')
194-
raise ExpiredDeprecationError(
195-
'Please remove `nan2zero` from call to `to_fileobj` '
196-
'and use in instance __init__ instead.\n'
197-
'* deprecated in version: 2.0\n'
198-
'* Raises ExpiredDeprecationError as of version: 4.0\n'
199-
)
200-
201187
def _needs_nan2zero(self):
202188
""" True if nan2zero check needed for writing array """
203189
return (self._nan2zero and
204190
self._array.dtype.kind in 'fc' and
205191
self.out_dtype.kind in 'iu' and
206192
self.has_nan)
207193

208-
def to_fileobj(self, fileobj, order='F', nan2zero=None):
194+
def to_fileobj(self, fileobj, order='F'):
209195
""" Write array into `fileobj`
210196
211197
Parameters
212198
----------
213199
fileobj : file-like object
214200
order : {'F', 'C'}
215201
order (Fortran or C) to which to write array
216-
nan2zero : {None, True, False}, optional, deprecated
217-
Deprecated version of argument to __init__ with same name
218202
"""
219-
self._check_nan2zero(nan2zero)
220203
array_to_file(self._array,
221204
fileobj,
222205
self._out_dtype,
@@ -362,18 +345,15 @@ def _writing_range(self):
362345
return mn, mx
363346
return None, None
364347

365-
def to_fileobj(self, fileobj, order='F', nan2zero=None):
348+
def to_fileobj(self, fileobj, order='F'):
366349
""" Write array into `fileobj`
367350
368351
Parameters
369352
----------
370353
fileobj : file-like object
371354
order : {'F', 'C'}
372355
order (Fortran or C) to which to write array
373-
nan2zero : {None, True, False}, optional, deprecated
374-
Deprecated version of argument to __init__ with same name
375356
"""
376-
self._check_nan2zero(nan2zero)
377357
mn, mx = self._writing_range()
378358
array_to_file(self._array,
379359
fileobj,
@@ -536,18 +516,15 @@ def _set_inter(self, val):
536516
self._inter = np.squeeze(self.scaler_dtype.type(val))
537517
inter = property(_get_inter, _set_inter, None, 'get/set inter')
538518

539-
def to_fileobj(self, fileobj, order='F', nan2zero=None):
519+
def to_fileobj(self, fileobj, order='F'):
540520
""" Write array into `fileobj`
541521
542522
Parameters
543523
----------
544524
fileobj : file-like object
545525
order : {'F', 'C'}
546526
order (Fortran or C) to which to write array
547-
nan2zero : {None, True, False}, optional, deprecated
548-
Deprecated version of argument to __init__ with same name
549527
"""
550-
self._check_nan2zero(nan2zero)
551528
mn, mx = self._writing_range()
552529
array_to_file(self._array,
553530
fileobj,

nibabel/conftest.py

Lines changed: 0 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1,11 +1,5 @@
11
import pytest
22

3-
# Pre-load deprecated modules to avoid cluttering warnings
4-
with pytest.deprecated_call():
5-
import nibabel.keywordonly
6-
with pytest.warns(FutureWarning):
7-
import nibabel.py3k
8-
93
# Ignore warning requesting help with nicom
104
with pytest.warns(UserWarning):
115
import nibabel.nicom

nibabel/dataobj_images.py

Lines changed: 0 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -48,13 +48,6 @@ def __init__(self, dataobj, header=None, extra=None, file_map=None):
4848
def dataobj(self):
4949
return self._dataobj
5050

51-
@property
52-
@deprecate_with_version('_data attribute not part of public API. '
53-
'please use "dataobj" property instead.',
54-
'2.0', '4.0')
55-
def _data(self):
56-
return self._dataobj
57-
5851
@deprecate_with_version('get_data() is deprecated in favor of get_fdata(),'
5952
' which has a more predictable return type. To '
6053
'obtain get_data() behavior going forward, use '

nibabel/ecat.py

Lines changed: 0 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -54,7 +54,6 @@
5454
from .arraywriters import make_array_writer
5555
from .wrapstruct import WrapStruct
5656
from .fileslice import canonical_slicers, predict_shape, slice2outax
57-
from .deprecated import deprecate_with_version
5857

5958
BLOCK_SIZE = 512
6059

@@ -863,14 +862,6 @@ def get_subheaders(self):
863862
"""get access to subheaders"""
864863
return self._subheader
865864

866-
@classmethod
867-
@deprecate_with_version('from_filespec class method is deprecated.\n'
868-
'Please use the ``from_file_map`` class method '
869-
'instead.',
870-
'2.1', '4.0')
871-
def from_filespec(klass, filespec):
872-
return klass.from_filename(filespec)
873-
874865
@staticmethod
875866
def _get_fileholders(file_map):
876867
""" returns files specific to header and image of the image

nibabel/filebasedimages.py

Lines changed: 0 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -15,7 +15,6 @@
1515
from .filename_parser import (types_filenames, TypesFilenamesError,
1616
splitext_addext)
1717
from .openers import ImageOpener
18-
from .deprecated import deprecate_with_version
1918

2019

2120
class ImageFileError(Exception):
@@ -79,7 +78,6 @@ class FileBasedImage:
7978
8079
methods:
8180
82-
* get_header() (deprecated, use header property instead)
8381
* to_filename(fname) - writes data to filename(s) derived from
8482
``fname``, where the derivation may differ between formats.
8583
* to_file_map() - save image to files with which the image is already
@@ -208,15 +206,6 @@ def __getitem__(self, key):
208206
"""
209207
raise TypeError("Cannot slice image objects.")
210208

211-
@deprecate_with_version('get_header method is deprecated.\n'
212-
'Please use the ``img.header`` property '
213-
'instead.',
214-
'2.1', '4.0')
215-
def get_header(self):
216-
""" Get header from image
217-
"""
218-
return self.header
219-
220209
def get_filename(self):
221210
""" Fetch the image filename
222211

nibabel/freesurfer/mghformat.py

Lines changed: 0 additions & 40 deletions
Original file line numberDiff line numberDiff line change
@@ -24,7 +24,6 @@
2424
from ..openers import ImageOpener
2525
from ..batteryrunners import BatteryRunner, Report
2626
from ..wrapstruct import LabeledWrapStruct
27-
from ..deprecated import deprecate_with_version
2827

2928
# mgh header
3029
# See https://surfer.nmr.mgh.harvard.edu/fswiki/FsTutorial/MghFormat
@@ -462,45 +461,6 @@ def diagnose_binaryblock(klass, binaryblock, endianness=None):
462461
return '\n'.join([report.message
463462
for report in reports if report.message])
464463

465-
class _HeaderData:
466-
""" Provide interface to deprecated MGHHeader fields"""
467-
def __init__(self, structarr):
468-
self._structarr = structarr
469-
470-
def __getitem__(self, item):
471-
sa = self._structarr
472-
if item == 'mrparams':
473-
return np.hstack((sa['tr'], sa['flip_angle'], sa['te'], sa['ti']))
474-
return sa[item]
475-
476-
def __setitem__(self, item, val):
477-
sa = self._structarr
478-
if item == 'mrparams':
479-
sa['tr'], sa['flip_angle'], sa['te'], sa['ti'] = val
480-
else:
481-
sa[item] = val
482-
483-
@property
484-
@deprecate_with_version('_header_data is deprecated.\n'
485-
'Please use the _structarr interface instead.\n'
486-
'Note also that some fields have changed name and '
487-
'shape.',
488-
'2.3', '4.0')
489-
def _header_data(self):
490-
""" Deprecated field-access interface """
491-
return self._HeaderData(self._structarr)
492-
493-
def __getitem__(self, item):
494-
if item == 'mrparams':
495-
return self._header_data[item]
496-
return super(MGHHeader, self).__getitem__(item)
497-
498-
def __setitem__(self, item, value):
499-
if item == 'mrparams':
500-
self._header_data[item] = value
501-
else:
502-
super(MGHHeader, self).__setitem__(item, value)
503-
504464

505465
class MGHImage(SpatialImage, SerializableImage):
506466
""" Class for MGH format image

nibabel/freesurfer/tests/test_mghformat.py

Lines changed: 0 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -22,7 +22,6 @@
2222
from ...volumeutils import sys_is_le
2323
from ...wrapstruct import WrapStructError
2424
from ... import imageglobals
25-
from ...deprecator import ExpiredDeprecationError
2625

2726

2827
import pytest
@@ -340,20 +339,6 @@ def test_mghheader_default_structarr():
340339
MGHHeader.default_structarr(endianness=endianness)
341340

342341

343-
def test_deprecated_fields():
344-
hdr = MGHHeader()
345-
hdr_data = MGHHeader._HeaderData(hdr.structarr)
346-
347-
# mrparams is the only deprecated field at the moment
348-
# Accessing hdr_data is equivalent to accessing hdr, so double all checks,
349-
# but expect success on hdr_data['mrparams']
350-
with pytest.raises(ExpiredDeprecationError):
351-
hdr['mrparams']
352-
with pytest.raises(ExpiredDeprecationError):
353-
hdr['mrparams'] = [1, 2, 3, 4]
354-
assert_array_equal(hdr_data['mrparams'], 0)
355-
356-
357342
class TestMGHImage(tsi.TestSpatialImage, tsi.MmapImageMixin):
358343
""" Apply general image tests to MGHImage
359344
"""

nibabel/gifti/__init__.py

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -17,6 +17,5 @@
1717
gifti
1818
"""
1919

20-
from .giftiio import read, write
2120
from .gifti import (GiftiMetaData, GiftiNVPairs, GiftiLabelTable, GiftiLabel,
2221
GiftiCoordSystem, GiftiDataArray, GiftiImage)

0 commit comments

Comments
 (0)