tests require python 3.6 but configure allows python 2
The get_algorithms.py
script used in the system tests to choose signing algorithms for tests uses a python feature, dataclasses, which I believe did not exist until version 3.7.
I have a system that has both python2 and python3 installed. When building 9.18 or main, configure
finds python3 and everything works fine, but on 9.16, it will use python2 instead, because the required minimum version is 2.7. System tests will then refuse to run:
File "/home/each/isc/bind9/bin/tests/system/get_algorithms.py", line 36
name: str
^
SyntaxError: invalid syntax
(In 9.18 and main, the minimum version is 3.6, and I suspect the dataclass will also be a problem there, but my own system has 3.8 so I haven't confirmed it.)
The easy solution would be to bump up the version requirement in all branches to python 3.7. If this is fraught in 9.16 because it's a stable branch, we could also just revert get_algorithms.py
out of that branch.