Skip to content

Instantly share code, notes, and snippets.

@prehensilecode
Created February 22, 2017 16:00
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save prehensilecode/2eb790476c38299e520ce5ea40896e08 to your computer and use it in GitHub Desktop.
Save prehensilecode/2eb790476c38299e520ce5ea40896e08 to your computer and use it in GitHub Desktop.
--- setup.py.orig 2012-07-20 16:03:50.000000000 -0400
+++ setup.py 2017-02-22 10:56:13.558487862 -0500
@@ -49,6 +49,14 @@
if not (sys.version_info[0] >= 2 and sys.version_info[1] >= 4):
exit_with_error("You need Python 2.4 or greater to install PyTables!")
+# Version comparison
+# cribbed from: https://zxq9.com/archives/797
+def ver_tuple(z):
+ return tuple([int(x) for x in z.split('.') if x.isdigit()])
+
+def ver_cmp(a, b):
+ return cmp(ver_tuple(a), ver_tuple(b))
+
# Check for required Python packages
def check_import(pkgname, pkgver):
try:
@@ -58,7 +66,7 @@
"You need %(pkgname)s %(pkgver)s or greater to run PyTables!"
% {'pkgname': pkgname, 'pkgver': pkgver} )
else:
- if mod.__version__ < pkgver:
+ if ver_cmp(mod.__version__, pkgver) < 0:
exit_with_error(
"You need %(pkgname)s %(pkgver)s or greater to run PyTables!"
% {'pkgname': pkgname, 'pkgver': pkgver} )
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment