summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorJeremy Heiner <scalaprotractor@gmail.com>2013-10-12 18:44:30 +0200
committerAllan McRae <allan@archlinux.org>2013-10-14 05:01:15 +0200
commit372e26118f298f38b45c244fdb77785245ceefca (patch)
treed316a7d56ae1053b33c5a10fb8c161036e122667
parent807f014d777fbcc7b43fa5159a8b0d12a44d63ae (diff)
downloadpacman-372e26118f298f38b45c244fdb77785245ceefca.tar.gz
pacman-372e26118f298f38b45c244fdb77785245ceefca.tar.xz
Bail early with a clear error message if Python runtime isn't 2.7+.
Prior to this a test that used a feature too new for the runtime would blow up when it was "exec"d (possibly in the middle of a run of a bunch of tests) with an error message that was not very helpful. Remove Python 2.5 and 2.6 runtimes from the list configure searches. 2.5 suffers the problem described above. The code currently will run on 2.6 but, as was noted on the dev list, that runtime is at the end of its life, so 2.7 is a better cutoff. Signed-off-by: Jeremy Heiner <ScalaProtractor at gmail.com> Signed-off-by: Allan McRae <allan@archlinux.org>
-rw-r--r--configure.ac2
-rwxr-xr-xtest/pacman/pactest.py6
2 files changed, 7 insertions, 1 deletions
diff --git a/configure.ac b/configure.ac
index 42416a42..cfcc8d1f 100644
--- a/configure.ac
+++ b/configure.ac
@@ -169,7 +169,7 @@ AC_SYS_LARGEFILE
AC_PROG_AWK
AC_PROG_CC_C99
AC_PROG_INSTALL
-AC_CHECK_PROGS([PYTHON], [python2.7 python2.6 python2.5 python2 python], [false])
+AC_CHECK_PROGS([PYTHON], [python2.7 python2 python], [false])
AC_PATH_PROGS([BASH_SHELL], [bash bash4], [false])
# check for perl 5.10.1 (needed by makepkg-template)
diff --git a/test/pacman/pactest.py b/test/pacman/pactest.py
index d39fcaa5..e21cde7e 100755
--- a/test/pacman/pactest.py
+++ b/test/pacman/pactest.py
@@ -77,6 +77,12 @@ def create_parser():
if __name__ == "__main__":
+
+ if sys.hexversion < 0x02070000:
+ # bailing now with clear message better than mid-run with unhelpful one
+ tap.bail("Python versions before 2.7 are not supported.")
+ sys.exit(1)
+
# instantiate env and parser objects
root_path = tempfile.mkdtemp()
env = pmenv.pmenv(root=root_path)