While working on yet another Python 2.6 compatibility fix for the Kudu Python wrapper, I started to wonder whether the time is right to drop Python 2.6 compatibility. The motivation is pretty simple: more and more of the Python world is dropping support for 2.6, requiring us to pin to increasingly older dependencies [1] and use various workarounds [2] during environment set up.
Why do we support Python 2.6 in the first place? Because that's the Python version shipped with Red Hat Enterprise Linux 6, and many Kudu users are still using RHEL6 or one of its derivatives (like CentOS 6). However, it seems like it's not so difficult to install Python 2.7 these days: For RHEL6: 1. Make sure that you have access to the Software Collections Library [3] 2. sudo yum install python27 3. source /opt/rh/python27/enable For CentOS6: 1. sudo yum install centos-release-scl (enable the Software Collections Library) 2. sudo yum install scl-utils (install the Software Collections utilities) 3. sudo yum install python27 4. source /opt/rh/python27/enable What do you guys think? Anyone have any experience taking a project through such a transition? 1. https://github.com/apache/kudu/blob/master/python/requirements.txt 2. https://github.com/apache/kudu/blob/master/build-support/jenkins/build-and-test.sh#L437 3. https://access.redhat.com/solutions/472793
