Python 3 for k5test.py
Greg Hudson
ghudson at mit.edu
Sat Apr 28 15:40:44 EDT 2018
I am thinking now might be the right time to move to Python 2 to Python
3 for the Python test suite. This is based on:
* Per https://wiki.ubuntu.com/BionicBeaver/ReleaseNotes, Ubuntu 18.04
doesn't install Python 2 by default, and implies that 20.04 won't
include Python 2 in main. (I would guess it might continue to be
available in universe.)
* https://fedoraproject.org/wiki/FinalizingFedoraSwitchtoPython3
anticipates an update to PEP 394 recommending that /usr/bin/python be
Python 3, and talks about maybe getting rid of Python 2 in a few
years.
Right now the test suite requires Python 2.5, which was released roughly
three years before Python 3.0. My thought is that if someone is
building MIT krb5 on a system too old to offer Python 3, they are
probably building multiple newer versions of software packages, and
adding Python 3 to that set isn't a huge burden. Or they can just not
run the test suite. But if someone has a need to build and modify krb5
1.17 on a post-2020 operating system which doesn't conveniently offer
Python 2, having to build Python 2 just for our test suite could be more
of a burden. Of course that might also happen for 1.16 and prior, but
we can't reasonably do anything about that.
I prototyped the work required back in February, and it isn't a lot:
https://github.com/greghudson/krb5/commits/python3
If we don't make this change now, I will at least make configure.in look
for "python2" in the path in preference to "python", and to skip the
Python tests if the interpreter we do find has sys.hexversion >=
0x3000000.
More information about the krbdev
mailing list