1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
|
From: Ole Streicher <olebole@debian.org>
Date: Tue, 12 Jul 2016 08:54:59 +0200
Subject: Use LooseVersion instead of StrictVersion.
StrictVersion fails on numpy RCs. LooseVersion is a compromise until something better is available.
---
spectral_cube/np_compat.py | 4 ++--
spectral_cube/spectral_cube.py | 4 ++--
spectral_cube/tests/test_masks.py | 4 ++--
spectral_cube/tests/test_moments.py | 4 ++--
spectral_cube/tests/test_spectral_cube.py | 10 +++++-----
5 files changed, 13 insertions(+), 13 deletions(-)
diff --git a/spectral_cube/np_compat.py b/spectral_cube/np_compat.py
index e72b4d9..dd9080a 100644
--- a/spectral_cube/np_compat.py
+++ b/spectral_cube/np_compat.py
@@ -1,7 +1,7 @@
from __future__ import print_function, absolute_import, division
import numpy as np
-from distutils.version import StrictVersion
+from distutils.version import LooseVersion
def allbadtonan(function):
"""
@@ -11,7 +11,7 @@ def allbadtonan(function):
"""
def f(data, axis=None):
result = function(data, axis=axis)
- if StrictVersion(np.__version__) >= StrictVersion('1.9.0'):
+ if LooseVersion(np.__version__) >= LooseVersion('1.9.0'):
if axis is None:
if np.all(np.isnan(data)):
return np.nan
diff --git a/spectral_cube/spectral_cube.py b/spectral_cube/spectral_cube.py
index 231245d..fa61119 100644
--- a/spectral_cube/spectral_cube.py
+++ b/spectral_cube/spectral_cube.py
@@ -34,7 +34,7 @@ from .lower_dimensional_structures import (Projection, Slice, OneDSpectrum,
LowerDimensionalObject)
from .base_class import BaseNDClass, SpectralAxisMixinClass, DOPPLER_CONVENTIONS
-from distutils.version import StrictVersion
+from distutils.version import LooseVersion
__all__ = ['SpectralCube', 'VaryingResolutionSpectralCube']
@@ -2072,7 +2072,7 @@ class BaseSpectralCube(BaseNDClass, SpectralAxisMixinClass):
import yt
if ('dev' in yt.__version__ or
- StrictVersion(yt.__version__) >= StrictVersion('3.0')):
+ LooseVersion(yt.__version__) >= LooseVersion('3.0')):
from yt.frontends.fits.api import FITSDataset
from yt.units.unit_object import UnitParseError
diff --git a/spectral_cube/tests/test_masks.py b/spectral_cube/tests/test_masks.py
index 9116cb3..42a2125 100644
--- a/spectral_cube/tests/test_masks.py
+++ b/spectral_cube/tests/test_masks.py
@@ -14,7 +14,7 @@ from .. import (BooleanArrayMask, SpectralCube, LazyMask, LazyComparisonMask,
FunctionMask, CompositeMask)
from ..masks import is_broadcastable_and_smaller, dims_to_skip, view_of_subset
-from distutils.version import StrictVersion
+from distutils.version import LooseVersion
def test_spectral_cube_mask():
@@ -370,7 +370,7 @@ def test_flat_mask():
assert np.all(cube.sum(axis=0)[mask_array] == mcube.sum(axis=0)[mask_array])
assert np.all(np.isnan(mcube.sum(axis=0)[~mask_array]))
-@pytest.mark.skipif(StrictVersion(np.__version__) < StrictVersion('1.7'),
+@pytest.mark.skipif(LooseVersion(np.__version__) < LooseVersion('1.7'),
reason='Numpy <1.7 does not support multi-slice indexing.')
def test_flat_mask_spectral():
cube, data = cube_and_raw('adv.fits')
diff --git a/spectral_cube/tests/test_moments.py b/spectral_cube/tests/test_moments.py
index 9b118fd..82eff40 100644
--- a/spectral_cube/tests/test_moments.py
+++ b/spectral_cube/tests/test_moments.py
@@ -1,7 +1,7 @@
from __future__ import print_function, absolute_import, division
import warnings
-from distutils.version import StrictVersion
+from distutils.version import LooseVersion
import pytest
import numpy as np
@@ -78,7 +78,7 @@ axis_order = pytest.mark.parametrize(('axis', 'order'),
(1, 0), (1, 1), (1, 2),
(2, 0), (2, 1), (2, 2)))
-if StrictVersion(astropy.__version__[:3]) >= StrictVersion('1.0'):
+if LooseVersion(astropy.__version__[:3]) >= LooseVersion('1.0'):
# The relative error is slightly larger on astropy-dev
# There is no obvious reason for this.
rtol = 2e-7
diff --git a/spectral_cube/tests/test_spectral_cube.py b/spectral_cube/tests/test_spectral_cube.py
index 025e6bd..4dce3bb 100644
--- a/spectral_cube/tests/test_spectral_cube.py
+++ b/spectral_cube/tests/test_spectral_cube.py
@@ -4,7 +4,7 @@ import operator
import itertools
import warnings
import mmap
-from distutils.version import StrictVersion, LooseVersion
+from distutils.version import LooseVersion, LooseVersion
# needed to test for warnings later
warnings.simplefilter('always', UserWarning)
@@ -468,12 +468,12 @@ class TestNumpyMethods(BaseTest):
scmed = self.c.apply_numpy_function(np.median, axis=0)
# this checks whether numpy <=1.9.3 has a bug?
# as far as I can tell, np==1.9.3 no longer has this bug/feature
- #if StrictVersion(np.__version__) <= StrictVersion('1.9.3'):
+ #if LooseVersion(np.__version__) <= LooseVersion('1.9.3'):
# # print statements added so we get more info in the travis builds
- # print("Numpy version is: {0}".format(StrictVersion(np.__version__)))
+ # print("Numpy version is: {0}".format(LooseVersion(np.__version__)))
# assert np.count_nonzero(np.isnan(scmed)) == 5
#else:
- # print("Numpy version is: {0}".format(StrictVersion(np.__version__)))
+ # print("Numpy version is: {0}".format(LooseVersion(np.__version__)))
assert np.count_nonzero(np.isnan(scmed)) == 6
scmed = self.c.apply_numpy_function(np.nanmedian, axis=0)
@@ -667,7 +667,7 @@ def test_read_write_rountrip(tmpdir):
assert cube.shape == cube.shape
assert_allclose(cube._data, cube2._data)
if (((hasattr(_wcs, '__version__')
- and StrictVersion(_wcs.__version__) < StrictVersion('5.9'))
+ and LooseVersion(_wcs.__version__) < LooseVersion('5.9'))
or not hasattr(_wcs, '__version__'))):
# see https://github.com/astropy/astropy/pull/3992 for reasons:
# we should upgrade this for 5.10 when the absolute accuracy is
|