Require Python 2.5.
authordavid-sarah <david-sarah@jacaranda.org>
Wed, 16 May 2012 02:41:49 +0000 (02:41 +0000)
committerdavid-sarah <david-sarah@jacaranda.org>
Wed, 16 May 2012 02:41:49 +0000 (02:41 +0000)
src/allmydata/__init__.py

index 4ddea757fa449783fbbe22c1e26459f1e38623f7..6356bacda17da5b5ccfa1ae8906a15404962af43 100644 (file)
@@ -360,24 +360,15 @@ def check_all_requirements():
 
     errors = []
 
-    # we require 2.4.4 on non-UCS-2, non-Redhat builds to avoid <http://www.python.org/news/security/PSF-2006-001/>
-    # we require 2.4.3 on non-UCS-2 Redhat, because 2.4.3 is common on Redhat-based distros and will have patched the above bug
-    # we require at least 2.4.2 in any case to avoid a bug in the base64 module: <http://bugs.python.org/issue1171487>
-    if sys.maxunicode == 65535:
-        if sys.version_info < (2, 4, 2) or sys.version_info[0] > 2:
-            errors.append("Tahoe-LAFS current requires Python v2.4.2 or greater "
-                          "for a UCS-2 build (but less than v3), not %r" %
-                          (sys.version_info,))
-    elif platform.platform().lower().find('redhat') >= 0:
-        if sys.version_info < (2, 4, 3) or sys.version_info[0] > 2:
-            errors.append("Tahoe-LAFS current requires Python v2.4.3 or greater "
-                          "on Redhat-based distributions (but less than v3), not %r" %
-                          (sys.version_info,))
-    else:
-        if sys.version_info < (2, 4, 4) or sys.version_info[0] > 2:
-            errors.append("Tahoe-LAFS current requires Python v2.4.4 or greater "
-                          "for a non-UCS-2 build (but less than v3), not %r" %
-                          (sys.version_info,))
+    # We require at least 2.5 on all platforms.
+    # (On Python 3, we'll have failed long before this point.)
+    if sys.version_info < (2, 5):
+        try:
+            version_string = ".".join(map(str, sys.version_info))
+        except Exception:
+            version_string = repr(sys.version_info)
+        errors.append("Tahoe-LAFS current requires Python v2.5 or greater (but less than v3), not %s"
+                      % (version_string,))
 
     vers_and_locs = dict(_vers_and_locs_list)
     for requirement in install_requires: