summaryrefslogtreecommitdiff
blob: 7db41d2e1a6248cbc85299538a0a00811e357fa4 (plain)
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
 setup.py               | 13 +++++++------
 tables/req_versions.py |  2 +-
 2 files changed, 8 insertions(+), 7 deletions(-)

diff --git a/setup.py b/setup.py
index 0f2f3f7..52cda49 100755
--- a/setup.py
+++ b/setup.py
@@ -25,6 +25,7 @@ from distutils.core import Extension
 from distutils.dep_util import newer
 from distutils.util import convert_path
 from distutils.ccompiler import new_compiler
+from distutils.version import LooseVersion
 
 cmdclass = {}
 setuptools_kwargs = {}
@@ -106,7 +107,7 @@ def check_import(pkgname, pkgver):
             "You need %(pkgname)s %(pkgver)s or greater to run PyTables!"
             % {'pkgname': pkgname, 'pkgver': pkgver})
     else:
-        if mod.__version__ < pkgver:
+        if mod.__version__ < LooseVersion(pkgver):
             exit_with_error(
                 "You need %(pkgname)s %(pkgver)s or greater to run PyTables!"
                 % {'pkgname': pkgname, 'pkgver': pkgver})
@@ -122,21 +123,21 @@ if not has_setuptools:
 
 # Check if Cython is installed or not (requisite)
 try:
+    from Cython import __version__ as cython_version
     from Cython.Distutils import build_ext
-    from Cython.Compiler.Main import Version
     cmdclass['build_ext'] = build_ext
 except ImportError:
     exit_with_error(
         "You need %(pkgname)s %(pkgver)s or greater to compile PyTables!"
         % {'pkgname': 'Cython', 'pkgver': min_cython_version})
 
-if Version.version < min_cython_version:
+if LooseVersion(cython_version) < min_cython_version:
     exit_with_error(
-        "At least Cython %s is needed so as to generate extensions!"
-        % (min_cython_version))
+        "You need %(pkgname)s %(pkgver)s or greater to run PyTables!"
+        % {'pkgname': 'Cython', 'pkgver': min_cython_version})
 else:
     print("* Found %(pkgname)s %(pkgver)s package installed."
-          % {'pkgname': 'Cython', 'pkgver': Version.version})
+          % {'pkgname': 'Cython', 'pkgver': cython_version})
 
 VERSION = open('VERSION').read().strip()
 
diff --git a/tables/req_versions.py b/tables/req_versions.py
index 2c9ca01..bd498c3 100644
--- a/tables/req_versions.py
+++ b/tables/req_versions.py
@@ -17,7 +17,7 @@
 # Minimum recommended versions for mandatory packages
 min_numpy_version = '1.4.1'
 min_numexpr_version = '2.0.0'
-min_cython_version = '0.13'
+min_cython_version = '0.14'
 
 # The THG team has decided to fix an API inconsistency in the definition
 # of the H5Z_class_t structure in version 1.8.3