From 8b7129a1147ad50a3df5c069e86a1d2f06add8a8 Mon Sep 17 00:00:00 2001 From: Rob Browning Date: Sat, 19 Dec 2020 19:36:09 -0600 Subject: [PATCH] Prefer python 3, and mention intent to drop python 2 support For now, set the minimum supported 3 version at 3.7 since I just tested that on a debian/buster system, and update the installation instructions after seeing what was required to run the tests from scratch there. Continue to search for 3.6 and 2.6 for now, since no one's complained, and we can always lower the requirement later if it seems appropriate. Signed-off-by: Rob Browning Tested-by: Rob Browning --- README.md | 35 +++++++++++++++++++++++++---------- config/configure | 6 +++--- 2 files changed, 28 insertions(+), 13 deletions(-) diff --git a/README.md b/README.md index 1e4022e..6c15ffe 100644 --- a/README.md +++ b/README.md @@ -71,10 +71,12 @@ Reasons you might want to avoid bup more likely to eat your data. It's also missing some probably-critical features, though fewer than it used to be. - - It requires python >= 2.6, a C compiler, and an installed git - version >= 1.5.6. It also requires par2 if you want fsck to be - able to generate the information needed to recover from some types - of corruption. + - It requires python 3.7 or newer (or 2.7 for a bit longer), a C + compiler, and an installed git version >= 1.5.6. It also requires + par2 if you want fsck to be able to generate the information needed + to recover from some types of corruption. While python 2.7 is + still supported, please make plans to upgrade. Python 2 upstream + support ended on 2020-01-01, and we plan to drop support soon too. - It currently only works on Linux, FreeBSD, NetBSD, OS X >= 10.4, Solaris, or Windows (with Cygwin, and WSL). Patches to support @@ -86,7 +88,6 @@ Reasons you might want to avoid bup - Any items in "Things that are stupid" below. - Notable changes introduced by a release ======================================= @@ -128,7 +129,7 @@ From source bup, please check out the latest stable release like this: ```sh - git checkout 0.29.1 + git checkout 0.31 ``` You can see the latest stable release here: @@ -144,15 +145,29 @@ From source apt-get build-dep bup ``` - Otherwise try this (substitute python2.6-dev if you have an older - system): + Otherwise try this: + + ```sh + apt-get install python3.7-dev python3-fuse + apt-get install python3-pyxattr python3-pytest + apt-get install python3-distutils + apt-get install pkg-config linux-libc-dev libacl1-dev + apt-get install gcc make acl attr rsync + apt-get isntall python3-pytest-xdist # optional (parallel tests) + apt-get install par2 # optional (error correction) + apt-get install libreadline-dev # optional (bup ftp) + apt-get install python3-tornado # optional (bup web) + + ``` + Or, if you can't yet migrate to Python 3 (please try to soon): ```sh apt-get install python2.7-dev python-fuse - apt-get install python-pyxattr + apt-get install python-pyxattr python-pytest apt-get install pkg-config linux-libc-dev libacl1-dev - apt-get install acl attr + apt-get install gcc make acl attr rsync apt-get isntall python-pytest-xdist # optional (parallel tests) + apt-get install par2 # optional (error correction) apt-get install libreadline-dev # optional (bup ftp) apt-get install python-tornado # optional (bup web) ``` diff --git a/config/configure b/config/configure index 407bd4b..6ef0531 100755 --- a/config/configure +++ b/config/configure @@ -66,13 +66,13 @@ expr "$MAKE_VERSION" '>=' '3.81' || AC_FAIL "ERROR: $MAKE must be >= version 3.8 AC_SUB bup_make "$MAKE" bup_python="$(type -p "$PYTHON")" -test -z "$bup_python" && bup_python="$(bup_find_prog python2.7 '')" -test -z "$bup_python" && bup_python="$(bup_find_prog python2.6 '')" -test -z "$bup_python" && bup_python="$(bup_find_prog python2 '')" test -z "$bup_python" && bup_python="$(bup_find_prog python3.8 '')" test -z "$bup_python" && bup_python="$(bup_find_prog python3.7 '')" test -z "$bup_python" && bup_python="$(bup_find_prog python3.6 '')" test -z "$bup_python" && bup_python="$(bup_find_prog python3 '')" +test -z "$bup_python" && bup_python="$(bup_find_prog python2.7 '')" +test -z "$bup_python" && bup_python="$(bup_find_prog python2.6 '')" +test -z "$bup_python" && bup_python="$(bup_find_prog python2 '')" test -z "$bup_python" && bup_python="$(bup_find_prog python '')" if test -z "$bup_python"; then AC_FAIL "ERROR: unable to find python" -- 2.39.2